aboutsummaryrefslogtreecommitdiff
path: root/Source/Particles/WarpXParticleContainer.H
diff options
context:
space:
mode:
Diffstat (limited to 'Source/Particles/WarpXParticleContainer.H')
-rw-r--r--Source/Particles/WarpXParticleContainer.H13
1 files changed, 13 insertions, 0 deletions
diff --git a/Source/Particles/WarpXParticleContainer.H b/Source/Particles/WarpXParticleContainer.H
index ffeead6f1..6e0d3f4f9 100644
--- a/Source/Particles/WarpXParticleContainer.H
+++ b/Source/Particles/WarpXParticleContainer.H
@@ -13,6 +13,7 @@
#include "WarpXParticleContainer_fwd.H"
#include "Evolve/WarpXDtType.H"
+#include "Initialization/PlasmaInjector.H"
#include "Particles/ParticleBoundaries.H"
#include "SpeciesPhysicalProperties.H"
@@ -121,6 +122,12 @@ public:
virtual void InitIonizationModule () {}
+ /*
+ * \brief Virtual function that returns a pointer to the plasma injector,
+ * for derived classes that define one (PhysicalParticleContainer).
+ */
+ virtual PlasmaInjector* GetPlasmaInjector () { return nullptr; }
+
/**
* Evolve is the central WarpXParticleContainer function that advances
* particles for a time dt (typically one timestep). It is a pure virtual
@@ -241,10 +248,13 @@ public:
virtual void ContinuousInjection(const amrex::RealBox& /*injection_box*/) {}
// Update optional sub-class-specific injection location.
virtual void UpdateContinuousInjectionPosition(amrex::Real /*dt*/) {}
+ bool doContinuousInjection() const {return do_continuous_injection;}
// Inject a continuous flux of particles from a defined plane
virtual void ContinuousFluxInjection(amrex::Real /*t*/, amrex::Real /*dt*/) {}
+ int getSpeciesId() const {return species_id;}
+
///
/// This returns the total charge for all the particles in this ParticleContainer.
/// This is needed when solving Poisson's equation with periodic boundary conditions.
@@ -306,6 +316,9 @@ public:
int self_fields_max_iters = 200;
int self_fields_verbosity = 2;
+ //! Current injection position
+ amrex::Real m_current_injection_position;
+
// split along diagonals (0) or axes (1)
int split_type = 0;