1 #ifndef AMREX_PARTICLEBUFFERMAP_H_
2 #define AMREX_PARTICLEBUFFERMAP_H_
3 #include <AMReX_Config.H>
28 int operator() (
const int lev,
const int gid)
const noexcept
40 const int* lev_offsets_ptr)
46 int operator() (
const int lev,
const int gid)
const noexcept
153 return m_dm[lev][gid];
#define AMREX_ASSERT(EX)
Definition: AMReX_BLassert.H:38
#define AMREX_FORCE_INLINE
Definition: AMReX_Extension.H:119
#define AMREX_GPU_HOST_DEVICE
Definition: AMReX_GpuQualifiers.H:20
Definition: AMReX_PODVector.H:246
Definition: AMReX_ParGDB.H:13
Definition: AMReX_ParticleBufferMap.H:53
Gpu::DeviceVector< int > d_lev_gid_to_bucket
Definition: AMReX_ParticleBufferMap.H:69
GetPID getPIDFunctor() const noexcept
Definition: AMReX_ParticleBufferMap.H:156
Vector< int > m_bucket_to_pid
Definition: AMReX_ParticleBufferMap.H:60
AMREX_FORCE_INLINE int numLevels() const
Definition: AMReX_ParticleBufferMap.H:82
Gpu::DeviceVector< int > d_lev_offsets
Definition: AMReX_ParticleBufferMap.H:70
bool isValid(const ParGDBBase *a_gdb) const
Definition: AMReX_ParticleBufferMap.cpp:115
AMREX_FORCE_INLINE int numBuckets() const
Definition: AMReX_ParticleBufferMap.H:89
Vector< int > m_proc_box_offsets
Definition: AMReX_ParticleBufferMap.H:66
Vector< int > m_lev_gid_to_bucket
Definition: AMReX_ParticleBufferMap.H:62
AMREX_FORCE_INLINE int bucketToProc(int bid) const
Definition: AMReX_ParticleBufferMap.H:110
AMREX_FORCE_INLINE Vector< int > allBucketsOnProc(int pid) const
Definition: AMReX_ParticleBufferMap.H:138
Vector< BoxArray > m_ba
Definition: AMReX_ParticleBufferMap.H:55
Vector< DistributionMapping > m_dm
Definition: AMReX_ParticleBufferMap.H:56
Gpu::DeviceVector< int > d_bucket_to_pid
Definition: AMReX_ParticleBufferMap.H:68
AMREX_FORCE_INLINE int firstBucketOnProc(int pid) const
Definition: AMReX_ParticleBufferMap.H:124
Vector< int > m_lev_offsets
Definition: AMReX_ParticleBufferMap.H:63
Vector< int > m_proc_box_counts
Definition: AMReX_ParticleBufferMap.H:65
AMREX_FORCE_INLINE int bucketToGrid(int bid) const
Definition: AMReX_ParticleBufferMap.H:96
AMREX_FORCE_INLINE int procID(int gid, int lev) const
Definition: AMReX_ParticleBufferMap.H:150
GetBucket getBucketFunctor() const noexcept
Definition: AMReX_ParticleBufferMap.H:157
bool m_defined
Definition: AMReX_ParticleBufferMap.H:54
ParticleBufferMap()=default
AMREX_FORCE_INLINE int numBoxesOnProc(int pid) const
Definition: AMReX_ParticleBufferMap.H:131
GetBucket getHostBucketFunctor() const noexcept
Definition: AMReX_ParticleBufferMap.H:158
Vector< int > m_bucket_to_gid
Definition: AMReX_ParticleBufferMap.H:58
AMREX_FORCE_INLINE int gridAndLevToBucket(int gid, int lev) const
Definition: AMReX_ParticleBufferMap.H:117
Vector< int > m_bucket_to_lev
Definition: AMReX_ParticleBufferMap.H:59
AMREX_FORCE_INLINE int bucketToLevel(int bid) const
Definition: AMReX_ParticleBufferMap.H:103
void define(const ParGDBBase *a_gdb)
Definition: AMReX_ParticleBufferMap.cpp:10
This class is a thin wrapper around std::vector. Unlike vector, Vector::operator[] provides bound che...
Definition: AMReX_Vector.H:27
Long size() const noexcept
Definition: AMReX_Vector.H:50
Definition: AMReX_Amr.cpp:49
Definition: AMReX_ParticleBufferMap.H:35
GetBucket(const int *lev_gid_to_bucket_ptr, const int *lev_offsets_ptr)
Definition: AMReX_ParticleBufferMap.H:39
const int * m_lev_offsets
Definition: AMReX_ParticleBufferMap.H:37
const int * m_lev_gid_to_bucket
Definition: AMReX_ParticleBufferMap.H:36
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE int operator()(const int lev, const int gid) const noexcept
Definition: AMReX_ParticleBufferMap.H:46
Definition: AMReX_ParticleBufferMap.H:14
const int * m_bucket_to_pid
Definition: AMReX_ParticleBufferMap.H:15
const int * m_lev_offsets
Definition: AMReX_ParticleBufferMap.H:17
GetPID(const Gpu::DeviceVector< int > &bucket_to_pid, const Gpu::DeviceVector< int > &lev_gid_to_bucket, const Gpu::DeviceVector< int > &lev_offsets)
Definition: AMReX_ParticleBufferMap.H:19
const int * m_lev_gid_to_bucket
Definition: AMReX_ParticleBufferMap.H:16
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE int operator()(const int lev, const int gid) const noexcept
Definition: AMReX_ParticleBufferMap.H:28