#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 | |
| ParticleTile & | operator= (ParticleTile const &)=delete |
| ParticleTile & | operator= (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, Arena *a_arena=nullptr) |
| decltype(auto) | id (int index) & |
| decltype(auto) | id (int index) const & |
| decltype(auto) | cpu (int index) & |
| decltype(auto) | cpu (int index) const & |
| RealType & | pos (int index, int position_index) & |
| RealType | pos (int index, int position_index) const & |
| AoS & | GetArrayOfStructs () |
| const AoS & | GetArrayOfStructs () const |
| SoA & | GetStructOfArrays () |
| const SoA & | GetStructOfArrays () const |
| bool | empty () const |
| std::size_t | size () const |
| Returns the total number of particles (real and neighbor) | |
| int | numParticles () const |
| Returns the number of real particles (excluding neighbors) | |
| int | numRealParticles () const |
| Returns the number of real particles (excluding neighbors) | |
| int | numNeighborParticles () const |
| Returns the number of neighbor particles (excluding reals) | |
| int | numTotalParticles () const |
| Returns the total number of particles, real and neighbor. | |
| void | setNumNeighbors (int num_neighbors) |
| int | getNumNeighbors () const |
| void | resize (std::size_t count, GrowthStrategy strategy=GrowthStrategy::Poisson) |
| void | reserve (std::size_t capacity, GrowthStrategy strategy=GrowthStrategy::Poisson) |
| 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 |
| static constexpr bool | has_polymorphic_allocator |
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 |
| using amrex::ParticleTile< T_ParticleType, NArrayReal, NArrayInt, Allocator >::AllocatorType = Allocator<T> |
| using amrex::ParticleTile< T_ParticleType, NArrayReal, NArrayInt, Allocator >::AoS = std::conditional_t< ParticleType::is_soa_particle, ThisParticleTileHasNoAoS, ArrayOfStructs<ParticleType, Allocator> > |
| using amrex::ParticleTile< T_ParticleType, NArrayReal, NArrayInt, Allocator >::ConstParticleTileDataType = ConstParticleTileData<StorageParticleType, NArrayReal, NArrayInt> |
| using amrex::ParticleTile< T_ParticleType, NArrayReal, NArrayInt, Allocator >::IntVector = typename SoA::IntVector |
| using amrex::ParticleTile< T_ParticleType, NArrayReal, NArrayInt, Allocator >::ParticleTileDataType = ParticleTileData<StorageParticleType, NArrayReal, NArrayInt> |
| using amrex::ParticleTile< T_ParticleType, NArrayReal, NArrayInt, Allocator >::ParticleType = T_ParticleType |
| using amrex::ParticleTile< T_ParticleType, NArrayReal, NArrayInt, Allocator >::RealType = typename ParticleType::RealType |
| using amrex::ParticleTile< T_ParticleType, NArrayReal, NArrayInt, Allocator >::RealVector = typename SoA::RealVector |
| 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> > |
| using amrex::ParticleTile< T_ParticleType, NArrayReal, NArrayInt, Allocator >::StorageParticleType = typename ParticleType::StorageParticleType |
| using amrex::ParticleTile< T_ParticleType, NArrayReal, NArrayInt, Allocator >::SuperParticleType = Particle<NStructReal + NArrayReal, NStructInt + NArrayInt> |
|
default |
|
default |
|
delete |
|
defaultnoexcept |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inlinenoexcept |
|
inline |
Returns the number of neighbor particles (excluding reals)
|
inline |
Returns the number of real particles (excluding neighbors)
|
inlinenoexcept |
|
inline |
Returns the number of real particles (excluding neighbors)
|
inlinenoexcept |
|
inlinenoexcept |
|
inline |
Returns the total number of particles, real and neighbor.
|
defaultnoexcept |
|
delete |
|
inline |
|
inline |
|
inline |
Add one particle to this tile.
|
inline |
Add one particle to this tile.
|
inline |
Add int values to the struct-of-arrays, for all comps at once. This sets the data for one particle.
|
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.
|
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.
|
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.
|
inline |
Add an int value to the struct-of-arrays at index comp. This sets the data for one particle.
|
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.
|
inline |
Add Real values to the struct-of-arrays, for all comps at once. This sets the data for one particle.
|
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.
|
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.
|
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.
|
inline |
Add a Real value to the struct-of-arrays at index comp. This sets the data for one particle.
|
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.
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
Returns the total number of particles (real and neighbor)
|
inlinenoexcept |
|
staticconstexpr |
|
private |
|
private |
|
mutableprivate |
|
private |
|
mutableprivate |
|
private |
|
mutableprivate |
|
private |
|
mutableprivate |
|
private |
|
private |
|
staticconstexpr |
|
staticconstexpr |
|
staticconstexpr |
|
staticconstexpr |