SG++-Doxygen-Documentation
|
Class that implements the dehierarchisation on a polynomial sparse grid. More...
#include <DehierarchisationLinearClenshawCurtisBoundary.hpp>
Public Member Functions | |
DehierarchisationLinearClenshawCurtisBoundary (GridStorage &storage) | |
Constructor, must be bind to a grid. More... | |
void | operator() (DataVector &source, DataVector &result, grid_iterator &index, size_t dim) |
Implements operator() needed by the sweep class during the grid traversal. More... | |
~DehierarchisationLinearClenshawCurtisBoundary () | |
Destructor. More... | |
Protected Types | |
typedef GridStorage::grid_iterator | grid_iterator |
typedef index_t | index_type |
typedef level_t | level_type |
Protected Member Functions | |
void | rec (DataVector &source, DataVector &result, grid_iterator &index, size_t dim, double xl, double fl, double xr, double fr) |
Recursive dehierarchisation algorithm, this algorithms works in-place -> source should be equal to result. More... | |
Protected Attributes | |
ClenshawCurtisTable & | clenshawCurtisTable |
clenshaw curtis points More... | |
GridStorage & | storage |
the grid object More... | |
Class that implements the dehierarchisation on a polynomial sparse grid.
Therefore the ()operator has to be implement in order to use the sweep algorithm for the grid traversal
|
protected |
|
protected |
|
protected |
|
explicit |
Constructor, must be bind to a grid.
storage | the grid storage object of the the grid, on which the dehierarchisation should be executed |
sgpp::base::DehierarchisationLinearClenshawCurtisBoundary::~DehierarchisationLinearClenshawCurtisBoundary | ( | ) |
Destructor.
void sgpp::base::DehierarchisationLinearClenshawCurtisBoundary::operator() | ( | DataVector & | source, |
DataVector & | result, | ||
grid_iterator & | index, | ||
size_t | dim | ||
) |
Implements operator() needed by the sweep class during the grid traversal.
This function is applied to the whole grid.
source | this DataVector holds the linear base coefficients of the sparse grid's ansatz-functions |
result | this DataVector holds the node base coefficients of the function that should be applied to the sparse grid |
index | a iterator object of the grid |
dim | current fixed dimension of the 'execution direction' |
References clenshawCurtisTable, sgpp::base::HashGridIterator::get(), sgpp::base::ClenshawCurtisTable::getPoint(), sgpp::base::HashGridIterator::hint(), sgpp::base::HashGridStorage::isInvalidSequenceNumber(), rec(), sgpp::base::HashGridIterator::resetToLeftLevelZero(), sgpp::base::HashGridIterator::resetToLevelOne(), sgpp::base::HashGridIterator::resetToRightLevelZero(), sgpp::base::HashGridIterator::seq(), and storage.
|
protected |
Recursive dehierarchisation algorithm, this algorithms works in-place -> source should be equal to result.
source | this DataVector holds the linear base coefficients of the sparse grid's ansatz-functions |
result | this DataVector holds the node base coefficients of the function that should be applied to the sparse grid |
index | a iterator object of the grid |
dim | current fixed dimension of the 'execution direction' |
xl | position of closest neighbor to the left |
fl | function value of closest neighbor to the left |
xr | position of closest neighbor to the right |
fr | function value of closest neighbor to the right |
References clenshawCurtisTable, sgpp::base::HashGridIterator::get(), sgpp::base::ClenshawCurtisTable::getPoint(), sgpp::base::HashGridIterator::hint(), sgpp::base::HashGridStorage::isInvalidSequenceNumber(), sgpp::base::HashGridIterator::leftChild(), sgpp::base::HashGridIterator::seq(), sgpp::base::HashGridIterator::stepRight(), storage, and sgpp::base::HashGridIterator::up().
Referenced by operator()().
|
protected |
clenshaw curtis points
Referenced by operator()(), and rec().
|
protected |
the grid object
Referenced by operator()(), and rec().