11 |
|
|
12 |
|
// mode |
13 |
|
#define NONE 0 |
14 |
– |
#define NEWTON 1 |
15 |
– |
#define TNCG 2 |
16 |
– |
#define DTNCG 3 |
17 |
– |
#define AUTO 4 |
18 |
– |
// method |
19 |
– |
#define DIAG 5 |
20 |
– |
#define SSOR 6 |
21 |
– |
#define ICCG 7 |
22 |
– |
#define BLOCK 8 |
23 |
– |
|
24 |
– |
|
25 |
– |
#define Success 0 |
26 |
– |
#define ReSearch 1 |
27 |
– |
#define WideAngle 2 |
28 |
– |
#define BadIntpln 3 |
29 |
– |
#define IntplnErr 4 |
30 |
– |
#define blank 5 |
14 |
|
#define Failure 6 |
15 |
|
|
33 |
– |
void bounds(void); |
16 |
|
double energy(void); |
17 |
|
void tncg(int,int,int *,double *,double *, double, double (*)(), void (*)()); |
18 |
|
void mqn(int , int, int *,double *,double *, double *, double (*)() ); |
22 |
|
void newton2(int, double *,double *,int *, int *, int *, double *); |
23 |
|
void hessian(int, double *, int *, int *, int *,double *); |
24 |
|
void gradient(void); |
43 |
– |
void piseq(int, int); |
44 |
– |
void piden(void); |
45 |
– |
void inesc(char *); |
46 |
– |
void outminstat(int , double ,double ); |
47 |
– |
void RefreshScreen(void); |
25 |
|
void minimize(void); |
26 |
|
double minimiz1(double *, double *); |
27 |
|
|
165 |
|
rms = sqrt((float)nvar)/ sqrt(3.0); |
166 |
|
restart = TRUE; |
167 |
|
terminate = FALSE; |
168 |
< |
status = blank; |
168 |
> |
status = 0; |
169 |
|
nerror = 0; |
170 |
|
|
171 |
|
fctmin = -10000.0; |
210 |
|
while ( ! terminate) |
211 |
|
{ |
212 |
|
niter++; |
213 |
< |
status = blank; |
213 |
> |
status = 0; |
214 |
|
|
215 |
|
|
216 |
|
if (restart || method == 0) |