22 #include <unordered_map>
78 amrex::ParticleReal bunch_charge,
143 std::unordered_map<int, amrex::MultiFab>
m_rho;
145 std::unordered_map<int, amrex::MultiFab>
m_phi;
ImpactX(ImpactX const &)=delete
void MakeNewLevelFromScratch(int lev, amrex::Real time, const amrex::BoxArray &ba, const amrex::DistributionMapping &dm) override
Definition: InitMeshRefinement.cpp:158
std::unique_ptr< ImpactXParticleContainer > m_particles_lost
Definition: ImpactX.H:140
ImpactX()
Definition: ImpactX.cpp:37
void initBeamDistributionFromInputs()
Definition: InitDistribution.cpp:116
bool early_param_check()
Definition: Warnings.cpp:56
void initLatticeElementsFromInputs()
Definition: InitElement.cpp:401
void initGrids()
Definition: ImpactX.cpp:54
void ClearLevel(int lev) override
Delete level data.
Definition: InitMeshRefinement.cpp:243
void init_warning_logger()
Definition: Warnings.cpp:24
void ResizeMesh()
Definition: InitMeshRefinement.cpp:250
std::unordered_map< int, std::unordered_map< std::string, amrex::MultiFab > > m_space_charge_field
Definition: ImpactX.H:147
void operator=(ImpactX const &)=delete
std::unique_ptr< ImpactXParticleContainer > m_particle_container
Definition: ImpactX.H:137
void MakeNewLevelFromCoarse(int lev, amrex::Real time, const amrex::BoxArray &ba, const amrex::DistributionMapping &dm) override
Make a new level using provided BoxArray and DistributionMapping and fill.
Definition: InitMeshRefinement.cpp:222
void ErrorEst(int lev, amrex::TagBoxArray &tags, amrex::Real time, int ngrow) override
Tag cells for refinement. TagBoxArray tags is built on level lev grids.
Definition: InitMeshRefinement.cpp:82
std::unordered_map< int, amrex::MultiFab > m_rho
Definition: ImpactX.H:143
void validate()
Definition: Validate.cpp:21
void evolve()
Definition: ImpactX.cpp:110
void add_particles(amrex::ParticleReal bunch_charge, distribution::KnownDistributions distr, int npart)
Definition: InitDistribution.cpp:33
void RemakeLevel(int lev, amrex::Real time, const amrex::BoxArray &ba, const amrex::DistributionMapping &dm) override
Remake an existing level using provided BoxArray and DistributionMapping.
Definition: InitMeshRefinement.cpp:234
ImpactX(ImpactX &&)=delete
std::unordered_map< int, amrex::MultiFab > m_phi
Definition: ImpactX.H:145
std::list< KnownElements > m_lattice
Definition: ImpactX.H:150
std::variant< None, Gaussian, Kurth4D, Kurth6D, KVdist, Thermal, Triangle, Semigaussian, Waterbag > KnownDistributions
Definition: All.H:38
Definition: ImpactX.cpp:36