SG++-Doxygen-Documentation
|
GridGenerator for prewavelet grids without boundaries. More...
#include <PrewaveletGridGenerator.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... | |
PrewaveletGridGenerator (GridStorage &storage, GridStorage &shadowstorage) | |
Constructor An adaptive grid with prewavelet ansatz functions requires for operations using the up-down algorithm shadow points. More... | |
void | refine (RefinementFunctor &func, std::vector< size_t > *addedPoints=0) override |
Refines the grid and updates the shadow storage. 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... | |
~PrewaveletGridGenerator () 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 Types | |
typedef index_type::index_type | index_t |
typedef GridStorage::point_type | index_type |
typedef index_type::level_type | level_t |
Protected Attributes | |
GridStorage & | shadowstorage |
GridStorage & | storage |
reference to the storage object More... | |
GridGenerator for prewavelet grids without boundaries.
|
protected |
|
protected |
|
protected |
sgpp::base::PrewaveletGridGenerator::PrewaveletGridGenerator | ( | GridStorage & | storage, |
GridStorage & | shadowstorage | ||
) |
Constructor An adaptive grid with prewavelet ansatz functions requires for operations using the up-down algorithm shadow points.
These shadow points a needed just for data transport, thus they do not have an influence on the final function. Please refer to sgpp::pde::UpDownOneOpDimWithShadow for more information.
storage | the grid storage object of the the grid, on which the hierarchisation should be executed |
shadowstorage | shadow points (see detailed description) |
|
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::HashGridStorage::clear(), chess::dim, sgpp::base::HashGridStorage::end(), sgpp::base::HashGridStorage::find(), sgpp::base::HashGridPoint::get(), sgpp::base::HashGridIterator::get(), sgpp::base::HashGridStorage::getDimension(), sgpp::base::HashRefinement::getNumberOfRefinablePoints(), sgpp::base::HashGridStorage::getPoint(), sgpp::base::HashGridStorage::getSize(), python.statsfileInfo::i, sgpp::base::HashGridStorage::insert(), sgpp::base::HashGridStorage::isInvalidSequenceNumber(), sgpp::base::HashGridIterator::leftChild(), refine(), sgpp::base::HashGridIterator::rightChild(), sgpp::base::HashGridIterator::seq(), sgpp::base::HashGridPoint::set(), sgpp::base::HashGridIterator::set(), shadowstorage, storage, and sgpp::base::HashGridIterator::up().
|
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 the grid and updates the shadow storage.
Implements sgpp::base::GridGenerator.
References sgpp::base::HashGridStorage::end(), sgpp::base::HashGridStorage::find(), sgpp::base::HashRefinement::free_refine(), sgpp::base::HashGridPoint::get(), sgpp::base::HashGridStorage::getDimension(), sgpp::base::HashGridStorage::getPoint(), sgpp::base::HashGridStorage::getSize(), python.statsfileInfo::i, shadowstorage, python.leja::start, and storage.
Referenced by getNumberOfRefinablePoints().
|
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.
|
protected |
Referenced by getNumberOfRefinablePoints(), and refine().
|
protected |
reference to the storage object
Referenced by cliques(), coarsen(), coarsenNFirstOnly(), full(), getNumberOfRefinablePoints(), getNumberOfRemovablePoints(), refine(), and regular().