Classes | Public Types | Public Member Functions | Static Public Member Functions | Public Attributes | Private Member Functions | Private Attributes
Eigen::LevenbergMarquardt< FunctorType, Scalar > Class Template Reference

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

#include <LevenbergMarquardt.h>

List of all members.

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

LevenbergMarquardtoperator= (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

Detailed Description

template<typename FunctorType, typename Scalar = double>
class Eigen::LevenbergMarquardt< FunctorType, Scalar >

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.


Member Typedef Documentation

template<typename FunctorType, typename Scalar = double>
typedef Matrix< Scalar, Dynamic, 1 > Eigen::LevenbergMarquardt< FunctorType, Scalar >::FVectorType

Definition at line 70 of file LevenbergMarquardt.h.

template<typename FunctorType, typename Scalar = double>
typedef DenseIndex Eigen::LevenbergMarquardt< FunctorType, Scalar >::Index

Definition at line 52 of file LevenbergMarquardt.h.

template<typename FunctorType, typename Scalar = double>
typedef Matrix< Scalar, Dynamic, Dynamic > Eigen::LevenbergMarquardt< FunctorType, Scalar >::JacobianType

Definition at line 71 of file LevenbergMarquardt.h.


Constructor & Destructor Documentation

template<typename FunctorType, typename Scalar = double>
Eigen::LevenbergMarquardt< FunctorType, Scalar >::LevenbergMarquardt ( FunctorType &  _functor) [inline]

Definition at line 49 of file LevenbergMarquardt.h.


Member Function Documentation

template<typename FunctorType, typename Scalar = double>
Scalar Eigen::LevenbergMarquardt< FunctorType, Scalar >::lm_param ( void  ) [inline]

Definition at line 110 of file LevenbergMarquardt.h.

template<typename FunctorType , typename Scalar >
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.

template<typename FunctorType , typename Scalar >
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 619 of file LevenbergMarquardt.h.

template<typename FunctorType , typename Scalar >
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.

template<typename FunctorType , typename Scalar >
LevenbergMarquardtSpace::Status Eigen::LevenbergMarquardt< FunctorType, Scalar >::minimize ( FVectorType x)

Definition at line 151 of file LevenbergMarquardt.h.

template<typename FunctorType , typename Scalar >
LevenbergMarquardtSpace::Status Eigen::LevenbergMarquardt< FunctorType, Scalar >::minimizeInit ( FVectorType x)

Definition at line 164 of file LevenbergMarquardt.h.

template<typename FunctorType , typename Scalar >
LevenbergMarquardtSpace::Status Eigen::LevenbergMarquardt< FunctorType, Scalar >::minimizeOneStep ( FVectorType x)

Definition at line 207 of file LevenbergMarquardt.h.

template<typename FunctorType , typename Scalar >
LevenbergMarquardtSpace::Status Eigen::LevenbergMarquardt< FunctorType, Scalar >::minimizeOptimumStorage ( FVectorType x)

Definition at line 606 of file LevenbergMarquardt.h.

template<typename FunctorType , typename Scalar >
LevenbergMarquardtSpace::Status Eigen::LevenbergMarquardt< FunctorType, Scalar >::minimizeOptimumStorageInit ( FVectorType x)

Definition at line 378 of file LevenbergMarquardt.h.

template<typename FunctorType , typename Scalar >
LevenbergMarquardtSpace::Status Eigen::LevenbergMarquardt< FunctorType, Scalar >::minimizeOptimumStorageOneStep ( FVectorType x)

Definition at line 427 of file LevenbergMarquardt.h.

template<typename FunctorType, typename Scalar = double>
LevenbergMarquardt& Eigen::LevenbergMarquardt< FunctorType, Scalar >::operator= ( const LevenbergMarquardt< FunctorType, Scalar > &  ) [private]
template<typename FunctorType, typename Scalar = double>
void Eigen::LevenbergMarquardt< FunctorType, Scalar >::resetParameters ( void  ) [inline]

Definition at line 98 of file LevenbergMarquardt.h.


Member Data Documentation

template<typename FunctorType, typename Scalar = double>
Scalar Eigen::LevenbergMarquardt< FunctorType, Scalar >::actred [private]

Definition at line 121 of file LevenbergMarquardt.h.

template<typename FunctorType, typename Scalar = double>
Scalar Eigen::LevenbergMarquardt< FunctorType, Scalar >::delta [private]

Definition at line 119 of file LevenbergMarquardt.h.

template<typename FunctorType, typename Scalar = double>
FVectorType Eigen::LevenbergMarquardt< FunctorType, Scalar >::diag

Definition at line 101 of file LevenbergMarquardt.h.

template<typename FunctorType, typename Scalar = double>
Scalar Eigen::LevenbergMarquardt< FunctorType, Scalar >::dirder [private]

Definition at line 121 of file LevenbergMarquardt.h.

template<typename FunctorType, typename Scalar = double>
JacobianType Eigen::LevenbergMarquardt< FunctorType, Scalar >::fjac

Definition at line 102 of file LevenbergMarquardt.h.

template<typename FunctorType, typename Scalar = double>
Scalar Eigen::LevenbergMarquardt< FunctorType, Scalar >::fnorm

Definition at line 107 of file LevenbergMarquardt.h.

template<typename FunctorType, typename Scalar = double>
Scalar Eigen::LevenbergMarquardt< FunctorType, Scalar >::fnorm1 [private]

Definition at line 121 of file LevenbergMarquardt.h.

template<typename FunctorType, typename Scalar = double>
FunctorType& Eigen::LevenbergMarquardt< FunctorType, Scalar >::functor [private]

Definition at line 112 of file LevenbergMarquardt.h.

template<typename FunctorType, typename Scalar = double>
FVectorType Eigen::LevenbergMarquardt< FunctorType, Scalar >::fvec

Definition at line 101 of file LevenbergMarquardt.h.

template<typename FunctorType, typename Scalar = double>
Scalar Eigen::LevenbergMarquardt< FunctorType, Scalar >::gnorm

Definition at line 107 of file LevenbergMarquardt.h.

template<typename FunctorType, typename Scalar = double>
Index Eigen::LevenbergMarquardt< FunctorType, Scalar >::iter

Definition at line 106 of file LevenbergMarquardt.h.

template<typename FunctorType, typename Scalar = double>
Index Eigen::LevenbergMarquardt< FunctorType, Scalar >::m [private]

Definition at line 114 of file LevenbergMarquardt.h.

template<typename FunctorType, typename Scalar = double>
Index Eigen::LevenbergMarquardt< FunctorType, Scalar >::n [private]

Definition at line 113 of file LevenbergMarquardt.h.

template<typename FunctorType, typename Scalar = double>
Index Eigen::LevenbergMarquardt< FunctorType, Scalar >::nfev

Definition at line 104 of file LevenbergMarquardt.h.

template<typename FunctorType, typename Scalar = double>
Index Eigen::LevenbergMarquardt< FunctorType, Scalar >::njev

Definition at line 105 of file LevenbergMarquardt.h.

template<typename FunctorType, typename Scalar = double>
Scalar Eigen::LevenbergMarquardt< FunctorType, Scalar >::par [private]

Definition at line 117 of file LevenbergMarquardt.h.

template<typename FunctorType, typename Scalar = double>
Parameters Eigen::LevenbergMarquardt< FunctorType, Scalar >::parameters

Definition at line 100 of file LevenbergMarquardt.h.

template<typename FunctorType, typename Scalar = double>
PermutationMatrix<Dynamic,Dynamic> Eigen::LevenbergMarquardt< FunctorType, Scalar >::permutation

Definition at line 103 of file LevenbergMarquardt.h.

template<typename FunctorType, typename Scalar = double>
Scalar Eigen::LevenbergMarquardt< FunctorType, Scalar >::pnorm [private]

Definition at line 121 of file LevenbergMarquardt.h.

template<typename FunctorType, typename Scalar = double>
Scalar Eigen::LevenbergMarquardt< FunctorType, Scalar >::prered [private]

Definition at line 121 of file LevenbergMarquardt.h.

template<typename FunctorType, typename Scalar = double>
FVectorType Eigen::LevenbergMarquardt< FunctorType, Scalar >::qtf

Definition at line 101 of file LevenbergMarquardt.h.

template<typename FunctorType, typename Scalar = double>
Scalar Eigen::LevenbergMarquardt< FunctorType, Scalar >::ratio [private]

Definition at line 120 of file LevenbergMarquardt.h.

template<typename FunctorType, typename Scalar = double>
Scalar Eigen::LevenbergMarquardt< FunctorType, Scalar >::sum [private]

Definition at line 117 of file LevenbergMarquardt.h.

template<typename FunctorType, typename Scalar = double>
Scalar Eigen::LevenbergMarquardt< FunctorType, Scalar >::temp [private]

Definition at line 118 of file LevenbergMarquardt.h.

template<typename FunctorType, typename Scalar = double>
Scalar Eigen::LevenbergMarquardt< FunctorType, Scalar >::temp1 [private]

Definition at line 118 of file LevenbergMarquardt.h.

template<typename FunctorType, typename Scalar = double>
Scalar Eigen::LevenbergMarquardt< FunctorType, Scalar >::temp2 [private]

Definition at line 118 of file LevenbergMarquardt.h.

template<typename FunctorType, typename Scalar = double>
bool Eigen::LevenbergMarquardt< FunctorType, Scalar >::useExternalScaling

Definition at line 108 of file LevenbergMarquardt.h.

template<typename FunctorType, typename Scalar = double>
FVectorType Eigen::LevenbergMarquardt< FunctorType, Scalar >::wa1 [private]

Definition at line 115 of file LevenbergMarquardt.h.

template<typename FunctorType, typename Scalar = double>
FVectorType Eigen::LevenbergMarquardt< FunctorType, Scalar >::wa2 [private]

Definition at line 115 of file LevenbergMarquardt.h.

template<typename FunctorType, typename Scalar = double>
FVectorType Eigen::LevenbergMarquardt< FunctorType, Scalar >::wa3 [private]

Definition at line 115 of file LevenbergMarquardt.h.

template<typename FunctorType, typename Scalar = double>
FVectorType Eigen::LevenbergMarquardt< FunctorType, Scalar >::wa4 [private]

Definition at line 115 of file LevenbergMarquardt.h.

template<typename FunctorType, typename Scalar = double>
Scalar Eigen::LevenbergMarquardt< FunctorType, Scalar >::xnorm [private]

Definition at line 121 of file LevenbergMarquardt.h.


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


acado
Author(s): Milan Vukov, Rien Quirynen
autogenerated on Sat Jun 8 2019 19:40:47