aboutsummaryrefslogtreecommitdiff
path: root/Source/Initialization/PlasmaInjector.cpp
diff options
context:
space:
mode:
authorGravatar Remi Lehe <remi.lehe@normalesup.org> 2022-02-14 17:15:39 -0800
committerGravatar GitHub <noreply@github.com> 2022-02-15 01:15:39 +0000
commit98e808ff1579603b1467debddd61c9b31468c61b (patch)
tree9968d178fecfee26171f99c98796436e376e87e3 /Source/Initialization/PlasmaInjector.cpp
parent2cec61478b9bc33d094b6c8f0ff1f968a149266c (diff)
downloadWarpX-98e808ff1579603b1467debddd61c9b31468c61b.tar.gz
WarpX-98e808ff1579603b1467debddd61c9b31468c61b.tar.zst
WarpX-98e808ff1579603b1467debddd61c9b31468c61b.zip
Allow flux injection in the out-of-plane direction for RZ/2D geometry (#2788)
* Implement injection orthogal to plane * Generalize momentum distribution for flux injection * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci * Revert "[pre-commit.ci] auto fixes from pre-commit.com hooks" This reverts commit b0cd1891771a4c49c14abb7cb9df7374cee4458c. * Revert "Generalize momentum distribution for flux injection" This reverts commit 0a22b1d8fa68a3a5705d8f4824f757b6dee497f0. * Rotate momentum initialization * Correct flux number when the direction is normal to plane * Update distribution of particles within a cell * Clean-up injection code * Add more documentation * Add more comments * Handle 1D case * Only do the rotation for Gaussian flux profile * Fix compilation error * Correct compilation for GPU * Start adding automated test * Correct sign of velocity * Update to add continuous injection * Finalize test * Correct processing of flux_normal_axis * Add checksum * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci * Fix bug * Update script * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci * Update checksum Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Diffstat (limited to 'Source/Initialization/PlasmaInjector.cpp')
-rw-r--r--Source/Initialization/PlasmaInjector.cpp5
1 files changed, 4 insertions, 1 deletions
diff --git a/Source/Initialization/PlasmaInjector.cpp b/Source/Initialization/PlasmaInjector.cpp
index 0390a1041..1912f3679 100644
--- a/Source/Initialization/PlasmaInjector.cpp
+++ b/Source/Initialization/PlasmaInjector.cpp
@@ -252,6 +252,9 @@ PlasmaInjector::PlasmaInjector (int ispecies, const std::string& name)
if (flux_normal_axis_string == "r" || flux_normal_axis_string == "R") {
flux_normal_axis = 0;
}
+ if (flux_normal_axis_string == "t" || flux_normal_axis_string == "T") {
+ flux_normal_axis = 1;
+ }
#else
# ifndef WARPX_DIM_1D_Z
if (flux_normal_axis_string == "x" || flux_normal_axis_string == "X") {
@@ -265,7 +268,7 @@ PlasmaInjector::PlasmaInjector (int ispecies, const std::string& name)
}
#endif
if (flux_normal_axis_string == "z" || flux_normal_axis_string == "Z") {
- flux_normal_axis = WARPX_ZINDEX;
+ flux_normal_axis = 2;
}
#ifdef WARPX_DIM_3D
std::string flux_normal_axis_help = "'x', 'y', or 'z'.";