![]() |
SG++-Doxygen-Documentation
|
Implementation of sweep operator () for enhanced Laplace operator, up operation. More...
#include <LaplaceEnhancedUpBBLinear.hpp>
Public Member Functions | |
| LaplaceEnhancedUpBBLinear (sgpp::base::GridStorage *storage) | |
| Constructor. More... | |
| virtual void | operator() (sgpp::base::DataMatrix &source, sgpp::base::DataMatrix &result, grid_iterator &index, size_t dim) |
| This operations performs the calculation of up in the direction of dimension dim on a grid with fix Dirichlet 0 boundary conditions. More... | |
| virtual | ~LaplaceEnhancedUpBBLinear () |
| Destructor. More... | |
Protected Types | |
| typedef sgpp::base::GridStorage::grid_iterator | grid_iterator |
Protected Member Functions | |
| void | rec (double &fl, double &fr, size_t dim, grid_iterator &index) |
| recursive function for the calculation of Up (L2 scalar product) without Bounding Box More... | |
| void | rec_GL (double &fl, double &fr, size_t dim, grid_iterator &index) |
| recursive function for the calculation of merged-Up (L2 scalar product and gradient) without Bounding Box More... | |
| void | rec_grad (size_t dim, grid_iterator &index) |
| recursive function for the calculation of Up (gradient) without Bounding Box More... | |
| void | rec_LG (double &fl, double &fr, size_t dim, grid_iterator &index) |
| recursive function for the calculation of merged-Up (gradient and L2 scalar product) without Bounding Box More... | |
| void | rec_LL (double &fl, double &fr, double &fl2, double &fr2, size_t dim, grid_iterator &index) |
| recursive function for the calculation of merged-Up (L2 scalar products) without Bounding Box More... | |
| void | recBB (double &fl, double &fr, size_t dim, grid_iterator &index) |
| recursive function for the calculation of Up (L2 scalar product) with Bounding Box More... | |
| void | recBB_GL (double &fl, double &fr, size_t dim, grid_iterator &index) |
| recursive function for the calculation of merged-Up (gradient and L2 scalar product) with Bounding Box More... | |
| void | recBB_grad (size_t dim, grid_iterator &index) |
| recursive function for the calculation of Up (gradient) with Bounding Box More... | |
| void | recBB_LG (double &fl, double &fr, size_t dim, grid_iterator &index) |
| recursive function for the calculation of merged-Up (L2 scalar product and gradient) with Bounding Box More... | |
| void | recBB_LL (double &fl, double &fr, double &fl2, double &fr2, size_t dim, grid_iterator &index) |
| recursive function for the calculation of merged-Up (L2 scalar products) with Bounding Box More... | |
Protected Attributes | |
| const std::vector< size_t > | algoDims |
| algorithmic dimensions, operator is applied in this dimensions More... | |
| sgpp::base::BoundingBox * | boundingBox |
| Pointer to the bounding box Obejct. More... | |
| size_t | cur_algo_dim_ |
| current algorithmic dimension for the overall operator More... | |
| const size_t | numAlgoDims_ |
| number of algorithmic dimensions More... | |
| double * | ptr_result_ |
| pointer to DataMatrix containing result coefficients More... | |
| double * | ptr_source_ |
| pointer to DataMatrix containing source coefficients More... | |
| double | q_ |
| stretching of basis functions in current algorithmic domain More... | |
| sgpp::base::GridStorage * | storage |
| Pointer to sgpp::base::GridStorage object. More... | |
| double | t_ |
| translation of basis function in current algorithmic domain More... | |
Implementation of sweep operator () for enhanced Laplace operator, up operation.
This sweep operator calculates all ups (L2 scalar products and gradient) for a given dimension.
|
protected |
|
explicit |
Constructor.
| storage | the grid's sgpp::base::GridStorage object |
|
virtual |
Destructor.
|
virtual |
This operations performs the calculation of up in the direction of dimension dim on a grid with fix Dirichlet 0 boundary conditions.
| source | sgpp::base::DataVector that contains the gridpoint's coefficients (values from the vector of the laplace operation) |
| result | sgpp::base::DataVector that contains the result of the up operation |
| index | a iterator object of the grid |
| dim | current fixed dimension of the 'execution direction' |
Reimplemented in sgpp::pde::LaplaceEnhancedUpBBLinearBoundary.
References algoDims, boundingBox, cur_algo_dim_, chess::dim, sgpp::base::BoundingBox::getIntervalOffset(), sgpp::base::BoundingBox::getIntervalWidth(), sgpp::base::DataMatrix::getPointer(), python.statsfileInfo::i, numAlgoDims_, ptr_result_, ptr_source_, q_, rec(), rec_GL(), rec_grad(), rec_LG(), rec_LL(), recBB(), recBB_GL(), recBB_grad(), recBB_LG(), recBB_LL(), and t_.
|
protected |
recursive function for the calculation of Up (L2 scalar product) without Bounding Box
| fl | function value on the left boundary |
| fr | function value on the right boundary |
| dim | current fixed dimension of the 'execution direction', here all downs are calculated |
| index | an iterator object of the grid |
References cur_algo_dim_, chess::dim, sgpp::base::HashGridIterator::get(), sgpp::base::HashGridIterator::hint(), sgpp::base::HashGridStorage::isInvalidSequenceNumber(), sgpp::base::HashGridIterator::leftChild(), numAlgoDims_, ptr_result_, ptr_source_, rec_LL(), sgpp::base::HashGridIterator::seq(), sgpp::base::HashGridIterator::stepRight(), storage, analyse_erg::tmp, and sgpp::base::HashGridIterator::up().
Referenced by sgpp::pde::LaplaceEnhancedUpBBLinearBoundary::operator()(), and operator()().
|
protected |
recursive function for the calculation of merged-Up (L2 scalar product and gradient) without Bounding Box
| fl | first function value on the left boundary, L2 scalar product |
| fr | first function value on the right boundary, L2 scalar product |
| dim | current fixed dimension of the 'execution direction', here all downs are calculated |
| index | an iterator object of the grid |
References cur_algo_dim_, sgpp::base::HashGridIterator::get(), sgpp::base::HashGridIterator::hint(), sgpp::base::HashGridStorage::isInvalidSequenceNumber(), sgpp::base::HashGridIterator::leftChild(), numAlgoDims_, ptr_result_, ptr_source_, sgpp::base::HashGridIterator::seq(), sgpp::base::HashGridIterator::stepRight(), storage, analyse_erg::tmp, and sgpp::base::HashGridIterator::up().
Referenced by sgpp::pde::LaplaceEnhancedUpBBLinearBoundary::operator()(), and operator()().
|
protected |
recursive function for the calculation of Up (gradient) without Bounding Box
| dim | current fixed dimension of the 'execution direction', here all downs are calculated |
| index | an iterator object of the grid |
References cur_algo_dim_, sgpp::base::HashGridIterator::hint(), sgpp::base::HashGridStorage::isInvalidSequenceNumber(), sgpp::base::HashGridIterator::leftChild(), numAlgoDims_, ptr_result_, sgpp::base::HashGridIterator::seq(), sgpp::base::HashGridIterator::stepRight(), storage, and sgpp::base::HashGridIterator::up().
Referenced by sgpp::pde::LaplaceEnhancedUpBBLinearBoundary::operator()(), operator()(), and recBB_grad().
|
protected |
recursive function for the calculation of merged-Up (gradient and L2 scalar product) without Bounding Box
| fl | first function value on the left boundary, L2 scalar product |
| fr | first function value on the right boundary, L2 scalar product |
| dim | current fixed dimension of the 'execution direction', here all downs are calculated |
| index | an iterator object of the grid |
References cur_algo_dim_, sgpp::base::HashGridIterator::get(), sgpp::base::HashGridIterator::hint(), sgpp::base::HashGridStorage::isInvalidSequenceNumber(), sgpp::base::HashGridIterator::leftChild(), numAlgoDims_, ptr_result_, ptr_source_, sgpp::base::HashGridIterator::seq(), sgpp::base::HashGridIterator::stepRight(), storage, analyse_erg::tmp, and sgpp::base::HashGridIterator::up().
Referenced by sgpp::pde::LaplaceEnhancedUpBBLinearBoundary::operator()(), and operator()().
|
protected |
recursive function for the calculation of merged-Up (L2 scalar products) without Bounding Box
| fl | first function value on the left boundary |
| fr | first function value on the right boundary |
| fl2 | second function value on the left boundary |
| fr2 | second function value on the right boundary |
| dim | current fixed dimension of the 'execution direction', here all downs are calculated |
| index | an iterator object of the grid |
References alpha, cur_algo_dim_, sgpp::base::HashGridIterator::get(), h, sgpp::base::HashGridIterator::hint(), sgpp::base::HashGridStorage::isInvalidSequenceNumber(), sgpp::base::HashGridIterator::leftChild(), numAlgoDims_, ptr_result_, ptr_source_, sgpp::base::HashGridIterator::seq(), sgpp::base::HashGridIterator::stepRight(), storage, analyse_erg::tmp, and sgpp::base::HashGridIterator::up().
Referenced by sgpp::pde::LaplaceEnhancedUpBBLinearBoundary::operator()(), operator()(), and rec().
|
protected |
recursive function for the calculation of Up (L2 scalar product) with Bounding Box
| fl | function value on the left boundary |
| fr | function value on the right boundary |
| dim | current fixed dimension of the 'execution direction', here all downs are calculated |
| index | an iterator object of the grid |
References cur_algo_dim_, sgpp::base::HashGridIterator::get(), sgpp::base::HashGridIterator::hint(), sgpp::base::HashGridStorage::isInvalidSequenceNumber(), sgpp::base::HashGridIterator::leftChild(), numAlgoDims_, ptr_result_, ptr_source_, q_, sgpp::base::HashGridIterator::seq(), sgpp::base::HashGridIterator::stepRight(), storage, analyse_erg::tmp, and sgpp::base::HashGridIterator::up().
Referenced by sgpp::pde::LaplaceEnhancedUpBBLinearBoundary::operator()(), and operator()().
|
protected |
recursive function for the calculation of merged-Up (gradient and L2 scalar product) with Bounding Box
| fl | first function value on the left boundary, L2 scalar product |
| fr | first function value on the right boundary, L2 scalar product |
| dim | current fixed dimension of the 'execution direction', here all downs are calculated |
| index | an iterator object of the grid |
References cur_algo_dim_, sgpp::base::HashGridIterator::get(), sgpp::base::HashGridIterator::hint(), sgpp::base::HashGridStorage::isInvalidSequenceNumber(), sgpp::base::HashGridIterator::leftChild(), numAlgoDims_, ptr_result_, ptr_source_, q_, sgpp::base::HashGridIterator::seq(), sgpp::base::HashGridIterator::stepRight(), storage, analyse_erg::tmp, and sgpp::base::HashGridIterator::up().
Referenced by sgpp::pde::LaplaceEnhancedUpBBLinearBoundary::operator()(), and operator()().
|
protected |
recursive function for the calculation of Up (gradient) with Bounding Box
| dim | current fixed dimension of the 'execution direction', here all downs are calculated |
| index | an iterator object of the grid |
References cur_algo_dim_, sgpp::base::HashGridIterator::hint(), sgpp::base::HashGridStorage::isInvalidSequenceNumber(), sgpp::base::HashGridIterator::leftChild(), numAlgoDims_, ptr_result_, rec_grad(), sgpp::base::HashGridIterator::seq(), sgpp::base::HashGridIterator::stepRight(), storage, and sgpp::base::HashGridIterator::up().
Referenced by sgpp::pde::LaplaceEnhancedUpBBLinearBoundary::operator()(), and operator()().
|
protected |
recursive function for the calculation of merged-Up (L2 scalar product and gradient) with Bounding Box
| fl | first function value on the left boundary, L2 scalar product |
| fr | first function value on the right boundary, L2 scalar product |
| dim | current fixed dimension of the 'execution direction', here all downs are calculated |
| index | an iterator object of the grid |
References cur_algo_dim_, sgpp::base::HashGridIterator::get(), sgpp::base::HashGridIterator::hint(), sgpp::base::HashGridStorage::isInvalidSequenceNumber(), sgpp::base::HashGridIterator::leftChild(), numAlgoDims_, ptr_result_, ptr_source_, q_, sgpp::base::HashGridIterator::seq(), sgpp::base::HashGridIterator::stepRight(), storage, analyse_erg::tmp, and sgpp::base::HashGridIterator::up().
Referenced by sgpp::pde::LaplaceEnhancedUpBBLinearBoundary::operator()(), and operator()().
|
protected |
recursive function for the calculation of merged-Up (L2 scalar products) with Bounding Box
| fl | first function value on the left boundary |
| fr | first function value on the right boundary |
| fl2 | second function value on the left boundary |
| fr2 | second function value on the right boundary |
| dim | current fixed dimension of the 'execution direction', here all downs are calculated |
| index | an iterator object of the grid |
References cur_algo_dim_, sgpp::base::HashGridIterator::get(), sgpp::base::HashGridIterator::hint(), sgpp::base::HashGridStorage::isInvalidSequenceNumber(), sgpp::base::HashGridIterator::leftChild(), numAlgoDims_, ptr_result_, ptr_source_, q_, sgpp::base::HashGridIterator::seq(), sgpp::base::HashGridIterator::stepRight(), storage, analyse_erg::tmp, and sgpp::base::HashGridIterator::up().
Referenced by sgpp::pde::LaplaceEnhancedUpBBLinearBoundary::operator()(), and operator()().
|
protected |
algorithmic dimensions, operator is applied in this dimensions
Referenced by sgpp::pde::LaplaceEnhancedUpBBLinearBoundary::operator()(), and operator()().
|
protected |
Pointer to the bounding box Obejct.
Referenced by sgpp::pde::LaplaceEnhancedUpBBLinearBoundary::operator()(), and operator()().
|
protected |
current algorithmic dimension for the overall operator
Referenced by sgpp::pde::LaplaceEnhancedUpBBLinearBoundary::operator()(), operator()(), rec(), rec_GL(), rec_grad(), rec_LG(), rec_LL(), recBB(), recBB_GL(), recBB_grad(), recBB_LG(), and recBB_LL().
|
protected |
number of algorithmic dimensions
Referenced by sgpp::pde::LaplaceEnhancedUpBBLinearBoundary::operator()(), operator()(), rec(), rec_GL(), rec_grad(), rec_LG(), rec_LL(), recBB(), recBB_GL(), recBB_grad(), recBB_LG(), and recBB_LL().
|
protected |
pointer to DataMatrix containing result coefficients
Referenced by sgpp::pde::LaplaceEnhancedUpBBLinearBoundary::operator()(), operator()(), rec(), rec_GL(), rec_grad(), rec_LG(), rec_LL(), recBB(), recBB_GL(), recBB_grad(), recBB_LG(), and recBB_LL().
|
protected |
pointer to DataMatrix containing source coefficients
Referenced by sgpp::pde::LaplaceEnhancedUpBBLinearBoundary::operator()(), operator()(), rec(), rec_GL(), rec_LG(), rec_LL(), recBB(), recBB_GL(), recBB_LG(), and recBB_LL().
|
protected |
stretching of basis functions in current algorithmic domain
Referenced by sgpp::pde::LaplaceEnhancedUpBBLinearBoundary::operator()(), operator()(), recBB(), recBB_GL(), recBB_LG(), and recBB_LL().
|
protected |
Pointer to sgpp::base::GridStorage object.
Referenced by sgpp::pde::LaplaceEnhancedUpBBLinearBoundary::operator()(), rec(), rec_GL(), rec_grad(), rec_LG(), rec_LL(), recBB(), recBB_GL(), recBB_grad(), recBB_LG(), and recBB_LL().
|
protected |
translation of basis function in current algorithmic domain
Referenced by sgpp::pde::LaplaceEnhancedUpBBLinearBoundary::operator()(), and operator()().