Block-Structured AMR Software Framework
amrex::ParticleTile< T_ParticleType, NArrayReal, NArrayInt, Allocator > Struct Template Reference

#include <AMReX_ParticleTile.H>

Public Types

template<typename T >
using AllocatorType = Allocator< T >
 
using ParticleType = T_ParticleType
 
using RealType = typename ParticleType::RealType
 
using SuperParticleType = Particle< NStructReal+NArrayReal, NStructInt+NArrayInt >
 
using AoS = std::conditional_t< ParticleType::is_soa_particle, ThisParticleTileHasNoAoS, ArrayOfStructs< ParticleType, Allocator > >
 
using SoA = std::conditional_t< ParticleType::is_soa_particle, StructOfArrays< NArrayReal, NArrayInt, Allocator, true >, StructOfArrays< NArrayReal, NArrayInt, Allocator, false > >
 
using RealVector = typename SoA::RealVector
 
using IntVector = typename SoA::IntVector
 
using StorageParticleType = typename ParticleType::StorageParticleType
 
using ParticleTileDataType = ParticleTileData< StorageParticleType, NArrayReal, NArrayInt >
 
using ConstParticleTileDataType = ConstParticleTileData< StorageParticleType, NArrayReal, NArrayInt >
 

Public Member Functions

 ParticleTile ()=default
 
 ~ParticleTile ()=default
 
 ParticleTile (ParticleTile const &)=delete
 
 ParticleTile (ParticleTile &&) noexcept=default
 
ParticleTileoperator= (ParticleTile const &)=delete
 
ParticleTileoperator= (ParticleTile &&) noexcept=default
 
void define (int a_num_runtime_real, int a_num_runtime_int, std::vector< std::string > *soa_rdata_names=nullptr, std::vector< std::string > *soa_idata_names=nullptr)
 
decltype(auto) id (int index) &
 
decltype(auto) id (int index) const &
 
decltype(auto) cpu (int index) &
 
decltype(auto) cpu (int index) const &
 
RealTypepos (int index, int position_index) &
 
RealType pos (int index, int position_index) const &
 
AoSGetArrayOfStructs ()
 
const AoSGetArrayOfStructs () const
 
SoAGetStructOfArrays ()
 
const SoAGetStructOfArrays () const
 
bool empty () const
 
std::size_t size () const
 Returns the total number of particles (real and neighbor) More...
 
int numParticles () const
 Returns the number of real particles (excluding neighbors) More...
 
int numRealParticles () const
 Returns the number of real particles (excluding neighbors) More...
 
int numNeighborParticles () const
 Returns the number of neighbor particles (excluding reals) More...
 
int numTotalParticles () const
 Returns the total number of particles, real and neighbor. More...
 
void setNumNeighbors (int num_neighbors)
 
int getNumNeighbors () const
 
void resize (std::size_t count)
 
template<typename T = ParticleType, std::enable_if_t<!T::is_soa_particle, int > = 0>
void push_back (const ParticleType &p)
 
template<int NR = NArrayReal, int NI = NArrayInt, std::enable_if_t< NR !=0||NI !=0, int > foo = 0>
void push_back (const SuperParticleType &sp)
 
void push_back_real (int comp, ParticleReal v)
 
void push_back_real (const std::array< ParticleReal, NArrayReal > &v)
 
void push_back_real (int comp, const ParticleReal *beg, const ParticleReal *end)
 
void push_back_real (int comp, amrex::Vector< amrex::ParticleReal >::const_iterator beg, amrex::Vector< amrex::ParticleReal >::const_iterator end)
 
void push_back_real (int comp, amrex::Vector< amrex::ParticleReal > const &vec)
 
void push_back_real (int comp, std::size_t npar, ParticleReal v)
 
void push_back_int (int comp, int v)
 
void push_back_int (const std::array< int, NArrayInt > &v)
 
void push_back_int (int comp, const int *beg, const int *end)
 
void push_back_int (int comp, amrex::Vector< int >::const_iterator beg, amrex::Vector< int >::const_iterator end)
 
