This class provides the base for traversals using the c08 base step, but rather use 4 instead of 8 colors for domain coloring.
More...
#include <LCC04SoACellHandler.h>
|
| LCC04SoACellHandler (PairwiseFunctor *pairwiseFunctor, const std::array< unsigned long, 3 > &cellsPerDimension, double interactionLength, const std::array< double, 3 > &cellLength, DataLayoutOption dataLayout, bool useNewton3, const std::array< unsigned long, 3 > &overlap={1ul, 1ul, 1ul}) |
| Constructor of the c04 traversal with combined SoA buffers.
|
|
void | processBaseCell (std::vector< ParticleCell > &cells, unsigned long x, unsigned long y, unsigned long z) |
| Computes one interaction for each spacial direction based on the lower left frontal corner of a 2x2x2 block of cells.
|
|
void | resizeBuffers () |
| Resize all buffers to match the current number of threads.
|
|
This class provides the base for traversals using the c08 base step, but rather use 4 instead of 8 colors for domain coloring.
Using 4 instead of 8 colors allows combination of SoA buffers.
The base step processBaseCell() computes one set of pairwise interactions between two cells for each spatial direction based on the baseIndex. After executing the base step on all cells all pairwise interactions for all cells are done.
- Template Parameters
-
◆ LCC04SoACellHandler()
autopas::LCC04SoACellHandler< ParticleCell, PairwiseFunctor >::LCC04SoACellHandler |
( |
PairwiseFunctor * |
pairwiseFunctor, |
|
|
const std::array< unsigned long, 3 > & |
cellsPerDimension, |
|
|
double |
interactionLength, |
|
|
const std::array< double, 3 > & |
cellLength, |
|
|
DataLayoutOption |
dataLayout, |
|
|
bool |
useNewton3, |
|
|
const std::array< unsigned long, 3 > & |
overlap = {1ul, 1ul, 1ul} |
|
) |
| |
|
inlineexplicit |
Constructor of the c04 traversal with combined SoA buffers.
- Parameters
-
pairwiseFunctor | The functor that defines the interaction of two particles. |
cellsPerDimension | The number of cells per dimension. |
interactionLength | Interaction length (cutoff + skin). |
cellLength | cell length. |
overlap | number of overlapping cells in each direction as result from cutoff and cellLength. |
dataLayout | The data layout with which this traversal should be initialized. |
useNewton3 | Parameter to specify whether the traversal makes use of newton3 or not. |
◆ processBaseCell()
Computes one interaction for each spacial direction based on the lower left frontal corner of a 2x2x2 block of cells.
- Parameters
-
cells | vector of all cells. |
x | cell index x-axis |
y | cell index y-axis |
z | cell index z-axis |
The documentation for this class was generated from the following file: