aboutsummaryrefslogtreecommitdiff
path: root/Source/Particles/RigidInjectedParticleContainer.H
diff options
context:
space:
mode:
authorGravatar MaxThevenet <mthevenet@lbl.gov> 2019-12-23 14:04:37 -0800
committerGravatar MaxThevenet <mthevenet@lbl.gov> 2019-12-23 14:04:37 -0800
commit2ebae955f208d63fe781613cb511ff57b5da836a (patch)
tree08d29fc0954aeb1c539d9549ba00bad5080b6ada /Source/Particles/RigidInjectedParticleContainer.H
parent4b5b142d63f047a94919e24b8849841560e7be15 (diff)
parentdb13c6aa943753b514479aa7e0049921937c8846 (diff)
downloadWarpX-2ebae955f208d63fe781613cb511ff57b5da836a.tar.gz
WarpX-2ebae955f208d63fe781613cb511ff57b5da836a.tar.zst
WarpX-2ebae955f208d63fe781613cb511ff57b5da836a.zip
Merge branch 'dev' into comm
Diffstat (limited to 'Source/Particles/RigidInjectedParticleContainer.H')
-rw-r--r--Source/Particles/RigidInjectedParticleContainer.H18
1 files changed, 18 insertions, 0 deletions
diff --git a/Source/Particles/RigidInjectedParticleContainer.H b/Source/Particles/RigidInjectedParticleContainer.H
index a2473c5ad..fecb9c48e 100644
--- a/Source/Particles/RigidInjectedParticleContainer.H
+++ b/Source/Particles/RigidInjectedParticleContainer.H
@@ -4,6 +4,24 @@
#include <PhysicalParticleContainer.H>
#include <AMReX_Vector.H>
+/**
+ * When injecting a particle beam (typically for a plasma wakefield
+ * acceleration simulation), say propagating in the z direction, it can
+ * be necessary to make particles propagate in a straight line up to a given
+ * location z=z0. This is of particular importance when running in a boosted
+ * frame, where the beam may evolve due to its space charge fields before
+ * entering the plasma, causing the actual injected beam, and hence the whole
+ * simulation result, to depend on the Lorentz factor of the boost.
+ *
+ * This feature is implemented in RigidInjectedParticleContainer: At each
+ * iteration, for each particle, if z<z0 the particle moves in a straight line,
+ * and if z>z0 the particle evolves as a regular PhysicalParticleContainer.
+ *
+ * Note: This option is also useful to build self-consistent space charge
+ * fields for the particle beam.
+ *
+ * RigidInjectedParticleContainer derives from PhysicalParticleContainer.
+ */
class RigidInjectedParticleContainer
: public PhysicalParticleContainer
{