AutoPas  3.0.0
Loading...
Searching...
No Matches
Public Attributes | List of all members
autopas::SoASortingData Struct Reference

Precomputed index bounds for iterating a pre-sorted pair of SoA buffers, soa1 as the outer (i) loop and soa2 as the inner (j) loop. More...

#include <PairwiseFunctor.h>

Public Attributes

size_t startI
 First index into soa1 that can interact with soa2, skipping soa1 particles too far below.
 
size_t endI
 Exclusive upper bound index into soa1 that can interact with soa2, skipping soa1 particles too far above.
 
const std::vector< size_t > & maxIndex
 Per-i (soa1) exclusive upper bound index into soa2, skipping soa2 particles too far above particle i.
 
const std::vector< size_t > & minIndex
 Per-i (soa1) inclusive lower bound index into soa2, skipping soa2 particles too far below particle i.
 

Detailed Description

Precomputed index bounds for iterating a pre-sorted pair of SoA buffers, soa1 as the outer (i) loop and soa2 as the inner (j) loop.

Produced by CellFunctor::computeSortingData() and consumed by SoAFunctorPairSorted overrides.

minIndex and endI are needed for the reversed case, i.e. if bidrectional is true and newton3 false.

Note
SoASortingData does not hold its own storage but rather references, meaning the storage must outlive the struct.

Member Data Documentation

◆ endI

size_t autopas::SoASortingData::endI

Exclusive upper bound index into soa1 that can interact with soa2, skipping soa1 particles too far above.

Whether this or startI is the no-op bound depends on the call, see struct doc.

◆ minIndex

const std::vector<size_t>& autopas::SoASortingData::minIndex

Per-i (soa1) inclusive lower bound index into soa2, skipping soa2 particles too far below particle i.

Whether this or maxIndex is the no-op bound depends on the call, see struct doc.


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