SG++-Doxygen-Documentation
sgpp::optimization::InterpolantVectorFunctionHessian Class Reference

Sparse grid interpolant Hessian of a vector-valued function. More...

#include <InterpolantVectorFunctionHessian.hpp>

Inheritance diagram for sgpp::optimization::InterpolantVectorFunctionHessian:
sgpp::optimization::VectorFunctionHessian

Public Member Functions

void clone (std::unique_ptr< VectorFunctionHessian > &clone) const override
 
void eval (const base::DataVector &x, base::DataVector &value, base::DataMatrix &gradient, std::vector< base::DataMatrix > &hessian) override
 Evaluation of the function and its gradient. More...
 
const base::DataMatrixgetAlpha () const
 
 InterpolantVectorFunctionHessian (base::Grid &grid, const base::DataMatrix &alpha)
 Constructor. More...
 
void setAlpha (const base::DataMatrix &alpha)
 
 ~InterpolantVectorFunctionHessian () override
 Destructor. More...
 
- Public Member Functions inherited from sgpp::optimization::VectorFunctionHessian
size_t getNumberOfComponents () const
 
size_t getNumberOfParameters () const
 
 VectorFunctionHessian (size_t d, size_t m)
 Constructor. More...
 
virtual ~VectorFunctionHessian ()
 Destructor. More...
 

Protected Attributes

base::DataMatrix alpha
 coefficient matrix More...
 
base::Gridgrid
 sparse grid More...
 
std::unique_ptr< base::OperationEvalHessianopEvalHessian
 pointer to evaluation operation More...
 
- Protected Attributes inherited from sgpp::optimization::VectorFunctionHessian
size_t d
 dimension of the domain More...
 
size_t m
 number of components More...
 

Detailed Description

Sparse grid interpolant Hessian of a vector-valued function.

See also
InterpolantVectorFunction

Constructor & Destructor Documentation

◆ InterpolantVectorFunctionHessian()

sgpp::optimization::InterpolantVectorFunctionHessian::InterpolantVectorFunctionHessian ( base::Grid grid,
const base::DataMatrix alpha 
)
inline

Constructor.

Do not destruct the grid before the InterpolantVectorFunctionGradient object!

Parameters
gridsparse grid
alphacoefficient matrix (j-th column contains hierarchical surplusses \(\alpha_{\cdot,j}\) of \(g_j\))

Referenced by clone().

◆ ~InterpolantVectorFunctionHessian()

sgpp::optimization::InterpolantVectorFunctionHessian::~InterpolantVectorFunctionHessian ( )
inlineoverride

Destructor.

Member Function Documentation

◆ clone()

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

Implements sgpp::optimization::VectorFunctionHessian.

References alpha, grid, and InterpolantVectorFunctionHessian().

◆ eval()

void sgpp::optimization::InterpolantVectorFunctionHessian::eval ( const base::DataVector x,
base::DataVector value,
base::DataMatrix gradient,
std::vector< base::DataMatrix > &  hessian 
)
inlineoverridevirtual

Evaluation of the function and its gradient.

Parameters
[in]xevaluation point \(\vec{x} \in [0, 1]^d\)
[out]value\(g(\vec{x})\)
[out]gradientJacobian \(\nabla g(\vec{x}) \in \mathbb{R}^{m \times d}\)
[out]hessian\(m\)-vector of Hessians \(\nabla^2 g_i(\vec{x}) \in \mathbb{R}^{d \times d}\)

Implements sgpp::optimization::VectorFunctionHessian.

References alpha, sgpp::optimization::VectorFunctionHessian::d, opEvalHessian, and sgpp::base::DataVector::setAll().

◆ getAlpha()

const base::DataMatrix& sgpp::optimization::InterpolantVectorFunctionHessian::getAlpha ( ) const
inline
Returns
coefficient matrix

References alpha.

◆ setAlpha()

void sgpp::optimization::InterpolantVectorFunctionHessian::setAlpha ( const base::DataMatrix alpha)
inline
Parameters
alphacoefficient matrix

References alpha.

Member Data Documentation

◆ alpha

base::DataMatrix sgpp::optimization::InterpolantVectorFunctionHessian::alpha
protected

◆ grid

◆ opEvalHessian

std::unique_ptr<base::OperationEvalHessian> sgpp::optimization::InterpolantVectorFunctionHessian::opEvalHessian
protected

pointer to evaluation operation

Referenced by eval().


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