|
WarpX
|
Functor that creates copies of the current particle positions and momenta for later use. This is needed by the back-transformed diagnostics. More...
#include <CopyParticleAttribs.H>
Public Member Functions | |
| CopyParticleAttribs ()=default | |
| CopyParticleAttribs (const WarpXParticleContainer &, WarpXParIter &a_pti, long a_offset=0) noexcept | |
| Construct a new functor. | |
| AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void | operator() (const long i) const noexcept |
| copy the position and momentum of particle i to the temporary data holder | |
Public Attributes | |
| GetParticlePosition< PIdx > | m_get_position |
| const amrex::ParticleReal *AMREX_RESTRICT | uxp = nullptr |
| const amrex::ParticleReal *AMREX_RESTRICT | uyp = nullptr |
| const amrex::ParticleReal *AMREX_RESTRICT | uzp = nullptr |
| amrex::ParticleReal *AMREX_RESTRICT | xpold = nullptr |
| amrex::ParticleReal *AMREX_RESTRICT | ypold = nullptr |
| amrex::ParticleReal *AMREX_RESTRICT | zpold = nullptr |
| amrex::ParticleReal *AMREX_RESTRICT | uxpold = nullptr |
| amrex::ParticleReal *AMREX_RESTRICT | uypold = nullptr |
| amrex::ParticleReal *AMREX_RESTRICT | uzpold = nullptr |
Functor that creates copies of the current particle positions and momenta for later use. This is needed by the back-transformed diagnostics.
|
default |
|
inlinenoexcept |
Construct a new functor.
| a_pti | iterator to the tile containing the macroparticles |
| a_offset | offset to apply when reading / writing particle data This is needed because when we use field gather buffers we don't always start at the particle with index 0. |
|
inlinenoexcept |
copy the position and momentum of particle i to the temporary data holder
| GetParticlePosition<PIdx> CopyParticleAttribs::m_get_position |
| const amrex::ParticleReal* AMREX_RESTRICT CopyParticleAttribs::uxp = nullptr |
| amrex::ParticleReal* AMREX_RESTRICT CopyParticleAttribs::uxpold = nullptr |
| const amrex::ParticleReal* AMREX_RESTRICT CopyParticleAttribs::uyp = nullptr |
| amrex::ParticleReal* AMREX_RESTRICT CopyParticleAttribs::uypold = nullptr |
| const amrex::ParticleReal* AMREX_RESTRICT CopyParticleAttribs::uzp = nullptr |
| amrex::ParticleReal* AMREX_RESTRICT CopyParticleAttribs::uzpold = nullptr |
| amrex::ParticleReal* AMREX_RESTRICT CopyParticleAttribs::xpold = nullptr |
| amrex::ParticleReal* AMREX_RESTRICT CopyParticleAttribs::ypold = nullptr |
| amrex::ParticleReal* AMREX_RESTRICT CopyParticleAttribs::zpold = nullptr |