void push_back_int (int comp, amrex::Vector< int > const &vec)
 
void push_back_int (int comp, std::size_t npar, int v)
 
int NumRealComps () const noexcept
 
int NumIntComps () const noexcept
 
int NumRuntimeRealComps () const noexcept
 
int NumRuntimeIntComps () const noexcept
 
void shrink_to_fit ()
 
Long capacity () const
 
void swap (ParticleTile< ParticleType, NArrayReal, NArrayInt, Allocator > &other) noexcept
 
ParticleTileDataType getParticleTileData ()
 
ConstParticleTileDataType getConstParticleTileData () const
 

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
 

Private Attributes

AoS m_aos_tile
 
SoA m_soa_tile
 
bool m_defined = false
 
amrex::PODVector< ParticleReal *, Allocator< ParticleReal * > > m_runtime_r_ptrs
 
amrex::PODVector< int *, Allocator< int * > > m_runtime_i_ptrs
 
amrex::PODVector< const ParticleReal *, Allocator< const ParticleReal * > > m_runtime_r_cptrs
 
amrex::PODVector< const int *, Allocator< const int * > > m_runtime_i_cptrs
 
amrex::Gpu::HostVector< ParticleReal * > m_h_runtime_r_ptrs
 
amrex::Gpu::HostVector< int * > m_h_runtime_i_ptrs
 
amrex::Gpu::HostVector< const ParticleReal * > m_h_runtime_r_cptrs
 
amrex::Gpu::HostVector< const int * > m_h_runtime_i_cptrs
 

Member Typedef Documentation

◆ AllocatorType

template<typename T_ParticleType , int NArrayReal, int NArrayInt, template< class > class Allocator = DefaultAllocator>
template<typename T >
using amrex::ParticleTile< T_ParticleType, NArrayReal, NArrayInt, Allocator >::AllocatorType = Allocator<T>

◆ AoS

template<typename T_ParticleType , int NArrayReal, int NArrayInt, template< class > class Allocator = DefaultAllocator>
using amrex::ParticleTile< T_ParticleType, NArrayReal, NArrayInt, Allocator >::AoS = std::conditional_t< ParticleType::is_soa_particle, ThisParticleTileHasNoAoS, ArrayOfStructs<ParticleType, Allocator> >

◆ ConstParticleTileDataType

template<typename T_ParticleType , int NArrayReal, int NArrayInt, template< class > class Allocator = DefaultAllocator>
using amrex::ParticleTile< T_ParticleType, NArrayReal, NArrayInt, Allocator >::ConstParticleTileDataType = ConstParticleTileData<StorageParticleType, NArrayReal, NArrayInt>

◆ IntVector

template<typename T_ParticleType , int NArrayReal, int NArrayInt, template< class > class Allocator = DefaultAllocator>
using amrex::ParticleTile< T_ParticleType, NArrayReal, NArrayInt, Allocator >::IntVector = typename SoA::IntVector

◆ ParticleTileDataType

template<typename T_ParticleType , int NArrayReal, int NArrayInt, template< class > class Allocator = DefaultAllocator>
using amrex::ParticleTile< T_ParticleType, NArrayReal, NArrayInt, Allocator >::ParticleTileDataType = ParticleTileData<StorageParticleType, NArrayReal, NArrayInt>

◆ ParticleType

template<typename T_ParticleType , int NArrayReal, int NArrayInt, template< class > class Allocator = DefaultAllocator>
using amrex::ParticleTile< T_ParticleType, NArrayReal, NArrayInt, Allocator >::ParticleType = T_ParticleType

◆ RealType

template<typename T_ParticleType , int NArrayReal, int NArrayInt, template< class > class Allocator = DefaultAllocator>
using amrex::ParticleTile< T_ParticleType, NArrayReal, NArrayInt, Allocator >::RealType = typename ParticleType::RealType

◆ RealVector

