Basic Image AlgorithmS Library  2.8.0
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
Public Member Functions | Protected Attributes | List of all members
BIAS::LevenbergMarquardtHelper Class Reference

Simple helper class for Levenberg-Marquardt optimization. More...

#include <MathAlgo/LevenbergMarquardtHelper.hh>

Public Member Functions

double * GetBestVars () const
 Returns pointer to internal array of best variables. More...
 
void Init (int numVars, int numResiduals)
 Relocates internal array of best variables and resets the best solution. More...
 
 LevenbergMarquardtHelper ()
 Create empty instance. More...
 
 LevenbergMarquardtHelper (int numVars, int numResiduals)
 Create new instance for given number of variables and objective function residuals. More...
 
bool Update (const double *x, const double *fvec)
 Add variables and results, and computes the sum of squares. More...
 
 ~LevenbergMarquardtHelper ()
 Releases the internally stored best variables. More...
 

Protected Attributes

int numResiduals_
 
int numVars_
 
double sumOfSquares_
 
double * vars_
 

Detailed Description

Simple helper class for Levenberg-Marquardt optimization.

This class keep track of the best solution computed by a Levenberg- Marquardt optimization.

Definition at line 15 of file LevenbergMarquardtHelper.hh.

Constructor & Destructor Documentation

LevenbergMarquardtHelper::LevenbergMarquardtHelper ( )

Create empty instance.

Note
Call Init() to provide the number of variables and residuals!

Definition at line 6 of file LevenbergMarquardtHelper.cpp.

References numResiduals_, numVars_, sumOfSquares_, and vars_.

LevenbergMarquardtHelper::LevenbergMarquardtHelper ( int  numVars,
int  numResiduals 
)

Create new instance for given number of variables and objective function residuals.

Definition at line 14 of file LevenbergMarquardtHelper.cpp.

References Init(), and vars_.

LevenbergMarquardtHelper::~LevenbergMarquardtHelper ( )

Releases the internally stored best variables.

Definition at line 20 of file LevenbergMarquardtHelper.cpp.

References vars_.

Member Function Documentation

double* BIAS::LevenbergMarquardtHelper::GetBestVars ( ) const
inline

Returns pointer to internal array of best variables.

Note
Returned pointer must NOT be released!

Definition at line 40 of file LevenbergMarquardtHelper.hh.

void LevenbergMarquardtHelper::Init ( int  numVars,
int  numResiduals 
)

Relocates internal array of best variables and resets the best solution.

Definition at line 26 of file LevenbergMarquardtHelper.cpp.

References numResiduals_, numVars_, sumOfSquares_, and vars_.

Referenced by LevenbergMarquardtHelper().

bool LevenbergMarquardtHelper::Update ( const double *  x,
const double *  fvec 
)

Add variables and results, and computes the sum of squares.

Returns
Returns if the new solution is better than the one stored.

Definition at line 37 of file LevenbergMarquardtHelper.cpp.

References numResiduals_, numVars_, sumOfSquares_, and vars_.

Member Data Documentation

int BIAS::LevenbergMarquardtHelper::numResiduals_
protected

Definition at line 46 of file LevenbergMarquardtHelper.hh.

Referenced by Init(), LevenbergMarquardtHelper(), and Update().

int BIAS::LevenbergMarquardtHelper::numVars_
protected

Definition at line 46 of file LevenbergMarquardtHelper.hh.

Referenced by Init(), LevenbergMarquardtHelper(), and Update().

double BIAS::LevenbergMarquardtHelper::sumOfSquares_
protected

Definition at line 45 of file LevenbergMarquardtHelper.hh.

Referenced by Init(), LevenbergMarquardtHelper(), and Update().

double* BIAS::LevenbergMarquardtHelper::vars_
protected

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