Performs non linear optimization over a non-linear function, using a variant of the Levenberg Marquardt algorithm. More...
#include <LevenbergMarquardt.h>
Classes | |
struct | Parameters |
Public Types | |
typedef Matrix< Scalar, Dynamic, 1 > | FVectorType |
typedef DenseIndex | Index |
typedef Matrix< Scalar, Dynamic, Dynamic > | JacobianType |
Public Member Functions | |
LevenbergMarquardt (FunctorType &_functor) | |
Scalar | lm_param (void) |
LevenbergMarquardtSpace::Status | lmder1 (FVectorType &x, const Scalar tol=std::sqrt(NumTraits< Scalar >::epsilon())) |
LevenbergMarquardtSpace::Status | lmstr1 (FVectorType &x, const Scalar tol=std::sqrt(NumTraits< Scalar >::epsilon())) |
LevenbergMarquardtSpace::Status | minimize (FVectorType &x) |
LevenbergMarquardtSpace::Status | minimizeInit (FVectorType &x) |
LevenbergMarquardtSpace::Status | minimizeOneStep (FVectorType &x) |
LevenbergMarquardtSpace::Status | minimizeOptimumStorage (FVectorType &x) |
LevenbergMarquardtSpace::Status | minimizeOptimumStorageInit (FVectorType &x) |
LevenbergMarquardtSpace::Status | minimizeOptimumStorageOneStep (FVectorType &x) |
void | resetParameters (void) |
Static Public Member Functions | |
static LevenbergMarquardtSpace::Status | lmdif1 (FunctorType &functor, FVectorType &x, Index *nfev, const Scalar tol=std::sqrt(NumTraits< Scalar >::epsilon())) |
Public Attributes | |
FVectorType | diag |
JacobianType | fjac |
Scalar | fnorm |
FVectorType | fvec |
Scalar | gnorm |
Index | iter |
Index | nfev |
Index | njev |
Parameters | parameters |
PermutationMatrix< Dynamic, Dynamic > | permutation |
FVectorType | qtf |
bool | useExternalScaling |
Private Member Functions | |
LevenbergMarquardt & | operator= (const LevenbergMarquardt &) |
Private Attributes | |
Scalar | actred |
Scalar | delta |
Scalar | dirder |
Scalar | fnorm1 |
FunctorType & | functor |
Index | m |
Index | n |
Scalar | par |
Scalar | pnorm |
Scalar | prered |
Scalar | ratio |
Scalar | sum |
Scalar | temp |
Scalar | temp1 |
Scalar | temp2 |
FVectorType | wa1 |
FVectorType | wa2 |
FVectorType | wa3 |
FVectorType | wa4 |
Scalar | xnorm |
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 46 of file LevenbergMarquardt.h.
typedef Matrix< Scalar, Dynamic, 1 > Eigen::LevenbergMarquardt< FunctorType, Scalar >::FVectorType |
Definition at line 70 of file LevenbergMarquardt.h.
typedef DenseIndex Eigen::LevenbergMarquardt< FunctorType, Scalar >::Index |
Definition at line 52 of file LevenbergMarquardt.h.
typedef Matrix< Scalar, Dynamic, Dynamic > Eigen::LevenbergMarquardt< FunctorType, Scalar >::JacobianType |
Definition at line 71 of file LevenbergMarquardt.h.
|
inline |
Definition at line 49 of file LevenbergMarquardt.h.
|
inline |
Definition at line 110 of file LevenbergMarquardt.h.
LevenbergMarquardtSpace::Status Eigen::LevenbergMarquardt< FunctorType, Scalar >::lmder1 | ( | FVectorType & | x, |
const Scalar | tol = std::sqrt(NumTraits<Scalar>::epsilon()) |
||
) |
Definition at line 128 of file LevenbergMarquardt.h.
|
static |
Definition at line 619 of file 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 LevenbergMarquardt.h.
LevenbergMarquardtSpace::Status Eigen::LevenbergMarquardt< FunctorType, Scalar >::minimize | ( | FVectorType & | x | ) |
Definition at line 151 of file LevenbergMarquardt.h.
LevenbergMarquardtSpace::Status Eigen::LevenbergMarquardt< FunctorType, Scalar >::minimizeInit | ( | FVectorType & | x | ) |
Definition at line 164 of file LevenbergMarquardt.h.
LevenbergMarquardtSpace::Status Eigen::LevenbergMarquardt< FunctorType, Scalar >::minimizeOneStep | ( | FVectorType & | x | ) |
Definition at line 207 of file LevenbergMarquardt.h.
LevenbergMarquardtSpace::Status Eigen::LevenbergMarquardt< FunctorType, Scalar >::minimizeOptimumStorage | ( | FVectorType & | x | ) |
Definition at line 606 of file LevenbergMarquardt.h.
LevenbergMarquardtSpace::Status Eigen::LevenbergMarquardt< FunctorType, Scalar >::minimizeOptimumStorageInit | ( | FVectorType & | x | ) |
Definition at line 378 of file LevenbergMarquardt.h.
LevenbergMarquardtSpace::Status Eigen::LevenbergMarquardt< FunctorType, Scalar >::minimizeOptimumStorageOneStep | ( | FVectorType & | x | ) |
Definition at line 427 of file LevenbergMarquardt.h.
|
private |
|
inline |
Definition at line 98 of file LevenbergMarquardt.h.
|
private |
Definition at line 121 of file LevenbergMarquardt.h.
|
private |
Definition at line 119 of file LevenbergMarquardt.h.
FVectorType Eigen::LevenbergMarquardt< FunctorType, Scalar >::diag |
Definition at line 101 of file LevenbergMarquardt.h.
|
private |
Definition at line 121 of file LevenbergMarquardt.h.
JacobianType Eigen::LevenbergMarquardt< FunctorType, Scalar >::fjac |
Definition at line 102 of file LevenbergMarquardt.h.
Scalar Eigen::LevenbergMarquardt< FunctorType, Scalar >::fnorm |
Definition at line 107 of file LevenbergMarquardt.h.
|
private |
Definition at line 121 of file LevenbergMarquardt.h.
|
private |
Definition at line 112 of file LevenbergMarquardt.h.
FVectorType Eigen::LevenbergMarquardt< FunctorType, Scalar >::fvec |
Definition at line 101 of file LevenbergMarquardt.h.
Scalar Eigen::LevenbergMarquardt< FunctorType, Scalar >::gnorm |
Definition at line 107 of file LevenbergMarquardt.h.
Index Eigen::LevenbergMarquardt< FunctorType, Scalar >::iter |
Definition at line 106 of file LevenbergMarquardt.h.
|
private |
Definition at line 114 of file LevenbergMarquardt.h.
|
private |
Definition at line 113 of file LevenbergMarquardt.h.
Index Eigen::LevenbergMarquardt< FunctorType, Scalar >::nfev |
Definition at line 104 of file LevenbergMarquardt.h.
Index Eigen::LevenbergMarquardt< FunctorType, Scalar >::njev |
Definition at line 105 of file LevenbergMarquardt.h.
|
private |
Definition at line 117 of file LevenbergMarquardt.h.
Parameters Eigen::LevenbergMarquardt< FunctorType, Scalar >::parameters |
Definition at line 100 of file LevenbergMarquardt.h.
PermutationMatrix<Dynamic,Dynamic> Eigen::LevenbergMarquardt< FunctorType, Scalar >::permutation |
Definition at line 103 of file LevenbergMarquardt.h.
|
private |
Definition at line 121 of file LevenbergMarquardt.h.
|
private |
Definition at line 121 of file LevenbergMarquardt.h.
FVectorType Eigen::LevenbergMarquardt< FunctorType, Scalar >::qtf |
Definition at line 101 of file LevenbergMarquardt.h.
|
private |
Definition at line 120 of file LevenbergMarquardt.h.
|
private |
Definition at line 117 of file LevenbergMarquardt.h.
|
private |
Definition at line 118 of file LevenbergMarquardt.h.
|
private |
Definition at line 118 of file LevenbergMarquardt.h.
|
private |
Definition at line 118 of file LevenbergMarquardt.h.
bool Eigen::LevenbergMarquardt< FunctorType, Scalar >::useExternalScaling |
Definition at line 108 of file LevenbergMarquardt.h.
|
private |
Definition at line 115 of file LevenbergMarquardt.h.
|
private |
Definition at line 115 of file LevenbergMarquardt.h.
|
private |
Definition at line 115 of file LevenbergMarquardt.h.
|
private |
Definition at line 115 of file LevenbergMarquardt.h.
|
private |
Definition at line 121 of file LevenbergMarquardt.h.