Performs non linear optimization over a non-linear function, using a variant of the Levenberg Marquardt algorithm. More...
#include <LevenbergMarquardt.h>
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
Definition at line 110 of file LevenbergMarquardt/LevenbergMarquardt.h.
typedef _FunctorType Eigen::LevenbergMarquardt< _FunctorType >::FunctorType |
Definition at line 113 of file LevenbergMarquardt/LevenbergMarquardt.h.
typedef Matrix< Scalar, Dynamic, 1 > Eigen::LevenbergMarquardt< _FunctorType >::FVectorType |
Definition at line 70 of file NonLinearOptimization/LevenbergMarquardt.h.
typedef Matrix<Scalar,Dynamic,1> Eigen::LevenbergMarquardt< _FunctorType >::FVectorType |
Definition at line 120 of file LevenbergMarquardt/LevenbergMarquardt.h.
typedef DenseIndex Eigen::LevenbergMarquardt< _FunctorType >::Index |
Definition at line 52 of file NonLinearOptimization/LevenbergMarquardt.h.
typedef JacobianType::Index Eigen::LevenbergMarquardt< _FunctorType >::Index |
Definition at line 118 of file LevenbergMarquardt/LevenbergMarquardt.h.
typedef Matrix< Scalar, Dynamic, Dynamic > Eigen::LevenbergMarquardt< _FunctorType >::JacobianType |
Definition at line 71 of file NonLinearOptimization/LevenbergMarquardt.h.
typedef FunctorType::JacobianType Eigen::LevenbergMarquardt< _FunctorType >::JacobianType |
Definition at line 115 of file LevenbergMarquardt/LevenbergMarquardt.h.
typedef QRSolver::Index Eigen::LevenbergMarquardt< _FunctorType >::PermIndex |
Definition at line 119 of file LevenbergMarquardt/LevenbergMarquardt.h.
typedef PermutationMatrix<Dynamic,Dynamic> Eigen::LevenbergMarquardt< _FunctorType >::PermutationType |
Definition at line 121 of file LevenbergMarquardt/LevenbergMarquardt.h.
typedef FunctorType::QRSolver Eigen::LevenbergMarquardt< _FunctorType >::QRSolver |
Definition at line 114 of file LevenbergMarquardt/LevenbergMarquardt.h.
typedef JacobianType::RealScalar Eigen::LevenbergMarquardt< _FunctorType >::RealScalar |
Definition at line 117 of file LevenbergMarquardt/LevenbergMarquardt.h.
typedef JacobianType::Scalar Eigen::LevenbergMarquardt< _FunctorType >::Scalar |
Definition at line 116 of file LevenbergMarquardt/LevenbergMarquardt.h.
Eigen::LevenbergMarquardt< _FunctorType >::LevenbergMarquardt | ( | FunctorType & | functor | ) | [inline] |
Definition at line 123 of file LevenbergMarquardt/LevenbergMarquardt.h.
Eigen::LevenbergMarquardt< _FunctorType >::LevenbergMarquardt | ( | FunctorType & | _functor | ) | [inline] |
Definition at line 49 of file NonLinearOptimization/LevenbergMarquardt.h.
FVectorType& Eigen::LevenbergMarquardt< _FunctorType >::diag | ( | ) | [inline] |
Definition at line 178 of file LevenbergMarquardt/LevenbergMarquardt.h.
RealScalar Eigen::LevenbergMarquardt< _FunctorType >::fnorm | ( | ) | [inline] |
Definition at line 190 of file LevenbergMarquardt/LevenbergMarquardt.h.
FVectorType& Eigen::LevenbergMarquardt< _FunctorType >::fvec | ( | ) | [inline] |
Definition at line 200 of file LevenbergMarquardt/LevenbergMarquardt.h.
RealScalar Eigen::LevenbergMarquardt< _FunctorType >::gnorm | ( | ) | [inline] |
Definition at line 193 of file LevenbergMarquardt/LevenbergMarquardt.h.
ComputationInfo Eigen::LevenbergMarquardt< _FunctorType >::info | ( | ) | const [inline] |
Reports whether the minimization was successful.
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 Definition at line 224 of file LevenbergMarquardt/LevenbergMarquardt.h.
Index Eigen::LevenbergMarquardt< _FunctorType >::iterations | ( | ) | [inline] |
Definition at line 181 of file LevenbergMarquardt/LevenbergMarquardt.h.
JacobianType& Eigen::LevenbergMarquardt< _FunctorType >::jacobian | ( | ) | [inline] |
Definition at line 204 of file LevenbergMarquardt/LevenbergMarquardt.h.
Scalar Eigen::LevenbergMarquardt< _FunctorType >::lm_param | ( | void | ) | [inline] |
Definition at line 110 of file NonLinearOptimization/LevenbergMarquardt.h.
RealScalar Eigen::LevenbergMarquardt< _FunctorType >::lm_param | ( | void | ) | [inline] |
Definition at line 196 of file LevenbergMarquardt/LevenbergMarquardt.h.
LevenbergMarquardtSpace::Status Eigen::LevenbergMarquardt< _FunctorType >::lmder1 | ( | FVectorType & | x, |
const Scalar | tol = std::sqrt(NumTraits< Scalar >::epsilon()) |
||
) |
LevenbergMarquardtSpace::Status Eigen::LevenbergMarquardt< FunctorType, Scalar >::lmder1 | ( | FVectorType & | x, |
const Scalar | tol = std::sqrt(NumTraits<Scalar>::epsilon()) |
||
) |
Definition at line 325 of file LevenbergMarquardt/LevenbergMarquardt.h.
static LevenbergMarquardtSpace::Status Eigen::LevenbergMarquardt< _FunctorType >::lmdif1 | ( | FunctorType & | functor, |
FVectorType & | x, | ||
Index * | nfev, | ||
const Scalar | tol = std::sqrt(NumTraits< Scalar >::epsilon()) |
||
) | [static] |
LevenbergMarquardtSpace::Status Eigen::LevenbergMarquardt< FunctorType, Scalar >::lmdif1 | ( | FunctorType & | functor, |
FVectorType & | x, | ||
Index * | nfev, | ||
const Scalar | tol = std::sqrt(NumTraits<Scalar>::epsilon()) |
||
) | [static] |
Definition at line 348 of file LevenbergMarquardt/LevenbergMarquardt.h.
LevenbergMarquardtSpace::Status Eigen::LevenbergMarquardt< FunctorType, Scalar >::lmstr1 | ( | FVectorType & | x, |
const Scalar | tol = std::sqrt(NumTraits<Scalar>::epsilon()) |
||
) |
Definition at line 356 of file NonLinearOptimization/LevenbergMarquardt.h.
JacobianType& Eigen::LevenbergMarquardt< _FunctorType >::matrixR | ( | void | ) | [inline] |
Definition at line 209 of file LevenbergMarquardt/LevenbergMarquardt.h.
LevenbergMarquardtSpace::Status Eigen::LevenbergMarquardt< _FunctorType >::minimize | ( | FVectorType & | x | ) |
LevenbergMarquardtSpace::Status Eigen::LevenbergMarquardt< FunctorType, Scalar >::minimize | ( | FVectorType & | x | ) |
Definition at line 258 of file LevenbergMarquardt/LevenbergMarquardt.h.
LevenbergMarquardtSpace::Status Eigen::LevenbergMarquardt< _FunctorType >::minimizeInit | ( | FVectorType & | x | ) |
LevenbergMarquardtSpace::Status Eigen::LevenbergMarquardt< FunctorType, Scalar >::minimizeInit | ( | FVectorType & | x | ) |
Definition at line 275 of file LevenbergMarquardt/LevenbergMarquardt.h.
LevenbergMarquardtSpace::Status Eigen::LevenbergMarquardt< _FunctorType >::minimizeOneStep | ( | FVectorType & | x | ) |
LevenbergMarquardtSpace::Status Eigen::LevenbergMarquardt< FunctorType, Scalar >::minimizeOneStep | ( | FVectorType & | x | ) |
Definition at line 21 of file LMonestep.h.
LevenbergMarquardtSpace::Status Eigen::LevenbergMarquardt< FunctorType, Scalar >::minimizeOptimumStorage | ( | FVectorType & | x | ) |
Definition at line 606 of file NonLinearOptimization/LevenbergMarquardt.h.
LevenbergMarquardtSpace::Status Eigen::LevenbergMarquardt< FunctorType, Scalar >::minimizeOptimumStorageInit | ( | FVectorType & | x | ) |
Definition at line 378 of file NonLinearOptimization/LevenbergMarquardt.h.
LevenbergMarquardtSpace::Status Eigen::LevenbergMarquardt< FunctorType, Scalar >::minimizeOptimumStorageOneStep | ( | FVectorType & | x | ) |
Definition at line 427 of file NonLinearOptimization/LevenbergMarquardt.h.
Index Eigen::LevenbergMarquardt< _FunctorType >::nfev | ( | ) | [inline] |
Definition at line 184 of file LevenbergMarquardt/LevenbergMarquardt.h.
Index Eigen::LevenbergMarquardt< _FunctorType >::njev | ( | ) | [inline] |
Definition at line 187 of file LevenbergMarquardt/LevenbergMarquardt.h.
LevenbergMarquardt& Eigen::LevenbergMarquardt< _FunctorType >::operator= | ( | const LevenbergMarquardt< _FunctorType > & | ) | [private] |
PermutationType Eigen::LevenbergMarquardt< _FunctorType >::permutation | ( | ) | [inline] |
the permutation used in the QR factorization
Definition at line 213 of file LevenbergMarquardt/LevenbergMarquardt.h.
void Eigen::LevenbergMarquardt< _FunctorType >::resetParameters | ( | void | ) | [inline] |
Definition at line 98 of file NonLinearOptimization/LevenbergMarquardt.h.
void Eigen::LevenbergMarquardt< _FunctorType >::resetParameters | ( | ) | [inline] |
Sets the default parameters
Definition at line 146 of file LevenbergMarquardt/LevenbergMarquardt.h.
void Eigen::LevenbergMarquardt< _FunctorType >::setEpsilon | ( | RealScalar | epsfcn | ) | [inline] |
Sets the error precision
Definition at line 169 of file LevenbergMarquardt/LevenbergMarquardt.h.
void Eigen::LevenbergMarquardt< _FunctorType >::setExternalScaling | ( | bool | value | ) | [inline] |
Use an external Scaling. If set to true, pass a nonzero diagonal to diag()
Definition at line 175 of file LevenbergMarquardt/LevenbergMarquardt.h.
void Eigen::LevenbergMarquardt< _FunctorType >::setFactor | ( | RealScalar | factor | ) | [inline] |
Sets the step bound for the diagonal shift
Definition at line 166 of file LevenbergMarquardt/LevenbergMarquardt.h.
void Eigen::LevenbergMarquardt< _FunctorType >::setFtol | ( | RealScalar | ftol | ) | [inline] |
Sets the tolerance for the norm of the vector function
Definition at line 160 of file LevenbergMarquardt/LevenbergMarquardt.h.
void Eigen::LevenbergMarquardt< _FunctorType >::setGtol | ( | RealScalar | gtol | ) | [inline] |
Sets the tolerance for the norm of the gradient of the error vector
Definition at line 163 of file LevenbergMarquardt/LevenbergMarquardt.h.
void Eigen::LevenbergMarquardt< _FunctorType >::setMaxfev | ( | Index | maxfev | ) | [inline] |
Sets the maximum number of function evaluation
Definition at line 172 of file LevenbergMarquardt/LevenbergMarquardt.h.
void Eigen::LevenbergMarquardt< _FunctorType >::setXtol | ( | RealScalar | xtol | ) | [inline] |
Sets the tolerance for the norm of the solution vector
Definition at line 157 of file LevenbergMarquardt/LevenbergMarquardt.h.
Scalar Eigen::LevenbergMarquardt< _FunctorType >::actred [private] |
Definition at line 121 of file NonLinearOptimization/LevenbergMarquardt.h.
Scalar Eigen::LevenbergMarquardt< _FunctorType >::delta [private] |
Definition at line 119 of file NonLinearOptimization/LevenbergMarquardt.h.
FVectorType Eigen::LevenbergMarquardt< _FunctorType >::diag |
Definition at line 101 of file NonLinearOptimization/LevenbergMarquardt.h.
Scalar Eigen::LevenbergMarquardt< _FunctorType >::dirder [private] |
Definition at line 121 of file NonLinearOptimization/LevenbergMarquardt.h.
JacobianType Eigen::LevenbergMarquardt< _FunctorType >::fjac |
Definition at line 102 of file NonLinearOptimization/LevenbergMarquardt.h.
Scalar Eigen::LevenbergMarquardt< _FunctorType >::fnorm |
Definition at line 107 of file NonLinearOptimization/LevenbergMarquardt.h.
Scalar Eigen::LevenbergMarquardt< _FunctorType >::fnorm1 [private] |
Definition at line 121 of file NonLinearOptimization/LevenbergMarquardt.h.
FunctorType& Eigen::LevenbergMarquardt< _FunctorType >::functor [private] |
Definition at line 112 of file NonLinearOptimization/LevenbergMarquardt.h.
FVectorType Eigen::LevenbergMarquardt< _FunctorType >::fvec |
Definition at line 101 of file NonLinearOptimization/LevenbergMarquardt.h.
Scalar Eigen::LevenbergMarquardt< _FunctorType >::gnorm |
Definition at line 107 of file NonLinearOptimization/LevenbergMarquardt.h.
Index Eigen::LevenbergMarquardt< _FunctorType >::iter |
Definition at line 106 of file NonLinearOptimization/LevenbergMarquardt.h.
Index Eigen::LevenbergMarquardt< _FunctorType >::m [private] |
Definition at line 235 of file LevenbergMarquardt/LevenbergMarquardt.h.
RealScalar Eigen::LevenbergMarquardt< _FunctorType >::m_delta [private] |
Definition at line 247 of file LevenbergMarquardt/LevenbergMarquardt.h.
FVectorType Eigen::LevenbergMarquardt< _FunctorType >::m_diag [private] |
Definition at line 233 of file LevenbergMarquardt/LevenbergMarquardt.h.
RealScalar Eigen::LevenbergMarquardt< _FunctorType >::m_epsfcn [private] |
Definition at line 245 of file LevenbergMarquardt/LevenbergMarquardt.h.
RealScalar Eigen::LevenbergMarquardt< _FunctorType >::m_factor [private] |
Definition at line 240 of file LevenbergMarquardt/LevenbergMarquardt.h.
JacobianType Eigen::LevenbergMarquardt< _FunctorType >::m_fjac [private] |
Definition at line 230 of file LevenbergMarquardt/LevenbergMarquardt.h.
RealScalar Eigen::LevenbergMarquardt< _FunctorType >::m_fnorm [private] |
Definition at line 238 of file LevenbergMarquardt/LevenbergMarquardt.h.
RealScalar Eigen::LevenbergMarquardt< _FunctorType >::m_ftol [private] |
Definition at line 242 of file LevenbergMarquardt/LevenbergMarquardt.h.
FunctorType& Eigen::LevenbergMarquardt< _FunctorType >::m_functor [private] |
Definition at line 232 of file LevenbergMarquardt/LevenbergMarquardt.h.
FVectorType Eigen::LevenbergMarquardt< _FunctorType >::m_fvec [private] |
Definition at line 233 of file LevenbergMarquardt/LevenbergMarquardt.h.
RealScalar Eigen::LevenbergMarquardt< _FunctorType >::m_gnorm [private] |
Definition at line 239 of file LevenbergMarquardt/LevenbergMarquardt.h.
RealScalar Eigen::LevenbergMarquardt< _FunctorType >::m_gtol [private] |
Definition at line 244 of file LevenbergMarquardt/LevenbergMarquardt.h.
ComputationInfo Eigen::LevenbergMarquardt< _FunctorType >::m_info [private] |
Definition at line 253 of file LevenbergMarquardt/LevenbergMarquardt.h.
bool Eigen::LevenbergMarquardt< _FunctorType >::m_isInitialized [private] |
Definition at line 252 of file LevenbergMarquardt/LevenbergMarquardt.h.
Index Eigen::LevenbergMarquardt< _FunctorType >::m_iter [private] |
Definition at line 246 of file LevenbergMarquardt/LevenbergMarquardt.h.
Index Eigen::LevenbergMarquardt< _FunctorType >::m_maxfev [private] |
Definition at line 241 of file LevenbergMarquardt/LevenbergMarquardt.h.
Index Eigen::LevenbergMarquardt< _FunctorType >::m_nfev [private] |
Definition at line 236 of file LevenbergMarquardt/LevenbergMarquardt.h.
Index Eigen::LevenbergMarquardt< _FunctorType >::m_njev [private] |
Definition at line 237 of file LevenbergMarquardt/LevenbergMarquardt.h.
RealScalar Eigen::LevenbergMarquardt< _FunctorType >::m_par [private] |
Definition at line 251 of file LevenbergMarquardt/LevenbergMarquardt.h.
PermutationType Eigen::LevenbergMarquardt< _FunctorType >::m_permutation [private] |
Definition at line 249 of file LevenbergMarquardt/LevenbergMarquardt.h.
FVectorType Eigen::LevenbergMarquardt< _FunctorType >::m_qtf [private] |
Definition at line 233 of file LevenbergMarquardt/LevenbergMarquardt.h.
JacobianType Eigen::LevenbergMarquardt< _FunctorType >::m_rfactor [private] |
Definition at line 231 of file LevenbergMarquardt/LevenbergMarquardt.h.
bool Eigen::LevenbergMarquardt< _FunctorType >::m_useExternalScaling [private] |
Definition at line 248 of file LevenbergMarquardt/LevenbergMarquardt.h.
FVectorType Eigen::LevenbergMarquardt< _FunctorType >::m_wa1 [private] |
Definition at line 250 of file LevenbergMarquardt/LevenbergMarquardt.h.
FVectorType Eigen::LevenbergMarquardt< _FunctorType >::m_wa2 [private] |
Definition at line 250 of file LevenbergMarquardt/LevenbergMarquardt.h.
FVectorType Eigen::LevenbergMarquardt< _FunctorType >::m_wa3 [private] |
Definition at line 250 of file LevenbergMarquardt/LevenbergMarquardt.h.
FVectorType Eigen::LevenbergMarquardt< _FunctorType >::m_wa4 [private] |
Definition at line 250 of file LevenbergMarquardt/LevenbergMarquardt.h.
RealScalar Eigen::LevenbergMarquardt< _FunctorType >::m_xtol [private] |
Definition at line 243 of file LevenbergMarquardt/LevenbergMarquardt.h.
Index Eigen::LevenbergMarquardt< _FunctorType >::n [private] |
Definition at line 234 of file LevenbergMarquardt/LevenbergMarquardt.h.
Index Eigen::LevenbergMarquardt< _FunctorType >::nfev |
Definition at line 104 of file NonLinearOptimization/LevenbergMarquardt.h.
Index Eigen::LevenbergMarquardt< _FunctorType >::njev |
Definition at line 105 of file NonLinearOptimization/LevenbergMarquardt.h.
Scalar Eigen::LevenbergMarquardt< _FunctorType >::par [private] |
Definition at line 117 of file NonLinearOptimization/LevenbergMarquardt.h.
Parameters Eigen::LevenbergMarquardt< _FunctorType >::parameters |
Definition at line 100 of file NonLinearOptimization/LevenbergMarquardt.h.
PermutationMatrix<Dynamic,Dynamic> Eigen::LevenbergMarquardt< _FunctorType >::permutation |
Definition at line 103 of file NonLinearOptimization/LevenbergMarquardt.h.
Scalar Eigen::LevenbergMarquardt< _FunctorType >::pnorm [private] |
Definition at line 121 of file NonLinearOptimization/LevenbergMarquardt.h.
Scalar Eigen::LevenbergMarquardt< _FunctorType >::prered [private] |
Definition at line 121 of file NonLinearOptimization/LevenbergMarquardt.h.
FVectorType Eigen::LevenbergMarquardt< _FunctorType >::qtf |
Definition at line 101 of file NonLinearOptimization/LevenbergMarquardt.h.
Scalar Eigen::LevenbergMarquardt< _FunctorType >::ratio [private] |
Definition at line 120 of file NonLinearOptimization/LevenbergMarquardt.h.
Scalar Eigen::LevenbergMarquardt< _FunctorType >::sum [private] |
Definition at line 117 of file NonLinearOptimization/LevenbergMarquardt.h.
Scalar Eigen::LevenbergMarquardt< _FunctorType >::temp [private] |
Definition at line 118 of file NonLinearOptimization/LevenbergMarquardt.h.
Scalar Eigen::LevenbergMarquardt< _FunctorType >::temp1 [private] |
Definition at line 118 of file NonLinearOptimization/LevenbergMarquardt.h.
Scalar Eigen::LevenbergMarquardt< _FunctorType >::temp2 [private] |
Definition at line 118 of file NonLinearOptimization/LevenbergMarquardt.h.
bool Eigen::LevenbergMarquardt< _FunctorType >::useExternalScaling |
Definition at line 108 of file NonLinearOptimization/LevenbergMarquardt.h.
FVectorType Eigen::LevenbergMarquardt< _FunctorType >::wa1 [private] |
Definition at line 115 of file NonLinearOptimization/LevenbergMarquardt.h.
FVectorType Eigen::LevenbergMarquardt< _FunctorType >::wa2 [private] |
Definition at line 115 of file NonLinearOptimization/LevenbergMarquardt.h.
FVectorType Eigen::LevenbergMarquardt< _FunctorType >::wa3 [private] |
Definition at line 115 of file NonLinearOptimization/LevenbergMarquardt.h.
FVectorType Eigen::LevenbergMarquardt< _FunctorType >::wa4 [private] |
Definition at line 115 of file NonLinearOptimization/LevenbergMarquardt.h.
Scalar Eigen::LevenbergMarquardt< _FunctorType >::xnorm [private] |
Definition at line 121 of file NonLinearOptimization/LevenbergMarquardt.h.