template<unsigned int dim, typename T, typename transform, typename base>
class CellList< dim, T, MEMORY, transform, base >
Class for MEMORY-WISE cell list implementation.
This class implement the MEMORY-WISE cell list The memory allocation is small. The memory allocation is (in byte) Size = O(N*size_of(ele))
Where
N = total number of elements M = number of cells sizeof(ele) = the size of the element the cell list is storing, example if the cell list store the particle id (64bit) is 8 byte
- Note
- It is useful when M >> N
- Template Parameters
-
dim | Dimensionality of the space |
T | type of the space float, double, complex |
Definition at line 34 of file CellListMem.hpp.
|
grid_sm< dim, void > & | getGrid () |
| Return the underlying grid information of the cell list. More...
|
|
void | Initialize (Box< dim, T > &box, size_t(&div)[dim], Point< dim, T > &orig, const size_t pad=1) |
|
void | Initialize (SpaceBox< dim, T > &box, size_t(&div)[dim], Point< dim, T > &orig, const size_t pad=1) |
|
| CellList () |
| Default constructor. More...
|
|
| CellList (Box< dim, T > &box, size_t(&div)[dim], Point< dim, T > &orig, const size_t pad=1) |
| Cell list. More...
|
|
| CellList (SpaceBox< dim, T > &box, size_t(&div)[dim], Point< dim, T > &orig, const size_t pad=1) |
| Cell list. More...
|
|
void | add (const T(&pos)[dim], typename base::value_type ele) |
| Add an element in the cell list. More...
|
|
void | add (const Point< dim, T > &pos, typename base::value_type ele) |
| Add an element in the cell list. More...
|
|
void | remove (size_t cell, size_t ele) |
| remove an element from the cell More...
|
|
size_t | getNelements (size_t cell_id) |
| Return the number of element in the cell. More...
|
|
auto | get (size_t cell, size_t ele) -> decltype(cl_base[cell].get(ele)) |
| Get an element in the cell. More...
|
|
void | swap (CellList< dim, T, MEMORY, base > &cl) |
| Swap the memory. More...
|
|
CellIterator< CellList< dim, T,
MEMORY, base > > | getIterator (size_t cell) |
| Get the Cell iterator. More...
|
|
template<unsigned int impl> |
CellNNIterator< dim, CellList
< dim, T, MEMORY, base >, FULL,
impl > | getNNIterator (size_t cell) |
| Get the Nearest Neighborhood iterator. More...
|
|
template<unsigned int impl> |
CellNNIterator< dim, CellList
< dim, T, MEMORY, base >, SYM,
impl > | getNNIteratorSym (size_t cell) |
|
template<unsigned int impl> |
CellNNIterator< dim, CellList
< dim, T, MEMORY, base >, CRS,
impl > | getNNIteratorCross (size_t cell) |
|