Block-Structured AMR Software Framework
Loading...
Searching...
No Matches
AMReX_Particle.H File Reference
#include <AMReX_Config.H>
#include <AMReX_FArrayBox.H>
#include <AMReX_Geometry.H>
#include <AMReX_IntVect.H>
#include <AMReX_ParmParse.H>
#include <AMReX_REAL.H>
#include <AMReX_RealVect.H>
#include <type_traits>

Go to the source code of this file.

Classes

struct  amrex::ParticleIDWrapper< T >
struct  amrex::ParticleCPUWrapper
struct  amrex::ConstParticleIDWrapper
struct  amrex::ConstParticleCPUWrapper
struct  amrex::ParticleBase< T, NReal, NInt >
struct  amrex::ParticleBase< T, 0, NInt >
struct  amrex::ParticleBase< T, NReal, 0 >
struct  amrex::ParticleBase< T, 0, 0 >
struct  amrex::SoAParticleBase
struct  amrex::Particle< T_NReal, T_NInt >
 The struct used to store particles. More...

Namespaces

namespace  amrex
namespace  amrex::LongParticleIds
namespace  amrex::ParticleIdCpus
namespace  amrex::particle_impl

Functions

__host__ __device__ Long amrex::particle_impl::unpack_id (const uint64_t idcpu) noexcept
__host__ __device__ int amrex::particle_impl::unpack_cpu (const uint64_t idcpu) noexcept
__host__ __device__ void amrex::particle_impl::pack_id (uint64_t &idcpu, const Long id) noexcept
__host__ __device__ void amrex::particle_impl::pack_cpu (uint64_t &idcpu, const int cpu) noexcept
__host__ __device__ void amrex::particle_impl::make_invalid (uint64_t &idcpu) noexcept
template<typename T_SIMD, typename T_Mask>
__host__ __device__ void amrex::particle_impl::make_invalid (T_SIMD &idcpu, T_Mask const &mask) noexcept
__host__ __device__ void amrex::particle_impl::make_valid (uint64_t &idcpu) noexcept
template<typename T_SIMD, typename T_Mask>
__host__ __device__ void amrex::particle_impl::make_valid (T_SIMD &idcpu, T_Mask const &mask) noexcept
__host__ __device__ bool amrex::particle_impl::is_valid (const uint64_t idcpu) noexcept
__host__ __device__ std::uint64_t amrex::SetParticleIDandCPU (Long id, int cpu) noexcept
template<int NReal, int NInt>
std::ostream & amrex::operator<< (std::ostream &os, const Particle< NReal, NInt > &p)
template<int NReal>
std::ostream & amrex::operator<< (std::ostream &os, const Particle< NReal, 0 > &p)
template<int NInt>
std::ostream & amrex::operator<< (std::ostream &os, const Particle< 0, NInt > &p)
template<int NReal = 0, int NInt = 0>
std::ostream & amrex::operator<< (std::ostream &os, const Particle< 0, 0 > &p)

Variables

constexpr Long amrex::LongParticleIds::GhostParticleID = 549755813887L
constexpr Long amrex::LongParticleIds::VirtualParticleID = GhostParticleID - 1
constexpr Long amrex::LongParticleIds::LastParticleID = GhostParticleID - 2
constexpr Long amrex::LongParticleIds::DoSplitParticleID = GhostParticleID - 3
constexpr Long amrex::LongParticleIds::NoSplitParticleID = GhostParticleID - 4
constexpr std::uint64_t amrex::ParticleIdCpus::Invalid = 16777216
template<int NReal, int NInt>
Long amrex::Particle< NReal, NInt >::the_next_id = 1