Block-Structured AMR Software Framework
Loading...
Searching...
No Matches
amrex::RTSoAParticle< RType, IType > Struct Template Reference

#include <AMReX_ParticleTileRT.H>

Public Types

using PTD = ParticleTileDataRT<RType, IType>
using ConstType = RTSoAParticle<std::add_const_t<RType>, std::add_const_t<IType>>
using size_type = typename PTD::size_type
using RealType = RType
using IntType = IType

Public Member Functions

__host__ __device__ RTSoAParticle (PTD const &ptd, size_type i) noexcept
template<class aRType, class aIType>
__host__ __device__ RTSoAParticle (RTSoAParticle< aRType, aIType > const &rhs) noexcept
__host__ __device__ decltype(auto) cpu () const &
__host__ __device__ decltype(auto) id () const &
__host__ __device__ decltype(auto) idcpu () const &
__host__ __device__ RType & rdata (const int comp_index) const &
__host__ __device__ IType & idata (const int comp_index) const &
__host__ __device__ RealVect pos () const &
__host__ __device__ RType & pos (int position_index) const &

Static Public Member Functions

static Long NextID ()
static Long UnprotectedNextID ()
 This version can only be used inside omp critical.
static void NextID (Long nextid)
 Reset on restart.

Static Public Attributes

static constexpr bool is_constsoa_particle = PTD::is_const
static constexpr int NReal = 0
static constexpr int NInt = 0
static constexpr bool is_soa_particle = true
static constexpr bool is_rtsoa_particle = true

Friends

template<class aRType, class aIType>
struct RTSoAParticle

Member Typedef Documentation

◆ ConstType

template<class RType, class IType>
using amrex::RTSoAParticle< RType, IType >::ConstType = RTSoAParticle<std::add_const_t<RType>, std::add_const_t<IType>>

◆ IntType

template<class RType, class IType>
using amrex::RTSoAParticle< RType, IType >::IntType = IType

◆ PTD

template<class RType, class IType>
using amrex::RTSoAParticle< RType, IType >::PTD = ParticleTileDataRT<RType, IType>

◆ RealType

template<class RType, class IType>
using amrex::RTSoAParticle< RType, IType >::RealType = RType

◆ size_type

template<class RType, class IType>
using amrex::RTSoAParticle< RType, IType >::size_type = typename PTD::size_type

Constructor & Destructor Documentation

◆ RTSoAParticle() [1/2]

template<class RType, class IType>
__host__ __device__ amrex::RTSoAParticle< RType, IType >::RTSoAParticle ( PTD const & ptd,
size_type i )
inlinenoexcept

◆ RTSoAParticle() [2/2]

template<class RType, class IType>
template<class aRType, class aIType>
__host__ __device__ amrex::RTSoAParticle< RType, IType >::RTSoAParticle ( RTSoAParticle< aRType, aIType > const & rhs)
inlinenoexcept

Member Function Documentation

◆ cpu()

template<class RType, class IType>
__host__ __device__ decltype(auto) amrex::RTSoAParticle< RType, IType >::cpu ( ) const &
inlinenodiscard

◆ id()

template<class RType, class IType>
__host__ __device__ decltype(auto) amrex::RTSoAParticle< RType, IType >::id ( ) const &
inlinenodiscard

◆ idata()

template<class RType, class IType>
__host__ __device__ IType & amrex::RTSoAParticle< RType, IType >::idata ( const int comp_index) const &
inlinenodiscard

◆ idcpu()

template<class RType, class IType>
__host__ __device__ decltype(auto) amrex::RTSoAParticle< RType, IType >::idcpu ( ) const &
inlinenodiscard

◆ NextID() [1/2]

template<class RType, class IType>
Long amrex::RTSoAParticle< RType, IType >::NextID ( )
static

◆ NextID() [2/2]

template<class RType, class IType>
void amrex::RTSoAParticle< RType, IType >::NextID ( Long nextid)
static

Reset on restart.

Parameters
nextid

◆ pos() [1/2]

template<class RType, class IType>
__host__ __device__ RealVect amrex::RTSoAParticle< RType, IType >::pos ( ) const &
inlinenodiscard

◆ pos() [2/2]

template<class RType, class IType>
__host__ __device__ RType & amrex::RTSoAParticle< RType, IType >::pos ( int position_index) const &
inlinenodiscard

◆ rdata()

template<class RType, class IType>
__host__ __device__ RType & amrex::RTSoAParticle< RType, IType >::rdata ( const int comp_index) const &
inlinenodiscard

◆ UnprotectedNextID()

template<class RType, class IType>
Long amrex::RTSoAParticle< RType, IType >::UnprotectedNextID ( )
static

This version can only be used inside omp critical.

◆ RTSoAParticle

template<class RType, class IType>
template<class aRType, class aIType>
friend struct RTSoAParticle
friend

Member Data Documentation

◆ is_constsoa_particle

template<class RType, class IType>
bool amrex::RTSoAParticle< RType, IType >::is_constsoa_particle = PTD::is_const
staticconstexpr

◆ is_rtsoa_particle

template<class RType, class IType>
bool amrex::RTSoAParticle< RType, IType >::is_rtsoa_particle = true
staticconstexpr

◆ is_soa_particle

template<class RType, class IType>
bool amrex::RTSoAParticle< RType, IType >::is_soa_particle = true
staticconstexpr

◆ NInt

template<class RType, class IType>
int amrex::RTSoAParticle< RType, IType >::NInt = 0
staticconstexpr

◆ NReal

template<class RType, class IType>
int amrex::RTSoAParticle< RType, IType >::NReal = 0
staticconstexpr

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