public class CDF_Normal
extends java.lang.Object
Constructor and Description |
---|
CDF_Normal() |
Modifier and Type | Method and Description |
---|---|
static double |
normp(double z)
This method calculates the normal cumulative distribution function.
|
static double |
xnormi(double p)
This method calculates the normal cdf inverse function.
|
public static double xnormi(double p)
Let PHI(x) be the normal cdf. Suppose that Q calculates 1.0 - PHI(x), and that QINV calculates QINV(p) for p in (0.0,.5]. Then for p .le. .5, x = PHIINV(p) = -QINV(p). For p .gt. .5, x = PHIINV(p) = QINV(1.0 - p). The formula for approximating QINV is taken from Abramowitz and Stegun, Handbook of Mathematical Functions, Dover, 9th printing, formula 26.2.3, page 933. The error in x is claimed to be less than 4.5e-4 in absolute value.
p
- p must lie between 0 and 1. xnormi returns
the normal cdf inverse evaluated at p.
Steve Verrill
June 7, 1996public static double normp(double z)
It is based upon algorithm 5666 for the error function, from:
Hart, J.F. et al, 'Computer Approximations', Wiley 1968
The FORTRAN programmer was Alan Miller. The documentation in the FORTRAN code claims that the function is "accurate to 1.e-15."
Steve Verrill translated the FORTRAN code (the March 30, 1986 version) into Java. This translation was performed on January 10, 2001.
z
- The method returns the value of the normal
cumulative distribution function at z.
version .5 --- January 10, 2001