#include <stdlib.h>#include <string.h>#include <stdio.h>#include <math.h>#include "pkvaria.h"#include "pknum.h"
Defines | |
| #define | DEBUG |
| #define | MYINFINITY 1.0e308 |
| #define | MAXNITER 10 |
| #define | MAXGITER 16 |
| #define | THR1 0.9 |
| #define | GRTHR 0.01 |
| #define | EPS2 1.0e-7 |
| #define | GRDIV(a, b) (exp((1.0-TAU)*log(a)+TAU*log(b))) |
| #define | LMFUNC(nu) |
| #define | RECORD_MIN(nu, fnu) |
Functions | |
| int | pkn_NLMIterd (int n, void *usrdata, double *x, pkn_NLMTevalfuncd funcf, pkn_NLMTevalfuncgd funcfg, pkn_NLMTevalfuncghd funcfgh, pkn_NLMTtransfuncd trans, pkn_NLMTtunnelfuncd tunnel, double lowerbound, double eps, double delta, double *nu) |
| #define DEBUG |
| #define EPS2 1.0e-7 |
| #define GRDIV | ( | a, | ||
| b | ||||
| ) | (exp((1.0-TAU)*log(a)+TAU*log(b))) |
| #define GRTHR 0.01 |
| #define LMFUNC | ( | nu | ) |
_pkn_NLM_NuFuncd ( n, usrdata, funcf, tunnel, \
nu, x, grad, incr, auxx, hess, lhess, &went_out, &incn )
| #define MAXGITER 16 |
| #define MAXNITER 10 |
| #define MYINFINITY 1.0e308 |
| #define RECORD_MIN | ( | nu, | ||
| fnu | ||||
| ) |
{ if ( went_out && incn < delta ) { \
result = PKN_LMT_FOUND_BARRIER; \
goto finish_lmt; \
} \
if ( fnu < lowerbound ) { \
result = PKN_LMT_ERROR; \
goto way_out; \
} \
if ( fnu < fge ) { \
memcpy ( minx, auxx, n*sizeof(double) ); \
ge = nu; fge = fnu; incne = incn; \
} \
}
| #define THR1 0.9 |
| int pkn_NLMIterd | ( | int | n, | |
| void * | usrdata, | |||
| double * | x, | |||
| pkn_NLMTevalfuncd | funcf, | |||
| pkn_NLMTevalfuncgd | funcfg, | |||
| pkn_NLMTevalfuncghd | funcfgh, | |||
| pkn_NLMTtransfuncd | trans, | |||
| pkn_NLMTtunnelfuncd | tunnel, | |||
| double | lowerbound, | |||
| double | eps, | |||
| double | delta, | |||
| double * | nu | |||
| ) |
1.7.1