|
ViSP
2.8.0
|
44 #ifndef vpLevenbergMarquartd_h
45 #define vpLevenbergMarquartd_h
47 #include <visp/vpConfig.h>
48 #include <visp/vpMath.h>
57 qrsolv (
int n,
double *r,
int ldr,
int *ipvt,
double *diag,
58 double *qtb,
double *x,
double *sdiag,
double *wa) ;
61 enorm (
const double *x,
int n);
64 lmpar(
int n,
double *r,
int ldr,
int *ipvt,
double *diag,
double *qtb,
65 double *delta,
double *par,
double *x,
double *sdiag,
double *wa1,
69 pythag (
double a,
double b);
72 qrfac(
int m,
int n,
double *a,
int lda,
int *pivot,
int *ipvt,
73 int lipvt,
double *rdiag,
double *acnorm,
double *wa);
76 qrsolv (
int n,
double *r,
int ldr,
int *ipvt,
double *diag,
double *qtb,
77 double *x,
double *sdiag,
double *wa);
80 lmder (
void (*ptr_fcn)(
int m,
int n,
double *xc,
double *fvecc,
81 double *jac,
int ldfjac,
int iflag),
82 int m,
int n,
double *x,
83 double *fvec,
double *fjac,
int ldfjac,
double ftol,
double xtol,
84 double gtol,
unsigned int maxfev,
double *diag,
int mode,
85 const double factor,
int nprint,
int *info,
unsigned int *nfev,
86 int *njev,
int *ipvt,
double *qtf,
double *wa1,
double *wa2,
87 double *wa3,
double *wa4);
90 lmder1 (
void (*ptr_fcn)(
int m,
int n,
double *xc,
double *fvecc,
91 double *jac,
int ldfjac,
int iflag),
92 int m,
int n,
double *x,
double *fvec,
double *fjac,
93 int ldfjac,
double tol,
int *info,
int *ipvt,
int lwa,
double *wa);