1 SUBROUTINE cbesi(Z, FNU, KODE, N, CY, NZ, IERR)
150 COMPLEX CONE, CSGN, CY, Z, ZN
151 REAL AA, ALIM, ARG, DIG, ELIM, FNU, FNUL, PI, RL, R1M5, S1, S2,
152 * tol, xx, yy,
r1mach, az, fn, bb, ascle, rtol, atol
153 INTEGER I, IERR, INU, K, KODE, K1, K2, N, NN, NZ, I1MACH
155 DATA pi /3.14159265358979324e0/
156 DATA cone / (1.0e0,0.0e0) /
161 IF (fnu.LT.0.0e0) ierr=1
162 IF (kode.LT.1 .OR. kode.GT.2) ierr=1
164 IF (ierr.NE.0)
RETURN
182 k = min0(iabs(k1),iabs(k2))
183 elim = 2.303e0*(float(k)*r1m5-3.0e0)
186 dig = amin1(aa,18.0e0)
188 alim = elim + amax1(-aa,-41.45e0)
189 rl = 1.2e0*dig + 3.0e0
190 fnul = 10.0e0 + 6.0e0*(dig-3.0e0)
196 bb=float(i1mach(9))*0.5e0
198 IF(az.GT.aa) go
to 140
200 IF(fn.GT.aa) go
to 140
206 IF (xx.GE.0.0e0) go
to 40
213 arg = (fnu-float(inu))*pi
214 IF (yy.LT.0.0e0) arg = -arg
218 IF (
mod(inu,2).EQ.1) csgn = -csgn
220 CALL
cbinu(zn, fnu, kode, n, cy, nz, rl, fnul, tol, elim, alim)
221 IF (nz.LT.0) go
to 120
222 IF (xx.GE.0.0e0)
RETURN
236 IF (amax1(
abs(aa),
abs(bb)).GT.ascle) go
to 55
237 zn = zn*
cmplx(rtol,0.0e0)
241 cy(i) = zn*
cmplx(atol,0.0e0)
246 IF(nz.EQ.(-2)) go
to 130
octave_int< T > mod(const octave_int< T > &x, const octave_int< T > &y)
subroutine cbesi(Z, FNU, KODE, N, CY, NZ, IERR)
octave_value sin(void) const
may be zero for pure relative error test tem the relative tolerance must be greater than or equal to
OCTAVE_EXPORT octave_value_list etc The functions then dimension(columns)
octave_value cos(void) const
OCTAVE_EXPORT octave_value_list return the value of the option it must match the dimension of the state and the relative tolerance must also be a vector of the same length tem it must match the dimension of the state and the absolute tolerance must also be a vector of the same length The local error test applied at each integration step is xample roup abs(local error in x(i))<
octave_value sqrt(void) const
subroutine cbinu(Z, FNU, KODE, N, CY, NZ, RL, FNUL, TOL, ELIM, ALIM)