|
laserIMUCalibration
|
Declarations for Levenberg-Marquardt minimization. More...
#include "lmstruct.h"

Go to the source code of this file.
Macros | |
| #define | __BEGIN_DECLS /* empty */ |
| #define | __END_DECLS /* empty */ |
Functions | |
| __BEGIN_DECLS void | lmmin (int n_par, double *par, int m_dat, const void *data, void(*evaluate)(const double *par, int m_dat, const void *data, double *fvec, int *userbreak), const lm_control_struct *control, lm_status_struct *status) |
| Levenberg-Marquardt minimization. More... | |
| double | lm_enorm (int, const double *) |
| Refined calculation of Eucledian norm. More... | |
Declarations for Levenberg-Marquardt minimization.
Library lmfit (Levenberg-Marquardt least squares fitting)
License FreeBSD
Definition in file lmmin.h.
| double lm_enorm | ( | int | , |
| const double * | |||
| ) |
| __BEGIN_DECLS void lmmin | ( | int | n_par, |
| double * | par, | ||
| int | m_dat, | ||
| const void * | data, | ||
| void(*)(const double *par, int m_dat, const void *data, double *fvec, int *userbreak) | evaluate, | ||
| const lm_control_struct * | control, | ||
| lm_status_struct * | status | ||
| ) |
Levenberg-Marquardt minimization.
This routine contains the core algorithm of our library. It minimizes the sum of the squares of m nonlinear functions in n variables by a modified Levenberg-Marquardt algorithm. The function evaluation is done by the user-provided routine 'evaluate'. The Jacobian is then calculated by a forward-difference approximation.
| n_par | is the number of variables (INPUT, positive integer). |
| par | is the solution vector (INPUT/OUTPUT, array of length n). On input it must be set to an estimated solution. On output it yields the final estimate of the solution. |
| m_dat | is the number of functions to be minimized (INPUT, positive integer). It must fulfill m>=n. |
| data | is a pointer that is ignored by lmmin; it is however forwarded to the user-supplied functions evaluate and printout. In a typical application, it contains experimental data to be fitted. |
| evaluate | is a user-supplied function that calculates the m functions. |
| fvec | is an array of length m; on OUTPUT, it must contain the m function values for the parameter vector x. |
| userbreak | is an integer pointer. When *userbreak is set to a nonzero value, lmmin will terminate. |
| control | contains INPUT variables that control the fit algorithm, as declared and explained in lmstruct.h |
| status | contains OUTPUT variables that inform about the fit result, as declared and explained in lmstruct.h |
Definition at line 183 of file lmmin.c.

