8 #ifndef WARPX_PhotonParticleContainer_H_ 9 #define WARPX_PhotonParticleContainer_H_ 17 #include <AMReX_Particles.H> 18 #include <AMReX_REAL.H> 20 #include <AMReX_BaseFwd.H> 21 #include <AMReX_AmrCoreFwd.H> 38 const std::string&
name);
43 virtual void Evolve (
int lev,
44 const amrex::MultiFab& Ex,
45 const amrex::MultiFab& Ey,
46 const amrex::MultiFab& Ez,
47 const amrex::MultiFab& Bx,
48 const amrex::MultiFab& By,
49 const amrex::MultiFab& Bz,
57 amrex::MultiFab* crho,
58 const amrex::MultiFab* cEx,
59 const amrex::MultiFab* cEy,
60 const amrex::MultiFab* cEz,
61 const amrex::MultiFab* cBx,
62 const amrex::MultiFab* cBy,
63 const amrex::MultiFab* cBz,
67 bool skip_deposition=
false)
override;
70 amrex::FArrayBox
const * exfab,
71 amrex::FArrayBox
const * eyfab,
72 amrex::FArrayBox
const * ezfab,
73 amrex::FArrayBox
const * bxfab,
74 amrex::FArrayBox
const * byfab,
75 amrex::FArrayBox
const * bzfab,
76 const amrex::IntVect ngE,
const int ,
78 const long np_to_push,
79 int lev,
int gather_lev,
81 DtType a_dt_type)
override;
86 const amrex::MultiFab& ,
87 const amrex::MultiFab& ,
88 const amrex::MultiFab& ,
89 const amrex::MultiFab& ,
90 const amrex::MultiFab& ,
91 const amrex::MultiFab& )
override {}
113 amrex::MultiFab *
const ,
114 amrex::MultiFab *
const ,
115 amrex::MultiFab *
const ,
122 amrex::Real
const )
override {}
125 #endif // #ifndef WARPX_PhotonParticleContainer_H_ virtual void Evolve(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, amrex::MultiFab &jx, amrex::MultiFab &jy, amrex::MultiFab &jz, amrex::MultiFab *cjx, amrex::MultiFab *cjy, amrex::MultiFab *cjz, amrex::MultiFab *rho, amrex::MultiFab *crho, const amrex::MultiFab *cEx, const amrex::MultiFab *cEy, const amrex::MultiFab *cEz, const amrex::MultiFab *cBx, const amrex::MultiFab *cBy, const amrex::MultiFab *cBz, amrex::Real t, amrex::Real dt, DtType a_dt_type=DtType::Full, bool skip_deposition=false) override
Evolve is the central function PhysicalParticleContainer that advances plasma particles for a time dt...
Definition: PhotonParticleContainer.cpp:208
virtual void DepositCharge(WarpXParIter &, RealVector &, const int *const, amrex::MultiFab *, int, const long, const long, int, int, int) override
Definition: PhotonParticleContainer.H:95
DtType
Definition: WarpXDtType.H:10
virtual void PushP(int, amrex::Real, const amrex::MultiFab &, const amrex::MultiFab &, const amrex::MultiFab &, const amrex::MultiFab &, const amrex::MultiFab &, const amrex::MultiFab &) override
Definition: PhotonParticleContainer.H:84
Functor that scales E and B by a factor before pushing the particles. This is used for rigid injectio...
Definition: ScaleFields.H:13
Definition: PhysicalParticleContainer.H:44
PhotonParticleContainer(amrex::AmrCore *amr_core, int ispecies, const std::string &name)
Definition: PhotonParticleContainer.cpp:45
virtual void InitData() override
Definition: PhotonParticleContainer.cpp:73
virtual ~PhotonParticleContainer()
Definition: PhotonParticleContainer.H:39
name
Definition: run_automated.py:204
Definition: PhotonParticleContainer.H:32
virtual void DepositCurrent(WarpXParIter &, RealVector const &, RealVector const &, RealVector const &, RealVector const &, int const *const, amrex::MultiFab *const, amrex::MultiFab *const, amrex::MultiFab *const, long const, long const, int const, int const, int const, amrex::Real const, amrex::Real const) override
Definition: PhotonParticleContainer.H:107
virtual void PushPX(WarpXParIter &pti, amrex::FArrayBox const *exfab, amrex::FArrayBox const *eyfab, amrex::FArrayBox const *ezfab, amrex::FArrayBox const *bxfab, amrex::FArrayBox const *byfab, amrex::FArrayBox const *bzfab, const amrex::IntVect ngE, const int, const long offset, const long np_to_push, int lev, int gather_lev, amrex::Real dt, ScaleFields scaleFields, DtType a_dt_type) override
Definition: PhotonParticleContainer.cpp:82
Definition: WarpXParticleContainer.H:58