template<typename T_ParticleType , int NArrayReal, int NArrayInt, template< class > class Allocator = DefaultAllocator>
using amrex::ParticleTile< T_ParticleType, NArrayReal, NArrayInt, Allocator >::RealVector = typename SoA::RealVector

◆ SoA

template<typename T_ParticleType , int NArrayReal, int NArrayInt, template< class > class Allocator = DefaultAllocator>
using amrex::ParticleTile< T_ParticleType, NArrayReal, NArrayInt, Allocator >::SoA = std::conditional_t< ParticleType::is_soa_particle, StructOfArrays<NArrayReal, NArrayInt, Allocator, true>, StructOfArrays<NArrayReal, NArrayInt, Allocator, false> >

◆ StorageParticleType

template<typename T_ParticleType , int NArrayReal, int NArrayInt, template< class > class Allocator = DefaultAllocator>
using amrex::ParticleTile< T_ParticleType, NArrayReal, NArrayInt, Allocator >::StorageParticleType = typename ParticleType::StorageParticleType

◆ SuperParticleType

template<typename T_ParticleType , int NArrayReal, int NArrayInt, template< class > class Allocator = DefaultAllocator>
using amrex::ParticleTile< T_ParticleType, NArrayReal, NArrayInt, Allocator >::SuperParticleType = Particle<NStructReal + NArrayReal, NStructInt + NArrayInt>

Constructor & Destructor Documentation

◆ ParticleTile() [1/3]

template<typename T_ParticleType , int NArrayReal, int NArrayInt, template< class > class Allocator = DefaultAllocator>
amrex::ParticleTile< T_ParticleType, NArrayReal, NArrayInt, Allocator >::ParticleTile ( )
default

◆ ~ParticleTile()

template<typename T_ParticleType , int NArrayReal, int NArrayInt, template< class > class Allocator = DefaultAllocator>
amrex::ParticleTile< T_ParticleType, NArrayReal, NArrayInt, Allocator >::~ParticleTile ( )
default

◆ ParticleTile() [2/3]

template<typename T_ParticleType , int NArrayReal, int NArrayInt, template< class > class Allocator = DefaultAllocator>
amrex::ParticleTile< T_ParticleType, NArrayReal, NArrayInt, Allocator >::ParticleTile ( ParticleTile< T_ParticleType, NArrayReal, NArrayInt, Allocator > const &  )
delete

◆ ParticleTile() [3/3]

template<typename T_ParticleType , int NArrayReal, int NArrayInt, template< class > class Allocator = DefaultAllocator>
amrex::ParticleTile< T_ParticleType, NArrayReal, NArrayInt, Allocator >::ParticleTile ( ParticleTile< T_ParticleType, NArrayReal, NArrayInt, Allocator > &&  )
defaultnoexcept

Member Function Documentation

◆ capacity()

template<typename T_ParticleType , int NArrayReal, int NArrayInt, template< class > class Allocator = DefaultAllocator>
Long amrex::ParticleTile< T_ParticleType, NArrayReal, NArrayInt, Allocator >::capacity ( ) const
inline

◆ cpu() [1/2]

template<typename T_ParticleType , int NArrayReal, int NArrayInt, template< class > class Allocator = DefaultAllocator>
decltype(auto) amrex::ParticleTile< T_ParticleType, NArrayReal, NArrayInt, Allocator >::cpu ( int  index) &
inline

◆ cpu() [2/2]

template<typename T_ParticleType , int NArrayReal, int NArrayInt, template< class > class Allocator = DefaultAllocator>
decltype(auto) amrex::ParticleTile< T_ParticleType, NArrayReal, NArrayInt, Allocator >::cpu ( int  index) const &
inline

◆ define()

template<typename T_ParticleType , int NArrayReal, int NArrayInt, template< class > class Allocator = DefaultAllocator>
void amrex::ParticleTile< T_ParticleType, NArrayReal, NArrayInt, Allocator >::define ( int  a_num_runtime_real,
int  a_num_runtime_int,
std::vector< std::string > *  soa_rdata_names = nullptr,
std::vector< std::string > *  soa_idata_names = nullptr 
)
inline

◆ empty()

template<typename T_ParticleType , int NArrayReal, int NArrayInt, template< class > class Allocator = DefaultAllocator>
bool amrex::ParticleTile< T_ParticleType, NArrayReal, NArrayInt, Allocator >::empty ( ) const
inline

◆ GetArrayOfStructs() [1/2]

template<typename T_ParticleType , int NArrayReal, int NArrayInt, template< class > class Allocator = DefaultAllocator>
AoS& amrex::ParticleTile< T_ParticleType, NArrayReal, NArrayInt, Allocator >::GetArrayOfStructs ( )
inline

◆ GetArrayOfStructs() [2/2]

template<typename T_ParticleType , int NArrayReal, int NArrayInt, template< class > class Allocator = DefaultAllocator>
const AoS& amrex::ParticleTile< T_ParticleType, NArrayReal, NArrayInt, Allocator >::GetArrayOfStructs ( ) const
inline

◆ getConstParticleTileData()

template<typename T_ParticleType , int NArrayReal, int NArrayInt, template< class > class Allocator = DefaultAllocator>
ConstParticleTileDataType amrex::ParticleTile< T_ParticleType, NArrayReal, NArrayInt, Allocator >::getConstParticleTileData ( ) const
inline

◆ getNumNeighbors()

template<typename T_ParticleType , int NArrayReal, int NArrayInt, template< class > class Allocator = DefaultAllocator>
int amrex::ParticleTile< T_ParticleType, NArrayReal, NArrayInt, Allocator >::getNumNeighbors ( ) const
inline

◆ getParticleTileData()

template<typename T_ParticleType , int NArrayReal, int NArrayInt, template< class > class Allocator = DefaultAllocator>
ParticleTileDataType amrex::ParticleTile< T_ParticleType, NArrayReal, NArrayInt, Allocator >::getParticleTileData ( )
inline

◆ GetStructOfArrays() [1/2]

template<typename T_ParticleType , int NArrayReal, int NArrayInt, template< class > class Allocator = DefaultAllocator>
SoA& amrex::ParticleTile< T_ParticleType, NArrayReal, NArrayInt, Allocator >::GetStructOfArrays ( )
inline

◆ GetStructOfArrays() [2/2]

template<typename T_ParticleType , int NArrayReal, int NArrayInt, template< class > class Allocator = DefaultAllocator>
const SoA& amrex::ParticleTile< T_ParticleType, NArrayReal, NArrayInt, Allocator >::GetStructOfArrays ( ) const
inline

◆ id() [1/2]

template<typename T_ParticleType , int NArrayReal, int NArrayInt, template< class > class Allocator = DefaultAllocator>
decltype(auto) amrex::ParticleTile< T_ParticleType, NArrayReal, NArrayInt, Allocator >::id ( int  index) &
inline

◆ id() [2/2]

template<typename T_ParticleType , int NArrayReal, int NArrayInt, template< class > class Allocator = DefaultAllocator>
decltype(auto) amrex::ParticleTile< T_ParticleType, NArrayReal, NArrayInt, Allocator >::id ( int  index) const &
inline

◆ NumIntComps()

template<typename T_ParticleType , int NArrayReal, int NArrayInt, template< class > class Allocator = DefaultAllocator>
int amrex::ParticleTile< T_ParticleType, NArrayReal, NArrayInt, Allocator >::NumIntComps ( ) const
inlinenoexcept

◆ numNeighborParticles()

template<typename T_ParticleType , int NArrayReal, int NArrayInt, template< class > class Allocator = DefaultAllocator>
int amrex::ParticleTile< T_ParticleType, NArrayReal, NArrayInt, Allocator >::numNeighborParticles ( ) const
inline

Returns the number of neighbor particles (excluding reals)

◆ numParticles()

template<typename T_ParticleType , int NArrayReal, int NArrayInt, template< class > class Allocator = DefaultAllocator>
int amrex::ParticleTile< T_ParticleType, NArrayReal, NArrayInt, Allocator >::numParticles ( ) const
inline

Returns the number of real particles (excluding neighbors)

◆ NumRealComps()

template<typename T_ParticleType , int NArrayReal, int NArrayInt, template< class > class Allocator = DefaultAllocator>
int amrex::ParticleTile< T_ParticleType, NArrayReal, NArrayInt, Allocator >::NumRealComps ( ) const
inlinenoexcept

◆ numRealParticles()

template<typename T_ParticleType , int NArrayReal, int NArrayInt, template< class > class Allocator = DefaultAllocator>
int amrex::ParticleTile< T_ParticleType, NArrayReal, NArrayInt, Allocator >::numRealParticles ( ) const
inline

Returns the number of real particles (excluding neighbors)

◆ NumRuntimeIntComps()

template<typename T_ParticleType , int NArrayReal, int NArrayInt, template< class > class Allocator = DefaultAllocator>
int amrex::ParticleTile< T_ParticleType, NArrayReal, NArrayInt, Allocator >::NumRuntimeIntComps ( ) const
inlinenoexcept

◆ NumRuntimeRealComps()

template<typename T_ParticleType , int NArrayReal, int NArrayInt, template< class > class Allocator = DefaultAllocator>
int amrex::ParticleTile< T_ParticleType, NArrayReal, NArrayInt, Allocator >::NumRuntimeRealComps ( ) const
inlinenoexcept

◆ numTotalParticles()

template<typename T_ParticleType , int NArrayReal, int NArrayInt, template< class > class Allocator = DefaultAllocator>
int amrex::ParticleTile< T_ParticleType, NArrayReal, NArrayInt, Allocator >::numTotalParticles ( ) const
inline

Returns the total number of particles, real and neighbor.

◆ operator=() [1/2]

template<typename T_ParticleType , int NArrayReal, int NArrayInt, template< class > class Allocator = DefaultAllocator>
ParticleTile& amrex::ParticleTile< T_ParticleType, NArrayReal, NArrayInt, Allocator >::operator= ( ParticleTile< T_ParticleType, NArrayReal, NArrayInt, Allocator > &&  )
defaultnoexcept

◆ operator=() [2/2]

template<typename T_ParticleType , int NArrayReal, int NArrayInt, template< class > class Allocator = DefaultAllocator>
ParticleTile& amrex::ParticleTile< T_ParticleType, NArrayReal, NArrayInt, Allocator >::operator= ( ParticleTile< T_ParticleType, NArrayReal, NArrayInt, Allocator > const &  )
delete

◆ pos() [1/2]

template<typename T_ParticleType , int NArrayReal, int NArrayInt, template< class > class Allocator = DefaultAllocator>
RealType& amrex::ParticleTile< T_ParticleType, NArrayReal, NArrayInt, Allocator >::pos ( int  index,
int  position_index 
) &
inline

◆ pos() [2/2]

template<typename T_ParticleType , int NArrayReal, int NArrayInt, template< class > class Allocator = DefaultAllocator>
RealType amrex::ParticleTile< T_ParticleType, NArrayReal, NArrayInt, Allocator >::pos ( int  index,
int  position_index 
) const &
inline

◆ push_back() [1/2]

template<typename T_ParticleType , int NArrayReal, int NArrayInt, template< class > class Allocator = DefaultAllocator>
template<typename T = ParticleType, std::enable_if_t<!T::is_soa_particle, int > = 0>
void amrex::ParticleTile< T_ParticleType, NArrayReal, NArrayInt, Allocator >::push_back ( const ParticleType p)
inline

Add one particle to this tile.

◆ push_back() [2/2]

template<typename T_ParticleType , int NArrayReal, int NArrayInt, template< class > class Allocator = DefaultAllocator>
template<int NR = NArrayReal, int NI = NArrayInt, std::enable_if_t< NR !=0||NI !=0, int > foo = 0>
void amrex::ParticleTile< T_ParticleType, NArrayReal, NArrayInt, Allocator >::push_back ( const SuperParticleType sp)
inline

Add one particle to this tile.

