SG++-Doxygen-Documentation
Loading...
Searching...
No Matches
sgpp::optimization::IterativeGridGeneratorRitterNovak Class Reference

Iterative grid generation based on Ritter/Novak's refinement criterion. More...

#include <IterativeGridGeneratorRitterNovak.hpp>

Inheritance diagram for sgpp::optimization::IterativeGridGeneratorRitterNovak:
sgpp::optimization::IterativeGridGenerator sgpp::optimization::IterativeGridGeneratorFuzzyRitterNovak

Public Types

enum class  PowMethod { STD_POW , FAST_POW }
 exponentiation methods More...
 

Public Member Functions

bool generate () override
 Generate the grid.
 
double getAdaptivity () const
 
base::level_t getInitialLevel () const
 
base::level_t getMaxLevel () const
 
PowMethod getPowMethod () const
 
 IterativeGridGeneratorRitterNovak (base::ScalarFunction &f, base::Grid &grid, size_t N, double adaptivity=DEFAULT_ADAPTIVITY, base::level_t initialLevel=DEFAULT_INITIAL_LEVEL, base::level_t maxLevel=DEFAULT_MAX_LEVEL, PowMethod powMethod=PowMethod::STD_POW)
 Constructor.
 
void setAdaptivity (double adaptivity)
 
void setInitialLevel (base::level_t initialLevel)
 
void setMaxLevel (base::level_t maxLevel)
 
void setPowMethod (PowMethod powMethod)
 
 ~IterativeGridGeneratorRitterNovak () override
 Destructor.
 
- Public Member Functions inherited from sgpp::optimization::IterativeGridGenerator
const base::DataVectorgetFunctionValues () const
 
base::GridgetGrid () const
 
 IterativeGridGenerator (base::ScalarFunction &f, base::Grid &grid, size_t N)
 Constructor.
 
void printIterativeGridGenerator () const
 Prints grid points and function values.
 
virtual ~IterativeGridGenerator ()
 Destructor.
 

Static Public Attributes

static constexpr double DEFAULT_ADAPTIVITY = 0.85
 default adaptivity
 
static const base::level_t DEFAULT_INITIAL_LEVEL = 3
 default level of initial regular sparse grid
 
static const base::level_t DEFAULT_MAX_LEVEL = 20
 default maximal level of grid points
 

Protected Attributes

double gamma
 adaptivity
 
base::level_t initialLevel
 level of initial regular sparse grid
 
base::level_t maxLevel
 maximal level of grid points
 
PowMethod powMethod
 exponentiation method
 
- Protected Attributes inherited from sgpp::optimization::IterativeGridGenerator
base::ScalarFunctionf
 objective function
 
base::DataVector functionValues
 vector of function values at the grid points
 
base::Gridgrid
 underlying grid
 
size_t N
 maximal number of grid points
 

Additional Inherited Members

- Protected Member Functions inherited from sgpp::optimization::IterativeGridGenerator
void evalFunction (size_t oldGridSize=0)
 Evaluates the objective function at grid points with indices [oldGridSize, oldGridSize + 1, ..., grid.getSize() - 1] and saves values in functionValues.
 
void undoRefinement (size_t oldGridSize)
 Removes grid points with indices [oldGridSize, oldGridSize + 1, ..., grid.getSize() - 1] from the grid.
 

Detailed Description

Iterative grid generation based on Ritter/Novak's refinement criterion.

Caution: This class uses HashRefinementMultiple, so it generates grids that don't meet the "hierarchical ancestors" requirement!

Literature: Erich Novak, Klaus Ritter. Global Optimization Using Hyperbolic Cross Points. In: Christodoulos A. Floudas, Panos M. Pardalos (eds.): State of the Art in Global Optimization, Computational Methods and Applications, Vol. 7. Springer 1996. DOI: 10.1007/978-1-4613-3437-8_2

See also
HashRefinementMultiple

Member Enumeration Documentation

◆ PowMethod

exponentiation methods

Enumerator
STD_POW 
FAST_POW 

