23void wext(
double x[],
int n,
double ssq,
double a[],
int n2,
double eps,
28 static double wa[3] = {0.118898, 0.133414, 0.327907};
29 static double wb[4] = {-0.37542, -0.492145, -1.124332, -0.199422};
30 static double wc[4] = {-3.15805, 0.729399, 3.01855, 1.558776};
31 static double wd[6] = {0.480385, 0.318828, 0.0,
32 -0.0241665, 0.00879701, 0.002989646};
33 static double we[6] = {-1.91487, -1.37888, -0.04183209,
34 0.1066339, -0.03513666, -0.01504614};
35 static double wf[7] = {-3.73538, -1.015807, -0.331885, 0.1773538,
36 -0.01638782, -0.03215018, 0.003852646};
37 static double unl[3] = {-3.8, -3.0, -1.0};
38 static double unh[3] = {8.6, 5.8, 5.4};
39 static int nc1[3] = {5, 5, 5};
40 static int nc2[3] = {3, 4, 5};
43 static double pi6 = 1.90985932,
stqr = 1.04719755;
44 static double zero = 0.0,
tqr = 0.75,
one = 1.0;
47 static double c1[5][3] = {{-1.26233, -2.28135, -3.30623},
48 {1.87969, 2.26186, 2.76287},
49 {0.0649583, 0.0, -0.83484},
50 {-0.0475604, 0.0, 1.20857},
51 {-0.0139682, -0.00865763, -0.507590}};
52 static double c2[5][3] = {{-0.287696, -1.63638, -5.991908},
53 {1.78953, 5.60924, 21.04575},
54 {-0.180114, -3.63738, -24.58061},
55 {0.0, 1.08439, 13.78661},
56 {0.0, 0.0, -2.835295}};
77 for (*w = 0.0,
j = 0;
j < n2; ++
j)
78 *w += a[
j] * (
x[i--] -
x[
j]);
125 if (un >=
unl[n3 - 1]) {
129 for (i = 0; i <
nc; ++i)
130 c[i] =
c1[i][n3 - 1];
135 if (un >
unh[n3 - 1])
140 for (i = 0; i <
nc; ++i)
141 c[i] =
c2[i][n3 - 1];
void wext(double x[], int n, double ssq, double a[], int n2, double eps, double *w, double *pw, int *ifault)
void Cdhc_wgp(double x[], int n, double ssq, double gp, double h, double a[], int n2, double eps, double w, double u, double p, int *ifault)