IMSL C Stat Library
normal_inverse_cdf
Evaluates the inverse of the standard normal (Gaussian) distribution function.
Synopsis
#include <imsls.h>
float imsls_f_normal_inverse_cdf (float p)
The type double function is imsls_d_normal_inverse_cdf.
Required Arguments
float p (Input)
Probability for which the inverse of the normal distribution function is to be evaluated. Argument p must be in the open interval (0.0, 1.0).
Return Value
The inverse of the normal distribution function evaluated at p. The probability that a standard normal random variable takes a value less than or equal to imsls_f_normal_inverse_cdf is p.
Description
Function imsls_f_normal_inverse_cdf evaluates the inverse of the distribution function, F(x), of a standard normal (Gaussian) random variable, imsls_f_normal_inverse_cdf(p) = F−1(x), where
The value of the distribution function at the point x is the probability that the random variable takes a value less than or equal to x. The standard normal distribution has a mean of 0 and a variance of 1.
Function imsls_f_normal_inverse_cdf is evaluated by use of minimax rational-function approximations for the inverse of the error function. General descriptions of these approximations are given in Hart et al. (1968) and Strecok (1968). The rational functions used in imsls_f_normal_inverse_cdf are described by Kinnucan and Kuki (1968).
Example
This example computes the point such that the probability is 0.9 that a standard normal random variable is less than or equal to this point.
 
#include <imsls.h>
#include <stdio.h>
 
int main()
{
    float  p = 0.9, x;
 
    x = imsls_f_normal_inverse_cdf(p);
    printf("The %2.0fth percentile of a standard normal is "
        "%6.4f.\n", p*100.0, x);
}
Output
 
The 90th percentile of a standard normal is 1.2816.