1 SUBROUTINE cacon(Z, FNU, KODE, MR, N, Y, NZ, RL, FNUL, TOL, ELIM,
16 COMPLEX CK, CONE, CS, CSCL, CSCR, CSGN, CSPN, CSS, CSR, C1, C2,
17 * rz, sc1, sc2, st, s1,
s2, y, z, zn, cy
18 REAL ALIM, ARG, ASCLE, AS2, BSCLE, BRY, CPN, C1I, C1M, C1R, ELIM,
19 * fmr, fnu, fnul, pi, rl, sgn, spn, tol, yy,
r1mach
20 INTEGER I, INU, IUF, KFLAG, KODE, MR, N, NN, NW, NZ
21 dimension y(n), cy(2), css(3), csr(3), bry(3)
22 DATA pi / 3.14159265358979324e0 /
23 DATA cone / (1.0e0,0.0e0) /
27 CALL
cbinu(zn, fnu, kode, nn, y, nw, rl, fnul, tol, elim, alim)
33 CALL
cbknu(zn, fnu, kode, nn, cy, nw, tol, elim, alim)
38 csgn =
cmplx(0.0e0,sgn)
39 IF (kode.EQ.1) go
to 10
43 csgn = csgn*
cmplx(cpn,spn)
50 arg = (fnu-float(inu))*sgn
54 IF (
mod(inu,2).EQ.1) cspn = -cspn
59 IF (kode.EQ.1) go
to 20
60 CALL
cs1s2(zn, c1, c2, nw, ascle, alim, iuf)
64 y(1) = cspn*c1 + csgn*c2
70 IF (kode.EQ.1) go
to 30
71 CALL
cs1s2(zn, c1, c2, nw, ascle, alim, iuf)
75 y(2) = cspn*c1 + csgn*c2
78 rz =
cmplx(2.0e0,0.0e0)/zn
79 ck =
cmplx(fnu+1.0e0,0.0e0)*rz
83 cscl =
cmplx(1.0e0/tol,0.0e0)
84 cscr =
cmplx(tol,0.0e0)
96 IF (as2.GT.bry(1)) go
to 40
100 IF (as2.LT.bry(2)) go
to 50
114 IF (kode.EQ.1) go
to 60
115 IF (iuf.LT.0) go
to 60
116 CALL
cs1s2(zn, c1, c2, nw, ascle, alim, iuf)
120 IF (iuf.NE.3) go
to 60
126 y(i) = cspn*c1 + csgn*c2
129 IF (kflag.GE.3) go
to 70
135 IF (c1m.LE.bscle) go
to 70
subroutine cacon(Z, FNU, KODE, MR, N, Y, NZ, RL, FNUL, TOL, ELIM, ALIM)
octave_int< T > mod(const octave_int< T > &x, const octave_int< T > &y)
octave_value sin(void) const
subroutine cs1s2(ZR, S1, S2, NZ, ASCLE, ALIM, IUF)
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))<
subroutine cbknu(Z, FNU, KODE, N, Y, NZ, TOL, ELIM, ALIM)
subroutine cbinu(Z, FNU, KODE, N, CY, NZ, RL, FNUL, TOL, ELIM, ALIM)