aboutsummaryrefslogtreecommitdiff
path: root/Source/Initialization/PlasmaInjector.cpp
diff options
context:
space:
mode:
authorGravatar Ryan Sandberg <RSandberg@lbl.gov> 2023-03-23 14:14:09 -0700
committerGravatar GitHub <noreply@github.com> 2023-03-23 14:14:09 -0700
commit04b96737fe1759e55c8ee83cdb783dbf315f9431 (patch)
tree3285c4909d27e4f5f68fd15e292862dbbd6796d1 /Source/Initialization/PlasmaInjector.cpp
parent8f2a9da6e84056c33b64b80f14864160c1b61a48 (diff)
downloadWarpX-04b96737fe1759e55c8ee83cdb783dbf315f9431.tar.gz
WarpX-04b96737fe1759e55c8ee83cdb783dbf315f9431.tar.zst
WarpX-04b96737fe1759e55c8ee83cdb783dbf315f9431.zip
Gaussian beam: allow 8-fold symmetry option (#3768)
* add 8-fold beam symmetrization * Improve docs and fix examples * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci * fix signature bug, can compile * fix example * Apply suggestions from code review Co-authored-by: Edoardo Zoni <59625522+EZoni@users.noreply.github.com> --------- Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> Co-authored-by: Edoardo Zoni <59625522+EZoni@users.noreply.github.com>
Diffstat (limited to 'Source/Initialization/PlasmaInjector.cpp')
-rw-r--r--Source/Initialization/PlasmaInjector.cpp4
1 files changed, 4 insertions, 0 deletions
diff --git a/Source/Initialization/PlasmaInjector.cpp b/Source/Initialization/PlasmaInjector.cpp
index 4c2aebf8e..f707d4ed9 100644
--- a/Source/Initialization/PlasmaInjector.cpp
+++ b/Source/Initialization/PlasmaInjector.cpp
@@ -235,6 +235,10 @@ PlasmaInjector::PlasmaInjector (int ispecies, const std::string& name)
utils::parser::getWithParser(pp_species_name, "q_tot", q_tot);
utils::parser::getWithParser(pp_species_name, "npart", npart);
pp_species_name.query("do_symmetrize", do_symmetrize);
+ pp_species_name.query("symmetrization_order", symmetrization_order);
+ std::set valid_symmetries = {4,8};
+ WARPX_ALWAYS_ASSERT_WITH_MESSAGE( valid_symmetries.count(symmetrization_order),
+ "Error: Symmetrization only supported to orders 4 or 8 ");
gaussian_beam = true;
parseMomentum(pp_species_name);
#if defined(WARPX_DIM_XZ)