1 SUBROUTINE cacai(Z, FNU, KODE, MR, N, Y, NZ, RL, TOL, ELIM, ALIM)
18 COMPLEX csgn, cspn,
c1, c2, y, z, zn, cy
19 REAL alim,
arg, ascle, az, cpn, dfnu, elim, fmr, fnu, pi, rl,
20 * sgn, spn, tol, yy,
r1mach
21 INTEGER inu, iuf, kode, mr, n,
nn, nw, nz
23 DATA pi / 3.14159265358979324e0 /
28 dfnu = fnu + float(n-1)
29 IF (az.LE.2.0e0) go to 10
30 IF (az*az*0.25e0.GT.dfnu+1.0e0) go to 20
35 CALL
cseri(zn, fnu, kode,
nn, y, nw, tol, elim, alim)
38 IF (az.LT.rl) go to 30
42 CALL
casyi(zn, fnu, kode,
nn, y, nw, rl, tol, elim, alim)
49 CALL
cmlri(zn, fnu, kode,
nn, y, nw, tol)
55 CALL
cbknu(zn, fnu, kode, 1, cy, nw, tol, elim, alim)
59 csgn =
cmplx(0.0e0,sgn)
60 IF (kode.EQ.1) go to 50
64 csgn = csgn*
cmplx(cpn,spn)
71 arg = (fnu-float(inu))*sgn
75 IF (
mod(inu,2).EQ.1) cspn = -cspn
78 IF (kode.EQ.1) go to 60
80 ascle = 1.0e+3*
r1mach(1)/tol
81 CALL
cs1s2(zn,
c1, c2, nw, ascle, alim, iuf)
84 y(1) = cspn*
c1 + csgn*c2