21template <
class ParticleCell,
class PairwiseFunctor>
35 DataLayoutOption dataLayout,
bool useNewton3)
37 _functor(pairwiseFunctor),
38 _clusterFunctor(pairwiseFunctor, clusterSize, dataLayout, useNewton3) {}
40 [[nodiscard]] TraversalOption
getTraversalType()
const override {
return TraversalOption::vcl_cluster_iteration; }
62 _clusterFunctor.processCluster(cluster,
false);
65 clusterList.template traverseClusters<true>(_clusterTraverseFunctor);
PairwiseFunctor class.
Definition: PairwiseFunctor.h:31
Particle_T ParticleType
The particle type for this cell.
Definition: ParticleCell.h:56
This interface serves as a common parent class for all traversals.
Definition: TraversalInterface.h:18
DataLayoutOption _dataLayout
The datalayout used by this traversal.
Definition: TraversalInterface.h:75
bool _useNewton3
If this traversal makes use of newton3.
Definition: TraversalInterface.h:80
Traversal for VerletClusterLists.
Definition: VCLClusterIterationTraversal.h:23
TraversalOption getTraversalType() const override
Return a enum representing the name of the traversal class.
Definition: VCLClusterIterationTraversal.h:40
void initTraversal() override
Initializes the traversal.
Definition: VCLClusterIterationTraversal.h:46
void traverseParticles() override
Traverse the particles by pairs, triplets etc.
Definition: VCLClusterIterationTraversal.h:58
void endTraversal() override
Finalizes the traversal.
Definition: VCLClusterIterationTraversal.h:52
VCLClusterIterationTraversal(PairwiseFunctor *pairwiseFunctor, size_t clusterSize, DataLayoutOption dataLayout, bool useNewton3)
Constructor of the VCLClusterIterationTraversal.
Definition: VCLClusterIterationTraversal.h:34
bool isApplicable() const override
Checks if the traversal is applicable to the current state of the domain.
Definition: VCLClusterIterationTraversal.h:42
Interface for traversals of the VerletClusterLists container.
Definition: VCLTraversalInterface.h:20
This class represents a cluster in the VerletClusterLists container.
Definition: Cluster.h:26
Provides methods to traverse a single cluster and a pair of clusters.
Definition: VCLClusterFunctor.h:21
This is the main namespace of AutoPas.
Definition: AutoPasDecl.h:32