SG++-Doxygen-Documentation
sgpp::base::PeriodicGridGenerator Class Reference

GridGenerator for periodic grids with boundaries. More...

#include <PeriodicGridGenerator.hpp>

Inheritance diagram for sgpp::base::PeriodicGridGenerator:
sgpp::base::GridGenerator

Public Member Functions

void cliques (size_t level, size_t clique_size) override
 Creates a sparse grid with fully connected cliques. More...
 
void cliques (size_t level, size_t clique_size, double T) override
 Creates a sparse grid with fully connected cliques. More...
 
void coarsen (CoarseningFunctor &func, DataVector &alpha) override
 Coarsens a grid according to the settings of the CoarseningFunctor func. More...
 
void coarsenNFirstOnly (CoarseningFunctor &func, DataVector &alpha, size_t numFirstOnly) override
 Coarsens a grid according to the settings of the CoarseningFunctor func. More...
 
void full (size_t level) override
 Creates a full grid for a certain level \( n \), i.e., \( V_n = \bigoplus_{|\vec{l}|_\infty *\leq n} W_{\vec{l}}\). More...
 
size_t getNumberOfRefinablePoints () override
 Returns the number of points on the grid that can be refined in the next iteration. More...
 
size_t getNumberOfRefinablePointsToMaxLevel (size_t maxLevel) override
 Returns the number of points on the grid that can be refined in the next iteration additionally a maximum level for refinement is taken into account. More...
 
size_t getNumberOfRemovablePoints () override
 Returns the number of points on the grid that can be removed in the next iteration. More...
 
 PeriodicGridGenerator (GridStorage &storage)
 Constructor. More...
 
void refine (RefinementFunctor &func, std::vector< size_t > *addedPoints=0) override
 Refines a grid according to the settings of the RefinementFunctor func. More...
 
void refineMaxLevel (RefinementFunctor &func, size_t maxLevel) override
 Refines a grid according to the settings of the RefinementFunctor func. More...
 
void regular (size_t level) override
 Creates a regular sparse grid for a certain level \( n \), i.e., \( V_n^{(1)} = *\bigoplus_{|\vec{l}|_1 \leq n+d-1} W_{\vec{l}}\). More...
 
void regular (size_t level, double T) override
 Creates a regular sparse grid for a certain level \( n \), i.e., \( V_n^{(1)} = *\bigoplus_{|\vec{l}|_1 \leq n+d-1} W_{\vec{l}}\). More...
 
 ~PeriodicGridGenerator () override
 Destructor. More...
 
- Public Member Functions inherited from sgpp::base::GridGenerator
 GridGenerator ()
 Constructor. More...
 
virtual void refineInter (RefinementFunctor &func, const std::vector< std::vector< size_t >> &interactions)
 Refines a grid according to the settings of the RefinementFunctor func. More...
 
virtual void regularInter (size_t level, const std::vector< std::vector< size_t >> &terms, double T)
 Creates a regular sparse grid for a certain level \( n \), i.e., \( V_n^{(1)} = *\bigoplus_{|\vec{l}|_1 \leq n+d-1} W_{\vec{l}}\). More...
 
virtual void truncated (size_t level, size_t l_user)
 Creates a grid which doesn't contain the fullgrids with li<l_user, for any li level_t. More...
 
virtual ~GridGenerator ()
 Destructor. More...
 

Protected Attributes

GridStoragestorage
 reference to the storage object More...
 

Detailed Description

GridGenerator for periodic grids with boundaries.

Constructor & Destructor Documentation

sgpp::base::PeriodicGridGenerator::PeriodicGridGenerator ( GridStorage storage)
explicit

Constructor.

Parameters
storagethe grid's storage object
sgpp::base::PeriodicGridGenerator::~PeriodicGridGenerator ( )
override

Destructor.

Member Function Documentation

void sgpp::base::PeriodicGridGenerator::cliques ( size_t  level,
size_t  clique_size 
)
overridevirtual

Creates a sparse grid with fully connected cliques.

Parameters
levelGrid level
clique_sizeclique size

Implements sgpp::base::GridGenerator.

References sgpp::base::HashGenerator::cliques(), and storage.

void sgpp::base::PeriodicGridGenerator::cliques ( size_t  level,
size_t  clique_size,
double  T = 0 
)
overridevirtual

Creates a sparse grid with fully connected cliques.

Parameters
levelGrid level
clique_sizeclique size
Tmodifier for subgrid selection, T = 0 implies standard sparse grid. For further information see Griebel and Knapek's paper optimized tensor-product approximation spaces