◆ push_back_int() [1/6]

template<typename T_ParticleType , int NArrayReal, int NArrayInt, template< class > class Allocator = DefaultAllocator>
void amrex::ParticleTile< T_ParticleType, NArrayReal, NArrayInt, Allocator >::push_back_int ( const std::array< int, NArrayInt > &  v)
inline

Add int values to the struct-of-arrays, for all comps at once. This sets the data for one particle.

◆ push_back_int() [2/6]

template<typename T_ParticleType , int NArrayReal, int NArrayInt, template< class > class Allocator = DefaultAllocator>
void amrex::ParticleTile< T_ParticleType, NArrayReal, NArrayInt, Allocator >::push_back_int ( int  comp,
amrex::Vector< int > const &  vec 
)
inline

Add a range of int values to the struct-of-arrays for the given comp. This sets the data for several particles at once.

◆ push_back_int() [3/6]

template<typename T_ParticleType , int NArrayReal, int NArrayInt, template< class > class Allocator = DefaultAllocator>
void amrex::ParticleTile< T_ParticleType, NArrayReal, NArrayInt, Allocator >::push_back_int ( int  comp,
amrex::Vector< int >::const_iterator  beg,
amrex::Vector< int >::const_iterator  end 
)
inline

Add a range of int values to the struct-of-arrays for the given comp. This sets the data for several particles at once.

◆ push_back_int() [4/6]

template<typename T_ParticleType , int NArrayReal, int NArrayInt, template< class > class Allocator = DefaultAllocator>
void amrex::ParticleTile< T_ParticleType, NArrayReal, NArrayInt, Allocator >::push_back_int ( int  comp,
const int beg,
const int end 
)
inline

Add a range of int values to the struct-of-arrays for the given comp. This sets the data for several particles at once.

◆ push_back_int() [5/6]

template<typename T_ParticleType , int NArrayReal, int NArrayInt, template< class > class Allocator = DefaultAllocator>
void amrex::ParticleTile< T_ParticleType, NArrayReal, NArrayInt, Allocator >::push_back_int ( int  comp,
int  v 
)
inline

Add an int value to the struct-of-arrays at index comp. This sets the data for one particle.

◆ push_back_int() [6/6]

template<typename T_ParticleType , int NArrayReal, int NArrayInt, template< class > class Allocator = DefaultAllocator>
void amrex::ParticleTile< T_ParticleType, NArrayReal, NArrayInt, Allocator >::push_back_int ( int  comp,
std::size_t  npar,
int  v 
)
inline

Add npar copies of the int value v to the struct-of-arrays for the given comp. This sets the data for several particles at once.

◆ push_back_real() [1/6]

template<typename T_ParticleType , int NArrayReal, int NArrayInt, template< class > class Allocator = DefaultAllocator>
void amrex::ParticleTile< T_ParticleType, NArrayReal, NArrayInt, Allocator >::push_back_real ( const std::array< ParticleReal, NArrayReal > &  v)
inline

Add Real values to the struct-of-arrays, for all comps at once. This sets the data for one particle.

◆ push_back_real() [2/6]

template<typename T_ParticleType , int NArrayReal, int NArrayInt, template< class > class Allocator = DefaultAllocator>
void amrex::ParticleTile< T_ParticleType, NArrayReal, NArrayInt, Allocator >::push_back_real ( int  comp,
amrex::Vector< amrex::ParticleReal > const &  vec 
)
inline

Add a range of Real values to the struct-of-arrays for the given comp. This sets the data for several particles at once.

◆ push_back_real() [3/6]

template<typename T_ParticleType , int NArrayReal, int NArrayInt, template< class > class Allocator = DefaultAllocator>
void amrex::ParticleTile< T_ParticleType, NArrayReal, NArrayInt, Allocator >::push_back_real ( int  comp,
amrex::Vector< amrex::ParticleReal >::const_iterator  beg,
amrex::Vector< amrex::ParticleReal >::const_iterator  end 
)
inline

