Eigen-Contrib  5.0.1
 
Loading...
Searching...
No Matches
Eigen::NumericalDiff< Functor_, mode > Class Template Reference

#include <contrib/Eigen/src/NumericalDiff/NumericalDiff.h>

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.

Public Member Functions

int df (const InputType &_x, JacobianType &jac) const
 

Member Function Documentation

◆ df()

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

Computes the Jacobian of the functor at _x into jac and returns the number of functor evaluations.

The step along coordinate j is h = eps * max(|x[j]|, 1) with eps = sqrt(max(epsfcn, epsilon)) and epsilon the machine precision NumTraits<Scalar>::epsilon(); the difference quotient divides by the representable step fl(x[j] + h) - x[j] actually applied.


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