Main MRPT website > C++ reference
MRPT logo
Classes | Public Types | Public Member Functions | Static Public Member Functions | Public Attributes | Private Member Functions | Private Attributes
Eigen::LevenbergMarquardt< FunctorType, Scalar > Class Template Reference

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 61 of file NonLinearOptimization.

List of all members.

Classes

struct  Parameters

Public Types

typedef DenseIndex Index
typedef Matrix< Scalar,
Dynamic, 1 > 
FVectorType
typedef Matrix< Scalar,
Dynamic, Dynamic
JacobianType

Public Member Functions

 LevenbergMarquardt (FunctorType &_functor)
LevenbergMarquardtSpace::Status lmder1 (FVectorType &x, const Scalar tol=internal::sqrt(NumTraits< Scalar >::epsilon()))
LevenbergMarquardtSpace::Status minimize (FVectorType &x)
LevenbergMarquardtSpace::Status minimizeInit (FVectorType &x)
LevenbergMarquardtSpace::Status minimizeOneStep (FVectorType &x)
LevenbergMarquardtSpace::Status lmstr1 (FVectorType &x, const Scalar tol=internal::sqrt(NumTraits< Scalar >::epsilon()))
LevenbergMarquardtSpace::Status minimizeOptimumStorage (FVectorType &x)
LevenbergMarquardtSpace::Status minimizeOptimumStorageInit (FVectorType &x)
LevenbergMarquardtSpace::Status minimizeOptimumStorageOneStep (FVectorType &x)
void resetParameters (void)
Scalar lm_param (void)

Static Public Member Functions

static
LevenbergMarquardtSpace::Status 
lmdif1 (FunctorType &functor, FVectorType &x, Index *nfev, const Scalar tol=internal::sqrt(NumTraits< Scalar >::epsilon()))

Public Attributes

Parameters parameters
FVectorType fvec
FVectorType qtf
FVectorType diag
JacobianType fjac
PermutationMatrix< Dynamic,
Dynamic
permutation
Index nfev
Index njev
Index iter
Scalar fnorm
Scalar gnorm
bool useExternalScaling

Private Member Functions

LevenbergMarquardtoperator= (const LevenbergMarquardt &)

Private Attributes

FunctorType & functor
Index n
Index m
FVectorType wa1
FVectorType wa2
FVectorType wa3
FVectorType wa4
Scalar par
Scalar sum
Scalar temp
Scalar temp1
Scalar temp2
Scalar delta
Scalar ratio
Scalar pnorm
Scalar xnorm
Scalar fnorm1
Scalar actred
Scalar dirder
Scalar prered

Member Typedef Documentation

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

Definition at line 85 of file NonLinearOptimization.

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

Definition at line 67 of file NonLinearOptimization.

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

Definition at line 86 of file NonLinearOptimization.


Constructor & Destructor Documentation

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

Definition at line 64 of file NonLinearOptimization.


Member Function Documentation

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

Definition at line 125 of file NonLinearOptimization.

template<typename FunctorType , typename Scalar >
LevenbergMarquardtSpace::Status Eigen::LevenbergMarquardt< FunctorType, Scalar >::lmder1 ( FVectorType x,
const Scalar  tol = internal::sqrt(NumTraits<Scalar>::epsilon()) 
)

Definition at line 143 of file NonLinearOptimization.

template<typename FunctorType , typename Scalar >
LevenbergMarquardtSpace::Status Eigen::LevenbergMarquardt< FunctorType, Scalar >::lmdif1 ( FunctorType &  functor,
FVectorType x,
Index nfev,
const Scalar  tol = internal::sqrt(NumTraits<Scalar>::epsilon()) 
) [static]

Definition at line 628 of file NonLinearOptimization.

template<typename FunctorType , typename Scalar >
LevenbergMarquardtSpace::Status Eigen::LevenbergMarquardt< FunctorType, Scalar >::lmstr1 ( FVectorType x,
const Scalar  tol = internal::sqrt(NumTraits<Scalar>::epsilon()) 
)

Definition at line 368 of file NonLinearOptimization.

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

Definition at line 166 of file NonLinearOptimization.

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

Definition at line 179 of file NonLinearOptimization.

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

Definition at line 222 of file NonLinearOptimization.

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

Definition at line 615 of file NonLinearOptimization.

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

Definition at line 390 of file NonLinearOptimization.

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

Definition at line 439 of file NonLinearOptimization.

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 113 of file NonLinearOptimization.


Member Data Documentation

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

Definition at line 136 of file NonLinearOptimization.

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

Definition at line 134 of file NonLinearOptimization.

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

Definition at line 116 of file NonLinearOptimization.

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

Definition at line 136 of file NonLinearOptimization.

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

Definition at line 117 of file NonLinearOptimization.

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

Definition at line 122 of file NonLinearOptimization.

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

Definition at line 136 of file NonLinearOptimization.

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

Definition at line 127 of file NonLinearOptimization.

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

Definition at line 116 of file NonLinearOptimization.

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

Definition at line 122 of file NonLinearOptimization.

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

Definition at line 121 of file NonLinearOptimization.

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

Definition at line 129 of file NonLinearOptimization.

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

Definition at line 128 of file NonLinearOptimization.

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

Definition at line 119 of file NonLinearOptimization.

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

Definition at line 120 of file NonLinearOptimization.

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

Definition at line 132 of file NonLinearOptimization.

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

Definition at line 115 of file NonLinearOptimization.

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

Definition at line 118 of file NonLinearOptimization.

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

Definition at line 136 of file NonLinearOptimization.

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

Definition at line 136 of file NonLinearOptimization.

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

Definition at line 116 of file NonLinearOptimization.

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

Definition at line 135 of file NonLinearOptimization.

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

Definition at line 132 of file NonLinearOptimization.

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

Definition at line 133 of file NonLinearOptimization.

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

Definition at line 133 of file NonLinearOptimization.

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

Definition at line 133 of file NonLinearOptimization.

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

Definition at line 123 of file NonLinearOptimization.

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

Definition at line 130 of file NonLinearOptimization.

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

Definition at line 130 of file NonLinearOptimization.

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

Definition at line 130 of file NonLinearOptimization.

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

Definition at line 130 of file NonLinearOptimization.

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

Definition at line 136 of file NonLinearOptimization.




Page generated by Doxygen 1.7.4 for MRPT 0.9.5 SVN:2717 at Sun Oct 16 16:08:03 PDT 2011 Hosted on:
SourceForge.net Logo