1 SUBROUTINE cuni1(Z, FNU, KODE, N, Y, NZ, NLAST, FNUL, TOL, ELIM,
17 COMPLEX CFN, CONE, CRSC, CSCL, CSR, CSS, CWRK, CZERO, C1, C2,
18 * phi, rz, sum, s1, s2, y, z, zeta1, zeta2, cy
19 REAL ALIM, APHI, ASCLE, BRY, C2I, C2M, C2R, ELIM, FN, FNU, FNUL,
20 * rs1, tol, yy, r1mach
21 INTEGER I, IFLAG, INIT, K, KODE, M, N, ND, NLAST, NN, NUF, NW, NZ
22 dimension bry(3), y(n), cwrk(16), css(3), csr(3), cy(2)
23 DATA czero, cone / (0.0e0,0.0e0), (1.0e0,0.0e0) /
33 cscl =
cmplx(1.0e0/tol,0.0e0)
34 crsc =
cmplx(tol,0.0e0)
41 bry(1) = 1.0e+3*r1mach(1)/tol
47 CALL
cunik(z, fn, 1, 1, tol, init, phi, zeta1, zeta2, sum, cwrk)
48 IF (kode.EQ.1) go to 10
50 s1 = -zeta1 + cfn*(cfn/(z+zeta2))
56 IF (
abs(rs1).GT.elim) go to 130
60 fn = fnu + float(nd-i)
62 CALL
cunik(z, fn, 1, 0, tol, init, phi, zeta1, zeta2, sum, cwrk)
63 IF (kode.EQ.1) go to 40
66 s1 = -zeta1 + cfn*(cfn/(z+zeta2)) +
cmplx(0.0e0,yy)
75 IF (
abs(rs1).GT.elim) go to 110
77 IF (
abs(rs1).LT.alim) go to 60
82 rs1 = rs1 + alog(aphi)
83 IF (
abs(rs1).GT.elim) go to 110
85 IF (rs1.LT.0.0e0) go to 60
94 c2m =
exp(c2r)*
REAL(css(iflag))
97 IF (iflag.NE.1) go to 70
98 CALL
cuchk(s2, nw, bry(1), tol)
99 IF (nw.NE.0) go to 110
105 IF (nd.LE.2) go to 100
106 rz =
cmplx(2.0e0,0.0e0)/z
107 bry(2) = 1.0e0/bry(1)
117 s2 = s1 +
cmplx(fnu+fn,0.0e0)*rz*s2
123 IF (iflag.GE.3) go to 90
129 IF (c2m.LE.ascle) go to 90
144 IF (rs1.GT.0.0e0) go to 120
148 IF (nd.EQ.0) go to 100
149 CALL
cuoik(z, fnu, kode, 1, nd, y, nuf, tol, elim, alim)
150 IF (nuf.LT.0) go to 120
153 IF (nd.EQ.0) go to 100
154 fn = fnu + float(nd-1)
155 IF (fn.GE.fnul) go to 30
162 IF (rs1.GT.0.0e0) go to 120
std::string dimension(void) const
subroutine cuni1(Z, FNU, KODE, N, Y, NZ, NLAST, FNUL, TOL, ELIM, ALIM)
subroutine cuchk(Y, NZ, ASCLE, TOL)
octave_value sin(void) const
subroutine cunik(ZR, FNU, IKFLG, IPMTR, TOL, INIT, PHI, ZETA1, ZETA2, SUM, CWRK)
subroutine cuoik(Z, FNU, KODE, IKFLG, N, Y, NUF, TOL, ELIM, ALIM)
octave_value cos(void) const