SG++-Doxygen-Documentation
|
Implements the down Method needed for the Laplace operator on prewavelet grids. More...
#include <LaplaceUpPrewavelet.hpp>
Public Member Functions | |
LaplaceUpPrewavelet (sgpp::base::GridStorage *storage) | |
Constructor. More... | |
void | operator() (sgpp::base::DataVector &source, sgpp::base::DataVector &result, grid_iterator &index, size_t dim) |
This operations performs the calculation of down in the direction of dimension dim More... | |
~LaplaceUpPrewavelet () | |
Destructor. More... | |
Protected Types | |
typedef sgpp::base::GridStorage::grid_iterator | grid_iterator |
Protected Attributes | |
sgpp::base::GridStorage * | storage |
Pointer to sgpp::base::GridStorage object. More... | |
Implements the down Method needed for the Laplace operator on prewavelet grids.
Here, the prewavlets have an advantage over the normal linear base due to the semi othogonality. That means, for the calculation, only the gridpoint in the same level have to be taken into account. The matrix entries are the following:
\begin{eqnarray*} m_{(1,1)(1,1)}&=&\frac{1}{3}\\m_{(2,1)(2,3)}&=&\frac{1}{25}\\m_{(l,1)(l,1)}&=&m_{(l,2^{l}-1)(l,2^{l}-1)}=\frac{44}{75}h_{l}\\m_{(l,1)(l,3)}&=&m_{(l,2^{l}-1)(l,2^{l}-3)}=\frac{11}{75}h_{l}\\m_{(l,i)(l,i)}&=&\frac{18}{25}h_{l}\\m_{(l,i)(l,i\pm2)}&=&\frac{2}{15}h_{l}\\m_{(l,i)(l,i\pm4)}&=&-\frac{11}{75}h_{l} \end{eqnarray*}
With that, the calculation of the entire matrix is completed, thus no additional up-part is needed.
|
protected |
|
explicit |
Constructor.
storage | the grid's sgpp::base::GridStorage object |
sgpp::pde::LaplaceUpPrewavelet::~LaplaceUpPrewavelet | ( | ) |
Destructor.
void sgpp::pde::LaplaceUpPrewavelet::operator() | ( | sgpp::base::DataVector & | source, |
sgpp::base::DataVector & | result, | ||
grid_iterator & | index, | ||
size_t | dim | ||
) |
This operations performs the calculation of down in the direction of dimension dim
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' |
References sgpp::base::HashGridIterator::get(), h, sgpp::base::HashGridIterator::hintLeft(), sgpp::base::HashGridIterator::hintRight(), python.statsfileInfo::i, sgpp::base::HashGridStorage::isInvalidSequenceNumber(), sgpp::base::HashGridIterator::seq(), sgpp::base::HashGridIterator::set(), and storage.
|
protected |
Pointer to sgpp::base::GridStorage object.
Referenced by operator()().