diff options
author | 2019-05-08 18:24:12 -0400 | |
---|---|---|
committer | 2019-05-08 18:24:12 -0400 | |
commit | ce1ee07a91bd6d2d82f5394149aac88b3aad0491 (patch) | |
tree | 8d52bcd2d1b24585ff7ba4165a37bdd112b90d34 /Source/Initialization/PlasmaInjector.cpp | |
parent | eb76cadbc5e76111679f6189e6728e462af41f66 (diff) | |
parent | c6335ccaf604b1713449a500eb56559d7c678d7c (diff) | |
download | WarpX-ce1ee07a91bd6d2d82f5394149aac88b3aad0491.tar.gz WarpX-ce1ee07a91bd6d2d82f5394149aac88b3aad0491.tar.zst WarpX-ce1ee07a91bd6d2d82f5394149aac88b3aad0491.zip |
merged with upstream dev
Diffstat (limited to 'Source/Initialization/PlasmaInjector.cpp')
-rw-r--r-- | Source/Initialization/PlasmaInjector.cpp | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/Source/Initialization/PlasmaInjector.cpp b/Source/Initialization/PlasmaInjector.cpp index 0da9318de..52b5d8b61 100644 --- a/Source/Initialization/PlasmaInjector.cpp +++ b/Source/Initialization/PlasmaInjector.cpp @@ -70,6 +70,17 @@ CustomDensityProfile::CustomDensityProfile(const std::string& species_name) pp.getarr("custom_profile_params", params); } +PredefinedDensityProfile::PredefinedDensityProfile(const std::string& species_name) +{ + ParmParse pp(species_name); + std::string which_profile_s; + pp.getarr("predefined_profile_params", params); + pp.query("predefined_profile_name", which_profile_s); + if (which_profile_s == "parabolic_channel"){ + which_profile = predefined_profile_flag::parabolic_channel; + } +} + ParseDensityProfile::ParseDensityProfile(std::string parse_density_function) : _parse_density_function(parse_density_function) { @@ -333,6 +344,8 @@ void PlasmaInjector::parseDensity(ParmParse pp){ rho_prof.reset(new ConstantDensityProfile(density)); } else if (rho_prof_s == "custom") { rho_prof.reset(new CustomDensityProfile(species_name)); + } else if (rho_prof_s == "predefined") { + rho_prof.reset(new PredefinedDensityProfile(species_name)); } else if (rho_prof_s == "parse_density_function") { pp.get("density_function(x,y,z)", str_density_function); rho_prof.reset(new ParseDensityProfile(str_density_function)); |