OpenFPM  5.2.0
Project that contain the implementation of distributed structures
CellList_gpu_ker< dim, T, ids_type, transform_type, is_sparse > Class Template Reference
+ Inheritance diagram for CellList_gpu_ker< dim, T, ids_type, transform_type, is_sparse >:

Public Types

typedef int yes_is_gpu_ker_celllist
 
typedef int yes_has_check_device_pointer
 Indicate this structure has a function to check the device pointer.
 

Public Member Functions

__host__ __device__ CellList_gpu_ker (openfpm::vector_gpu_ker< aggregate< unsigned int >, memory_traits_inte > numPartInCellPrefixSum, openfpm::vector_gpu_ker< aggregate< unsigned int >, memory_traits_inte > sortedToUnsortedIndex, openfpm::vector_gpu_ker< aggregate< unsigned int >, memory_traits_inte > sortedToSortedIndexNoGhost, openfpm::vector_gpu_ker< aggregate< int >, memory_traits_inte > rcutNeighborCellOffset, openfpm::vector_gpu_ker< aggregate< int >, memory_traits_inte > boxNeighborCellOffset, openfpm::vector_gpu_ker< aggregate< int >, memory_traits_inte > boxNeighborCellOffsetSym, openfpm::array< T, dim > unitCellP2, openfpm::array< ids_type, dim > &numCellDim, openfpm::array< ids_type, dim > &cellPadDim, const transform_type &pointTransform, unsigned int ghostMarker, Box< dim, T > cellListSpaceBox, grid_sm< dim, void > cellListGrid, Point< dim, long int > cellShift)
 
__device__ NN_gpu_it< dim, ids_type > getNNIteratorRadius (const grid_key_dx< dim, ids_type > &cellPosition)
 
__device__ NN_gpu_it< dim, ids_type > getNNIteratorBox (const grid_key_dx< dim, ids_type > &cellPosition)
 
__device__ NN_gpu_it< dim, ids_type > getNNIteratorBoxSym (size_t p, const grid_key_dx< dim, ids_type > &cellPosition)
 
__device__ openfpm::vector_gpu_ker< aggregate< unsigned int >, memory_traits_inte > & getDomainSortIds ()
 
__device__ openfpm::vector_gpu_ker< aggregate< unsigned int >, memory_traits_inte > & getSortToNonSort ()
 
__device__ unsigned int getNCells () const
 Get the number of cells this cell-list contain. More...
 
__device__ unsigned int getNelements (unsigned int cell_id) const
 Return the number of elements in the cell. More...
 
__device__ unsigned int get (unsigned int cell, unsigned int ele)
 Get an element in the cell. More...
 
__device__ unsigned int getGhostMarker ()
 
- Public Member Functions inherited from CellDecomposer_gpu_ker< dim, T, ids_type, transform_type >
__device__ __host__ CellDecomposer_gpu_ker (openfpm::array< T, dim > &unitCellP2, openfpm::array< ids_type, dim > &numCellDiv, openfpm::array< ids_type, dim > &cellPadDim, const transform_type &pointTransform)
 
__device__ __host__ CellDecomposer_gpu_ker (openfpm::array< T, dim > &unitCellP2, openfpm::array< ids_type, dim > &numCellDiv, openfpm::array< ids_type, dim > &cellPadDim, const transform_type &pointTransform, Box< dim, T > cellListSpaceBox, grid_sm< dim, void > cellListGrid, Point< dim, long int > cellShift)
 
__device__ __host__ grid_sm< dim, void > getGrid ()
 
__device__ __host__ void getGridSize (size_t(&sz)[dim]) const
 
template<typename ids_type2 >
__device__ __host__ mem_id getGridLinId (const grid_key_dx< dim, ids_type2 > &gk) const
 
__device__ __host__ grid_key_dx< dim, ids_type > getCell (const Point< dim, T > &xp) const
 
__device__ __host__ unsigned int LinId (const grid_key_dx< dim, ids_type > &k) const
 
__device__ const openfpm::array< T, dim > & get_spacing_c () const
 
__device__ __host__ const openfpm::array< ids_type, dim > & get_div_c () const
 
__device__ __host__ const openfpm::array< ids_type, dim > & get_off () const
 
__device__ __host__ const transform_type & get_t () const
 
__device__ __host__ grid_key_dx< dim > getCellGrid (const T(&pos)[dim]) const
 
__device__ __host__ grid_key_dx< dim > getCellGrid (const Point< dim, T > &pos) const
 
__device__ __host__ size_t ConvertToID (const T(&x)[dim], size_t s) const
 
__device__ __host__ size_t ConvertToID (const Point< dim, T > &x, size_t s, size_t sc=0) const
 

Private Attributes

openfpm::vector_gpu_ker< aggregate< unsigned int >, memory_traits_intenumPartInCellPrefixSum
 starting point for each cell
 
openfpm::vector_gpu_ker< aggregate< unsigned int >, memory_traits_intesortedToUnsortedIndex
 Sorted to non sorted ids conversion.
 
openfpm::vector_gpu_ker< aggregate< unsigned int >, memory_traits_intesortedToSortedIndexNoGhost
 Domain particles ids.
 
openfpm::vector_gpu_ker< aggregate< int >, memory_traits_intercutNeighborCellOffset
 radius cells
 
openfpm::vector_gpu_ker< aggregate< int >, memory_traits_inteboxNeighborCellOffset
 Box cells.
 
openfpm::vector_gpu_ker< aggregate< int >, memory_traits_inteboxNeighborCellOffsetSym
 Box cells.
 
unsigned int ghostMarker
 Ghost particle marker.
 

Detailed Description

template<unsigned int dim, typename T, typename ids_type, typename transform_type, bool is_sparse>
class CellList_gpu_ker< dim, T, ids_type, transform_type, is_sparse >

Definition at line 122 of file CellList_gpu_ker.cuh.

Member Function Documentation

◆ get()

template<unsigned int dim, typename T , typename ids_type , typename transform_type , bool is_sparse>
__device__ unsigned int CellList_gpu_ker< dim, T, ids_type, transform_type, is_sparse >::get ( unsigned int  cell,
unsigned int  ele 
)
inline

Get an element in the cell.

Template Parameters
iproperty to get
Parameters
cellcell id
eleelement id
Returns
The element value

Definition at line 247 of file CellList_gpu_ker.cuh.

◆ getNCells()

template<unsigned int dim, typename T , typename ids_type , typename transform_type , bool is_sparse>
__device__ unsigned int CellList_gpu_ker< dim, T, ids_type, transform_type, is_sparse >::getNCells ( ) const
inline

Get the number of cells this cell-list contain.

Returns
number of cells

Definition at line 220 of file CellList_gpu_ker.cuh.

◆ getNelements()

template<unsigned int dim, typename T , typename ids_type , typename transform_type , bool is_sparse>
__device__ unsigned int CellList_gpu_ker< dim, T, ids_type, transform_type, is_sparse >::getNelements ( unsigned int  cell_id) const
inline

Return the number of elements in the cell.

Parameters
cell_idid of the cell
Returns
number of elements in the cell

Definition at line 232 of file CellList_gpu_ker.cuh.


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