Eigen::LevenbergMarquardt< _FunctorType > Class Template Reference

Detailed Description

template<typename _FunctorType>
class Eigen::LevenbergMarquardt< _FunctorType >

Performs non linear optimization over a non-linear function, using a variant of the Levenberg Marquardt algorithm.

Check wikipedia for more information. http://en.wikipedia.org/wiki/Levenberg%E2%80%93Marquardt_algorithm

Inherits no_assignment_operator.

List of all members.

Public Member Functions

FVectorType & diag ()
RealScalar epsilon () const
RealScalar factor () const
RealScalar fnorm ()
RealScalar ftol () const
FVectorType & fvec ()
RealScalar gnorm ()
RealScalar gtol () const
ComputationInfo info () const
 Reports whether the minimization was successful.
Index iterations ()
JacobianType & jacobian ()
RealScalar lm_param (void)
JacobianType & matrixR ()
Index maxfev () const
Index nfev ()
Index njev ()
PermutationType permutation ()
void resetParameters ()
void setEpsilon (RealScalar epsfcn)
void setExternalScaling (bool value)
void setFactor (RealScalar factor)
void setFtol (RealScalar ftol)
void setGtol (RealScalar gtol)
void setMaxfev (Index maxfev)
void setXtol (RealScalar xtol)
RealScalar xtol () const

Member Function Documentation

template<typename _FunctorType >
FVectorType& Eigen::LevenbergMarquardt< _FunctorType >::diag ( ) [inline]
Returns:
a reference to the diagonal of the jacobian
template<typename _FunctorType >
RealScalar Eigen::LevenbergMarquardt< _FunctorType >::epsilon ( ) const [inline]
Returns:
the error precision
template<typename _FunctorType >
RealScalar Eigen::LevenbergMarquardt< _FunctorType >::factor ( ) const [inline]
Returns:
the step bound for the diagonal shift
template<typename _FunctorType >
RealScalar Eigen::LevenbergMarquardt< _FunctorType >::fnorm ( ) [inline]
Returns:
the norm of current vector function
template<typename _FunctorType >
RealScalar Eigen::LevenbergMarquardt< _FunctorType >::ftol ( ) const [inline]
Returns:
the tolerance for the norm of the vector function
template<typename _FunctorType >
FVectorType& Eigen::LevenbergMarquardt< _FunctorType >::fvec ( ) [inline]
Returns:
a reference to the current vector function
template<typename _FunctorType >
RealScalar Eigen::LevenbergMarquardt< _FunctorType >::gnorm ( ) [inline]
Returns:
the norm of the gradient of the error
template<typename _FunctorType >
RealScalar Eigen::LevenbergMarquardt< _FunctorType >::gtol ( ) const [inline]
Returns:
the tolerance for the norm of the gradient of the error vector
template<typename _FunctorType >
ComputationInfo Eigen::LevenbergMarquardt< _FunctorType >::info ( ) const [inline]

Reports whether the minimization was successful.

Returns:
Success if the minimization was succesful, NumericalIssue if a numerical problem arises during the minimization process, for exemple during the QR factorization NoConvergence if the minimization did not converge after the maximum number of function evaluation allowed InvalidInput if the input matrix is invalid
template<typename _FunctorType >
Index Eigen::LevenbergMarquardt< _FunctorType >::iterations ( ) [inline]
Returns:
the number of iterations performed
template<typename _FunctorType >
JacobianType& Eigen::LevenbergMarquardt< _FunctorType >::jacobian ( ) [inline]
Returns:
a reference to the matrix where the current Jacobian matrix is stored
template<typename _FunctorType >
RealScalar Eigen::LevenbergMarquardt< _FunctorType >::lm_param ( void  ) [inline]
Returns:
the LevenbergMarquardt parameter
template<typename _FunctorType >
JacobianType& Eigen::LevenbergMarquardt< _FunctorType >::matrixR ( ) [inline]
Returns:
a reference to the triangular matrix R from the QR of the jacobian matrix.
See also:
jacobian()
template<typename _FunctorType >
Index Eigen::LevenbergMarquardt< _FunctorType >::maxfev ( ) const [inline]
Returns:
the maximum number of function evaluation
template<typename _FunctorType >
Index Eigen::LevenbergMarquardt< _FunctorType >::nfev ( ) [inline]
Returns:
the number of functions evaluation
template<typename _FunctorType >
Index Eigen::LevenbergMarquardt< _FunctorType >::njev ( ) [inline]
Returns:
the number of jacobian evaluation
template<typename _FunctorType >
PermutationType Eigen::LevenbergMarquardt< _FunctorType >::permutation ( ) [inline]

the permutation used in the QR factorization

template<typename _FunctorType >
void Eigen::LevenbergMarquardt< _FunctorType >::resetParameters ( ) [inline]

Sets the default parameters

template<typename _FunctorType >
void Eigen::LevenbergMarquardt< _FunctorType >::setEpsilon ( RealScalar  epsfcn) [inline]

Sets the error precision

template<typename _FunctorType >
void Eigen::LevenbergMarquardt< _FunctorType >::setExternalScaling ( bool  value) [inline]

Use an external Scaling. If set to true, pass a nonzero diagonal to diag()

template<typename _FunctorType >
void Eigen::LevenbergMarquardt< _FunctorType >::setFactor ( RealScalar  factor) [inline]

Sets the step bound for the diagonal shift

template<typename _FunctorType >
void Eigen::LevenbergMarquardt< _FunctorType >::setFtol ( RealScalar  ftol) [inline]

Sets the tolerance for the norm of the vector function

template<typename _FunctorType >
void Eigen::LevenbergMarquardt< _FunctorType >::setGtol ( RealScalar  gtol) [inline]

Sets the tolerance for the norm of the gradient of the error vector

template<typename _FunctorType >
void Eigen::LevenbergMarquardt< _FunctorType >::setMaxfev ( Index  maxfev) [inline]

Sets the maximum number of function evaluation

template<typename _FunctorType >
void Eigen::LevenbergMarquardt< _FunctorType >::setXtol ( RealScalar  xtol) [inline]

Sets the tolerance for the norm of the solution vector

template<typename _FunctorType >
RealScalar Eigen::LevenbergMarquardt< _FunctorType >::xtol ( ) const [inline]
Returns:
the tolerance for the norm of the solution vector

The documentation for this class was generated from the following files:
 All Classes Functions Variables Typedefs Enumerator