double cdfnor(double x)
{
double d[6], cdfnor, cdf, u;
d[0] = 0.0498673470;
d[1] = 0.0211410061;
d[2] = 0.0032776263;
d[3] = 0.0000380036;
d[4] = 0.0000488906;
d[5] = 0.0000053830;
if(x < 0)
u =- x;
else
u = x;
cdf = (d[5] * u + d[4]) * u + d[3];
cdf = (cdf * u + d[2]) * u + d[1];
cdf = (cdf * u + d[0]) * u + 1;
if(x<0)
cdfnor = 0.5 / pow(cdf, 16);
else
cdfnor = 1.0-0.5 / pow(cdf, 16);
return(cdfnor);
}
最終更新:2008年02月05日 17:09