Public Types | |
enum | { InputsAtCompileTime, 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 |
template<typename T0 > | |
NumericalDiff (const T0 &a0) | |
template<typename T0 , typename T1 , typename T2 > | |
NumericalDiff (const T0 &a0, const T1 &a1, const T1 &a2) | |
template<typename T0 , typename T1 > | |
NumericalDiff (const T0 &a0, const T1 &a1) | |
NumericalDiff (Scalar _epsfcn=0.) | |
NumericalDiff (const Functor &f, Scalar _epsfcn=0.) |
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.
int df | ( | const InputType & | _x, | |
JacobianType & | jac | |||
) | const [inline] |
return the number of evaluation of functor