aboutsummaryrefslogtreecommitdiff
path: root/Source/Python/WarpXWrappers.H
diff options
context:
space:
mode:
authorGravatar Roelof Groenewald <40245517+roelof-groenewald@users.noreply.github.com> 2022-01-21 13:25:03 -0800
committerGravatar GitHub <noreply@github.com> 2022-01-21 13:25:03 -0800
commit23ff60beeaaa08263aaa9680f82cab20803ce9e7 (patch)
tree7662f99230a789f21f529bed40fea2829efbc76a /Source/Python/WarpXWrappers.H
parenta3561eedf9fc0ac58c067b95258fb9b69e5cf07a (diff)
downloadWarpX-23ff60beeaaa08263aaa9680f82cab20803ce9e7.tar.gz
WarpX-23ff60beeaaa08263aaa9680f82cab20803ce9e7.tar.zst
WarpX-23ff60beeaaa08263aaa9680f82cab20803ce9e7.zip
Access species specific charge density from python (#2710)
* added python wrapper function to deposit a specific species density in rho_fp * added 1D ES input file with MCC that uses the charge deposition functionality * reset rho_fp[lev] before depositing * updated documentation * switch to using simulation.extension in Poisson solver * Apply suggestion from code review Co-authored-by: Phil Miller <phil.miller@intensecomputing.com> * suggested changes from code review * add comment explaining why a direct Poisson solver is used * removed direct solver in 1D example since it is actually slower than the MLMG solver * Apply suggestions from code review Co-authored-by: Axel Huebl <axel.huebl@plasma.ninja> * added docstring for warpx_depositChargeDensity * fixed order of imports in new PICMI input file Co-authored-by: Phil Miller <phil.miller@intensecomputing.com> Co-authored-by: Axel Huebl <axel.huebl@plasma.ninja>
Diffstat (limited to 'Source/Python/WarpXWrappers.H')
-rw-r--r--Source/Python/WarpXWrappers.H10
1 files changed, 10 insertions, 0 deletions
diff --git a/Source/Python/WarpXWrappers.H b/Source/Python/WarpXWrappers.H
index 8d2ee4364..bd47a3ebb 100644
--- a/Source/Python/WarpXWrappers.H
+++ b/Source/Python/WarpXWrappers.H
@@ -110,6 +110,16 @@ extern "C" {
void warpx_clearParticleBoundaryBuffer ();
+ /**
+ * \brief This function is used to deposit a given species' charge density
+ * in the rho_fp multifab which can then be accessed from python via
+ * pywarpx.fields.RhoFPWrapper()
+ *
+ * @param[in] species_name specifying the name of the species to deposit
+ * @param[in] lev mesh refinement level
+ */
+ void warpx_depositChargeDensity (const char* species_name, int lev);
+
void warpx_ComputeDt ();
void warpx_MoveWindow (int step, bool move_j);