Initial commit
This commit is contained in:
@@ -0,0 +1,28 @@
|
||||
SUBROUTINE gcf(gammcf,a,x,gln)
|
||||
INTEGER ITMAX
|
||||
REAL a,gammcf,gln,x,EPS,FPMIN
|
||||
PARAMETER (ITMAX=100,EPS=3.e-7,FPMIN=1.e-30)
|
||||
CU USES gammln
|
||||
INTEGER i
|
||||
REAL an,b,c,d,del,h,gammln
|
||||
gln=gammln(a)
|
||||
b=x+1.-a
|
||||
c=1./FPMIN
|
||||
d=1./b
|
||||
h=d
|
||||
do 11 i=1,ITMAX
|
||||
an=-i*(i-a)
|
||||
b=b+2.
|
||||
d=an*d+b
|
||||
if(abs(d).lt.FPMIN)d=FPMIN
|
||||
c=b+an/c
|
||||
if(abs(c).lt.FPMIN)c=FPMIN
|
||||
d=1./d
|
||||
del=d*c
|
||||
h=h*del
|
||||
if(abs(del-1.).lt.EPS)goto 1
|
||||
11 continue
|
||||
pause 'a too large, ITMAX too small in gcf'
|
||||
1 gammcf=exp(-x+a*log(x)-gln)*h
|
||||
return
|
||||
END
|
||||
Reference in New Issue
Block a user