SG++
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
sgpp::optimization::HierarchisationSLE Class Reference

Linear system of the hierarchization in a sparse grid. More...

#include <HierarchisationSLE.hpp>

Inheritance diagram for sgpp::optimization::HierarchisationSLE:
sgpp::optimization::CloneableSLE sgpp::optimization::SLE

Public Member Functions

void clone (std::unique_ptr< CloneableSLE > &clone) const override
 
size_t getDimension () const override
 Pure virtual method returning the dimension (number of rows/columns) of the system. More...
 
base::GridgetGrid ()
 
base::GridStoragegetGridStorage ()
 
double getMatrixEntry (size_t i, size_t j) override
 
 HierarchisationSLE (base::Grid &grid)
 Constructor. More...
 
 HierarchisationSLE (base::Grid &grid, base::GridStorage &gridStorage)
 Constructor. More...
 
bool isMatrixEntryNonZero (size_t i, size_t j) override
 
- Public Member Functions inherited from sgpp::optimization::CloneableSLE
 CloneableSLE ()
 Constructor. More...
 
bool isCloneable () const override
 
 ~CloneableSLE () override
 Destructor. More...
 
- Public Member Functions inherited from sgpp::optimization::SLE
virtual size_t countNNZ ()
 Count all non-zero entries. More...
 
virtual void matrixVectorMultiplication (const base::DataVector &x, base::DataVector &y)
 Multiply the matrix with a vector. More...
 
 SLE ()
 Constructor. More...
 
virtual ~SLE ()
 Destructor. More...
 

Protected Types

enum  {
  INVALID, BSPLINE, BSPLINE_BOUNDARY, BSPLINE_CLENSHAW_CURTIS,
  BSPLINE_MODIFIED, BSPLINE_MODIFIED_CLENSHAW_CURTIS, FUNDAMENTAL_SPLINE, FUNDAMENTAL_SPLINE_MODIFIED,
  LINEAR, LINEAR_BOUNDARY, LINEAR_CLENSHAW_CURTIS, LINEAR_MODIFIED,
  WAVELET, WAVELET_BOUNDARY, WAVELET_MODIFIED
}
 type of grid/basis functions More...
 

Protected Member Functions

double evalBasisFunctionAtGridPoint (size_t basisI, size_t pointJ)
 
double evalBsplineBoundaryFunctionAtGridPoint (size_t basisI, size_t pointJ)
 
double evalBsplineClenshawCurtisFunctionAtGridPoint (size_t basisI, size_t pointJ)
 
double evalBsplineFunctionAtGridPoint (size_t basisI, size_t pointJ)
 
double evalBsplineModifiedClenshawCurtisFunctionAtGridPoint (size_t basisI, size_t pointJ)
 
double evalBsplineModifiedFunctionAtGridPoint (size_t basisI, size_t pointJ)
 
double evalFundamentalSplineFunctionAtGridPoint (size_t basisI, size_t pointJ)
 
double evalFundamentalSplineModifiedFunctionAtGridPoint (size_t basisI, size_t pointJ)
 
double evalLinearBoundaryFunctionAtGridPoint (size_t basisI, size_t pointJ)
 
double evalLinearClenshawCurtisFunctionAtGridPoint (size_t basisI, size_t pointJ)
 
double evalLinearFunctionAtGridPoint (size_t basisI, size_t pointJ)
 
double evalLinearModifiedFunctionAtGridPoint (size_t basisI, size_t pointJ)
 
double evalWaveletBoundaryFunctionAtGridPoint (size_t basisI, size_t pointJ)
 
double evalWaveletFunctionAtGridPoint (size_t basisI, size_t pointJ)
 
double evalWaveletModifiedFunctionAtGridPoint (size_t basisI, size_t pointJ)
 

Protected Attributes

enum
sgpp::optimization::HierarchisationSLE:: { ... }  
basisType
 type of grid/basis functions More...
 
std::unique_ptr
< base::SBsplineBase
bsplineBasis
 B-spline basis. More...
 
std::unique_ptr
< base::SBsplineBoundaryBase
bsplineBoundaryBasis
 B-spline boundary basis. More...
 
std::unique_ptr
< base::SBsplineClenshawCurtisBase
bsplineClenshawCurtisBasis
 B-spline Clenshaw-Curtis basis. More...
 
std::unique_ptr
< base::SFundamentalSplineBase
fundamentalSplineBasis
 fundamental spline basis More...
 
base::Gridgrid
 sparse grid More...
 
base::GridStoragegridStorage
 grid storage More...
 
std::unique_ptr
< base::SLinearBase
linearBasis
 linear basis More...
 
std::unique_ptr
< base::SLinearClenshawCurtisBase
linearClenshawCurtisBasis
 linear Clenshaw-Curtis basis More...
 
std::unique_ptr
< base::SLinearBoundaryBase
linearL0BoundaryBasis
 linear boundary basis More...
 
std::unique_ptr
< base::SBsplineModifiedBase
modBsplineBasis
 modified B-spline basis More...
 
std::unique_ptr
< base::SBsplineModifiedClenshawCurtisBase
modBsplineClenshawCurtisBasis
 modified B-spline Clenshaw-Curtis basis More...
 
std::unique_ptr
< base::SFundamentalSplineModifiedBase
modFundamentalSplineBasis
 modified fundamental spline basis More...
 
std::unique_ptr
< base::SLinearModifiedBase
modLinearBasis
 modified linear basis More...
 
std::unique_ptr
< base::SWaveletModifiedBase
modWaveletBasis
 modified wavelet basis More...
 
std::unique_ptr
< base::SWaveletBase
waveletBasis
 wavelet basis More...
 
std::unique_ptr
< base::SWaveletBoundaryBase
waveletBoundaryBasis
 wavelet boundary basis More...
 

Detailed Description

Linear system of the hierarchization in a sparse grid.

Member Enumeration Documentation

anonymous enum
protected

type of grid/basis functions

Enumerator
INVALID 
BSPLINE 
BSPLINE_BOUNDARY 
BSPLINE_CLENSHAW_CURTIS 
BSPLINE_MODIFIED 
BSPLINE_MODIFIED_CLENSHAW_CURTIS 
FUNDAMENTAL_SPLINE 
FUNDAMENTAL_SPLINE_MODIFIED 
LINEAR 
LINEAR_BOUNDARY 
LINEAR_CLENSHAW_CURTIS 
LINEAR_MODIFIED 
WAVELET 
WAVELET_BOUNDARY 
WAVELET_MODIFIED 

Constructor & Destructor Documentation

sgpp::optimization::HierarchisationSLE::HierarchisationSLE ( base::Grid grid)
inlineexplicit

Constructor.

Do not destruct the grid before this object!

Parameters
gridsparse grid

Referenced by clone().

Member Function Documentation

void sgpp::optimization::HierarchisationSLE::clone ( std::unique_ptr< CloneableSLE > &  clone) const
inlineoverridevirtual
Parameters
[out]clonepointer to cloned object

Implements sgpp::optimization::CloneableSLE.

References grid, gridStorage, and HierarchisationSLE().

double sgpp::optimization::HierarchisationSLE::evalBsplineBoundaryFunctionAtGridPoint ( size_t  basisI,
size_t  pointJ 
)
inlineprotected
Parameters
basisIbasis function index
pointJgrid point index
Returns
value of the basisI-th B-spline boundary basis function at the pointJ-th grid point

References bsplineBoundaryBasis, sgpp::base::HashGridStorage::getCoordinate(), sgpp::base::HashGridStorage::getDimension(), sgpp::base::HashGridPoint::getIndex(), sgpp::base::HashGridPoint::getLevel(), and gridStorage.

Referenced by evalBasisFunctionAtGridPoint().

double sgpp::optimization::HierarchisationSLE::evalBsplineClenshawCurtisFunctionAtGridPoint ( size_t  basisI,
size_t  pointJ 
)
inlineprotected
Parameters
basisIbasis function index
pointJgrid point index
Returns
value of the basisI-th B-spline Clenshaw-Curtis basis function at the pointJ-th grid point

References bsplineClenshawCurtisBasis, sgpp::base::HashGridStorage::getCoordinate(), sgpp::base::HashGridStorage::getDimension(), sgpp::base::HashGridPoint::getIndex(), sgpp::base::HashGridPoint::getLevel(), and gridStorage.

Referenced by evalBasisFunctionAtGridPoint().

double sgpp::optimization::HierarchisationSLE::evalBsplineFunctionAtGridPoint ( size_t  basisI,
size_t  pointJ 
)
inlineprotected
Parameters
basisIbasis function index
pointJgrid point index
Returns
value of the basisI-th B-spline basis function at the pointJ-th grid point

References bsplineBasis, sgpp::base::HashGridStorage::getCoordinate(), sgpp::base::HashGridStorage::getDimension(), sgpp::base::HashGridPoint::getIndex(), sgpp::base::HashGridPoint::getLevel(), and gridStorage.

Referenced by evalBasisFunctionAtGridPoint().

double sgpp::optimization::HierarchisationSLE::evalBsplineModifiedClenshawCurtisFunctionAtGridPoint ( size_t  basisI,
size_t  pointJ 
)
inlineprotected
Parameters
basisIbasis function index
pointJgrid point index
Returns
value of the basisI-th modified Clenshaw-Curtis B-spline basis function at the pointJ-th grid point

References sgpp::base::HashGridStorage::getCoordinate(), sgpp::base::HashGridStorage::getDimension(), sgpp::base::HashGridPoint::getIndex(), sgpp::base::HashGridPoint::getLevel(), gridStorage, and modBsplineClenshawCurtisBasis.

Referenced by evalBasisFunctionAtGridPoint().

double sgpp::optimization::HierarchisationSLE::evalBsplineModifiedFunctionAtGridPoint ( size_t  basisI,
size_t  pointJ 
)
inlineprotected
Parameters
basisIbasis function index
pointJgrid point index
Returns
value of the basisI-th modified B-spline basis function at the pointJ-th grid point

References sgpp::base::HashGridStorage::getCoordinate(), sgpp::base::HashGridStorage::getDimension(), sgpp::base::HashGridPoint::getIndex(), sgpp::base::HashGridPoint::getLevel(), gridStorage, and modBsplineBasis.

Referenced by evalBasisFunctionAtGridPoint().

double sgpp::optimization::HierarchisationSLE::evalFundamentalSplineFunctionAtGridPoint ( size_t  basisI,
size_t  pointJ 
)
inlineprotected
Parameters
basisIbasis function index
pointJgrid point index
Returns
value of the basisI-th fundamental spline basis function at the pointJ-th grid point

References fundamentalSplineBasis, sgpp::base::HashGridStorage::getCoordinate(), sgpp::base::HashGridStorage::getDimension(), sgpp::base::HashGridPoint::getIndex(), sgpp::base::HashGridPoint::getLevel(), and gridStorage.

Referenced by evalBasisFunctionAtGridPoint().

double sgpp::optimization::HierarchisationSLE::evalFundamentalSplineModifiedFunctionAtGridPoint ( size_t  basisI,
size_t  pointJ 
)
inlineprotected
Parameters
basisIbasis function index
pointJgrid point index
Returns
value of the basisI-th modified fundamental spline basis function at the pointJ-th grid point

References sgpp::base::HashGridStorage::getCoordinate(), sgpp::base::HashGridStorage::getDimension(), sgpp::base::HashGridPoint::getIndex(), sgpp::base::HashGridPoint::getLevel(), gridStorage, and modFundamentalSplineBasis.

Referenced by evalBasisFunctionAtGridPoint().

double sgpp::optimization::HierarchisationSLE::evalLinearBoundaryFunctionAtGridPoint ( size_t  basisI,
size_t  pointJ 
)
inlineprotected
Parameters
basisIbasis function index
pointJgrid point index
Returns
value of the basisI-th linear boundary basis function at the pointJ-th grid point

References sgpp::base::HashGridStorage::getCoordinate(), sgpp::base::HashGridStorage::getDimension(), sgpp::base::HashGridPoint::getIndex(), sgpp::base::HashGridPoint::getLevel(), gridStorage, and linearL0BoundaryBasis.

Referenced by evalBasisFunctionAtGridPoint().

double sgpp::optimization::HierarchisationSLE::evalLinearClenshawCurtisFunctionAtGridPoint ( size_t  basisI,
size_t  pointJ 
)
inlineprotected
Parameters
basisIbasis function index
pointJgrid point index
Returns
value of the basisI-th linear Clenshaw-Curtis basis function at the pointJ-th grid point

References sgpp::base::HashGridStorage::getCoordinate(), sgpp::base::HashGridStorage::getDimension(), sgpp::base::HashGridPoint::getIndex(), sgpp::base::HashGridPoint::getLevel(), gridStorage, and linearClenshawCurtisBasis.

Referenced by evalBasisFunctionAtGridPoint().

double sgpp::optimization::HierarchisationSLE::evalLinearFunctionAtGridPoint ( size_t  basisI,
size_t  pointJ 
)
inlineprotected
Parameters
basisIbasis function index
pointJgrid point index
Returns
value of the basisI-th linear basis function at the pointJ-th grid point

References sgpp::base::HashGridStorage::getCoordinate(), sgpp::base::HashGridStorage::getDimension(), sgpp::base::HashGridPoint::getIndex(), sgpp::base::HashGridPoint::getLevel(), gridStorage, and linearBasis.

Referenced by evalBasisFunctionAtGridPoint().

double sgpp::optimization::HierarchisationSLE::evalLinearModifiedFunctionAtGridPoint ( size_t  basisI,
size_t  pointJ 
)
inlineprotected
Parameters
basisIbasis function index
pointJgrid point index
Returns
value of the basisI-th modified linear basis function at the pointJ-th grid point

References sgpp::base::HashGridStorage::getCoordinate(), sgpp::base::HashGridStorage::getDimension(), sgpp::base::HashGridPoint::getIndex(), sgpp::base::HashGridPoint::getLevel(), gridStorage, and modLinearBasis.

Referenced by evalBasisFunctionAtGridPoint().

double sgpp::optimization::HierarchisationSLE::evalWaveletBoundaryFunctionAtGridPoint ( size_t  basisI,
size_t  pointJ 
)
inlineprotected
Parameters
basisIbasis function index
pointJgrid point index
Returns
value of the basisI-th wavelet boundary basis function at the pointJ-th grid point

References sgpp::base::HashGridStorage::getCoordinate(), sgpp::base::HashGridStorage::getDimension(), sgpp::base::HashGridPoint::getIndex(), sgpp::base::HashGridPoint::getLevel(), gridStorage, and waveletBoundaryBasis.

Referenced by evalBasisFunctionAtGridPoint().

double sgpp::optimization::HierarchisationSLE::evalWaveletFunctionAtGridPoint ( size_t  basisI,
size_t  pointJ 
)
inlineprotected
Parameters
basisIbasis function index
pointJgrid point index
Returns
value of the basisI-th wavelet basis function at the pointJ-th grid point

References sgpp::base::HashGridStorage::getCoordinate(), sgpp::base::HashGridStorage::getDimension(), sgpp::base::HashGridPoint::getIndex(), sgpp::base::HashGridPoint::getLevel(), gridStorage, and waveletBasis.

Referenced by evalBasisFunctionAtGridPoint().

double sgpp::optimization::HierarchisationSLE::evalWaveletModifiedFunctionAtGridPoint ( size_t  basisI,
size_t  pointJ 
)
inlineprotected
Parameters
basisIbasis function index
pointJgrid point index
Returns
value of the basisI-th modified wavelet basis function at the pointJ-th grid point

References sgpp::base::HashGridStorage::getCoordinate(), sgpp::base::HashGridStorage::getDimension(), sgpp::base::HashGridPoint::getIndex(), sgpp::base::HashGridPoint::getLevel(), gridStorage, and modWaveletBasis.

Referenced by evalBasisFunctionAtGridPoint().

size_t sgpp::optimization::HierarchisationSLE::getDimension ( ) const
inlineoverridevirtual

Pure virtual method returning the dimension (number of rows/columns) of the system.

Returns
system dimension

Implements sgpp::optimization::SLE.

References sgpp::base::HashGridStorage::getSize(), and gridStorage.

base::Grid& sgpp::optimization::HierarchisationSLE::getGrid ( )
inline
Returns
sparse grid

References grid.

base::GridStorage& sgpp::optimization::HierarchisationSLE::getGridStorage ( )
inline
Returns
grid storage

References gridStorage.

double sgpp::optimization::HierarchisationSLE::getMatrixEntry ( size_t  i,
size_t  j 
)
inlineoverridevirtual
Parameters
irow index
jcolumn index
Returns
value of the j-th basis function at the i-th grid point

Implements sgpp::optimization::SLE.

References evalBasisFunctionAtGridPoint().

Referenced by sgpp::optimization::IterativeGridGeneratorLinearSurplus::generate().

bool sgpp::optimization::HierarchisationSLE::isMatrixEntryNonZero ( size_t  i,
size_t  j 
)
inlineoverridevirtual
Parameters
irow index
jcolumn index
Returns
whether the i-th grid point lies in the support of the j-th basis function

Implements sgpp::optimization::SLE.

References evalBasisFunctionAtGridPoint().

Member Data Documentation

enum { ... } sgpp::optimization::HierarchisationSLE::basisType

type of grid/basis functions

Referenced by evalBasisFunctionAtGridPoint(), and HierarchisationSLE().

std::unique_ptr<base::SBsplineBase> sgpp::optimization::HierarchisationSLE::bsplineBasis
protected

B-spline basis.

Referenced by evalBsplineFunctionAtGridPoint(), and HierarchisationSLE().

std::unique_ptr<base::SBsplineBoundaryBase> sgpp::optimization::HierarchisationSLE::bsplineBoundaryBasis
protected

B-spline boundary basis.

Referenced by evalBsplineBoundaryFunctionAtGridPoint(), and HierarchisationSLE().

std::unique_ptr<base::SBsplineClenshawCurtisBase> sgpp::optimization::HierarchisationSLE::bsplineClenshawCurtisBasis
protected

B-spline Clenshaw-Curtis basis.

Referenced by evalBsplineClenshawCurtisFunctionAtGridPoint(), and HierarchisationSLE().

std::unique_ptr<base::SFundamentalSplineBase> sgpp::optimization::HierarchisationSLE::fundamentalSplineBasis
protected

fundamental spline basis

Referenced by evalFundamentalSplineFunctionAtGridPoint(), and HierarchisationSLE().

std::unique_ptr<base::SLinearBase> sgpp::optimization::HierarchisationSLE::linearBasis
protected

linear basis

Referenced by evalLinearFunctionAtGridPoint(), and HierarchisationSLE().

std::unique_ptr<base::SLinearClenshawCurtisBase> sgpp::optimization::HierarchisationSLE::linearClenshawCurtisBasis
protected

linear Clenshaw-Curtis basis

Referenced by evalLinearClenshawCurtisFunctionAtGridPoint(), and HierarchisationSLE().

std::unique_ptr<base::SLinearBoundaryBase> sgpp::optimization::HierarchisationSLE::linearL0BoundaryBasis
protected

linear boundary basis

Referenced by evalLinearBoundaryFunctionAtGridPoint(), and HierarchisationSLE().

std::unique_ptr<base::SBsplineModifiedBase> sgpp::optimization::HierarchisationSLE::modBsplineBasis
protected

modified B-spline basis

Referenced by evalBsplineModifiedFunctionAtGridPoint(), and HierarchisationSLE().

std::unique_ptr<base::SBsplineModifiedClenshawCurtisBase> sgpp::optimization::HierarchisationSLE::modBsplineClenshawCurtisBasis
protected

modified B-spline Clenshaw-Curtis basis

Referenced by evalBsplineModifiedClenshawCurtisFunctionAtGridPoint(), and HierarchisationSLE().

std::unique_ptr<base::SFundamentalSplineModifiedBase> sgpp::optimization::HierarchisationSLE::modFundamentalSplineBasis
protected

modified fundamental spline basis

Referenced by evalFundamentalSplineModifiedFunctionAtGridPoint(), and HierarchisationSLE().

std::unique_ptr<base::SLinearModifiedBase> sgpp::optimization::HierarchisationSLE::modLinearBasis
protected

modified linear basis

Referenced by evalLinearModifiedFunctionAtGridPoint(), and HierarchisationSLE().

std::unique_ptr<base::SWaveletModifiedBase> sgpp::optimization::HierarchisationSLE::modWaveletBasis
protected

modified wavelet basis

Referenced by evalWaveletModifiedFunctionAtGridPoint(), and HierarchisationSLE().

std::unique_ptr<base::SWaveletBase> sgpp::optimization::HierarchisationSLE::waveletBasis
protected

wavelet basis

Referenced by evalWaveletFunctionAtGridPoint(), and HierarchisationSLE().

std::unique_ptr<base::SWaveletBoundaryBase> sgpp::optimization::HierarchisationSLE::waveletBoundaryBasis
protected

wavelet boundary basis

Referenced by evalWaveletBoundaryFunctionAtGridPoint(), and HierarchisationSLE().


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