This is the main namespace of AutoPas. More...
Namespaces | |
namespace | AcquisitionFunction |
Functions used for acquisition prediction used in Gaussian Process models. | |
namespace | AutopasGeneratedFuzzyRuleSyntax |
Namespace that contains the generated parser for FuzzyRuleFiles. | |
namespace | AutopasGeneratedRuleSyntax |
Namespace that contains the generated parser for RuleFiles. | |
namespace | containerIteratorUtils |
Helper functions related to iterators which should not be connected to the ContainerIterator class. | |
namespace | FuzzyLogic |
Namespace that contains the fuzzy logic framework used by the FuzzyTuning-strategy. | |
namespace | GaussianModelTypes |
Aliases shared between GaussianModel based files. | |
namespace | internal |
This namespace is used for implementation specifics. | |
namespace | LCC08CellHandlerUtility |
Helper function and type aliases for the C08 base step traversal. | |
namespace | LeavingParticleCollector |
Namespace to collect leaving particles from a container. | |
namespace | loadEstimators |
Collection of functions for estimating the load required to update a specific region within a containers. | |
namespace | memoryProfiler |
This namespace is used for memory profiling functions. | |
namespace | octree |
Namespace that contains code that is used by the octree internally. | |
namespace | OptimumSelector |
Collection of functions for selecting the optimum value out of a vector of values according to a given strategy. | |
namespace | options |
Namespace that contains the explicitly defined options of AutoPas. | |
namespace | RuleSyntax |
Namespace that contains code for evaluating the RuleBasedTuning-Strategy. | |
namespace | SearchSpaceGenerators |
Generators for search spaces. | |
namespace | smoothing |
Algorithms for creating a smooth function through a series of points. | |
namespace | sph |
In this namespace all functionality of the Smoothed Particle Hydrodynamics module of autopas is present. | |
namespace | tuningLogEntry |
Contains some helpers to write and read the tuning log entries. | |
namespace | utils |
In this namespace some helper classes and functions can be found used inside of AutoPas. | |
namespace | VerletListsCellsHelpers |
Helper functions and type aliases for verlet lists cells. | |
Classes | |
class | ActiveHarmony |
Interface to the Active Harmony (AH) tuning framework. More... | |
class | AlignedAllocator |
AlignedAllocator class. More... | |
class | AutoPas |
The AutoPas class is intended to be the main point of Interaction for the user. More... | |
struct | AutoPas_MPI_Status |
Dummy for MPI_Status. More... | |
class | AutoPasLock |
AutoPasLock for the sequential case. More... | |
class | AutoTuner |
This class manages all logic related to the auto tuning mechanic. More... | |
struct | AutoTunerInfo |
Helper struct encapsulating most minor information for the auto tuner. More... | |
class | BalancedTraversal |
Base class for traversals utilising load balancing. More... | |
class | BayesianClusterSearch |
Assume that the stochastic distribution of the execution time while fixing discrete variables corresponds to a Gaussian Process. More... | |
class | BayesianSearch |
Assume that the stochastic distribution of the execution time corresponds to a Gaussian Process. More... | |
class | C01BasedTraversal |
This class provides the base for traversals using the c01 base step. More... | |
class | C04BasedTraversal |
This class provides the base for traversals using the c04 base step. More... | |
class | C08BasedTraversal |
This class provides the base for traversals using the c08 base step. More... | |
class | C08TraversalColorChangeNotify |
Constructor of the lc_c08 traversal. More... | |
class | C18BasedTraversal |
This class provides the base for traversals using the c18 base step. More... | |
class | CellBasedParticleContainer |
The CellBasedParticleContainer class stores particles in some object and provides methods to iterate over its particles. More... | |
class | CellTraversal |
A cell pair traversal. More... | |
class | ColorBasedTraversal |
This class provides the base for traversals using base steps based on cell coloring. More... | |
class | ColorChangeObserver |
Observer interface that specifies handling color changes. More... | |
struct | ConfigHash |
Hash function for Configuration objects to be used in e.g. More... | |
class | Configuration |
Class containing multiple options that form an algorithm configuration for the pairwise iteration. More... | |
struct | ConfigurationPattern |
A configuration pattern that matches zero or more actual configurations, used in the rule language. More... | |
class | ContainerIterator |
Public iterator class that iterates over a particle container and additional vectors (which are typically stored in the logic handler). More... | |
class | ContainerSelector |
Selector for a particle container. More... | |
class | ContainerSelectorInfo |
Info to generate a container. More... | |
class | DirectSum |
This class stores all owned particles in a single cell. More... | |
class | DSSequentialTraversal |
This sum defines the traversal typically used by the DirectSum container. More... | |
class | DSTraversalInterface |
Interface for traversals used by the DirectSum container. More... | |
class | EnergySensorOption |
Class representing the different energy sensor options. More... | |
class | Evidence |
Helper class that associates a measurement with the iteration when it was taken. More... | |
class | EvidenceCollection |
Class to manage all evidence. More... | |
class | FeatureVector |
FeatureVector representation of a Configuration. More... | |
class | FeatureVectorEncoder |
Encoder to convert FeatureVector from and to Eigen::Vector. More... | |
class | FLOPLogger |
Helper to log FLOP count and HitRate for AutoPas::iteratePairwise() calls with the functors in the molecular dynamics library to a csv file for easier analysis. More... | |
class | FullParticleCell |
This class handles the storage of particles in their full form. More... | |
class | Functor |
Functor base class. More... | |
class | FuzzyTuning |
A tuning strategy that uses fuzzy logic to make predictions about the performance of configurations. More... | |
class | GaussianCluster |
Model to predicts the output of a blackbox function f(x) for given input x. More... | |
class | GaussianClusterLogger |
Used to print out the clusters of GaussianClusters. More... | |
class | GaussianHyperparameters |
Hyperparameters of Gaussian models and derived matrices used for prediction. More... | |
class | GaussianProcess |
Gaussian process is a stochastical model. More... | |
struct | InstanceCounter |
Class to count autopas instances. More... | |
class | IterationLogger |
Helper to log performance data of AutoPas::computeInteractions() to a csv file for easier analysis. More... | |
struct | IterationMeasurements |
Struct to collect all sorts of measurements taken during a computeInteractions iteration. More... | |
class | LCC01Traversal |
This class provides the c01 traversal and the c01 traversal with combined SoA buffers. More... | |
class | LCC04CombinedSoATraversal |
This class provides the c04 traversal. More... | |
class | LCC04HCPTraversal |
This class provides the c04 hcp traversal. More... | |
class | LCC04SoACellHandler |
This class provides the base for traversals using the c08 base step, but rather use 4 instead of 8 colors for domain coloring. More... | |
class | LCC04Traversal |
This class provides the c04 traversal. More... | |
class | LCC08CellHandler |
This class provides the base for traversals using the c08 base step. More... | |
class | LCC08Traversal |
This class provides the lc_c08 traversal. More... | |
class | LCC18Traversal |
This class provides the lc_c18 traversal. More... | |
class | LCSlicedBalancedTraversal |
This class provides the balanced sliced traversal. More... | |
class | LCSlicedC02Traversal |
This class provides the colored sliced traversal. More... | |
class | LCSlicedTraversal |
This class provides the (locked) sliced traversal. More... | |
class | LCTraversalInterface |
Interface for traversals used by the LinkedCell class. More... | |
class | LinkedCells |
LinkedCells class. More... | |
class | LinkedCellsReferences |
LinkedCells class. More... | |
class | LiveInfo |
This class is able to gather and store important information for a tuning phase from a container and functor. More... | |
class | LiveInfoLogger |
Helper to log the collected LiveInfo data during tuning to a csv file for easier analysis. More... | |
class | LoadEstimatorOption |
Class representing the load estimator choices. More... | |
class | Logger |
Logger class to provide interface to basic functions of the logger. More... | |
class | LogicHandler |
The LogicHandler takes care of the containers s.t. More... | |
class | LogicHandlerInfo |
Class that wraps all arguments for the logic handler to provide a more stable API. More... | |
class | MPIParallelizedStrategy |
This strategy spreads the configuration queue in a round robin fashion over all ranks (with similar domain). More... | |
class | NeighborListsBuffer |
Class for manual memory management of neighbor lists. More... | |
class | NumberInterval |
Class describing an interval. More... | |
class | NumberSet |
Virtual class describing a finite or infinite set of numbers. More... | |
class | NumberSetFinite |
Class describing a finite set of numbers. More... | |
class | Octree |
The octree is a CellBasedParticleContainer that consists internally of two octrees. More... | |
class | OctreeInnerNode |
Inner nodes of the octree data structure. More... | |
class | OctreeLeafNode |
An octree leaf node. More... | |
class | OctreeLogger |
Log an octree to a .vtk file. More... | |
class | OctreeNodeInterface |
The base class that provides the necessary function definitions that can be applied to an octree. More... | |
class | OctreeNodeWrapper |
This class wraps the functionality provided by the octree leaves and inner nodes in a structure that adheres to the ParticleCell concept. More... | |
class | OTC01Traversal |
This traversal is capable of iterating over particles stored in the Octree data structure. More... | |
class | OTC18Traversal |
This traversal is capable of iterating over particles stored in the Octree data structure. More... | |
class | OTTraversalInterface |
This interface exists to provide a row interface for octree to add its cells. More... | |
class | PairwiseFunctor |
PairwiseFunctor class. More... | |
class | ParticleBase |
Minimal definition of a basic particle. More... | |
class | ParticleCell |
Class for Cells of Particles. More... | |
class | ParticleContainerInterface |
The ParticleContainerInterface class provides a basic interface for all Containers within AutoPas. More... | |
class | PredictionLogger |
Helper to log prediction data of PredictiveTuning to a csv file for easier analysis. More... | |
class | PredictiveTuning |
In every tuning phase, this strategy makes a prediction about the run time for every configuration. More... | |
class | Random |
Class for random algorithms. More... | |
class | RandomSearch |
Randomly test a given number of configurations and select the fastest. More... | |
class | ReferenceParticleCell |
This class handles the storage of particles in their full form. More... | |
class | RuleBasedTuning |
A tuning strategy that uses information collected live from the domain to exclude configurations that knowingly perform worse than other configurations in the current simulation state. More... | |
class | RuleVM |
A VM that is capable of executing a program with simple instructions on a stack of MemoryCells. More... | |
class | SlicedBalancedBasedTraversal |
This class provides a load balanced version of the base sliced traversal. More... | |
class | SlicedBasedTraversal |
This class provides base for locked- and colored sliced traversals. More... | |
class | SlicedC02BasedTraversal |
This class provides the colored sliced traversal. More... | |
class | SlicedLockBasedTraversal |
This class provides the sliced traversal. More... | |
class | SlowConfigFilter |
Acts as a blacklist for configurations that have proven to be very slow. More... | |
class | SoA |
Structur of the array class. More... | |
class | SoAView |
View on a fixed part of a SoA between a start index and an end index. More... | |
class | SortByName |
This strategy sorts the given queue by Configuration::operator<() to minimize the container conversion overhead. More... | |
class | SortedCellView |
This class defines a sorted view on a given ParticleCell. More... | |
class | TraversalInterface |
This interface serves as a common parent class for all traversals. More... | |
class | TraversalSelector |
TraversalSelector is used for the construction of the list in the applyBuildFunctor method. More... | |
class | TraversalSelectorInfo |
Info for traversals of a specific container. More... | |
struct | TrivialHash |
Trivial hash for enums. More... | |
class | TriwiseFunctor |
TriwiseFunctor class. More... | |
class | TuningDataLogger |
Helper to log results of the tuning process to a csv file for easier analysis. More... | |
class | TuningMetricOption |
Class representing the load estimator choices. More... | |
class | TuningResultLogger |
Helper to log results of the tuning process to a csv file for easier analysis. More... | |
struct | TuningStrategyFactoryInfo |
Helper struct encapsulating most information needed to build TuningStrategies by the TuningStrategyFactory. More... | |
class | TuningStrategyInterface |
Interface for tuning strategies for the auto tuner. More... | |
class | TuningStrategyLogger |
This dummy strategy logs any call made to the list of strategies. More... | |
class | TuningStrategyLogReplayer |
This class is able to replay a log file to a tuning strategy to observe its behavior in the logged scenario. More... | |
class | VarVerletLists |
Variable Verlet Lists container with different neighbor lists. More... | |
class | VCLC01BalancedTraversal |
Traversal for VerletClusterLists. More... | |
class | VCLC06Traversal |
A traversal for VerletClusterLists that uses a coloring over the grids of the container. More... | |
class | VCLClusterIterationTraversal |
Traversal for VerletClusterLists. More... | |
class | VCLSlicedBalancedTraversal |
This traversal splits the domain into slices along the longer dimension among x and y. More... | |
class | VCLSlicedC02Traversal |
This traversal splits the domain into slices along the longer dimension among x and y. More... | |
class | VCLSlicedTraversal |
This traversal splits the domain into slices along the longer dimension among x and y. More... | |
class | VCLTraversalInterface |
Interface for traversals of the VerletClusterLists container. More... | |
class | VerletClusterLists |
Particles are divided into clusters. More... | |
class | VerletListHelpers |
Class of helpers for the VerletLists class. More... | |
class | VerletLists |
Verlet Lists container. More... | |
class | VerletListsCells |
Linked Cells with Verlet Lists container. More... | |
class | VerletListsLinkedBase |
Base class for Verlet lists which use an underlying linked cells container. More... | |
class | VerletNeighborListAsBuild |
This class implements a neighbor list that remembers which thread added which particle pair and at which color during the build with C08 from LinkedCells. More... | |
class | VerletNeighborListInterface |
Interface for neighbor lists used by VarVerletLists. More... | |
class | VLCAllCellsGeneratorFunctor |
This functor can generate verlet lists using the typical pairwise traversal. More... | |
class | VLCAllCellsNeighborList |
Neighbor list to be used with VerletListsCells container. More... | |
class | VLCC01Traversal |
This class provides the c01 traversal. More... | |
class | VLCC08Traversal |
This class provides the vlc_c08 traversal. More... | |
class | VLCC18Traversal |
This class provides the lc_c18 traversal. More... | |
class | VLCCellPairC08CellHandler |
This class provides the base logic for the c08 traversal for VLCCellPairNeighborList. More... | |
class | VLCCellPairC08Traversal |
C08 traversal for VLCCellPairNeighborList. More... | |
class | VLCCellPairGeneratorFunctor |
This functor generates pairwise verlet lists (a verlet list attached to every pair of neighboring cells). More... | |
class | VLCCellPairNeighborList |
Neighbor list to be used with VerletListsCells container. More... | |
class | VLCCellPairTraversalInterface |
Interface for traversals used with VLCCellPairNeighborList. More... | |
class | VLCNeighborListInterface |
Interface of neighbor lists to be used with VerletListsCells container. More... | |
class | VLCSlicedBalancedTraversal |
This class provides the balanced sliced traversal. More... | |
class | VLCSlicedC02Traversal |
This class provides the colored sliced traversal. More... | |
class | VLCSlicedTraversal |
This class provides the (locked) sliced traversal. More... | |
class | VLCTraversalInterface |
This class provides the Traversal Interface for the verlet lists cells container. More... | |
class | VLListIterationTraversal |
This class provides a Traversal for the verlet lists container. More... | |
class | VLTraversalInterface |
This class provides the Traversal Interface for the verlet lists container. More... | |
class | VVLAsBuildTraversal |
Traversal for VarVerletLists with VerletNeighborListAsBuild as neighbor list. More... | |
class | VVLTraversalInterface |
Interface for all traversals for VarVerletLists containers. More... | |
Typedefs | |
using | ParticleBaseFP64 = ParticleBase< double, unsigned long > |
Particle with all variables in 64 bit precision. | |
Enumerations | |
enum class | FunctorN3Modes { Newton3Only , Newton3Off , Both } |
Newton 3 modes for the Functor. | |
enum class | CellType { FullParticleCell , ReferenceParticleCell , ClusterTower , SortedCellView , IsNoCell } |
The ParticleCell Type as an Enum. More... | |
enum class | OwnershipState : int64_t { dummy = 0b0000 , owned = 0b0001 , halo = 0b0010 } |
Enum that specifies the state of ownership. More... | |
enum class | Type { BOOL , DOUBLE , SIZE_T , CONTAINER , TRAVERSAL , LOAD_ESTIMATOR , DATA_LAYOUT , NEWTON3 , CELL_SIZE_FACTOR } |
Enum describing all types that are allowed in a rule program. | |
enum | AutoPas_MPI_Comm { COMM_NULL = 0 , COMM_WORLD } |
Dummy for MPI_Comm. | |
enum | AutoPas_MPI_Datatype { BYTE = 1 , CXX_BOOL = sizeof(bool) , CHAR = sizeof(char) , UNSIGNED_CHAR = sizeof(unsigned char) , UNSIGNED_SHORT = sizeof(unsigned short) , INT = sizeof(int) , UNSIGNED_INT = sizeof(unsigned int) , UNSIGNED_LONG = sizeof(unsigned long) , UNSIGNED_LONG_LONG = sizeof(unsigned long long) , LONG = sizeof(double) , DOUBLE = sizeof(double) , LONG_INT = sizeof(long) + sizeof(int) } |
Dummy for MPI_Datatype. More... | |
enum | AutoPas_MPI_Op { MAX , MIN , SUM , PROD , LAND , BAND , LOR , BOR , LXOR , BXOR , MINLOC , MAXLOC , REPLACE , NO_OP } |
Dummy for MPI_Op. | |
enum | AutoPas_MPI_Request { REQUEST_NULL , COMPLETED_REQUEST , INCOMPLETE_REQUEST } |
Dummy for MPI_Request. | |
enum | AutoPas_MPI_Error { AUTOPAS_MPI_SUCCESS = 0 , AUTOPAS_MPI_ERR_BUFFER , AUTOPAS_MPI_ERR_COUNT , AUTOPAS_MPI_ERR_TYPE , AUTOPAS_MPI_ERR_TAG , AUTOPAS_MPI_ERR_COMM , AUTOPAS_MPI_ERR_RANK , AUTOPAS_MPI_ERR_ROOT , AUTOPAS_MPI_ERR_GROUP , AUTOPAS_MPI_ERR_OP , AUTOPAS_MPI_ERR_TOPOLOGY , AUTOPAS_MPI_ERR_DIMS , AUTOPAS_MPI_ERR_ARG , AUTOPAS_MPI_ERR_UNKNOWN , AUTOPAS_MPI_ERR_TRUNCATE , AUTOPAS_MPI_ERR_OTHER , AUTOPAS_MPI_ERR_INTERN , AUTOPAS_MPI_ERR_IN_STATUS , AUTOPAS_MPI_ERR_PENDING , AUTOPAS_MPI_ERR_REQUEST , AUTOPAS_MPI_ERR_LASTCODE } |
Dummy for MPI_Error. | |
Functions | |
template<class Particle_T > | |
bool | GRAY (OctreeNodeInterface< Particle_T > *node) |
Check if a node is an inner node. | |
template<class Particle_T > | |
OctreeNodeInterface< Particle_T > * | FATHER (const OctreeNodeInterface< Particle_T > *node) |
Get the parent node of an arbitrary octree node. | |
template<class Particle_T > | |
static octree::Octant | SONTYPE (const OctreeNodeInterface< Particle_T > *node) |
Get the octant in which a given node can be found in the parent. | |
template<typename Particle_T , typename FunctionType > | |
decltype(auto) | withStaticNodeType (const std::unique_ptr< OctreeNodeInterface< Particle_T > > &root, FunctionType &&function) |
Will execute the passed function on the given root node. | |
constexpr OwnershipState | operator& (const OwnershipState a, const OwnershipState b) |
Bitwise AND operator for OwnershipState. | |
constexpr OwnershipState | operator| (const OwnershipState a, const OwnershipState b) |
Bitwise OR operator for OwnershipState. | |
constexpr int64_t | toInt64 (const OwnershipState a) |
Returns the int64_t value of a given OwnershipState. | |
static std::ostream & | operator<< (std::ostream &os, const OwnershipState &ownershipState) |
Insertion operator for OwnershipState. | |
template<typename floatType , typename idType > | |
std::ostream & | operator<< (std::ostream &os, const ParticleBase< floatType, idType > &particle) |
Stream operator for instances of ParticleBase class. | |
std::ostream & | operator<< (std::ostream &os, const Configuration &configuration) |
Stream insertion operator. | |
std::istream & | operator>> (std::istream &in, Configuration &configuration) |
Stream extraction operator. | |
bool | operator== (const Configuration &lhs, const Configuration &rhs) |
Equals operator for Configuration objects. | |
bool | operator!= (const Configuration &lhs, const Configuration &rhs) |
Not-Equals operator for Configuration objects. | |
bool | operator< (const Configuration &lhs, const Configuration &rhs) |
Comparison operator for Configuration objects. | |
std::ostream & | operator<< (std::ostream &os, const FeatureVector &featureVector) |
Stream insertion operator. | |
template<typename T , size_t TAlignment, typename U , size_t UAlignment> | |
bool | operator== (const AlignedAllocator< T, TAlignment > &, const AlignedAllocator< U, UAlignment > &) |
equals operator | |
template<typename T , size_t TAlignment, typename U , size_t UAlignment> | |
bool | operator!= (const AlignedAllocator< T, TAlignment > &a, const AlignedAllocator< U, UAlignment > &b) |
unequals operator | |
template<typename Particle_T , typename FunctionType > | |
decltype(auto) | withStaticContainerType (autopas::ParticleContainerInterface< Particle_T > &container, FunctionType &&function) |
Will execute the passed function body with the static container type of container. | |
int | AutoPas_MPI_Init (int *argc, char ***argv) |
Wrapper for MPI_Init Also defines the AutoPas communicator, so it needs to be called when AutoPas should use MPI. | |
int | AutoPas_MPI_Finalize () |
Wrapper for MPI_Finalize Also frees the AutoPas communicator, so it needs to be called if AutoPas_MPI_Init was called. | |
int | AutoPas_MPI_Finalized (int *flag) |
Wrapper for MPI_Finalized. | |
int | AutoPas_MPI_Error_string (int errorcode, char *string, int *resultlen) |
Wrapper for MPI_Error_string. | |
int | AutoPas_MPI_Comm_size (AutoPas_MPI_Comm comm, int *size) |
Wrapper for MPI_Comm_size. | |
int | AutoPas_MPI_Comm_rank (AutoPas_MPI_Comm comm, int *rank) |
Wrapper for MPI_Comm_rank. | |
int | AutoPas_MPI_Comm_dup (AutoPas_MPI_Comm comm, AutoPas_MPI_Comm *newComm) |
Wrapper for MPI_Comm_dup. | |
int | AutoPas_MPI_Comm_free (AutoPas_MPI_Comm *comm) |
Wrapper for MPI_Comm_free. | |
int | AutoPas_MPI_Send (const void *buf, int count, AutoPas_MPI_Datatype datatype, int dest, int tag, AutoPas_MPI_Comm comm) |
Wrapper for MPI_Send. | |
int | AutoPas_MPI_Recv (void *buf, int count, AutoPas_MPI_Datatype datatype, int source, int tag, AutoPas_MPI_Comm comm, AutoPas_MPI_Status *status) |
Wrapper for MPI_Recv. | |
int | AutoPas_MPI_Bcast (void *buffer, int count, AutoPas_MPI_Datatype datatype, int root, AutoPas_MPI_Comm comm) |
Wrapper for MPI_Bcast. | |
int | AutoPas_MPI_Ibcast (void *buffer, int count, AutoPas_MPI_Datatype datatype, int root, AutoPas_MPI_Comm comm, AutoPas_MPI_Request *request) |
Wrapper for MPI_Ibcast. | |
int | AutoPas_MPI_Reduce (const void *sendbuf, void *recvbuf, int count, AutoPas_MPI_Datatype datatype, AutoPas_MPI_Op op, int root, AutoPas_MPI_Comm comm) |
Wrapper for MPI_Reduce. | |
int | AutoPas_MPI_Allreduce (const void *sendbuf, void *recvbuf, int count, AutoPas_MPI_Datatype datatype, AutoPas_MPI_Op op, AutoPas_MPI_Comm comm) |
Wrapper for MPI_Allreduce. | |
int | AutoPas_MPI_Iallreduce (const void *sendbuf, void *recvbuf, int count, AutoPas_MPI_Datatype datatype, AutoPas_MPI_Op op, AutoPas_MPI_Comm comm, AutoPas_MPI_Request *request) |
Wrapper for MPI_Iallreduce. | |
int | AutoPas_MPI_Barrier (AutoPas_MPI_Comm comm) |
Wrapper for MPI_Barrier. | |
int | AutoPas_MPI_Ibarrier (AutoPas_MPI_Comm comm, AutoPas_MPI_Request *request) |
Wrapper for MPI_Ibarrier. | |
int | AutoPas_MPI_Test (AutoPas_MPI_Request *request, int *flag, AutoPas_MPI_Status *status) |
Wrapper for MPI_Test. | |
int | AutoPas_MPI_Wait (AutoPas_MPI_Request *request, AutoPas_MPI_Status *status) |
Wrapper for MPI_Wait. | |
int | AutoPas_MPI_Request_free (AutoPas_MPI_Request *request) |
Wrapper for MPI_Request_free. | |
int | AutoPas_MPI_Cart_create (AutoPas_MPI_Comm comm, int nDims, const int *dims, const int *periods, int reorder, AutoPas_MPI_Comm *comm_cart) |
Wrapper for MPI_Cart_create. | |
int | AutoPas_MPI_Cart_get (AutoPas_MPI_Comm comm, int maxdims, int dims[], int periods[], int coords[]) |
Wrapper for MPI_Cart_get. | |
int | AutoPas_MPI_Cart_coords (AutoPas_MPI_Comm comm, int rank, int maxdims, int coords[]) |
Wrapper for MPI_Cart_coords Determines process coords in cartesian topology given rank in group. | |
int | AutoPas_MPI_Cart_rank (AutoPas_MPI_Comm comm, const int coords[], int *rank) |
Wrapper for MPI_Cart_rank Determines process rank in communicator given Cartesian location. | |
int | AutoPas_MPI_Dims_create (int nnodes, int ndims, int dims[]) |
Wrapper for MPI_Dims_create. | |
int | AutoPas_MPI_Isend (const void *buf, int count, AutoPas_MPI_Datatype datatype, int dest, int tag, AutoPas_MPI_Comm comm, AutoPas_MPI_Request *request) |
Wrapper for MPI_Isend. | |
int | AutoPas_MPI_Irecv (void *buf, int count, AutoPas_MPI_Datatype datatype, int source, int tag, AutoPas_MPI_Comm comm, AutoPas_MPI_Request *request) |
Wrapper for MPI_Irecv. | |
int | AutoPas_MPI_Probe (int source, int tag, AutoPas_MPI_Comm comm, AutoPas_MPI_Status *status) |
Wrapper for MPI_Probe. | |
int | AutoPas_MPI_Get_count (const AutoPas_MPI_Status *status, AutoPas_MPI_Datatype datatype, int *count) |
Wrapper for MPI_Get_count. | |
int | AutoPas_MPI_Waitall (int count, AutoPas_MPI_Request array_of_requests[], AutoPas_MPI_Status *array_of_statuses) |
Wrapper for MPI_Waitall. | |
int | AutoPas_MPI_Gather (const void *buffer_send, int count_send, AutoPas_MPI_Datatype datatype_send, void *buffer_recv, int count_recv, AutoPas_MPI_Datatype datatype_recv, int root, AutoPas_MPI_Comm comm) |
Wrapper for MPI_Gather. | |
int | AutoPas_MPI_Gatherv (const void *buffer_send, int count_send, AutoPas_MPI_Datatype datatype_send, void *buffer_recv, const int *count_recv, const int *displs, AutoPas_MPI_Datatype datatype_recv, int root, AutoPas_MPI_Comm comm) |
Wrapper for MPI_Gatherv. | |
int | AutoPas_MPI_Allgather (void *buffer_send, int count_send, AutoPas_MPI_Datatype datatype_send, void *buffer_recv, int count_recv, AutoPas_MPI_Datatype datatype_recv, AutoPas_MPI_Comm comm) |
Wrapper for MPI_Allgather. | |
int | AutoPas_MPI_Comm_split (AutoPas_MPI_Comm old_communicator, int color, int key, AutoPas_MPI_Comm *new_communicator) |
Wrapper for MPI_Comm_split. | |
int | autopas_get_thread_num () |
Dummy for omp_set_lock() when no OpenMP is available. | |
int | autopas_get_num_threads () |
Dummy for omp_get_num_threads() when no OpenMP is available. | |
int | autopas_get_max_threads () |
Dummy for omp_get_max_threads() when no OpenMP is available. | |
void | autopas_set_num_threads (int) |
Wrapper for omp_set_num_threads(). | |
Variables | |
constexpr unsigned int | DEFAULT_CACHE_LINE_SIZE {64} |
Default size for a cache line. | |
This is the main namespace of AutoPas.
Provide non-MPI versions of the needed MPI function calls.
Everything defined within AutoPas should be in this namespace.
May be extended when necessary.
Dummy for MPI_Datatype.
initialize values to the size of the respective type in bytes.
|
strong |
The ParticleCell Type as an Enum.
Enumerator | |
---|---|
FullParticleCell | FullParticleCell : Default cell type for almost everything. |
ReferenceParticleCell | ReferenceParticleCell : Cell holding only references instead of actual particle objects. |
ClusterTower | ClusterTower : Tower for the 2D tower structure of VerletClusterLists. |
SortedCellView | SortedCellView : Holds pointers to particles sorted by their position projected along a vector. |
IsNoCell | Currently unused. |
|
strong |
Enum that specifies the state of ownership.
Enumerator | |
---|---|
dummy | Dummy or deleted state, a particle with this state is not an actual particle!
|
owned | Owned state, a particle with this state is an actual particle and owned by the current AutoPas object! |
halo | Halo state, a particle with this state is an actual particle, but not owned by the current AutoPas object! |
|
inline |
Dummy for omp_get_max_threads() when no OpenMP is available.
|
inline |
Dummy for omp_get_num_threads() when no OpenMP is available.
|
inline |
Dummy for omp_set_lock() when no OpenMP is available.
|
inline |
Wrapper for MPI_Allgather.
buffer_send | send buffer |
count_send | number of elements in send buffer |
datatype_send | type of elements in send buffer |
buffer_recv | receive buffer |
count_recv | number of elements received from each rank |
datatype_recv | type of elements in receive buffer |
comm | communicator (handle) |
|
inline |
Wrapper for MPI_Allreduce.
sendbuf | send buffer |
recvbuf | outputs receive buffer |
count | number of elements in send buffer |
datatype | type of elements in send buffer |
op | reduction operation (handle) |
comm | communicator (handle) |
|
inline |
Wrapper for MPI_Barrier.
comm | communicator (handle) |
|
inline |
Wrapper for MPI_Bcast.
buffer | send buffer for root. receive buffer for others |
count | number of elements in send buffer |
datatype | type of elements in send buffer |
root | rank of the process sending the broadcast |
comm | communicator (handle) |
|
inline |
Wrapper for MPI_Cart_coords Determines process coords in cartesian topology given rank in group.
comm | Communicator with cartesian structure (handle). |
rank | Rank of a process within group of comm (integer). |
maxdims | Length of vector coords in the calling program (integer). |
coords | Integer array (of size ndims) containing the Cartesian coordinates of specified process (integer). |
|
inline |
Wrapper for MPI_Cart_create.
comm | The AutoPas_MPI_Communicator for which to generate the cartesian grid. |
nDims | The number of dimensions in the resulting cartesian grid. |
dims | The size of the cartesian grid in each dimension. |
periods | An array defining for each dimension if it has periodic boundaries. |
reorder | Defines if ranking may be reordered (true) or not (false). |
comm_cart | The resulting MPI communicator. |
|
inline |
Wrapper for MPI_Cart_get.
comm | Communicator with Cartesian structure (handle). |
maxdims | Length of vectors dims, periods, and coords in the calling program (integer). |
dims | Number of processes for each Cartesian dimension (array of integers). |
periods | Periodicity (true/false) for each Cartesian dimension (array of logicals). |
coords | Coordinates of calling process in Cartesian structure (array of integers). |
|
inline |
Wrapper for MPI_Cart_rank Determines process rank in communicator given Cartesian location.
comm | Communicator with cartesian structure (handle). |
coords | Integer array (of size ndims, the number of dimensions of the Cartesian topology associated with comm) specifying the cartesian coordinates of a process. |
rank | Rank of specified process (integer). |
|
inline |
Wrapper for MPI_Comm_dup.
comm | Communicator to be duplicated (handle) |
newComm | outputs new communicator over the same group as comm |
|
inline |
Wrapper for MPI_Comm_free.
comm | communicator to be freed (handle) |
|
inline |
Wrapper for MPI_Comm_rank.
comm | communicator (handle) |
rank | outputs rank of the process |
|
inline |
Wrapper for MPI_Comm_size.
comm | communicator (handle) |
size | outputs number of processes in the group of comm |
|
inline |
Wrapper for MPI_Comm_split.
old_communicator | old communicator (handle) |
color | determines which ranks ar in the same bucket |
key | determines rank order in new communicator |
new_communicator | pointer to new communicator |
|
inline |
Wrapper for MPI_Dims_create.
Creates a division of processors in a cartesian grid. Typically this is a factorization of nnodes in ndims factors.
nnodes | Number of ranks to divide. |
ndims | Number of dimension over which to spread the ranks. |
dims | Output parameter. Should be an array of size ndims. |
|
inline |
Wrapper for MPI_Error_string.
errorcode | MPI error value |
string | output string |
resultlen | length of output |
|
inline |
Wrapper for MPI_Finalize Also frees the AutoPas communicator, so it needs to be called if AutoPas_MPI_Init was called.
|
inline |
Wrapper for MPI_Finalized.
flag | returns true if (AutoPas_)MPI_Finalize has been called |
|
inline |
Wrapper for MPI_Gather.
buffer_send | |
count_send | |
datatype_send | |
buffer_recv | |
count_recv | |
datatype_recv | |
root | |
comm |
|
inline |
Wrapper for MPI_Gatherv.
buffer_send | |
count_send | |
datatype_send | |
buffer_recv | |
count_recv | |
displs | |
datatype_recv | |
root | |
comm |
|
inline |
Wrapper for MPI_Get_count.
status | Return status of receive operation (status). |
datatype | Datatype of each receive buffer element (handle). |
count | Number of received elements (integer). |
|
inline |
Wrapper for MPI_Iallreduce.
sendbuf | send buffer |
recvbuf | outputs receive buffer |
count | number of elements in send send buffer |
datatype | type of elements in send buffer |
op | reduction operation (handle) |
comm | communicator (handle) |
request | outputs communication request (handle) |
|
inline |
Wrapper for MPI_Ibarrier.
comm | communicator (handle) |
request | outputs communication request (handle) |
|
inline |
Wrapper for MPI_Ibcast.
buffer | send buffer for root. receive buffer for others |
count | number of elements in send buffer |
datatype | type of elements in send buffer |
root | rank of the process sending the broadcast |
comm | communicator (handle) |
request | outputs communication request (handle) |
|
inline |
|
inline |
Wrapper for MPI_Irecv.
Begins a nonblocking receive
buf | initial address of receive buffer (choice). |
count | number of elements in receive buffer (integer). |
datatype | datatype of each receive buffer element (handle). |
source | rank of source (integer). |
tag | message tag (integer). |
comm | communicator (handle). |
request | communication request (handle). |
|
inline |
Wrapper for MPI_Isend.
buf | Initial address of send buffer (choice). |
count | Number of elements in send buffer (integer). |
datatype | Datatype of each send buffer element (handle). |
dest | Rank of destination (integer). |
tag | Message tag (integer). |
comm | Communicator (handle). |
request | A pointer to the created send request. |
|
inline |
Wrapper for MPI_Probe.
source | Source rank (integer). |
tag | Tag value (integer). |
comm | Communicator (handle). |
status | The status of the probed request. |
|
inline |
Wrapper for MPI_Recv.
buf | outputs receive buffer |
count | maximum number of elements in receive buffer |
datatype | type of elements in receive buffer |
source | rank of source process |
tag | message tag |
comm | communicator (handle) |
status | currently ignored |
|
inline |
Wrapper for MPI_Reduce.
sendbuf | send buffer |
recvbuf | outputs receive buffer |
count | number of elements in send buffer |
datatype | type of elements in send buffer |
op | reduction operation (handle) |
root | the rank of the root process |
comm | communicator (handle) |
|
inline |
Wrapper for MPI_Request_free.
request | request to be freed (handle). Will be set to AUTOPAS_MPI_REQUEST_NULL |
|
inline |
Wrapper for MPI_Send.
buf | send buffer |
count | number of elements in send buffer |
datatype | type of elements in send buffer |
dest | rank of destination process |
tag | message tag |
comm | communicator (handle) |
|
inline |
Wrapper for MPI_Test.
request | request to be tested. |
flag | outputs true if operation complete |
status | outputs status object. May be AUTOPAS_MPI_STATUS_IGNORE |
|
inline |
Wrapper for MPI_Wait.
request | request to be waited for. |
status | outputs status object. May be AUTOPAS_MPI_STATUS_IGNORE |
|
inline |
Wrapper for MPI_Waitall.
count | Lists length (integer). |
array_of_requests | Array of requests (array of handles). |
array_of_statuses | Array of status objects (array of status). |
|
inline |
Wrapper for omp_set_num_threads().
Does nothing when OpenMP is disabled.
|
inline |
Get the parent node of an arbitrary octree node.
Particle_T |
node |
|
inline |
Check if a node is an inner node.
Particle_T | The particle type used in this container |
node | A pointer to a node |
|
inline |
unequals operator
T | Type of the first allocator |
TAlignment | alignment of the first allocator |
U | type of the second allocator |
UAlignment | alignment of the second allocator |
a | first allocator |
b | second allocator |
bool autopas::operator!= | ( | const Configuration & | lhs, |
const Configuration & | rhs | ||
) |
Not-Equals operator for Configuration objects.
lhs | |
rhs |
|
constexpr |
Bitwise AND operator for OwnershipState.
a | first operand |
b | second operand |
bool autopas::operator< | ( | const Configuration & | lhs, |
const Configuration & | rhs | ||
) |
Comparison operator for Configuration objects.
This is mainly used for configurations to have a sane ordering in e.g. sets.
Configurations are compared member wise in the order: container, cellSizeFactor, traversal, loadEstimator, dataLayout, newton3.
lhs | |
rhs |
std::ostream & autopas::operator<< | ( | std::ostream & | os, |
const Configuration & | configuration | ||
) |
Stream insertion operator.
os | |
configuration |
|
inline |
Stream insertion operator.
os | |
featureVector |
|
static |
Insertion operator for OwnershipState.
This function enables passing ownershipState to an ostream via <<
.
os | |
ownershipState |
std::ostream & autopas::operator<< | ( | std::ostream & | os, |
const ParticleBase< floatType, idType > & | particle | ||
) |
Stream operator for instances of ParticleBase class.
This function enables passing ParticleBase objects to an ostream via <<
Floating | point type to be used for the SoAs. |
os | |
particle |
|
inline |
equals operator
T | Type of the first allocator |
TAlignment | alignment of the first allocator |
U | type of the second allocator |
UAlignment | alignment of the second allocator |
bool autopas::operator== | ( | const Configuration & | lhs, |
const Configuration & | rhs | ||
) |
Equals operator for Configuration objects.
lhs | |
rhs |
std::istream & autopas::operator>> | ( | std::istream & | in, |
autopas::Configuration & | configuration | ||
) |
Stream extraction operator.
in | |
configuration |
|
constexpr |
Bitwise OR operator for OwnershipState.
a | first operand |
b | second operand |
|
static |
Get the octant in which a given node can be found in the parent.
Particle_T |
node | The node to check |
|
constexpr |
Returns the int64_t value of a given OwnershipState.
a | OwnershipState |
decltype(auto) autopas::withStaticContainerType | ( | autopas::ParticleContainerInterface< Particle_T > & | container, |
FunctionType && | function | ||
) |
Will execute the passed function body with the static container type of container.
Particle_T | |
ParticleCell | |
FunctionType |
container | The container to be used. |
function | The function body to be executed. Has to take exactly one argument: A reference to the container. E.g: [&](auto &container){container->doSth();} // The & is optional here. The auto is necessary! |
decltype(auto) autopas::withStaticNodeType | ( | const std::unique_ptr< OctreeNodeInterface< Particle_T > > & | root, |
FunctionType && | function | ||
) |
Will execute the passed function on the given root node.
Particle_T | |
FunctionType |
root | |
function |
|
constexpr |
Default size for a cache line.