SG++-Doxygen-Documentation
|
GridGenerator for standard grids without boundaries. More...
#include <StandardGridGenerator.hpp>
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... | |
void | refine (RefinementFunctor &func, std::vector< size_t > *addedPoints=0) override |
Refines a grid according to the settings of the RefinementFunctor func. More... | |
void | refineInter (RefinementFunctor &func, const std::unordered_set< std::vector< bool >> &interactions) |
void | refineInter (RefinementFunctor &func, const std::vector< std::vector< size_t >> &interactions) 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... | |
void | regularInter (size_t level, const std::vector< std::vector< size_t >> &terms, 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... | |
StandardGridGenerator (GridStorage &storage) | |
Constructor. More... | |
~StandardGridGenerator () override | |
Destructor. More... | |
Public Member Functions inherited from sgpp::base::GridGenerator | |
GridGenerator () | |
Constructor. 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 | |
GridStorage & | storage |
reference to the storage object More... | |
GridGenerator for standard grids without boundaries.
|
explicit |
Constructor.
storage | the grid's storage object |
|
override |
Destructor.
|
overridevirtual |
Creates a sparse grid with fully connected cliques.
level | Grid level |
clique_size | clique size |
Implements sgpp::base::GridGenerator.
References sgpp::base::HashGenerator::cliques(), and storage.
|
overridevirtual |
Creates a sparse grid with fully connected cliques.
level | Grid level |
clique_size | clique size |
T | modifier 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.
|
overridevirtual |
Coarsens a grid according to the settings of the CoarseningFunctor func.
func | pointer to coarsening functor |
alpha | Pointer to DataVector containing the grid's coefficients |
Implements sgpp::base::GridGenerator.
References sgpp::base::HashCoarsening::free_coarsen(), and storage.
Referenced by coarsenNFirstOnly(), and getNumberOfRemovablePoints().
|
overridevirtual |
Coarsens a grid according to the settings of the CoarseningFunctor func.
Only numFirstOnly first grid points are checked for coarsening.
func | pointer to coarsening functor |
alpha | Pointer to DataVector containing the grid's coefficients |
numFirstOnly | max. number grid points to be coarsened |
Implements sgpp::base::GridGenerator.
References coarsen(), sgpp::base::HashCoarsening::free_coarsen_NFirstOnly(), and storage.
|
overridevirtual |
Creates a full grid for a certain level \( n \), i.e., \( V_n = \bigoplus_{|\vec{l}|_\infty *\leq n} W_{\vec{l}}\).
level | Grid level |
Implements sgpp::base::GridGenerator.
References sgpp::base::HashGenerator::full(), and storage.
|
overridevirtual |
Returns the number of points on the grid that can be refined in the next iteration.
Implements sgpp::base::GridGenerator.
References sgpp::base::HashRefinement::getNumberOfRefinablePoints(), refine(), and storage.
|
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.
maxLevel | no points on higher levels than maxLevel will be created |
Implements sgpp::base::GridGenerator.
|
overridevirtual |
Returns the number of points on the grid that can be removed in the next iteration.
Implements sgpp::base::GridGenerator.
References coarsen(), sgpp::base::HashCoarsening::getNumberOfRemovablePoints(), and storage.
|
overridevirtual |
Refines a grid according to the settings of the RefinementFunctor func.
func | reference to refinement functor |
addedPoints | pointer to vector to add newly created grid points to |
Implements sgpp::base::GridGenerator.
References sgpp::base::HashRefinement::free_refine(), and storage.
Referenced by getNumberOfRefinablePoints(), and refineInter().
void sgpp::base::StandardGridGenerator::refineInter | ( | RefinementFunctor & | func, |
const std::unordered_set< std::vector< bool >> & | interactions | ||
) |
References refine(), and storage.
Referenced by refineInter().
|
overridevirtual |
Refines a grid according to the settings of the RefinementFunctor func.
Does not create any interactions, that are not in the list of allowed interactions.
Refines the grid, but only adds interactions that are contained in the set interactions, i.e. only desired interactions. Each desired interaction is encoded as a vector which contains all desired interactions. For example, if we want to include grid points that model an interaction between the first and the second predictor, we would include the vector [1,2] in interactions.
func | pointer to refinement functor |
interactions | allowed interactions |
Reimplemented from sgpp::base::GridGenerator.
References chess::dim, sgpp::base::HashGridStorage::getDimension(), python.statsfileInfo::i, refineInter(), and storage.
|
overridevirtual |
Refines a grid according to the settings of the RefinementFunctor func.
additionally a maximum level for refinement is taken into account
func | pointer to refinement functor |
maxLevel | no points on higher levels than maxLevel will be created |
Implements sgpp::base::GridGenerator.
|
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}}\).
level | Grid level |
Implements sgpp::base::GridGenerator.
References sgpp::base::HashGenerator::regular(), and storage.
|
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.
level | Grid level |
T | modifier 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::regular(), and storage.
|
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. This grid generator allows the creation of regular grids that only contain some interaction terms.
level | Grid level |
T | modifier for subgrid selection, T = 0 implies standard sparse grid. For further information see Griebel and Knapek's paper optimized tensor-product approximation spaces |
terms | determines the included interaction terms. |
Reimplemented from sgpp::base::GridGenerator.
References sgpp::base::HashGenerator::regularInter(), and storage.
|
protected |
reference to the storage object
Referenced by cliques(), coarsen(), coarsenNFirstOnly(), full(), getNumberOfRefinablePoints(), getNumberOfRemovablePoints(), refine(), refineInter(), regular(), and regularInter().