Constructor & Destructor Documentation

◆ IterativeGridGeneratorRitterNovak()

sgpp::optimization::IterativeGridGeneratorRitterNovak::IterativeGridGeneratorRitterNovak ( base::ScalarFunction f,
base::Grid grid,
size_t  N,
double  adaptivity = DEFAULT_ADAPTIVITY,
base::level_t  initialLevel = DEFAULT_INITIAL_LEVEL,
base::level_t  maxLevel = DEFAULT_MAX_LEVEL,
PowMethod  powMethod = PowMethod::STD_POW 
)

Constructor.

Do not destruct the grid before this object!

Parameters
fobjective function
gridgrid (should be empty)
Nmaximal number of grid points
adaptivityadaptivity between 0 and 1
initialLevellevel of initial regular sparse grid
maxLevelmaximal level of grid points
powMethodexponentiation method (fastPow is faster than std::pow, but only approximative)

◆ ~IterativeGridGeneratorRitterNovak()

sgpp::optimization::IterativeGridGeneratorRitterNovak::~IterativeGridGeneratorRitterNovak ( )
override

Destructor.

Member Function Documentation

◆ generate()

◆ getAdaptivity()

double sgpp::optimization::IterativeGridGeneratorRitterNovak::getAdaptivity ( ) const
Returns
adaptivity between 0 and 1

References gamma.

◆ getInitialLevel()

base::level_t sgpp::optimization::IterativeGridGeneratorRitterNovak::getInitialLevel ( ) const
Returns
level of initial regular sparse grid

References initialLevel.

◆ getMaxLevel()

base::level_t sgpp::optimization::IterativeGridGeneratorRitterNovak::getMaxLevel ( ) const
Returns
maximal level of grid points

References maxLevel.

◆ getPowMethod()

IterativeGridGeneratorRitterNovak::PowMethod sgpp::optimization::IterativeGridGeneratorRitterNovak::getPowMethod ( ) const
Returns
exponentiation method

References powMethod.

◆ setAdaptivity()

void sgpp::optimization::IterativeGridGeneratorRitterNovak::setAdaptivity ( double  adaptivity)
Parameters
adaptivityadaptivity between 0 and 1

References gamma.

◆ setInitialLevel()

void sgpp::optimization::IterativeGridGeneratorRitterNovak::setInitialLevel ( base::level_t  initialLevel)
Parameters
initialLevellevel of initial regular sparse grid

References initialLevel.

◆ setMaxLevel()

void sgpp::optimization::IterativeGridGeneratorRitterNovak::setMaxLevel ( base::level_t  maxLevel)
Parameters
maxLevelmaximal level of grid points

References maxLevel.

◆ setPowMethod()

void sgpp::optimization::IterativeGridGeneratorRitterNovak::setPowMethod ( IterativeGridGeneratorRitterNovak::PowMethod  powMethod)
Parameters
powMethodexponentiation method

References powMethod.

Member Data Documentation

◆ DEFAULT_ADAPTIVITY

constexpr double sgpp::optimization::IterativeGridGeneratorRitterNovak::DEFAULT_ADAPTIVITY = 0.85
staticconstexpr

default adaptivity

◆ DEFAULT_INITIAL_LEVEL

const base::level_t sgpp::optimization::IterativeGridGeneratorRitterNovak::DEFAULT_INITIAL_LEVEL = 3
static

default level of initial regular sparse grid

◆ DEFAULT_MAX_LEVEL

const base::level_t sgpp::optimization::IterativeGridGeneratorRitterNovak::DEFAULT_MAX_LEVEL = 20
static

default maximal level of grid points

◆ gamma

double sgpp::optimization::IterativeGridGeneratorRitterNovak::gamma
protected

◆ initialLevel

base::level_t sgpp::optimization::IterativeGridGeneratorRitterNovak::initialLevel
protected

◆ maxLevel

◆ powMethod

PowMethod sgpp::optimization::IterativeGridGeneratorRitterNovak::powMethod
protected

The documentation for this class was generated from the following files: