📄 gcf.f90
字号:
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)
!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 i=1,ITMAX
an=-i*(i-a)
b=b+2.
d=an*d+b
if(abs(d)<FPMIN) d=FPMIN
c=b+an/c
if(abs(c)<FPMIN) c=FPMIN
d=1./d
del=d*c
h=h*del
if(abs(del-1.)<EPS) then
gammcf=exp(-x+a*log(x)-gln)*h
return
endif
end do
pause 'a too large, ITMAX too small in gcf'
END SUBROUTINE gcf
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -