Helper function and type aliases for the C08 base step traversal. More...
Namespaces | |
namespace | internal |
Internal namespace of LCC08CellHandlerUtility containing private functions. | |
Typedefs | |
using | OffsetPairSorting = std::tuple< unsigned long, unsigned long, std::array< double, 3 > > |
Type Alias for the C08 base step containg cell offsets. | |
using | OffsetPair = std::pair< unsigned long, unsigned long > |
An offset is the distance from a base cell to another cell in one dimensional coordinates. | |
using | OffsetPairVector = std::vector< OffsetPair > |
A vector of OffsetPairs. | |
template<C08OffsetMode Mode> | |
using | OffsetPairType = std::vector< std::conditional_t< Mode==C08OffsetMode::c08CellPairsSorting, OffsetPairSorting, std::conditional_t< Mode==C08OffsetMode::c04CellPairs, OffsetPairVector, OffsetPair > > > |
Template Magic Parameter Alias which links the types OffsetPairSorting , OffsetPair and OffsetPairVector . | |
Enumerations | |
enum class | C08OffsetMode { c08CellPairs = 0 , c08CellPairsSorting = 1 , c04CellPairs = 2 } |
Compile Time Modes for the function autopas::LCC08CellHandlerUtility::computePairwiseCellOffsetsC08. More... | |
Functions | |
template<C08OffsetMode Mode> | |
OffsetPairType< Mode > | computePairwiseCellOffsetsC08 (const std::array< unsigned long, 3 > &cellsPerDimension, const std::array< double, 3 > &cellLength, double interactionLength) |
Computes the cell pair offsets for the C08 base step and the normalized vector between pair of cell-centers, which is later used for early stopping the evaluation of the pairwise cell interactions due to being out-of-reach. | |
Helper function and type aliases for the C08 base step traversal.
using autopas::LCC08CellHandlerUtility::OffsetPair = typedef std::pair<unsigned long, unsigned long> |
An offset is the distance from a base cell to another cell in one dimensional coordinates.
Hence, this is a pair consisting of.
using autopas::LCC08CellHandlerUtility::OffsetPairSorting = typedef std::tuple<unsigned long, unsigned long, std::array<double, 3> > |
Type Alias for the C08 base step containg cell offsets.
An offset is the distance from a base cell to another cell in one dimensional coordinates. A triplet consisting of:
|
strong |
Compile Time Modes for the function autopas::LCC08CellHandlerUtility::computePairwiseCellOffsetsC08.
OffsetPairType
OffsetPairType< Mode > autopas::LCC08CellHandlerUtility::computePairwiseCellOffsetsC08 | ( | const std::array< unsigned long, 3 > & | cellsPerDimension, |
const std::array< double, 3 > & | cellLength, | ||
double | interactionLength | ||
) |
Computes the cell pair offsets for the C08 base step and the normalized vector between pair of cell-centers, which is later used for early stopping the evaluation of the pairwise cell interactions due to being out-of-reach.
Mode | Determines the concret return type (see C08OffsetMode |
cellsPerDimension | the number of cells per dimension |
cellLength | the length of a cell in CellBlock3D. |
interactionLength | the interaction length consisting of cutoff + skin |