aboutsummaryrefslogtreecommitdiff
path: root/Source/Particles/RigidInjectedParticleContainer.H
diff options
context:
space:
mode:
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
{