22 #include <unordered_map>
78 amrex::ParticleReal bunch_charge,
141 std::unordered_map<int, amrex::MultiFab>
m_rho;
143 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:43
std::unique_ptr< ImpactXParticleContainer > m_particles_lost
Definition: ImpactX.H:138
ImpactX()
Definition: ImpactX.cpp:35
void initBeamDistributionFromInputs()
Definition: InitDistribution.cpp:107
bool early_param_check()
Definition: Warnings.cpp:56
void initLatticeElementsFromInputs()
Definition: InitElement.cpp:296
void initGrids()
Definition: ImpactX.cpp:52
void ClearLevel(int lev) override
Delete level data.
Definition: InitMeshRefinement.cpp:128
void init_warning_logger()
Definition: Warnings.cpp:24
void ResizeMesh()
Definition: InitMeshRefinement.cpp:135
std::unordered_map< int, std::unordered_map< std::string, amrex::MultiFab > > m_space_charge_field
Definition: ImpactX.H:145
void operator=(ImpactX const &)=delete
std::unique_ptr< ImpactXParticleContainer > m_particle_container
Definition: ImpactX.H:135
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:107
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:33
std::unordered_map< int, amrex::MultiFab > m_rho
Definition: ImpactX.H:141
void validate()
Definition: Validate.cpp:21
void evolve()
Definition: ImpactX.cpp:103
void add_particles(amrex::ParticleReal bunch_charge, distribution::KnownDistributions distr, int npart)
Definition: InitDistribution.cpp:30
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:119
ImpactX(ImpactX &&)=delete
std::unordered_map< int, amrex::MultiFab > m_phi
Definition: ImpactX.H:143
std::list< KnownElements > m_lattice
Definition: ImpactX.H:148
std::variant< None, Gaussian, Kurth4D, Kurth6D, KVdist, Triangle, Semigaussian, Waterbag > KnownDistributions
Definition: All.H:36
Definition: ImpactX.cpp:34