SG++-Doxygen-Documentation
Loading...
Searching...
No Matches
sgpp::base::WrapperVectorFunctionHessian Class Reference

Implementation of VectorFunctionHessian that wraps a std::function object. More...

#include <WrapperVectorFunctionHessian.hpp>

Inheritance diagram for sgpp::base::WrapperVectorFunctionHessian:
sgpp::base::VectorFunctionHessian

Public Types

typedef std::function< void(const DataVector &, DataVector &, DataMatrix &, std::vector< DataMatrix > &)> FunctionHessianEvalType
 

Public Member Functions

void clone (std::unique_ptr< VectorFunctionHessian > &clone) const override
 
void eval (const DataVector &x, DataVector &value, DataMatrix &gradient, std::vector< DataMatrix > &hessian) override
 
 WrapperVectorFunctionHessian (size_t d, size_t m, FunctionHessianEvalType fHessian)
 Constructor.
 
 ~WrapperVectorFunctionHessian () override
 Destructor.
 
- Public Member Functions inherited from sgpp::base::VectorFunctionHessian
size_t getNumberOfComponents () const
 
size_t getNumberOfParameters () const
 
 VectorFunctionHessian (size_t d, size_t m)
 Constructor.
 
virtual ~VectorFunctionHessian ()
 Destructor.
 

Protected Attributes

FunctionHessianEvalType fHessian
 function Hessian to be wrapped
 
- Protected Attributes inherited from sgpp::base::VectorFunctionHessian
size_t d
 dimension of the domain
 
size_t m
 number of components
 

Detailed Description

Implementation of VectorFunctionHessian that wraps a std::function object.

Member Typedef Documentation

◆ FunctionHessianEvalType

Constructor & Destructor Documentation

◆ WrapperVectorFunctionHessian()

sgpp::base::WrapperVectorFunctionHessian::WrapperVectorFunctionHessian ( size_t  d,
size_t  m,
FunctionHessianEvalType  fHessian 
)
inline

Constructor.

Parameters
ddimension of the domain
mnumber of components
fHessianfunction gradient to be wrapped

◆ ~WrapperVectorFunctionHessian()

sgpp::base::WrapperVectorFunctionHessian::~WrapperVectorFunctionHessian ( )
inlineoverride

Destructor.

Member Function Documentation

◆ clone()

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

Implements sgpp::base::VectorFunctionHessian.

References clone(), sgpp::base::VectorFunctionHessian::d, fHessian, and sgpp::base::VectorFunctionHessian::m.

Referenced by clone().

◆ eval()

void sgpp::base::WrapperVectorFunctionHessian::eval ( const DataVector x,
DataVector value,
DataMatrix gradient,
std::vector< DataMatrix > &  hessian 
)
inlineoverridevirtual
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::base::VectorFunctionHessian.

References fHessian.

Referenced by python.uq.analysis.asgc.ASGCAnalysis.ASGCAnalysis::estimateDensity().

Member Data Documentation

◆ fHessian

FunctionHessianEvalType sgpp::base::WrapperVectorFunctionHessian::fHessian
protected

function Hessian to be wrapped

Referenced by clone(), and eval().


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