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
subroutine cacai(Z, FNU, KODE, MR, N, Y, NZ, RL, TOL, ELIM, ALIM)
subroutine casyi(Z, FNU, KODE, N, Y, NZ, RL, TOL, ELIM, ALIM)
subroutine cbknu(Z, FNU, KODE, N, Y, NZ, TOL, ELIM, ALIM)
subroutine cmlri(Z, FNU, KODE, N, Y, NZ, TOL)
subroutine cs1s2(ZR, S1, S2, NZ, ASCLE, ALIM, IUF)
subroutine cseri(Z, FNU, KODE, N, Y, NZ, TOL, ELIM, ALIM)