10 #ifndef IMPACTX_ELEMENTS_PROGRAMMABLE_H 11 #define IMPACTX_ELEMENTS_PROGRAMMABLE_H 26 static constexpr
auto name =
"Programmable";
62 amrex::ParticleReal
ds ()
const 68 amrex::ParticleReal
m_ds = 0.0;
77 #endif // IMPACTX_ELEMENTS_PROGRAMMABLE_H Definition: ImpactXParticleContainer.H:80
Definition: ImpactX.cpp:31
Definition: Programmable.H:24
amrex::ParticleReal m_ds
Definition: Programmable.H:68
static constexpr auto name
Definition: Programmable.H:26
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE int nslice() const
Definition: Programmable.H:52
int m_nslice
segment length in m
Definition: Programmable.H:69
#define AMREX_FORCE_INLINE
#define AMREX_GPU_HOST_DEVICE
void operator()(ImpactXParticleContainer::iterator &pti, RefPart &ref_part) const
Definition: Programmable.cpp:17
std::function< void(ImpactXParticleContainer::iterator *, RefPart &)> m_beam_particles
number of slices used for the application of space charge
Definition: Programmable.H:71
Particle< NStructReal, NStructInt > ParticleType
Definition: ReferenceParticle.H:29
std::function< void(RefPart &)> m_ref_particle
hook for beam particles
Definition: Programmable.H:72
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE amrex::ParticleReal ds() const
Definition: Programmable.H:62
Programmable()
Definition: Programmable.H:31