AutoPas  3.0.0
Loading...
Searching...
No Matches
Classes | Functions
autopas::SearchSpaceGenerators Namespace Reference

Generators for search spaces. More...

Classes

struct  OptionSpace
 Helper struct for all dimensions of a full cartesian product search space. More...
 

Functions

std::set< ConfigurationcartesianProduct (const std::set< ContainerOption > &allowedContainerOptions, const std::set< TraversalOption > &allowedTraversalOptions, const std::set< LoadEstimatorOption > &allowedLoadEstimatorOptions, const std::set< DataLayoutOption > &allowedDataLayoutOptions, const std::set< Newton3Option > &allowedNewton3Options, const NumberSet< double > *allowedCellSizeFactors, const InteractionTypeOption &interactionType)
 Fills the search space with the cartesian product of the given options (minus invalid combinations).
 
OptionSpace inferOptionDimensions (const std::set< Configuration > &searchSet)
 Crudely trying to reconstruct the dimensions of the search space from a given set of options.
 
std::set< double > calculateRelevantCsfs (const NumberInterval< double > &numberInterval, double interactionLength, double domainLengthX)
 For a given domain parametrization, calculate which cell size factors (csf) in an interval actually are useful to generate distinct numbers of cells.
 

Detailed Description

Generators for search spaces.

Function Documentation

◆ calculateRelevantCsfs()

std::set< double > autopas::SearchSpaceGenerators::calculateRelevantCsfs ( const NumberInterval< double > &  numberInterval,
double  interactionLength,
double  domainLengthX 
)

For a given domain parametrization, calculate which cell size factors (csf) in an interval actually are useful to generate distinct numbers of cells.

A cell is assumed to be of side length interactionLength * csf.

Parameters
numberInterval
interactionLength
domainLengthXOnly consider the domain length in one dimension, since the csf is also one dimensional.
Returns
Set of cell size factors that yield different numbers of cells.

◆ cartesianProduct()

std::set< Configuration > autopas::SearchSpaceGenerators::cartesianProduct ( const std::set< ContainerOption > &  allowedContainerOptions,
const std::set< TraversalOption > &  allowedTraversalOptions,
const std::set< LoadEstimatorOption > &  allowedLoadEstimatorOptions,
const std::set< DataLayoutOption > &  allowedDataLayoutOptions,
const std::set< Newton3Option > &  allowedNewton3Options,
const NumberSet< double > *  allowedCellSizeFactors,
const InteractionTypeOption &  interactionType 
)

Fills the search space with the cartesian product of the given options (minus invalid combinations).

In other words, generate every valid combination of the given options.

Parameters
allowedContainerOptions
allowedTraversalOptions
allowedLoadEstimatorOptions
allowedDataLayoutOptions
allowedNewton3Options
allowedCellSizeFactors
interactionType
Returns
A set containing all valid configurations.

◆ inferOptionDimensions()

SearchSpaceGenerators::OptionSpace autopas::SearchSpaceGenerators::inferOptionDimensions ( const std::set< Configuration > &  searchSet)

Crudely trying to reconstruct the dimensions of the search space from a given set of options.

Note
It is assumed that searchSet is a complete cartesian product of all contained options.
Parameters
searchSet
Returns