Reimplemented from sgpp::base::GridGenerator.

References sgpp::base::HashGenerator::cliques(), and storage.

void sgpp::base::PeriodicGridGenerator::coarsen ( CoarseningFunctor func,
DataVector alpha 
)
overridevirtual

Coarsens a grid according to the settings of the CoarseningFunctor func.

Parameters
funcpointer to coarsening functor
alphaPointer to DataVector containing the grid's coefficients

Implements sgpp::base::GridGenerator.

void sgpp::base::PeriodicGridGenerator::coarsenNFirstOnly ( CoarseningFunctor func,
DataVector alpha,
size_t  numFirstOnly 
)
overridevirtual

Coarsens a grid according to the settings of the CoarseningFunctor func.

Only numFirstOnly first grid points are checked for coarsening.

Parameters
funcpointer to coarsening functor
alphaPointer to DataVector containing the grid's coefficients
numFirstOnlymax. number grid points to be coarsened

Implements sgpp::base::GridGenerator.

void sgpp::base::PeriodicGridGenerator::full ( size_t  level)
overridevirtual

Creates a full grid for a certain level \( n \), i.e., \( V_n = \bigoplus_{|\vec{l}|_\infty *\leq n} W_{\vec{l}}\).

Parameters
levelGrid level

Implements sgpp::base::GridGenerator.

size_t sgpp::base::PeriodicGridGenerator::getNumberOfRefinablePoints ( )
overridevirtual

Returns the number of points on the grid that can be refined in the next iteration.

Returns
the number of points on the grid that can be refined

Implements sgpp::base::GridGenerator.

size_t sgpp::base::PeriodicGridGenerator::getNumberOfRefinablePointsToMaxLevel ( size_t  maxLevel)
overridevirtual

Returns the number of points on the grid that can be refined in the next iteration additionally a maximum level for refinement is taken into account.

Parameters
maxLevelno points on higher levels than maxLevel will be created
Returns
the number of points on the grid that can be refined

Implements sgpp::base::GridGenerator.

size_t sgpp::base::PeriodicGridGenerator::getNumberOfRemovablePoints ( )
overridevirtual

Returns the number of points on the grid that can be removed in the next iteration.

Returns
the number of points on the grid that can be removed

Implements sgpp::base::GridGenerator.

void sgpp::base::PeriodicGridGenerator::refine ( RefinementFunctor func,
std::vector< size_t > *  addedPoints = 0 
)
overridevirtual

Refines a grid according to the settings of the RefinementFunctor func.

Parameters
funcreference to refinement functor
addedPointspointer to vector to add newly created grid points to

Implements sgpp::base::GridGenerator.

void sgpp::base::PeriodicGridGenerator::refineMaxLevel ( RefinementFunctor func,
size_t  maxLevel 
)
overridevirtual

Refines a grid according to the settings of the RefinementFunctor func.

additionally a maximum level for refinement is taken into account

Parameters
funcpointer to refinement functor
maxLevelno points on higher levels than maxLevel will be created

Implements sgpp::base::GridGenerator.

void sgpp::base::PeriodicGridGenerator::regular ( size_t  level)
overridevirtual

Creates a regular sparse grid for a certain level \( n \), i.e., \( V_n^{(1)} = *\bigoplus_{|\vec{l}|_1 \leq n+d-1} W_{\vec{l}}\).

Parameters
levelGrid level

Implements sgpp::base::GridGenerator.

References sgpp::base::HashGenerator::regularWithPeriodicBoundaries(), and storage.

void sgpp::base::PeriodicGridGenerator::regular ( size_t  level,
double  T = 0 
)
overridevirtual

Creates a regular sparse grid for a certain level \( n \), i.e., \( V_n^{(1)} = *\bigoplus_{|\vec{l}|_1 \leq n+d-1} W_{\vec{l}}\).

If the used grid doesn't support the parameter t, t = 0 is used instead.

Parameters
levelGrid level
Tmodifier for subgrid selection, T = 0 implies standard sparse grid. For further information see Griebel and Knapek's paper optimized tensor-product approximation spaces

Reimplemented from sgpp::base::GridGenerator.

References sgpp::base::HashGenerator::regularWithPeriodicBoundaries(), and storage.

Member Data Documentation

GridStorage& sgpp::base::PeriodicGridGenerator::storage
protected

reference to the storage object

Referenced by cliques(), and regular().


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