8 IMPLICIT DOUBLE PRECISION (a-h, o-
z)
11 parameter(mxpqx = (mxf *2 +2) * mxq * mxx)
16 > / ctqpar1 / al, xv(0:mxx), ql(0:mxq), upd(mxpqx)
17 > / ctqpar2 / nx,
nt, nfmx
18 > / xqrange / qini, qmax,
xmin
20 dimension
fq(m1), df(m1)
30 11
If (ju-jl .GT. 1)
Then
32 If (
x .GT. xv(jm))
Then
41 If (
x .lt.
xmin .and. first )
Then
43 print '(A, 2(1pE12.4))',
44 >
' WARNING: X << Xmin, extrapolation used; X, Xmin =',
x,
xmin
46 Elseif (jx .GT. nx-m)
Then
52 12
If (ju-jl .GT. 1)
Then
54 If (qg .GT. ql(jm))
Then
65 If (q .lt. qini)
print '(A, 2(1pE12.4))',
66 >
' WARNING: Q << Qini, extrapolation used; Q, Qini =', q, qini
67 Elseif (jq .GT.
nt-m)
Then
69 If (q .gt. qmax)
print '(A, 2(1pE12.4))',
70 >
' WARNING: Q > Qmax, extrapolation used; Q, Qmax =', q, qmax
73 If (iprtn .GE. 3)
Then
80 j0 = (jfl * (
nt+1) + jq) * (nx+1) + jx
84 j1 = j0 + (nx+1)*(iq-1) + 1
85 Call
polint5(xv(jx), upd(j1), m1,
x,
fq(iq), df(iq))
88 Call
polint5(ql(jq),
fq(1), m1, qg, ftmp, ddf)