Public Types | Public Member Functions | Private Member Functions | Private Attributes | List of all members
Eigen::NumericalDiff< _Functor, mode > Class Template Reference

#include <NumericalDiff.h>

Inheritance diagram for Eigen::NumericalDiff< _Functor, mode >:
Inheritance graph
[legend]

Public Types

enum  { InputsAtCompileTime = Functor::InputsAtCompileTime, ValuesAtCompileTime = Functor::ValuesAtCompileTime }
 
typedef _Functor Functor
 
typedef Functor::InputType InputType
 
typedef Functor::JacobianType JacobianType
 
typedef Functor::Scalar Scalar
 
typedef Functor::ValueType ValueType
 

Public Member Functions

int df (const InputType &_x, JacobianType &jac) const
 
 NumericalDiff (Scalar _epsfcn=0.)
 
 NumericalDiff (const Functor &f, Scalar _epsfcn=0.)
 
template<typename T0 >
 NumericalDiff (const T0 &a0)
 
template<typename T0 , typename T1 >
 NumericalDiff (const T0 &a0, const T1 &a1)
 
template<typename T0 , typename T1 , typename T2 >
 NumericalDiff (const T0 &a0, const T1 &a1, const T2 &a2)
 

Private Member Functions

NumericalDiffoperator= (const NumericalDiff &)
 

Private Attributes

Scalar epsfcn
 

Detailed Description

template<typename _Functor, NumericalDiffMode mode = Forward>
class Eigen::NumericalDiff< _Functor, mode >

This class allows you to add a method df() to your functor, which will use numerical differentiation to compute an approximate of the derivative for the functor. Of course, if you have an analytical form for the derivative, you should rather implement df() by yourself.

More information on http://en.wikipedia.org/wiki/Numerical_differentiation

Currently only "Forward" and "Central" scheme are implemented.

Definition at line 36 of file NumericalDiff.h.

Member Typedef Documentation

◆ Functor

template<typename _Functor, NumericalDiffMode mode = Forward>
typedef _Functor Eigen::NumericalDiff< _Functor, mode >::Functor

Definition at line 39 of file NumericalDiff.h.

◆ InputType

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

Definition at line 41 of file NumericalDiff.h.

◆ JacobianType

template<typename _Functor, NumericalDiffMode mode = Forward>
typedef Functor::JacobianType Eigen::NumericalDiff< _Functor, mode >::JacobianType

Definition at line 43 of file NumericalDiff.h.

◆ Scalar

template<typename _Functor, NumericalDiffMode mode = Forward>
typedef Functor::Scalar Eigen::NumericalDiff< _Functor, mode >::Scalar

Definition at line 40 of file NumericalDiff.h.

◆ ValueType

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

Definition at line 42 of file NumericalDiff.h.

Member Enumeration Documentation

◆ anonymous enum

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

Definition at line 56 of file NumericalDiff.h.

Constructor & Destructor Documentation

◆ NumericalDiff() [1/5]

template<typename _Functor, NumericalDiffMode mode = Forward>
Eigen::NumericalDiff< _Functor, mode >::NumericalDiff ( Scalar  _epsfcn = 0.)
inline

Definition at line 45 of file NumericalDiff.h.

◆ NumericalDiff() [2/5]

template<typename _Functor, NumericalDiffMode mode = Forward>
Eigen::NumericalDiff< _Functor, mode >::NumericalDiff ( const Functor f,
Scalar  _epsfcn = 0. 
)
inline

Definition at line 46 of file NumericalDiff.h.

◆ NumericalDiff() [3/5]

template<typename _Functor, NumericalDiffMode mode = Forward>
template<typename T0 >
Eigen::NumericalDiff< _Functor, mode >::NumericalDiff ( const T0 &  a0)
inline

Definition at line 50 of file NumericalDiff.h.

◆ NumericalDiff() [4/5]

template<typename _Functor, NumericalDiffMode mode = Forward>
template<typename T0 , typename T1 >
Eigen::NumericalDiff< _Functor, mode >::NumericalDiff ( const T0 &  a0,
const T1 a1 
)
inline

Definition at line 52 of file NumericalDiff.h.

◆ NumericalDiff() [5/5]

template<typename _Functor, NumericalDiffMode mode = Forward>
template<typename T0 , typename T1 , typename T2 >
Eigen::NumericalDiff< _Functor, mode >::NumericalDiff ( const T0 &  a0,
const T1 a1,
const T2 a2 
)
inline

Definition at line 54 of file NumericalDiff.h.

Member Function Documentation

◆ df()

template<typename _Functor, NumericalDiffMode mode = Forward>
int Eigen::NumericalDiff< _Functor, mode >::df ( const InputType _x,
JacobianType jac 
) const
inline

return the number of evaluation of functor

Definition at line 64 of file NumericalDiff.h.

◆ operator=()

template<typename _Functor, NumericalDiffMode mode = Forward>
NumericalDiff& Eigen::NumericalDiff< _Functor, mode >::operator= ( const NumericalDiff< _Functor, mode > &  )
private

Member Data Documentation

◆ epsfcn

template<typename _Functor, NumericalDiffMode mode = Forward>
Scalar Eigen::NumericalDiff< _Functor, mode >::epsfcn
private

Definition at line 121 of file NumericalDiff.h.


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


gtsam
Author(s):
autogenerated on Tue Jul 4 2023 02:42:18