Exotica
Public Types | Public Member Functions | Public Attributes | List of all members
Eigen::FiniteDiffChainHessian< Functor, mode > Class Template Reference

#include <finitediff_chain_hessian.h>

Inheritance diagram for Eigen::FiniteDiffChainHessian< Functor, mode >:
Inheritance graph
Collaboration diagram for Eigen::FiniteDiffChainHessian< Functor, mode >:
Collaboration graph

Public Types

enum  { InputsAtCompileTime = InputType::RowsAtCompileTime, ValuesAtCompileTime = ValueType::RowsAtCompileTime, JacobianInputsAtCompileTime = Functor::JacobianColsAtCompileTime }
 
typedef Functor::InputType InputType
 
typedef Functor::ValueType ValueType
 
typedef ValueType::Scalar Scalar
 
typedef Matrix< Scalar, ValuesAtCompileTime, JacobianInputsAtCompileTimeJacobianType
 
typedef Matrix< Scalar, JacobianInputsAtCompileTime, 1 > InputJacobianRowType
 
typedef Array< Matrix< Scalar, JacobianInputsAtCompileTime, JacobianInputsAtCompileTime >, ValuesAtCompileTime, 1 > HessianType
 
typedef JacobianType::Index Index
 
typedef std::function< void(const InputJacobianRowType &, InputType &)> UpdateFunctionCallbackType
 

Public Member Functions

 FiniteDiffChainHessian (Scalar epsfcn=0.)
 
 FiniteDiffChainHessian (const Functor &f, Scalar epsfcn=0.)
 
 FiniteDiffChainHessian (const Functor &f, UpdateFunctionCallbackType update, Scalar epsfcn=0.)
 
template<typename T0 >
 FiniteDiffChainHessian (const T0 &a0, Scalar epsfcn=0.)
 
template<typename T0 , typename T1 >
 FiniteDiffChainHessian (const T0 &a0, const T1 &a1, Scalar epsfcn=0.)
 
template<typename T0 , typename T1 , typename T2 >
 FiniteDiffChainHessian (const T0 &a0, const T1 &a1, const T2 &a2, Scalar epsfcn=0.)
 
template<typename T0 >
 FiniteDiffChainHessian (UpdateFunctionCallbackType update, Scalar epsfcn=0., const T0 &a0)
 
template<typename T0 , typename T1 >
 FiniteDiffChainHessian (UpdateFunctionCallbackType update, Scalar epsfcn=0., const T0 &a0, const T1 &a1)
 
template<typename T0 , typename T1 , typename T2 >
 FiniteDiffChainHessian (UpdateFunctionCallbackType update, Scalar epsfcn=0., const T0 &a0, const T1 &a1, const T2 &a2)
 
EIGEN_STRONG_INLINE int operator() (const InputJacobianRowType &_jx, ValueType &v) const
 
int operator() (const InputJacobianRowType &_jx, ValueType &v, JacobianType &jac) const
 
int operator() (const InputJacobianRowType &_jx, ValueType &v, JacobianType &jac, HessianType &hess) const
 

Public Attributes

UpdateFunctionCallbackType update_ = [](const InputJacobianRowType &jx, InputType &x) { x = jx; }
 
Scalar epsfcn_
 

Member Typedef Documentation

◆ HessianType

template<typename Functor , NumericalDiffMode mode = Forward>
typedef Array<Matrix<Scalar, JacobianInputsAtCompileTime, JacobianInputsAtCompileTime>, ValuesAtCompileTime, 1> Eigen::FiniteDiffChainHessian< Functor, mode >::HessianType

◆ Index

template<typename Functor , NumericalDiffMode mode = Forward>
typedef JacobianType::Index Eigen::FiniteDiffChainHessian< Functor, mode >::Index

◆ InputJacobianRowType

template<typename Functor , NumericalDiffMode mode = Forward>
typedef Matrix<Scalar, JacobianInputsAtCompileTime, 1> Eigen::FiniteDiffChainHessian< Functor, mode >::InputJacobianRowType

◆ InputType

template<typename Functor , NumericalDiffMode mode = Forward>
typedef Functor::InputType Eigen::FiniteDiffChainHessian< Functor, mode >::InputType

◆ JacobianType

template<typename Functor , NumericalDiffMode mode = Forward>
typedef Matrix<Scalar, ValuesAtCompileTime, JacobianInputsAtCompileTime> Eigen::FiniteDiffChainHessian< Functor, mode >::JacobianType

◆ Scalar

template<typename Functor , NumericalDiffMode mode = Forward>
typedef ValueType::Scalar Eigen::FiniteDiffChainHessian< Functor, mode >::Scalar

◆ UpdateFunctionCallbackType

template<typename Functor , NumericalDiffMode mode = Forward>
typedef std::function<void(const InputJacobianRowType &, InputType &)> Eigen::FiniteDiffChainHessian< Functor, mode >::UpdateFunctionCallbackType

◆ ValueType

