1 SUBROUTINE zbesy(ZR, ZI, FNU, KODE, N, CYR, CYI, NZ, CWRKR, CWRKI,
151 DOUBLE PRECISION CWRKI, CWRKR, CYI, CYR, C1I, C1R, C2I, C2R,
152 * elim, exi, exr, ey, fnu, hcii, sti,
str, tay, zi, zr, dexp,
153 *
d1mach, ascle, rtol, atol, aa, bb, tol
154 INTEGER I, IERR, K, KODE, K1, K2, N, NZ, NZ1, NZ2, I1MACH
155 dimension cyr(n), cyi(n), cwrkr(n), cwrki(n)
159 IF (zr.EQ.0.0d0 .AND. zi.EQ.0.0d0) ierr=1
160 IF (fnu.LT.0.0d0) ierr=1
161 IF (kode.LT.1 .OR. kode.GT.2) ierr=1
163 IF (ierr.NE.0)
RETURN
165 CALL
zbesh(zr, zi, fnu, kode, 1, n, cyr, cyi, nz1, ierr)
166 IF (ierr.NE.0.AND.ierr.NE.3) go to 170
167 CALL
zbesh(zr, zi, fnu, kode, 2, n, cwrkr, cwrki, nz2, ierr)
168 IF (ierr.NE.0.AND.ierr.NE.3) go to 170
170 IF (kode.EQ.2) go to 60
172 str = cwrkr(i) - cyr(i)
173 sti = cwrki(i) - cyi(i)
182 k = min0(iabs(k1),iabs(k2))
187 elim = 2.303d0*(dble(float(k))*r1m5-3.0d0)
192 IF (tay.LT.elim) ey = dexp(-tay)
193 IF (zi.LT.0.0d0) go to 90
212 IF (dmax1(dabs(aa),dabs(bb)).GT.ascle) go to 75
217 str = (aa*c2r - bb*c2i)*atol
218 sti = (aa*c2i + bb*c2r)*atol
222 IF (dmax1(dabs(aa),dabs(bb)).GT.ascle) go to 85
227 str =
str - (aa*c1r - bb*c1i)*atol
228 sti = sti - (aa*c1i + bb*c1r)*atol
231 IF (
str.EQ.0.0d0 .AND. sti.EQ.0.0d0 .AND. ey.EQ.0.0d0) nz = nz
std::string str(char sep= 'x') const
std::string dimension(void) const
double precision function d1mach(i)
F77_RET_T const double const double double * d
subroutine zbesh(ZR, ZI, FNU, KODE, M, N, CYR, CYI, NZ, IERR)
subroutine zbesy(ZR, ZI, FNU, KODE, N, CYR, CYI, NZ, CWRKR, CWRKI, IERR)