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()().