SG++-Doxygen-Documentation
|
This class extends the PDESolver with functions that are needed to solve elliptic PDEs. More...
#include <EllipticPDESolver.hpp>
Public Member Functions | |
EllipticPDESolver () | |
Std-Constructor of the solver. More... | |
virtual void | solvePDE (sgpp::base::DataVector &alpha, sgpp::base::DataVector &rhs, size_t maxCGIterations, double epsilonCG, bool verbose=false)=0 |
abstract method to solve an elliptic PDE. More... | |
virtual | ~EllipticPDESolver () |
Std-Destructor of the solver. More... | |
Public Member Functions inherited from sgpp::pde::PDESolver | |
void | coarsenInitialGridSurplus (sgpp::base::DataVector &alpha, double dThreshold) |
Coarsens a grid by taking the grid's coefficients into account. More... | |
virtual void | constructGrid (sgpp::base::BoundingBox &myBoundingBox, size_t level)=0 |
Use this routine the construct a regular grid to solve a PDE. More... | |
void | deleteGrid () |
deletes the grid created within that solver More... | |
void | evaluateCuboid (sgpp::base::DataVector &alpha, sgpp::base::DataVector &FunctionValues, sgpp::base::DataMatrix &EvaluationPoints) |
Evaluates the sparse grid's function given by the stored grid and the alpha coefficients. More... | |
double | evaluatePoint (sgpp::base::DataVector &evalPoint, sgpp::base::DataVector &alpha) |
Determines the value of the function in the d-dimensional space. More... | |
std::string | getGrid () const |
gets the a string the describes the grid which is currently used to solve More... | |
size_t | getNumberDimensions () const |
use this the determine the number of dimensions that are currently used in the solver. More... | |
size_t | getNumberGridPoints () const |
use this to determine the number of grid points, used to solve the current problem More... | |
size_t | getNumberInnerGridPoints () const |
use this to determine the number of inner grid points, used to solve the current problem More... | |
PDESolver () | |
Std-Constructor of the solver. More... | |
virtual void | printGrid (sgpp::base::DataVector &alpha, size_t PointesPerDimension, std::string tfilename) const |
This is some kind of debug functionality. More... | |
virtual void | printGridDomain (sgpp::base::DataVector &alpha, size_t PointesPerDimension, sgpp::base::BoundingBox &GridArea, std::string tfilename) const |
This is some kind of debug functionality. More... | |
virtual void | printLevelIndexGrid (std::string tfilename) const |
Prints the level,index pairs of the grid for each Gridpoint to a file. More... | |
virtual void | printSparseGrid (sgpp::base::DataVector &alpha, std::string tfilename, bool bSurplus) const |
Prints the sgpp::base::Grid Points of the Sparse sgpp::base::Grid either with their node basis value or their hierarchical surplus. More... | |
virtual void | printSparseGridExpTransform (sgpp::base::DataVector &alpha, std::string tfilename, bool bSurplus) const |
Prints the sgpp::base::Grid Points of the Sparse sgpp::base::Grid either with their node basis value or their hierarchical surplus. More... | |
void | refineInitialGridSurplus (sgpp::base::DataVector &alpha, int numRefinePoints, double dThreshold) |
Refines a grid by taking the grid's coefficients into account. More... | |
void | refineInitialGridSurplusSubDomain (sgpp::base::DataVector &alpha, int numRefinePoints, double dThreshold, std::vector< double > &norm_mu, std::vector< double > &norm_sigma) |
Refines a grid by taking the grid's coefficients into account. More... | |
void | refineInitialGridSurplusToMaxLevel (sgpp::base::DataVector &alpha, double dThreshold, sgpp::base::level_t maxLevel) |
Refines a grid by taking the grid's coefficients into account. More... | |
void | refineInitialGridSurplusToMaxLevelSubDomain (sgpp::base::DataVector &alpha, double dThreshold, sgpp::base::level_t maxLevel, std::vector< double > &norm_mu, std::vector< double > &norm_sigma) |
Refines a grid by taking the grid's coefficients into account. More... | |
void | setGrid (const std::string &serializedGrid) |
Sets the grid used in this BlackScholes Solver by an given serialized string of the grid. More... | |
virtual | ~PDESolver () |
Std-Destructor of the solver. More... | |
Additional Inherited Members | |
Protected Member Functions inherited from sgpp::pde::PDESolver | |
virtual void | getGridNormalDistribution (sgpp::base::DataVector &alpha, std::vector< double > &norm_mu, std::vector< double > &norm_sigma) |
This function calculates for every grid point the value of a normal distribution given by norm_mu and norm_sigma. More... | |
Protected Attributes inherited from sgpp::pde::PDESolver | |
bool | bGridConstructed |
stores if the grid was created inside the solver More... | |
size_t | dim |
the dimension of the grid More... | |
int | levels |
the number of levels used for an regular grid More... | |
sgpp::base::BoundingBox * | myBoundingBox |
Stores Pointer to the sgpp::base::Grid's Bounding Box. More... | |
sgpp::base::Grid * | myGrid |
The Sparse sgpp::base::Grid needed in this classificator. More... | |
sgpp::base::GridStorage * | myGridStorage |
Stores Pointer to the Girs's Storage. More... | |
This class extends the PDESolver with functions that are needed to solve elliptic PDEs.
sgpp::pde::EllipticPDESolver::EllipticPDESolver | ( | ) |
Std-Constructor of the solver.
|
virtual |
Std-Destructor of the solver.
|
pure virtual |
abstract method to solve an elliptic PDE.
All solver of elliptic PDEs have to implement this method.
alpha | the coefficients of the Sparse Gird's basis functions will be in this vector after solving |
rhs | the right hand side of the SLE |
maxCGIterations | the maximum of interation in the CG solver |
epsilonCG | the epsilon used in the CG |
verbose | enables verbose output during solving |
Implemented in sgpp::pde::PoissonEquationSolver.