1 SUBROUTINE cbesj(Z, FNU, KODE, N, CY, NZ, IERR)
145 COMPLEX CI, CSGN, CY, Z, ZN
146 REAL AA, ALIM, ARG, DIG, ELIM, FNU, FNUL, HPI, RL, R1, R1M5, R2,
147 * TOL, YY, R1MACH, AZ, FN, BB, ASCLE, RTOL, ATOL
148 INTEGER I, IERR, INU, INUH, IR, KODE, K1, K2, N, NL, NZ, I1MACH, K
150 DATA hpi /1.57079632679489662e0/
155 IF (fnu.LT.0.0e0) ierr=1
156 IF (kode.LT.1 .OR. kode.GT.2) ierr=1
158 IF (ierr.NE.0)
RETURN
170 tol = amax1(r1mach(4),1.0e-18)
174 k = min0(iabs(k1),iabs(k2))
175 elim = 2.303e0*(float(k)*r1m5-3.0e0)
178 dig = amin1(aa,18.0e0)
180 alim = elim + amax1(-aa,-41.45e0)
181 rl = 1.2e0*dig + 3.0e0
182 fnul = 10.0e0 + 6.0e0*(dig-3.0e0)
183 ci =
cmplx(0.0e0,1.0e0)
190 bb=float(i1mach(9))*0.5e0
193 IF(az.GT.aa)
GO TO 140
194 IF(fn.GT.aa)
GO TO 140
206 arg = (fnu-float(inu-ir))*hpi
210 IF (
mod(inuh,2).EQ.1) csgn = -csgn
215 IF (yy.GE.0.0e0)
GO TO 40
220 CALL cbinu(zn, fnu, kode, n, cy, nz, rl, fnul, tol, elim, alim)
221 IF (nz.LT.0)
GO TO 120
225 ascle = r1mach(1)*rtol*1.0e+3
232 IF (amax1(abs(aa),abs(bb)).GT.ascle)
GO TO 55
233 zn = zn*
cmplx(rtol,0.0e0)
237 cy(i) = zn*
cmplx(atol,0.0e0)
242 IF(nz.EQ.(-2))
GO TO 130
subroutine cbesj(Z, FNU, KODE, N, CY, NZ, IERR)
subroutine cbinu(Z, FNU, KODE, N, CY, NZ, RL, FNUL, TOL, ELIM, ALIM)
ColumnVector real(const ComplexColumnVector &a)