SG++-Doxygen-Documentation
|
Class that implements the hierarchisation on a linear sparse grid with boundaries. More...
#include <HierarchisationLinearBoundary.hpp>
Public Member Functions | |
HierarchisationLinearBoundary (GridStorage &storage) | |
Constructor, must be bind to a grid. More... | |
virtual void | operator() (DataVector &source, DataVector &result, grid_iterator &index, size_t dim) override |
Implements operator() needed by the sweep class during the grid traversal. More... | |
~HierarchisationLinearBoundary () override | |
Destructor. More... | |
Public Member Functions inherited from sgpp::base::HierarchisationLinear | |
HierarchisationLinear (GridStorage &storage) | |
Constructor, must be bind to a grid. More... | |
virtual | ~HierarchisationLinear () |
Destructor. More... | |
Additional Inherited Members | |
Protected Types inherited from sgpp::base::HierarchisationLinear | |
typedef GridStorage::grid_iterator | grid_iterator |
Protected Member Functions inherited from sgpp::base::HierarchisationLinear | |
void | rec (DataVector &source, DataVector &result, grid_iterator &index, size_t dim, double fl, double fr) |
Recursive hierarchisaton algorithm, this algorithms works in-place -> source should be equal to result. More... | |
Protected Attributes inherited from sgpp::base::HierarchisationLinear | |
GridStorage & | storage |
the grid object More... | |
Class that implements the hierarchisation on a linear sparse grid with boundaries.
Therefore the ()operator has to be implement in order to use the sweep algorithm for the grid traversal
|
explicit |
Constructor, must be bind to a grid.
storage | the grid storage object of the the grid, on which the hierarchisation should be executed |
|
override |
Destructor.
|
overridevirtual |
Implements operator() needed by the sweep class during the grid traversal.
This function is applied to the whole grid.
For level zero it's assumed, that both ansatz-functions do exist: 0,0 and 0,1 If one is missing this code might produce some bad errors (segmentation fault, wrong calculation result) So please assure that both functions do exist!
source | this DataVector holds the node base coefficients of the function that should be applied to the sparse grid |
result | this DataVector holds the linear base coefficients of the sparse grid's ansatz-functions |
index | a iterator object of the grid |
dim | current fixed dimension of the 'execution direction' |
Reimplemented from sgpp::base::HierarchisationLinear.
References sgpp::base::HashGridIterator::hint(), sgpp::base::HashGridStorage::isInvalidSequenceNumber(), sgpp::base::HierarchisationLinear::rec(), sgpp::base::HashGridIterator::resetToLeftLevelZero(), sgpp::base::HashGridIterator::resetToLevelOne(), sgpp::base::HashGridIterator::resetToRightLevelZero(), sgpp::base::HashGridIterator::seq(), and sgpp::base::HierarchisationLinear::storage.