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

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

#include <WrapperVectorFunctionHessian.hpp>

Inheritance diagram for sgpp::optimization::WrapperVectorFunctionHessian:
sgpp::optimization::VectorFunctionHessian

Public Types

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

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
 
 WrapperVectorFunctionHessian (size_t d, size_t m, FunctionHessianEvalType fHessian)
 Constructor. More...
 
 ~WrapperVectorFunctionHessian () 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

FunctionHessianEvalType fHessian
 function Hessian to be wrapped 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

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

Member Typedef Documentation

Constructor & Destructor Documentation

sgpp::optimization::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

Referenced by clone().

sgpp::optimization::WrapperVectorFunctionHessian::~WrapperVectorFunctionHessian ( )
inlineoverride

Destructor.

Member Function Documentation

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

References fHessian.

Member Data Documentation

FunctionHessianEvalType sgpp::optimization::WrapperVectorFunctionHessian::fHessian
protected

function Hessian to be wrapped

Referenced by clone(), and eval().


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