Classes | |
struct | Gan_LevMarqObs |
Observation structure for Levenberg-Marquardt minimisation. More... | |
struct | Gan_LevMarqStruct |
Structure for holding state of Levenberg-Marquardt algorithm. More... | |
Typedefs | |
typedef Gan_Bool(* | Gan_LevMarqObsFunc_h )(Gan_Vector *x, Gan_Vector *z, void *zdata, Gan_Vector *h, Gan_Matrix *H) |
Observation function for standard h-type observations. | |
typedef Gan_Bool(* | Gan_LevMarqObsFunc_F )(Gan_Vector *x, Gan_Vector *z, void *zdata, Gan_Vector *F, Gan_Matrix *Hx, Gan_Matrix *Hz) |
Observation function for F-type observations. | |
typedef Gan_LevMarqObs | Gan_LevMarqObs |
Observation structure for Levenberg-Marquardt minimisation. | |
typedef Gan_LevMarqStruct | Gan_LevMarqStruct |
Structure for holding state of Levenberg-Marquardt algorithm. | |
typedef Gan_Bool(* | Gan_LevMarqInitFunc )(Gan_Vector *x, Gan_List *obs_list, void *data) |
Callback function for initialising Levenberg-Marquardt algorithm. | |
Enumerations | |
enum | Gan_LevMarqObsType { GAN_LEV_MARQ_OBS_H, GAN_LEV_MARQ_OBS_H_ROBUST, GAN_LEV_MARQ_OBS_F } |
Observation type for Levenberg-Marquardt minimisation. More... | |
Functions | |
Gan_LevMarqStruct * | gan_lev_marq_form (Gan_LevMarqStruct *lm) |
Forms a Levenberg-Marquardt structure. | |
Gan_LevMarqObs * | gan_lev_marq_obs_h (Gan_LevMarqStruct *lm, Gan_Vector *z, void *zdata, Gan_SquMatrix *Ni, Gan_LevMarqObsFunc_h obs_func) |
Passes an observation to a Levenberg-Marquardt structure. | |
Gan_LevMarqObs * | gan_lev_marq_obs_h_robust (Gan_LevMarqStruct *lm, Gan_Vector *z, void *zdata, Gan_SquMatrix *Ni, Gan_LevMarqObsFunc_h obs_func, double var_scale, double chi2) |
Passes a robust observation to a Levenberg-Marquardt structure. | |
Gan_LevMarqObs * | gan_lev_marq_obs_F (Gan_LevMarqStruct *lm, Gan_Vector *z, void *zdata, Gan_SquMatrix *Ni, Gan_LevMarqObsFunc_F obs_func) |
Passes an observation to a Levenberg-Marquardt structure. | |
Gan_Bool | gan_lev_marq_init (Gan_LevMarqStruct *lm, Gan_LevMarqInitFunc init_func, void *data, double *residualp) |
Initialise Levenberg-Marquardt algorithm. | |
Gan_Bool | gan_lev_marq_iteration (Gan_LevMarqStruct *lm, double lambda, double *residualp) |
Applies Levenberg-Marquardt iteration. | |
Gan_Vector * | gan_lev_marq_get_x (Gan_LevMarqStruct *lm) |
Returns state of Levenberg-Marquardt minimisation. | |
Gan_SquMatrix * | gan_lev_marq_get_P (Gan_LevMarqStruct *lm) |
Returns state covariance of Levenberg-Marquardt minimisation. | |
void | gan_lev_marq_free (Gan_LevMarqStruct *lm) |
Frees a Levenberg-Marquardt structure. | |
Gan_LevMarqStruct * | gan_lev_marq_alloc (void) |
Macro: Allocates a Levenberg-Marquardt structure. |
|
Observation function for F-type observations. Observation function for F-type observations
|
|
Observation function for standard h-type observations. Observation function for standard h-type observations
|
|
Observation type for Levenberg-Marquardt minimisation.
|
|
Macro: Allocates a Levenberg-Marquardt structure. Allocates a structure for computing Levenberg-Marquardt optimisation.
|
|
Forms a Levenberg-Marquardt structure.
|
|
Frees a Levenberg-Marquardt structure.
|
|
Returns state covariance of Levenberg-Marquardt minimisation.
|
|
Returns state of Levenberg-Marquardt minimisation.
|
|
Initialise Levenberg-Marquardt algorithm.
|
|
Applies Levenberg-Marquardt iteration.
|
|
Passes an observation to a Levenberg-Marquardt structure.
|
|
Passes an observation to a Levenberg-Marquardt structure.
|
|
Passes a robust observation to a Levenberg-Marquardt structure.
|