SG++

Class that implements the hierarchisation on a linear sparse grid with boundaries. More...
#include <HierarchisationLinearStretchedBoundary.hpp>
Public Member Functions  
HierarchisationLinearStretchedBoundary (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...  
~HierarchisationLinearStretchedBoundary () override  
Destructor. More...  
Public Member Functions inherited from sgpp::base::HierarchisationLinearStretched  
HierarchisationLinearStretched (GridStorage &storage)  
Constructor, must be bind to a grid. More...  
virtual  ~HierarchisationLinearStretched () 
Destructor. More...  
Additional Inherited Members  
Protected Types inherited from sgpp::base::HierarchisationLinearStretched  
typedef GridStorage::grid_iterator  grid_iterator 
Protected Member Functions inherited from sgpp::base::HierarchisationLinearStretched  
void  rec (DataVector &source, DataVector &result, grid_iterator &index, size_t dim, double fl, double fr) 
Recursive hierarchisation algorithm, this algorithms works inplace > source should be equal to result. More...  
Protected Attributes inherited from sgpp::base::HierarchisationLinearStretched  
GridStorage &  storage 
the grid object More...  
Stretching *  stretch 
the stretching 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 
References ~HierarchisationLinearStretchedBoundary().

override 
Destructor.
Referenced by HierarchisationLinearStretchedBoundary().

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 ansatzfunctions 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 ansatzfunctions 
index  a iterator object of the grid 
dim  current fixed dimension of the 'execution direction' 
Reimplemented from sgpp::base::HierarchisationLinearStretched.
References sgpp::base::HashGridIterator::hint(), sgpp::base::HashGridStorage::isInvalidSequenceNumber(), sgpp::base::HierarchisationLinearStretched::rec(), sgpp::base::HashGridIterator::resetToLeftLevelZero(), sgpp::base::HashGridIterator::resetToLevelOne(), sgpp::base::HashGridIterator::resetToRightLevelZero(), sgpp::base::HashGridIterator::seq(), and sgpp::base::HierarchisationLinearStretched::storage.