Block-Structured AMR Software Framework
Loading...
Searching...
No Matches
amrex::NeighborList< ParticleType > Class Template Reference

#include <AMReX_NeighborList.H>

Public Types

using Traits = detail::NeighborParticleTypeTraits<ParticleType>
using PTDType = typename Traits::PTDType
using ConstPTDType = typename Traits::ConstPTDType
using BinType = typename Traits::BinType

Public Member Functions

template<class PTile, class CheckPair>
void build (PTile &ptile, const amrex::Box &bx, const amrex::Geometry &geom, CheckPair &&check_pair, int num_cells=1)
template<class PTile, class CheckPair>
void build (PTile &ptile, CheckPair &&check_pair, const Gpu::DeviceVector< int > &off_bins_v, const Gpu::DeviceVector< GpuArray< Real, 3 > > &dxi_v, const Gpu::DeviceVector< GpuArray< Real, 3 > > &plo_v, const Gpu::DeviceVector< Dim3 > &lo_v, const Gpu::DeviceVector< Dim3 > &hi_v, int num_cells=1, int num_bin_types=1, int *bin_type_array=nullptr)
template<class SrcTile, class TargetTile, class CheckPair>
void build (SrcTile &src_tile, TargetTile &target_tile, CheckPair const &check_pair, const Gpu::DeviceVector< int > &off_bins_v, const Gpu::DeviceVector< GpuArray< Real, 3 > > &dxi_v, const Gpu::DeviceVector< GpuArray< Real, 3 > > &plo_v, const Gpu::DeviceVector< Dim3 > &lo_v, const Gpu::DeviceVector< Dim3 > &hi_v, int num_cells=1, int num_bin_types=1, int *bin_type_array=nullptr)
NeighborData< ParticleType > data ()
int numParticles () const
Gpu::DeviceVector< unsigned int > & GetOffsets ()
const Gpu::DeviceVector< unsigned int > & GetOffsets () const
Gpu::DeviceVector< unsigned int > & GetCounts ()
const Gpu::DeviceVector< unsigned int > & GetCounts () const
Gpu::DeviceVector< unsigned int > & GetList ()
const Gpu::DeviceVector< unsigned int > & GetList () const
void print ()

Protected Attributes

PTDType m_ptile_data
ConstPTDType m_const_ptile_data
Gpu::DeviceVector< unsigned int > m_nbor_offsets
Gpu::DeviceVector< unsigned int > m_nbor_list
Gpu::DeviceVector< unsigned int > m_nbor_counts
DenseBins< BinType > m_bins

Member Typedef Documentation

◆ BinType

template<class ParticleType>
using amrex::NeighborList< ParticleType >::BinType = typename Traits::BinType

◆ ConstPTDType

template<class ParticleType>
using amrex::NeighborList< ParticleType >::ConstPTDType = typename Traits::ConstPTDType

◆ PTDType

template<class ParticleType>
using amrex::NeighborList< ParticleType >::PTDType = typename Traits::PTDType

◆ Traits

template<class ParticleType>
using amrex::NeighborList< ParticleType >::Traits = detail::NeighborParticleTypeTraits<ParticleType>

Member Function Documentation

◆ build() [1/3]

template<class ParticleType>
template<class PTile, class CheckPair>
void amrex::NeighborList< ParticleType >::build ( PTile & ptile,
CheckPair && check_pair,
const Gpu::DeviceVector< int > & off_bins_v,
const Gpu::DeviceVector< GpuArray< Real, 3 > > & dxi_v,
const Gpu::DeviceVector< GpuArray< Real, 3 > > & plo_v,
const Gpu::DeviceVector< Dim3 > & lo_v,
const Gpu::DeviceVector< Dim3 > & hi_v,
int num_cells = 1,
int num_bin_types = 1,
int * bin_type_array = nullptr )
inline

◆ build() [2/3]

template<class ParticleType>
template<class PTile, class CheckPair>
void amrex::NeighborList< ParticleType >::build ( PTile & ptile,
const amrex::Box & bx,
const amrex::Geometry & geom,
CheckPair && check_pair,
int num_cells = 1 )
inline

◆ build() [3/3]

template<class ParticleType>
template<class SrcTile, class TargetTile, class CheckPair>
void amrex::NeighborList< ParticleType >::build ( SrcTile & src_tile,
TargetTile & target_tile,
CheckPair const & check_pair,
const Gpu::DeviceVector< int > & off_bins_v,
const Gpu::DeviceVector< GpuArray< Real, 3 > > & dxi_v,
const Gpu::DeviceVector< GpuArray< Real, 3 > > & plo_v,
const Gpu::DeviceVector< Dim3 > & lo_v,
const Gpu::DeviceVector< Dim3 > & hi_v,
int num_cells = 1,
int num_bin_types = 1,
int * bin_type_array = nullptr )
inline

◆ data()

template<class ParticleType>
NeighborData< ParticleType > amrex::NeighborList< ParticleType >::data ( )
inline

◆ GetCounts() [1/2]

template<class ParticleType>
Gpu::DeviceVector< unsigned int > & amrex::NeighborList< ParticleType >::GetCounts ( )
inlinenodiscard

◆ GetCounts() [2/2]

template<class ParticleType>
const Gpu::DeviceVector< unsigned int > & amrex::NeighborList< ParticleType >::GetCounts ( ) const
inlinenodiscard

◆ GetList() [1/2]

template<class ParticleType>
Gpu::DeviceVector< unsigned int > & amrex::NeighborList< ParticleType >::GetList ( )
inlinenodiscard

◆ GetList() [2/2]

template<class ParticleType>
const Gpu::DeviceVector< unsigned int > & amrex::NeighborList< ParticleType >::GetList ( ) const
inlinenodiscard

◆ GetOffsets() [1/2]

template<class ParticleType>
Gpu::DeviceVector< unsigned int > & amrex::NeighborList< ParticleType >::GetOffsets ( )
inlinenodiscard

◆ GetOffsets() [2/2]

template<class ParticleType>
const Gpu::DeviceVector< unsigned int > & amrex::NeighborList< ParticleType >::GetOffsets ( ) const
inlinenodiscard

◆ numParticles()

template<class ParticleType>
int amrex::NeighborList< ParticleType >::numParticles ( ) const
inlinenodiscard

◆ print()

template<class ParticleType>
void amrex::NeighborList< ParticleType >::print ( )
inline

Member Data Documentation

◆ m_bins

template<class ParticleType>
DenseBins<BinType> amrex::NeighborList< ParticleType >::m_bins
protected

◆ m_const_ptile_data

template<class ParticleType>
ConstPTDType amrex::NeighborList< ParticleType >::m_const_ptile_data
protected

◆ m_nbor_counts

template<class ParticleType>
Gpu::DeviceVector<unsigned int> amrex::NeighborList< ParticleType >::m_nbor_counts
protected

◆ m_nbor_list

template<class ParticleType>
Gpu::DeviceVector<unsigned int> amrex::NeighborList< ParticleType >::m_nbor_list
protected

◆ m_nbor_offsets

template<class ParticleType>
Gpu::DeviceVector<unsigned int> amrex::NeighborList< ParticleType >::m_nbor_offsets
protected

◆ m_ptile_data

template<class ParticleType>
PTDType amrex::NeighborList< ParticleType >::m_ptile_data
protected

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