diff options
author | 2022-02-16 16:12:10 -0800 | |
---|---|---|
committer | 2022-02-16 16:12:10 -0800 | |
commit | cc429657fc4414539b4fb42da947b831e94448a4 (patch) | |
tree | c5f588f673642b3d66abedf6f3f49d884629a6f6 /Source/Particles/PhysicalParticleContainer.cpp | |
parent | 278f3cd3db8889219e468699a8475d664ac5f2d3 (diff) | |
download | WarpX-cc429657fc4414539b4fb42da947b831e94448a4.tar.gz WarpX-cc429657fc4414539b4fb42da947b831e94448a4.tar.zst WarpX-cc429657fc4414539b4fb42da947b831e94448a4.zip |
Provide `t_min` and `t_max` for flux injection (#2842)
* 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
* Implement maximum injection time
* [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
* Add parameter tmin
* Make parameter optional ; update documentation
* [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Diffstat (limited to 'Source/Particles/PhysicalParticleContainer.cpp')
-rw-r--r-- | Source/Particles/PhysicalParticleContainer.cpp | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/Source/Particles/PhysicalParticleContainer.cpp b/Source/Particles/PhysicalParticleContainer.cpp index 27d94a5f1..1ee12b769 100644 --- a/Source/Particles/PhysicalParticleContainer.cpp +++ b/Source/Particles/PhysicalParticleContainer.cpp @@ -2518,10 +2518,16 @@ PhysicalParticleContainer::ContinuousInjection (const RealBox& injection_box) /* \brief Inject a flux of particles during the simulation */ void -PhysicalParticleContainer::ContinuousFluxInjection (amrex::Real dt) +PhysicalParticleContainer::ContinuousFluxInjection (amrex::Real t, amrex::Real dt) { - if (plasma_injector->surface_flux) { - AddPlasmaFlux(dt); + if (plasma_injector->surface_flux){ + // Check the optional parameters for start and stop of injection + if ( ((plasma_injector->flux_tmin<0) || (t>=plasma_injector->flux_tmin)) && + ((plasma_injector->flux_tmax<0) || (t< plasma_injector->flux_tmax)) ){ + + AddPlasmaFlux(dt); + + } } } |