3.4.0
tigl::ITiglObjectiveFunction Class Referenceabstract

#include <ITiglObjectiveFunction.h>

+ Inheritance diagram for tigl::ITiglObjectiveFunction:

Public Member Functions

virtual TIGL_EXPORT double getFunctionValue (const double *x) const =0
 returns the objective function for the parameter vector x More...
 
virtual TIGL_EXPORT void getGradient (const double *x, double *dx) const
 returns the gradient dx for the parameter vector x More...
 
virtual TIGL_EXPORT void getGradientHessian (const double *x, double *dx, double *H) const
 Sometimes it is more efficient to calculate gradient and hessian at once for these cases this function is provided. In the default implementation, it calls getGradient and getHessian succesively. More...
 
virtual TIGL_EXPORT void getHessian (const double *x, double *H) const
 returns the hessian matrix for the parameter vector x More...
 
virtual TIGL_EXPORT void getNumericalGradient (const double *x, double *dx) const
 provides a routine for the numerical gradient calculation More...
 
virtual TIGL_EXPORT void getNumericalHessian (const double *x, double *H) const
 provides a routine for the numerical hessian calculation More...
 
virtual TIGL_EXPORT int getParameterCount () const =0
 
virtual TIGL_EXPORT bool hasAnalyticGradient () const =0
 
virtual TIGL_EXPORT bool hasAnalyticHessian () const =0
 
TIGL_EXPORT ITiglObjectiveFunction ()
 
TIGL_EXPORT void setNumericalStepSize (double h)
 
virtual TIGL_EXPORT ~ITiglObjectiveFunction ()
 

Private Attributes

double h
 

Constructor & Destructor Documentation

◆ ITiglObjectiveFunction()

TIGL_EXPORT tigl::ITiglObjectiveFunction::ITiglObjectiveFunction ( )

◆ ~ITiglObjectiveFunction()

virtual TIGL_EXPORT tigl::ITiglObjectiveFunction::~ITiglObjectiveFunction ( )
virtual

Member Function Documentation

◆ getFunctionValue()

virtual TIGL_EXPORT double tigl::ITiglObjectiveFunction::getFunctionValue ( const double *  x) const
pure virtual

returns the objective function for the parameter vector x

Implemented in tigl::CTiglPointTranslator::SegmentProjection.

◆ getGradient()

virtual TIGL_EXPORT void tigl::ITiglObjectiveFunction::getGradient ( const double *  x,
double *  dx 
) const
virtual

returns the gradient dx for the parameter vector x

Reimplemented in tigl::CTiglPointTranslator::SegmentProjection.

◆ getGradientHessian()

virtual TIGL_EXPORT void tigl::ITiglObjectiveFunction::getGradientHessian ( const double *  x,
double *  dx,
double *  H 
) const
virtual

Sometimes it is more efficient to calculate gradient and hessian at once for these cases this function is provided. In the default implementation, it calls getGradient and getHessian succesively.

Reimplemented in tigl::CTiglPointTranslator::SegmentProjection.

◆ getHessian()

virtual TIGL_EXPORT void tigl::ITiglObjectiveFunction::getHessian ( const double *  x,
double *  H 
) const
virtual

returns the hessian matrix for the parameter vector x

Reimplemented in tigl::CTiglPointTranslator::SegmentProjection.

◆ getNumericalGradient()

virtual TIGL_EXPORT void tigl::ITiglObjectiveFunction::getNumericalGradient ( const double *  x,
double *  dx 
) const
virtual

provides a routine for the numerical gradient calculation

◆ getNumericalHessian()

virtual TIGL_EXPORT void tigl::ITiglObjectiveFunction::getNumericalHessian ( const double *  x,
double *  H 
) const
virtual

provides a routine for the numerical hessian calculation

◆ getParameterCount()

virtual TIGL_EXPORT int tigl::ITiglObjectiveFunction::getParameterCount ( ) const
pure virtual

◆ hasAnalyticGradient()

virtual TIGL_EXPORT bool tigl::ITiglObjectiveFunction::hasAnalyticGradient ( ) const
pure virtual

◆ hasAnalyticHessian()

virtual TIGL_EXPORT bool tigl::ITiglObjectiveFunction::hasAnalyticHessian ( ) const
pure virtual

◆ setNumericalStepSize()

TIGL_EXPORT void tigl::ITiglObjectiveFunction::setNumericalStepSize ( double  h)

Field Documentation

◆ h

double tigl::ITiglObjectiveFunction::h
private

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