#include <AMReX_ParticleTile.H>
Public Types | |
using | ParticleType = T_ParticleType |
using | ParticleRefType = T_ParticleType & |
using | Self = ParticleTileData< ParticleType, NAR, NAI > |
using | SuperParticleType = Particle< NStructReal+NAR, NStructInt+NAI > |
using | AOS_PTR = std::conditional_t< T_ParticleType::is_soa_particle, void *AMREX_RESTRICT, ParticleType *AMREX_RESTRICT > |
Public Member Functions | |
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE ParticleReal & | pos (const int dir, const int index) const & |
AMREX_GPU_HOST_DEVICEdecltype(auto) AMREX_FORCE_INLINE | id (const int index) const & |
AMREX_GPU_HOST_DEVICEdecltype(auto) AMREX_FORCE_INLINE | cpu (const int index) const & |
AMREX_GPU_HOST_DEVICEdecltype(auto) AMREX_FORCE_INLINE | idcpu (const int index) const & |
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE ParticleReal * | rdata (const int attribute_index) const |
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE int * | idata (const int attribute_index) const |
AMREX_GPU_HOST_DEVICEdecltype(auto) AMREX_FORCE_INLINE | operator[] (const int index) const |
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void | packParticleData (char *buffer, int src_index, std::size_t dst_offset, const int *comm_real, const int *comm_int) const noexcept |
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void | unpackParticleData (const char *buffer, Long src_offset, int dst_index, const int *comm_real, const int *comm_int) const noexcept |
template<typename T = ParticleType, std::enable_if_t<!T::is_soa_particle, int > = 0> | |
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE SuperParticleType | getSuperParticle (int index) const noexcept |
template<typename T = ParticleType, std::enable_if_t< T::is_soa_particle, int > = 0> | |
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE SuperParticleType | getSuperParticle (int index) const noexcept |
template<typename T = ParticleType, std::enable_if_t<!T::is_soa_particle, int > = 0> | |
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void | setSuperParticle (const SuperParticleType &sp, int index) const noexcept |
template<typename T = ParticleType, std::enable_if_t< T::is_soa_particle, int > = 0> | |
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void | setSuperParticle (const SuperParticleType &sp, int index) const noexcept |
Public Attributes | |
Long | m_size |
AOS_PTR | m_aos |
uint64_t * | m_idcpu |
GpuArray< ParticleReal *, NAR > | m_rdata |
GpuArray< int *, NAI > | m_idata |
int | m_num_runtime_real |
int | m_num_runtime_int |
ParticleReal *AMREX_RESTRICT *AMREX_RESTRICT | m_runtime_rdata |
int *AMREX_RESTRICT *AMREX_RESTRICT | m_runtime_idata |
Static Public Attributes | |
static constexpr int | NAR = NArrayReal |
static constexpr int | NAI = NArrayInt |
static constexpr int | NStructReal = ParticleType::NReal |
static constexpr int | NStructInt = ParticleType::NInt |
static constexpr bool | is_particle_tile_data = true |
using amrex::ParticleTileData< T_ParticleType, NArrayReal, NArrayInt >::AOS_PTR = std::conditional_t<T_ParticleType::is_soa_particle, void * AMREX_RESTRICT, ParticleType * AMREX_RESTRICT> |
using amrex::ParticleTileData< T_ParticleType, NArrayReal, NArrayInt >::ParticleRefType = T_ParticleType& |
using amrex::ParticleTileData< T_ParticleType, NArrayReal, NArrayInt >::ParticleType = T_ParticleType |
using amrex::ParticleTileData< T_ParticleType, NArrayReal, NArrayInt >::Self = ParticleTileData<ParticleType, NAR, NAI> |
using amrex::ParticleTileData< T_ParticleType, NArrayReal, NArrayInt >::SuperParticleType = Particle<NStructReal+NAR, NStructInt+NAI> |
|
inline |
|
inlinenoexcept |
|
inlinenoexcept |
|
inline |
|
inline |
|
inline |
|
inline |
|
inlinenoexcept |
|
inline |
|
inline |
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinenoexcept |
|
staticconstexpr |
AOS_PTR amrex::ParticleTileData< T_ParticleType, NArrayReal, NArrayInt >::m_aos |
GpuArray<int*, NAI> amrex::ParticleTileData< T_ParticleType, NArrayReal, NArrayInt >::m_idata |
uint64_t* amrex::ParticleTileData< T_ParticleType, NArrayReal, NArrayInt >::m_idcpu |
int amrex::ParticleTileData< T_ParticleType, NArrayReal, NArrayInt >::m_num_runtime_int |
int amrex::ParticleTileData< T_ParticleType, NArrayReal, NArrayInt >::m_num_runtime_real |
GpuArray<ParticleReal*, NAR> amrex::ParticleTileData< T_ParticleType, NArrayReal, NArrayInt >::m_rdata |
int* AMREX_RESTRICT* AMREX_RESTRICT amrex::ParticleTileData< T_ParticleType, NArrayReal, NArrayInt >::m_runtime_idata |
ParticleReal* AMREX_RESTRICT* AMREX_RESTRICT amrex::ParticleTileData< T_ParticleType, NArrayReal, NArrayInt >::m_runtime_rdata |
Long amrex::ParticleTileData< T_ParticleType, NArrayReal, NArrayInt >::m_size |
|
staticconstexpr |
|
staticconstexpr |
|
staticconstexpr |
|
staticconstexpr |