diff options
Diffstat (limited to 'Source/Particles/WarpXParticleContainer.H')
-rw-r--r-- | Source/Particles/WarpXParticleContainer.H | 26 |
1 files changed, 7 insertions, 19 deletions
diff --git a/Source/Particles/WarpXParticleContainer.H b/Source/Particles/WarpXParticleContainer.H index 8bc4491d7..33769c61c 100644 --- a/Source/Particles/WarpXParticleContainer.H +++ b/Source/Particles/WarpXParticleContainer.H @@ -32,7 +32,7 @@ struct PIdx { enum { // Particle Attributes stored in amrex::ParticleContainer's struct of array w = 0, // weight - ux, uy, uz, Ex, Ey, Ez, Bx, By, Bz, + ux, uy, uz, #ifdef WARPX_DIM_RZ theta, // RZ needs all three position components #endif @@ -65,14 +65,8 @@ namespace ParticleStringNames {"ux", PIdx::ux }, {"uy", PIdx::uy }, {"uz", PIdx::uz }, - {"Ex", PIdx::Ex }, - {"Ey", PIdx::Ey }, - {"Ez", PIdx::Ez }, - {"Bx", PIdx::Bx }, - {"By", PIdx::By }, - {"Bz", PIdx::Bz } #ifdef WARPX_DIM_RZ - ,{"theta", PIdx::theta} + {"theta", PIdx::theta} #endif }; } @@ -85,6 +79,8 @@ public: WarpXParIter (ContainerType& pc, int level); + WarpXParIter (ContainerType& pc, int level, amrex::MFItInfo& info); + const std::array<RealVector, PIdx::nattribs>& GetAttribs () const { return GetStructOfArrays().GetRealData(); } @@ -128,9 +124,7 @@ class MultiParticleContainer; * push. * * Note: many functions are pure virtual (meaning they MUST be defined in - * derived classes, e.g., Evolve) or empty function (meaning they - * do not do anything, e.g., FieldGather, meant to be overriden by derived - * function) or actual functions (e.g. CurrentDeposition). + * derived classes, e.g., Evolve) or actual functions (e.g. CurrentDeposition). */ class WarpXParticleContainer : public amrex::ParticleContainer<0,0,PIdx::nattribs> @@ -155,14 +149,6 @@ public: virtual void InitData () = 0; - virtual void FieldGatherES (const amrex::Vector<std::array<std::unique_ptr<amrex::MultiFab>, 3> >& E, - const amrex::Vector<std::unique_ptr<amrex::FabArray<amrex::BaseFab<int> > > >& masks) {} - - virtual void FieldGather (int lev, - const amrex::MultiFab& Ex, const amrex::MultiFab& Ey, - const amrex::MultiFab& Ez, const amrex::MultiFab& Bx, - const amrex::MultiFab& By, const amrex::MultiFab& Bz) {} - /** * Evolve is the central WarpXParticleContainer function that advances * particles for a time dt (typically one timestep). It is a pure virtual @@ -342,6 +328,8 @@ public: template<PhysicalSpecies PhysSpec> bool AmIA () const noexcept {return (physical_species == PhysSpec);} + amrex::Array<amrex::Real,3> get_v_galilean () {return v_galilean;} + protected: amrex::Array<amrex::Real,3> v_galilean = {{0}}; std::map<std::string, int> particle_comps; |