SG++-Doxygen-Documentation
sgpp::base::DehierarchisationPolyClenshawCurtis Class Reference

Class that implements the dehierarchisation on a polynomial sparse grid. More...

#include <DehierarchisationPolyClenshawCurtis.hpp>

Public Member Functions

 DehierarchisationPolyClenshawCurtis (GridStorage &storage, SPolyClenshawCurtisBase *base)
 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...
 
 ~DehierarchisationPolyClenshawCurtis ()
 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, DataVector &coeffs)
 Recursive dehierarchisation algorithm, this algorithms works in-place -> source should be equal to result. More...
 

Protected Attributes

SPolyClenshawCurtisBasebase
 the base More...
 
ClenshawCurtisTableclenshawCurtisTable
 clenshaw curtis points More...
 
GridStoragestorage
 the grid object More...
 

Detailed Description

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

Member Typedef Documentation

◆ grid_iterator

◆ index_type

◆ level_type

Constructor & Destructor Documentation

◆ DehierarchisationPolyClenshawCurtis()

sgpp::base::DehierarchisationPolyClenshawCurtis::DehierarchisationPolyClenshawCurtis ( GridStorage storage,
SPolyClenshawCurtisBase base 
)
explicit

Constructor, must be bind to a grid.

Parameters
storagethe grid storage object of the the grid, on which the dehierarchisation should be executed
basePolynomial basis

◆ ~DehierarchisationPolyClenshawCurtis()

sgpp::base::DehierarchisationPolyClenshawCurtis::~DehierarchisationPolyClenshawCurtis ( )

Destructor.

Member Function Documentation

◆ operator()()

void sgpp::base::DehierarchisationPolyClenshawCurtis::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.

Parameters
sourcethis DataVector holds the linear base coefficients of the sparse grid's ansatz-functions
resultthis DataVector holds the node base coefficients of the function that should be applied to the sparse grid
indexa iterator object of the grid
dimcurrent fixed dimension of the 'execution direction'

References sgpp::base::HashGridIterator::getGridDepth(), rec(), and sgpp::base::DataVector::setAll().

◆ rec()

void sgpp::base::DehierarchisationPolyClenshawCurtis::rec ( DataVector source,
DataVector result,
grid_iterator index,
size_t  dim,
DataVector coeffs 
)
protected

Recursive dehierarchisation algorithm, this algorithms works in-place -> source should be equal to result.

Parameters
sourcethis DataVector holds the linear base coefficients of the sparse grid's ansatz-functions
resultthis DataVector holds the node base coefficients of the function that should be applied to the sparse grid
indexa iterator object of the grid
dimcurrent fixed dimension of the 'execution direction'
coeffsnodal coefficients computed so far

References base, clenshawCurtisTable, sgpp::base::PolyClenshawCurtisBasis< LT, IT >::evalHierToTop(), 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()().

Member Data Documentation

◆ base

SPolyClenshawCurtisBase* sgpp::base::DehierarchisationPolyClenshawCurtis::base
protected

the base

Referenced by rec().

◆ clenshawCurtisTable

ClenshawCurtisTable& sgpp::base::DehierarchisationPolyClenshawCurtis::clenshawCurtisTable
protected

clenshaw curtis points

Referenced by rec().

◆ storage

GridStorage& sgpp::base::DehierarchisationPolyClenshawCurtis::storage
protected

the grid object

Referenced by rec().


The documentation for this class was generated from the following files: