1 SUBROUTINE cseri(Z, FNU, KODE, N, Y, NZ, TOL, ELIM, ALIM)
15 COMPLEX ak1, ck,
coef, cone, crsc, cz, czero, hz, rz, s1, s2, w,
17 REAL aa, acz, ak, alim, arm, ascle, atol, az, dfnu, elim, fnu,
19 INTEGER i, ib, idum, iflag, il, k, kode, l, m, n,
nn, nw, nz
21 DATA czero, cone / (0.0e0,0.0e0), (1.0e0,0.0e0) /
25 IF (az.EQ.0.0e0) go to 150
29 crsc =
cmplx(1.0e0,0.0e0)
31 IF (az.LT.arm) go to 140
32 hz = z*
cmplx(0.5e0,0.0e0)
34 IF (az.GT.rtr1) cz = hz*hz
39 dfnu = fnu + float(
nn-1)
44 ak1 = ck*
cmplx(dfnu,0.0e0)
46 ak1 = ak1 -
cmplx(ak,0.0e0)
47 IF (kode.EQ.2) ak1 = ak1 -
cmplx(
x,0.0e0)
49 IF (rak1.GT.(-elim)) go to 30
53 IF (acz.GT.dfnu) go to 170
58 IF (rak1.GT.(-alim)) go to 40
61 crsc =
cmplx(tol,0.0e0)
66 IF (iflag.EQ.1) aa = aa*ss
71 dfnu = fnu + float(
nn-i)
74 IF (acz.LT.tol*fnup) go to 60
81 ak1 = ak1*cz*
cmplx(rs,0.0e0)
86 IF (aa.GT.atol) go to 50
91 IF (iflag.EQ.0) go to 70
92 CALL
cuchk(s2, nw, ascle, tol)
102 IF (iflag.EQ.1) go to 110
106 y(k) =
cmplx(ak+fnu,0.0e0)*rz*y(k+1) + y(k+2)
123 s2 = s1 +
cmplx(ak+fnu,0.0e0)*rz*s2
129 IF (cabs(ck).GT.ascle) go to 130
138 IF (fnu.EQ.0.0e0) nz = nz - 1
141 IF (fnu.EQ.0.0e0) y(1) = cone