Add a range of Real values to the struct-of-arrays for the given comp. This sets the data for several particles at once.

◆ push_back_real() [4/6]

template<typename T_ParticleType , int NArrayReal, int NArrayInt, template< class > class Allocator = DefaultAllocator>
void amrex::ParticleTile< T_ParticleType, NArrayReal, NArrayInt, Allocator >::push_back_real ( int  comp,
const ParticleReal *  beg,
const ParticleReal *  end 
)
inline

Add a range of Real values to the struct-of-arrays for the given comp. This sets the data for several particles at once.

◆ push_back_real() [5/6]

template<typename T_ParticleType , int NArrayReal, int NArrayInt, template< class > class Allocator = DefaultAllocator>
void amrex::ParticleTile< T_ParticleType, NArrayReal, NArrayInt, Allocator >::push_back_real ( int  comp,
ParticleReal  v 
)
inline

Add a Real value to the struct-of-arrays at index comp. This sets the data for one particle.

◆ push_back_real() [6/6]

template<typename T_ParticleType , int NArrayReal, int NArrayInt, template< class > class Allocator = DefaultAllocator>
void amrex::ParticleTile< T_ParticleType, NArrayReal, NArrayInt, Allocator >::push_back_real ( int  comp,
std::size_t  npar,
ParticleReal  v 
)
inline

Add npar copies of the Real value v to the struct-of-arrays for the given comp. This sets the data for several particles at once.

◆ resize()

template<typename T_ParticleType , int NArrayReal, int NArrayInt, template< class > class Allocator = DefaultAllocator>
void amrex::ParticleTile< T_ParticleType, NArrayReal, NArrayInt, Allocator >::resize ( std::size_t  count)
inline

◆ setNumNeighbors()

template<typename T_ParticleType , int NArrayReal, int NArrayInt, template< class > class Allocator = DefaultAllocator>
void amrex::ParticleTile< T_ParticleType, NArrayReal, NArrayInt, Allocator >::setNumNeighbors ( int  num_neighbors)
inline

◆ shrink_to_fit()

template<typename T_ParticleType , int NArrayReal, int NArrayInt, template< class > class Allocator = DefaultAllocator>
void amrex::ParticleTile< T_ParticleType, NArrayReal, NArrayInt, Allocator >::shrink_to_fit ( )
inline

◆ size()

template<typename T_ParticleType , int NArrayReal, int NArrayInt, template< class > class Allocator = DefaultAllocator>
std::size_t amrex::ParticleTile< T_ParticleType, NArrayReal, NArrayInt, Allocator >::size ( ) const
inline

Returns the total number of particles (real and neighbor)

◆ swap()

template<typename T_ParticleType , int NArrayReal, int NArrayInt, template< class > class Allocator = DefaultAllocator>
void amrex::ParticleTile< T_ParticleType, NArrayReal, NArrayInt, Allocator >::swap ( ParticleTile< ParticleType, NArrayReal, NArrayInt, Allocator > &  other)
inlinenoexcept

Member Data Documentation

◆ m_aos_tile

template<typename T_ParticleType , int NArrayReal, int NArrayInt, template< class > class Allocator = DefaultAllocator>
AoS amrex::ParticleTile< T_ParticleType, NArrayReal, NArrayInt, Allocator >::m_aos_tile
private

◆ m_defined

template<typename T_ParticleType , int NArrayReal, int NArrayInt, template< class > class Allocator = DefaultAllocator>
bool amrex::ParticleTile< T_ParticleType, NArrayReal, NArrayInt, Allocator >::m_defined = false
private

◆ m_h_runtime_i_cptrs

template<typename T_ParticleType , int NArrayReal, int NArrayInt, template< class > class Allocator = DefaultAllocator>
amrex::Gpu::HostVector<const int*> amrex::ParticleTile< T_ParticleType, NArrayReal, NArrayInt, Allocator >::m_h_runtime_i_cptrs
mutableprivate

◆ m_h_runtime_i_ptrs

