📄 betacf.c
字号:
#include <math.h>
#define ITMAX 100
#define EPS 3.0e-7
float betacf(a,b,x)
float a,b,x;
{
float qap,qam,qab,em,tem,d;
float bz,bm=1.0,bp,bpp;
float az=1.0,am=1.0,ap,app,aold;
int m;
void nrerror();
qab=a+b;
qap=a+1.0;
qam=a-1.0;
bz=1.0-qab*x/qap;
for (m=1;m<=ITMAX;m++) {
em=(float) m;
tem=em+em;
d=em*(b-em)*x/((qam+tem)*(a+tem));
ap=az+d*am;
bp=bz+d*bm;
d = -(a+em)*(qab+em)*x/((qap+tem)*(a+tem));
app=ap+d*az;
bpp=bp+d*bz;
aold=az;
am=ap/bpp;
bm=bp/bpp;
az=app/bpp;
bz=1.0;
if (fabs(az-aold) < (EPS*fabs(az))) return az;
}
nrerror("a or b too big, or ITMAX too small in BETACF");
}
#undef ITMAX
#undef EPS
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -