template<unsigned int dim, typename Cell, typename vector_pos_type, int NNc_size, unsigned int impl>
class CellNNIteratorSymMP< dim, Cell, vector_pos_type, NNc_size, impl >
Symmetric iterator for the neighborhood of the cell structures.
In general you never create it directly but you get it from the CellList structures
It iterate across all the element of the selected cell and the near cells.
- Note
- if we query the neighborhood of p and q is the neighborhood of p when we will query the neighborhood of q p is not present. This is useful to implement formula like \( \sum_{q = neighborhood(p) and p <= q} \)
- Template Parameters
-
dim | dimensionality of the space where the cell live |
Cell | cell type on which the iterator is working |
NNc_size | neighborhood size |
impl | implementation specific options NO_CHECK do not do check on access, SAFE do check on access |
Definition at line 254 of file CellNNIterator.hpp.
|
| __attribute__ ((always_inline)) inline CellNNIteratorSymMP(size_t cell |
| Cell NN iterator. More...
|
|
size_t const NNc_array< dim, NNc_size > Cell const vector_pos_type const vector_pos_type | impl (cell, NNc, cl) |
|
size_t const NNc_array< dim, NNc_size > Cell const vector_pos_type const vector_pos_type | p (p) |
|
size_t const NNc_array< dim, NNc_size > Cell const vector_pos_type const vector_pos_type | v_p1 (v_p1) |
|
size_t const NNc_array< dim, NNc_size > Cell const vector_pos_type const vector_pos_type | v_p2 (v_p2) |
|
| __attribute__ ((always_inline)) inline CellNNIteratorSymMP< dim |
| take the next element More...
|
|
impl & | operator++ () |
|
| __attribute__ ((always_inline)) inline CellNNIterator(size_t cell |
| Cell NN iterator. More...
|
|
const NNc_array< dim, NNc_size > Cell | cell (cell) |
|
const NNc_array< dim, NNc_size > Cell | cell_id (NNc[NNc_id]+cell) |
|
const NNc_array< dim, NNc_size > Cell | cl (cl) |
|
const NNc_array< dim, NNc_size > Cell | NNc (NNc) |
|
| __attribute__ ((always_inline)) inline bool isNext() |
| Check if there is the next element. More...
|
|
| __attribute__ ((always_inline)) inline CellNNIterator &operator++() |
| take the next element More...
|
|
| __attribute__ ((always_inline)) inline const typename Cell |
| Get the value of the cell. More...
|
|
|
size_t const NNc_array< dim, NNc_size > & | NNc |
|
size_t const NNc_array< dim, NNc_size > Cell & | cl |
|
size_t const NNc_array< dim, NNc_size > Cell const vector_pos_type & | v_p1 |
|
size_t const NNc_array< dim, NNc_size > Cell const vector_pos_type const vector_pos_type & | v_p2:CellNNIterator<dim |
|
size_t const NNc_array< dim, NNc_size > Cell const vector_pos_type const vector_pos_type | Cell |
|
size_t const NNc_array< dim, NNc_size > Cell const vector_pos_type const vector_pos_type | NNc_size |
|
| Cell |
|
| vector_pos_type |
|
| NNc_size |
|
const NNc_array< dim, NNc_size > Cell & | cl:NNc_id(0) |
|