30 DATA eps, sqeps / 2*0.0 /
32 IF (eps.EQ.0.0) eps = 0.5*r1mach(3)
33 IF (sqeps.EQ.0.0) sqeps =
sqrt(r1mach(4))
35 IF (x .LE. 0.0 .OR. a .LT. x) CALL
xermsg(
'SLATEC',
'R9LGIT',
36 +
'X SHOULD BE GT 0.0 AND LE A', 2, 2)
46 r = t/((ax+fk)*(a1x+fk)-t)
49 IF (
abs(p).LT.eps*s) go to 30
51 CALL
xermsg(
'SLATEC',
'R9LGIT',
52 +
'NO CONVERGENCE IN 200 TERMS OF CONTINUED FRACTION', 3, 2)
54 30 hstar = 1.0 - x*s/a1x
55 IF (hstar .LT. sqeps) CALL
xermsg(
'SLATEC',
'R9LGIT',
56 +
'RESULT LESS THAN HALF PRECISION', 1, 1)
function r9lgit(A, X, ALGAP1)
octave_value log(void) const
subroutine xermsg(LIBRAR, SUBROU, MESSG, NERR, LEVEL)
octave_value sqrt(void) const