template<typename T_ParticleType , int NArrayReal, int NArrayInt, template< class > class Allocator = DefaultAllocator>
amrex::Gpu::HostVector<int*> amrex::ParticleTile< T_ParticleType, NArrayReal, NArrayInt, Allocator >::m_h_runtime_i_ptrs
private

◆ m_h_runtime_r_cptrs

template<typename T_ParticleType , int NArrayReal, int NArrayInt, template< class > class Allocator = DefaultAllocator>
amrex::Gpu::HostVector<const ParticleReal*> amrex::ParticleTile< T_ParticleType, NArrayReal, NArrayInt, Allocator >::m_h_runtime_r_cptrs
mutableprivate

◆ m_h_runtime_r_ptrs

template<typename T_ParticleType , int NArrayReal, int NArrayInt, template< class > class Allocator = DefaultAllocator>
amrex::Gpu::HostVector<ParticleReal*> amrex::ParticleTile< T_ParticleType, NArrayReal, NArrayInt, Allocator >::m_h_runtime_r_ptrs
private

◆ m_runtime_i_cptrs

template<typename T_ParticleType , int NArrayReal, int NArrayInt, template< class > class Allocator = DefaultAllocator>
amrex::PODVector<const int*, Allocator<const int*> > amrex::ParticleTile< T_ParticleType, NArrayReal, NArrayInt, Allocator >::m_runtime_i_cptrs
mutableprivate

◆ m_runtime_i_ptrs

template<typename T_ParticleType , int NArrayReal, int NArrayInt, template< class > class Allocator = DefaultAllocator>
amrex::PODVector<int*, Allocator<int*> > amrex::ParticleTile< T_ParticleType, NArrayReal, NArrayInt, Allocator >::m_runtime_i_ptrs
private

◆ m_runtime_r_cptrs

template<typename T_ParticleType , int NArrayReal, int NArrayInt, template< class > class Allocator = DefaultAllocator>
amrex::PODVector<const ParticleReal*, Allocator<const ParticleReal*> > amrex::ParticleTile< T_ParticleType, NArrayReal, NArrayInt, Allocator >::m_runtime_r_cptrs
mutableprivate

◆ m_runtime_r_ptrs

template<typename T_ParticleType , int NArrayReal, int NArrayInt, template< class > class Allocator = DefaultAllocator>
amrex::PODVector<ParticleReal*, Allocator<ParticleReal*> > amrex::ParticleTile< T_ParticleType, NArrayReal, NArrayInt, Allocator >::m_runtime_r_ptrs
private

◆ m_soa_tile

template<typename T_ParticleType , int NArrayReal, int NArrayInt, template< class > class Allocator = DefaultAllocator>
SoA amrex::ParticleTile< T_ParticleType, NArrayReal, NArrayInt, Allocator >::m_soa_tile
private

◆ NAI

template<typename T_ParticleType , int NArrayReal, int NArrayInt, template< class > class Allocator = DefaultAllocator>
constexpr int amrex::ParticleTile< T_ParticleType, NArrayReal, NArrayInt, Allocator >::NAI = NArrayInt
staticconstexpr

◆ NAR

template<typename T_ParticleType , int NArrayReal, int NArrayInt, template< class > class Allocator = DefaultAllocator>
constexpr int amrex::ParticleTile< T_ParticleType, NArrayReal, NArrayInt, Allocator >::NAR = NArrayReal
staticconstexpr

◆ NStructInt

template<typename T_ParticleType , int NArrayReal, int NArrayInt, template< class > class Allocator = DefaultAllocator>
constexpr int amrex::ParticleTile< T_ParticleType, NArrayReal, NArrayInt, Allocator >::NStructInt = ParticleType::NInt
staticconstexpr

◆ NStructReal

template<typename T_ParticleType , int NArrayReal, int NArrayInt, template< class > class Allocator = DefaultAllocator>
constexpr int amrex::ParticleTile< T_ParticleType, NArrayReal, NArrayInt, Allocator >::NStructReal = ParticleType::NReal
staticconstexpr

The documentation for this struct was generated from the following file: