SG++-Doxygen-Documentation
|
B-spline basis on Clenshaw-Curtis grids. More...
#include <BsplineModifiedClenshawCurtisBasis.hpp>
Public Member Functions | |
BsplineModifiedClenshawCurtisBasis () | |
Default constructor. More... | |
BsplineModifiedClenshawCurtisBasis (size_t degree) | |
Constructor. More... | |
double | clenshawCurtisPoint (LT l, IT i) const |
double | clenshawCurtisPointNegativeIndex (LT l, IT ni) const |
double | eval (LT l, IT i, double x) override |
double | evalDx (LT l, IT i, double x) |
double | evalDxDx (LT l, IT i, double x) |
size_t | getDegree () const |
double | getIntegral (LT l, IT i) override |
~BsplineModifiedClenshawCurtisBasis () override | |
Destructor. More... | |
Public Member Functions inherited from sgpp::base::Basis< LT, IT > | |
virtual | ~Basis () |
Destructor. More... | |
Protected Member Functions | |
double | clenshawCurtisPoint (LT l, IT i, IT hInv) const |
double | clenshawCurtisPointNegativeIndex (LT l, IT ni, IT hInv) const |
void | constructKnots (LT l, IT i, IT hInv) |
Construct the (p+2) Clenshaw-Curtis knots of a B-spline basis function and save them in xi. More... | |
void | constructKnotsNegativeIndex (LT l, IT ni, IT hInv) |
Construct the (p+2) Clenshaw-Curtis knots of a B-spline basis function and save them in xi. More... | |
double | modifiedBSpline (LT l, IT hInv, double x, size_t p) |
double | modifiedBSplineDx (LT l, IT hInv, double x, size_t p) |
double | modifiedBSplineDxDx (LT l, IT hInv, double x, size_t p) |
double | nonUniformBSpline (double x, size_t p, size_t k) const |
double | nonUniformBSplineDx (double x, size_t p, size_t k) const |
double | nonUniformBSplineDxDx (double x, size_t p, size_t k) const |
Protected Attributes | |
ClenshawCurtisTable & | clenshawCurtisTable |
reference to the Clenshaw-Curtis cache table More... | |
DataVector | coordinates |
size_t | degree |
degree of the B-spline More... | |
bool | integrationInitialized = false |
DataVector | weights |
std::vector< double > | xi |
temporary helper vector of fixed size p+2 containing B-spline knots More... | |
omp_nest_lock_t | xiLock |
B-spline basis on Clenshaw-Curtis grids.
|
inline |
Default constructor.
|
inlineexplicit |
Constructor.
degree | B-spline degree, must be odd (if it's even, degree - 1 is used) |
|
inlineoverride |
Destructor.
|
inline |
l | level of the grid point |
i | index of the grid point |
Referenced by sgpp::base::BsplineModifiedClenshawCurtisBasis< unsigned int, unsigned int >::clenshawCurtisPoint(), sgpp::base::BsplineModifiedClenshawCurtisBasis< unsigned int, unsigned int >::constructKnots(), sgpp::base::BsplineModifiedClenshawCurtisBasis< unsigned int, unsigned int >::constructKnotsNegativeIndex(), sgpp::pde::OperationLaplaceModBsplineClenshawCurtis::mult(), sgpp::pde::OperationMatrixLTwoDotModBsplineClenshawCurtis::mult(), and sgpp::pde::OperationMatrixLTwoDotExplicitModBsplineClenshawCurtis::OperationMatrixLTwoDotExplicitModBsplineClenshawCurtis().
|
inlineprotected |
l | level of the grid point |
i | index of the grid point |
hInv | 2^l |
|
inline |
l | level of the grid point |
ni | neagtive index -i of the grid point |
Referenced by sgpp::base::BsplineModifiedClenshawCurtisBasis< unsigned int, unsigned int >::clenshawCurtisPointNegativeIndex(), sgpp::base::BsplineModifiedClenshawCurtisBasis< unsigned int, unsigned int >::constructKnots(), and sgpp::base::BsplineModifiedClenshawCurtisBasis< unsigned int, unsigned int >::constructKnotsNegativeIndex().
|
inlineprotected |
l | level of the grid point |
ni | negative index -i of the grid point |
hInv | 2^l |
|
inlineprotected |
Construct the (p+2) Clenshaw-Curtis knots of a B-spline basis function and save them in xi.
l | level of basis function |
i | index of basis function |
hInv | 2^l |
Referenced by sgpp::base::BsplineModifiedClenshawCurtisBasis< unsigned int, unsigned int >::eval(), sgpp::base::BsplineModifiedClenshawCurtisBasis< unsigned int, unsigned int >::evalDx(), sgpp::base::BsplineModifiedClenshawCurtisBasis< unsigned int, unsigned int >::evalDxDx(), sgpp::base::BsplineModifiedClenshawCurtisBasis< unsigned int, unsigned int >::getIntegral(), sgpp::base::BsplineModifiedClenshawCurtisBasis< unsigned int, unsigned int >::modifiedBSpline(), sgpp::base::BsplineModifiedClenshawCurtisBasis< unsigned int, unsigned int >::modifiedBSplineDx(), and sgpp::base::BsplineModifiedClenshawCurtisBasis< unsigned int, unsigned int >::modifiedBSplineDxDx().
|
inlineprotected |
Construct the (p+2) Clenshaw-Curtis knots of a B-spline basis function and save them in xi.
l | level of basis function |
ni | negative index -i of basis function |
hInv | 2^l |
Referenced by sgpp::base::BsplineModifiedClenshawCurtisBasis< unsigned int, unsigned int >::modifiedBSpline(), sgpp::base::BsplineModifiedClenshawCurtisBasis< unsigned int, unsigned int >::modifiedBSplineDx(), and sgpp::base::BsplineModifiedClenshawCurtisBasis< unsigned int, unsigned int >::modifiedBSplineDxDx().
|
inlineoverridevirtual |
l | level of basis function |
i | index of basis function |
x | evaluation point |
Implements sgpp::base::Basis< LT, IT >.
Referenced by python.uq.analysis.asgc.ASGCAnalysis.ASGCAnalysis::estimateDensity(), sgpp::base::OperationEvalModBsplineClenshawCurtisNaive::eval(), sgpp::base::OperationEvalGradientModBsplineClenshawCurtisNaive::evalGradient(), sgpp::base::OperationEvalHessianModBsplineClenshawCurtisNaive::evalHessian(), sgpp::base::OperationEvalPartialDerivativeModBsplineClenshawCurtisNaive::evalPartialDerivative(), sgpp::base::BsplineModifiedClenshawCurtisBasis< unsigned int, unsigned int >::getIntegral(), sgpp::base::OperationMultipleEvalModBsplineClenshawCurtisNaive::mult(), sgpp::pde::OperationMatrixLTwoDotModBsplineClenshawCurtis::mult(), sgpp::pde::OperationLaplaceModBsplineClenshawCurtis::mult(), sgpp::base::OperationMultipleEvalModBsplineClenshawCurtisNaive::multTranspose(), and sgpp::pde::OperationMatrixLTwoDotExplicitModBsplineClenshawCurtis::OperationMatrixLTwoDotExplicitModBsplineClenshawCurtis().
|
inline |
l | level of basis function |
i | index of basis function |
x | evaluation point |
Referenced by sgpp::base::OperationEvalGradientModBsplineClenshawCurtisNaive::evalGradient(), sgpp::base::OperationEvalHessianModBsplineClenshawCurtisNaive::evalHessian(), sgpp::base::OperationEvalPartialDerivativeModBsplineClenshawCurtisNaive::evalPartialDerivative(), and sgpp::pde::OperationLaplaceModBsplineClenshawCurtis::mult().
|
inline |
l | level of basis function |
i | index of basis function |
x | evaluation point |
Referenced by sgpp::base::OperationEvalHessianModBsplineClenshawCurtisNaive::evalHessian().
|
inlinevirtual |
Implements sgpp::base::Basis< LT, IT >.
|
inlineoverridevirtual |
l | level of basis function |
i | index of basis function |
Implements sgpp::base::Basis< LT, IT >.
Referenced by sgpp::base::OperationQuadratureModBsplineClenshawCurtis::doQuadrature().
|
inlineprotected |
l | level of basis function |
hInv | 2^l |
x | evaluation point |
p | B-spline degree |
Referenced by sgpp::base::BsplineModifiedClenshawCurtisBasis< unsigned int, unsigned int >::eval().
|
inlineprotected |
l | level of basis function |
hInv | 2^l |
x | evaluation point |
p | B-spline degree |
Referenced by sgpp::base::BsplineModifiedClenshawCurtisBasis< unsigned int, unsigned int >::evalDx().
|
inlineprotected |
l | level of basis function |
hInv | 2^l |
x | evaluation point |
p | B-spline degree |
Referenced by sgpp::base::BsplineModifiedClenshawCurtisBasis< unsigned int, unsigned int >::evalDxDx().
|
inlineprotected |
x | evaluation point |
p | B-spline degree |
k | index of B-spline in the knot sequence |
Referenced by sgpp::base::BsplineModifiedClenshawCurtisBasis< unsigned int, unsigned int >::eval(), sgpp::base::BsplineModifiedClenshawCurtisBasis< unsigned int, unsigned int >::modifiedBSpline(), sgpp::base::BsplineModifiedClenshawCurtisBasis< unsigned int, unsigned int >::nonUniformBSpline(), sgpp::base::BsplineModifiedClenshawCurtisBasis< unsigned int, unsigned int >::nonUniformBSplineDx(), and sgpp::base::BsplineModifiedClenshawCurtisBasis< unsigned int, unsigned int >::nonUniformBSplineDxDx().
|
inlineprotected |
x | evaluation point |
p | B-spline degree |
k | index of B-spline in the knot sequence |
Referenced by sgpp::base::BsplineModifiedClenshawCurtisBasis< unsigned int, unsigned int >::evalDx(), and sgpp::base::BsplineModifiedClenshawCurtisBasis< unsigned int, unsigned int >::modifiedBSplineDx().
|
inlineprotected |
x | evaluation point |
p | B-spline degree |
k | index of B-spline in the knot sequence |
Referenced by sgpp::base::BsplineModifiedClenshawCurtisBasis< unsigned int, unsigned int >::evalDxDx(), and sgpp::base::BsplineModifiedClenshawCurtisBasis< unsigned int, unsigned int >::modifiedBSplineDxDx().
|
protected |
reference to the Clenshaw-Curtis cache table
|
protected |
|
protected |
degree of the B-spline
Referenced by sgpp::base::BsplineModifiedClenshawCurtisBasis< unsigned int, unsigned int >::eval(), sgpp::base::BsplineModifiedClenshawCurtisBasis< unsigned int, unsigned int >::evalDx(), sgpp::base::BsplineModifiedClenshawCurtisBasis< unsigned int, unsigned int >::evalDxDx(), sgpp::base::BsplineModifiedClenshawCurtisBasis< unsigned int, unsigned int >::getDegree(), and sgpp::base::BsplineModifiedClenshawCurtisBasis< unsigned int, unsigned int >::getIntegral().
|
protected |
|
protected |
|
protected |
temporary helper vector of fixed size p+2 containing B-spline knots
Referenced by sgpp::base::BsplineModifiedClenshawCurtisBasis< unsigned int, unsigned int >::getIntegral().
|
protected |
Referenced by sgpp::base::BsplineModifiedClenshawCurtisBasis< unsigned int, unsigned int >::BsplineModifiedClenshawCurtisBasis(), sgpp::base::BsplineModifiedClenshawCurtisBasis< unsigned int, unsigned int >::eval(), sgpp::base::BsplineModifiedClenshawCurtisBasis< unsigned int, unsigned int >::evalDx(), sgpp::base::BsplineModifiedClenshawCurtisBasis< unsigned int, unsigned int >::evalDxDx(), sgpp::base::BsplineModifiedClenshawCurtisBasis< unsigned int, unsigned int >::getIntegral(), and sgpp::base::BsplineModifiedClenshawCurtisBasis< unsigned int, unsigned int >::~BsplineModifiedClenshawCurtisBasis().