2 FUNCTION r9gmit (A, X, ALGAP1, SGNGAM, ALX)
28 DATA eps, bot / 2*0.0 /
30 IF (eps.EQ.0.0) eps = 0.5*r1mach(3)
31 IF (bot.EQ.0.0) bot =
log(r1mach(1))
33 IF (x .LE. 0.0) CALL
xermsg(
'SLATEC',
'R9GMIT',
34 +
'X SHOULD BE GT 0', 1, 2)
37 IF (a.LT.0.0) ma = a - 0.5
41 IF (a.LT.(-0.5)) ae = aeps
51 IF (
abs(t).LT.eps*
abs(s)) go to 30
53 CALL
xermsg(
'SLATEC',
'R9GMIT',
54 +
'NO CONVERGENCE IN 200 TERMS OF TAYLOR-S SERIES', 2, 2)
56 30
IF (a.GE.(-0.5)) algs = -algap1 +
log(s)
57 IF (a.GE.(-0.5)) go to 60
67 IF (
abs(t).LT.eps*
abs(s)) go to 50
71 algs = -ma*
log(x) + algs
72 IF (s.EQ.0.0 .OR. aeps.EQ.0.0) go to 60
74 sgng2 = sgngam*sign(1.0,s)
75 alg2 = -x - algap1 +
log(
abs(s))
function r9gmit(A, X, ALGAP1, SGNGAM, ALX)
octave_value log(void) const
subroutine xermsg(LIBRAR, SUBROU, MESSG, NERR, LEVEL)