template<typename Functor , NumericalDiffMode mode = Forward>
typedef Functor::ValueType Eigen::FiniteDiffChainHessian< Functor, mode >::ValueType

Member Enumeration Documentation

◆ anonymous enum

template<typename Functor , NumericalDiffMode mode = Forward>
anonymous enum
Enumerator
InputsAtCompileTime 
ValuesAtCompileTime 
JacobianInputsAtCompileTime 

Constructor & Destructor Documentation

◆ FiniteDiffChainHessian() [1/9]

template<typename Functor , NumericalDiffMode mode = Forward>
Eigen::FiniteDiffChainHessian< Functor, mode >::FiniteDiffChainHessian ( Scalar  epsfcn = 0.)
inline

◆ FiniteDiffChainHessian() [2/9]

template<typename Functor , NumericalDiffMode mode = Forward>
Eigen::FiniteDiffChainHessian< Functor, mode >::FiniteDiffChainHessian ( const Functor &  f,
Scalar  epsfcn = 0. 
)
inline

◆ FiniteDiffChainHessian() [3/9]

template<typename Functor , NumericalDiffMode mode = Forward>
Eigen::FiniteDiffChainHessian< Functor, mode >::FiniteDiffChainHessian ( const Functor &  f,
UpdateFunctionCallbackType  update,
Scalar  epsfcn = 0. 
)
inline

◆ FiniteDiffChainHessian() [4/9]

template<typename Functor , NumericalDiffMode mode = Forward>
template<typename T0 >
Eigen::FiniteDiffChainHessian< Functor, mode >::FiniteDiffChainHessian ( const T0 &  a0,
Scalar  epsfcn = 0. 
)
inline

◆ FiniteDiffChainHessian() [5/9]

template<typename Functor , NumericalDiffMode mode = Forward>
template<typename T0 , typename T1 >
Eigen::FiniteDiffChainHessian< Functor, mode >::FiniteDiffChainHessian ( const T0 &  a0,
const T1 &  a1,
Scalar  epsfcn = 0. 
)
inline

◆ FiniteDiffChainHessian() [6/9]

template<typename Functor , NumericalDiffMode mode = Forward>
template<typename T0 , typename T1 , typename T2 >
Eigen::FiniteDiffChainHessian< Functor, mode >::FiniteDiffChainHessian ( const T0 &  a0,
const T1 &  a1,
const T2 &  a2,
Scalar  epsfcn = 0. 
)
inline

◆ FiniteDiffChainHessian() [7/9]

template<typename Functor , NumericalDiffMode mode = Forward>
template<typename T0 >
Eigen::FiniteDiffChainHessian< Functor, mode >::FiniteDiffChainHessian ( UpdateFunctionCallbackType  update,
Scalar  epsfcn = 0.,
const T0 &  a0 
)
inline

◆ FiniteDiffChainHessian() [8/9]

template<typename Functor , NumericalDiffMode mode = Forward>
template<typename T0 , typename T1 >
Eigen::FiniteDiffChainHessian< Functor, mode >::FiniteDiffChainHessian ( UpdateFunctionCallbackType  update,
Scalar  epsfcn = 0.,
const T0 &  a0,
const T1 &  a1 
)
inline

◆ FiniteDiffChainHessian() [9/9]

template<typename Functor , NumericalDiffMode mode = Forward>
template<typename T0 , typename T1 , typename T2 >
Eigen::FiniteDiffChainHessian< Functor, mode >::FiniteDiffChainHessian ( UpdateFunctionCallbackType  update,
Scalar  epsfcn = 0.,
const T0 &  a0,
const T1 &  a1,
const T2 &  a2 
)
inline

Member Function Documentation

◆ operator()() [1/3]

template<typename Functor , NumericalDiffMode mode = Forward>
EIGEN_STRONG_INLINE int Eigen::FiniteDiffChainHessian< Functor, mode >::operator() ( const InputJacobianRowType _jx,
ValueType v 
) const
inline

◆ operator()() [2/3]

template<typename Functor , NumericalDiffMode mode = Forward>
int Eigen::FiniteDiffChainHessian< Functor, mode >::operator() ( const InputJacobianRowType _jx,
ValueType v,
JacobianType jac 
) const
inline

◆ operator()() [3/3]

template<typename Functor , NumericalDiffMode mode = Forward>
int Eigen::FiniteDiffChainHessian< Functor, mode >::operator() ( const InputJacobianRowType _jx,
ValueType v,
JacobianType jac,
HessianType hess 
) const
inline

Member Data Documentation

◆ epsfcn_

template<typename Functor , NumericalDiffMode mode = Forward>
Scalar Eigen::FiniteDiffChainHessian< Functor, mode >::epsfcn_

◆ update_

template<typename Functor , NumericalDiffMode mode = Forward>
UpdateFunctionCallbackType Eigen::FiniteDiffChainHessian< Functor, mode >::update_ = [](const InputJacobianRowType &jx, InputType &x) { x = jx; }

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