25 #define LINSOLVERS_RETAIN_MEMORY // comment this is if you don't want routines in Axb.c retain working memory between calls
34 #define FABS(x) (((x)>=0.0)? (x) : -(x))
39 #define LM_DER_WORKSZ(npar, nmeas) (2*(nmeas) + 4*(npar) + (nmeas)*(npar) + (npar)*(npar))
40 #define LM_DIF_WORKSZ(npar, nmeas) (3*(nmeas) + 4*(npar) + (nmeas)*(npar) + (npar)*(npar))
44 #define LM_INIT_MU 1E-03
45 #define LM_STOP_THRESH 1E-17
46 #define LM_DIFF_DELTA 1E-06
47 #define LM_VERSION "2.1.3 (Jan. 2006)"
51 extern int dlevmar_der(
52 void (*func)(
double *p,
double *hx,
int m,
int n,
void *adata),
53 void (*jacf)(
double *p,
double *j,
int m,
int n,
void *adata),
54 double *p,
double *x,
int m,
int n,
int itmax,
double *opts,
55 double *info,
double *work,
double *covar,
void *adata);
57 extern int dlevmar_dif(
58 void (*func)(
double *p,
double *hx,
int m,
int n,
void *adata),
59 double *p,
double *x,
int m,
int n,
int itmax,
double *opts,
60 double *info,
double *work,
double *covar,
void *adata);
63 extern int dlevmar_bc_der(
64 void (*func)(
double *p,
double *hx,
int m,
int n,
void *adata),
65 void (*jacf)(
double *p,
double *j,
int m,
int n,
void *adata),
66 double *p,
double *x,
int m,
int n,
double *lb,
double *ub,
67 int itmax,
double *opts,
double *info,
double *work,
double *covar,
void *adata);
69 extern int dlevmar_bc_dif(
70 void (*func)(
double *p,
double *hx,
int m,
int n,
void *adata),
71 double *p,
double *x,
int m,
int n,
double *lb,
double *ub,
72 int itmax,
double *opts,
double *info,
double *work,
double *covar,
void *adata);
75 extern int dlevmar_lec_der(
76 void (*func)(
double *p,
double *hx,
int m,
int n,
void *adata),
77 void (*jacf)(
double *p,
double *j,
int m,
int n,
void *adata),
78 double *p,
double *x,
int m,
int n,
double *A,
double *b,
int k,
79 int itmax,
double *opts,
double *info,
double *work,
double *covar,
void *adata);
81 extern int dlevmar_lec_dif(
82 void (*func)(
double *p,
double *hx,
int m,
int n,
void *adata),
83 double *p,
double *x,
int m,
int n,
double *A,
double *b,
int k,
84 int itmax,
double *opts,
double *info,
double *work,
double *covar,
void *adata);
89 extern int slevmar_der(
90 void (*func)(
float *p,
float *hx,
int m,
int n,
void *adata),
91 void (*jacf)(
float *p,
float *j,
int m,
int n,
void *adata),
92 float *p,
float *x,
int m,
int n,
int itmax,
float *opts,
93 float *info,
float *work,
float *covar,
void *adata);
95 extern int slevmar_dif(
96 void (*func)(
float *p,
float *hx,
int m,
int n,
void *adata),
97 float *p,
float *x,
int m,
int n,
int itmax,
float *opts,
98 float *info,
float *work,
float *covar,
void *adata);
101 extern int slevmar_bc_der(
102 void (*func)(
float *p,
float *hx,
int m,
int n,
void *adata),
103 void (*jacf)(
float *p,
float *j,
int m,
int n,
void *adata),
104 float *p,
float *x,
int m,
int n,
float *lb,
float *ub,
105 int itmax,
float *opts,
float *info,
float *work,
float *covar,
void *adata);
107 extern int slevmar_bc_dif(
108 void (*func)(
float *p,
float *hx,
int m,
int n,
void *adata),
109 float *p,
float *x,
int m,
int n,
float *lb,
float *ub,
110 int itmax,
float *opts,
float *info,
float *work,
float *covar,
void *adata);
113 extern int slevmar_lec_der(
114 void (*func)(
float *p,
float *hx,
int m,
int n,
void *adata),
115 void (*jacf)(
float *p,
float *j,
int m,
int n,
void *adata),
116 float *p,
float *x,
int m,
int n,
float *A,
float *b,
int k,
117 int itmax,
float *opts,
float *info,
float *work,
float *covar,
void *adata);
119 extern int slevmar_lec_dif(
120 void (*func)(
float *p,
float *hx,
int m,
int n,
void *adata),
121 float *p,
float *x,
int m,
int n,
float *A,
float *b,
int k,
122 int itmax,
float *opts,
float *info,
float *work,
float *covar,
void *adata);
125 extern int dAx_eq_b_QR(
double *A,
double *B,
double *x,
int m);
126 extern int dAx_eq_b_QRLS(
double *A,
double *B,
double *x,
int m,
int n);
127 extern int dAx_eq_b_Chol(
double *A,
double *B,
double *x,
int m);
128 extern int dAx_eq_b_LU(
double *A,
double *B,
double *x,
int m);
129 extern int dAx_eq_b_SVD(
double *A,
double *B,
double *x,
int m);
131 extern int sAx_eq_b_QR(
float *A,
float *B,
float *x,
int m);
132 extern int sAx_eq_b_QRLS(
float *A,
float *B,
float *x,
int m,
int n);
133 extern int sAx_eq_b_Chol(
float *A,
float *B,
float *x,
int m);
134 extern int sAx_eq_b_LU(
float *A,
float *B,
float *x,
int m);
135 extern int sAx_eq_b_SVD(
float *A,
float *B,
float *x,
int m);
138 extern void dlevmar_chkjac(
139 void (*func)(
double *p,
double *hx,
int m,
int n,
void *adata),
140 void (*jacf)(
double *p,
double *j,
int m,
int n,
void *adata),
141 double *p,
int m,
int n,
void *adata,
double *err);
143 extern void slevmar_chkjac(
144 void (*func)(
float *p,
float *hx,
int m,
int n,
void *adata),
145 void (*jacf)(
float *p,
float *j,
int m,
int n,
void *adata),
146 float *p,
int m,
int n,
void *adata,
float *err);
Generated at Sun Jan 26 2020 23:24:00 for MPQC
3.0.0-alpha using the documentation package Doxygen
1.8.16.