diff options
Diffstat (limited to 'Source/Particles/MultiParticleContainer.cpp')
-rw-r--r-- | Source/Particles/MultiParticleContainer.cpp | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/Source/Particles/MultiParticleContainer.cpp b/Source/Particles/MultiParticleContainer.cpp index cb47755f7..a740330d7 100644 --- a/Source/Particles/MultiParticleContainer.cpp +++ b/Source/Particles/MultiParticleContainer.cpp @@ -250,6 +250,16 @@ MultiParticleContainer::ReadParameters () pp.query("use_fdtd_nci_corr", WarpX::use_fdtd_nci_corr); pp.query("galerkin_interpolation", WarpX::galerkin_interpolation); + std::string boundary_conditions = "none"; + pp.query("boundary_conditions", boundary_conditions); + if (boundary_conditions == "none"){ + m_boundary_conditions = ParticleBC::none; + } else if (boundary_conditions == "absorbing"){ + m_boundary_conditions = ParticleBC::absorbing; + } else { + amrex::Abort("unknown particle BC type"); + } + ParmParse ppl("lasers"); ppl.queryarr("names", lasers_names); @@ -385,6 +395,14 @@ MultiParticleContainer::RedistributeLocal (const int num_ghost) } } +void +MultiParticleContainer::ApplyBoundaryConditions () +{ + for (auto& pc : allcontainers) { + pc->ApplyBoundaryConditions(m_boundary_conditions); + } +} + Vector<long> MultiParticleContainer::NumberOfParticlesInGrid (int lev) const { |