nag_deviates_normal (g01fac) (PDF version)
g01 Chapter Contents
g01 Chapter Introduction
NAG C Library Manual

NAG Library Function Document

nag_deviates_normal (g01fac)

+ Contents

    1  Purpose
    7  Accuracy

1  Purpose

nag_deviates_normal (g01fac) returns the deviate associated with the given probability of the standard Normal distribution.

2  Specification

#include <nag.h>
#include <nagg01.h>
double  nag_deviates_normal (Nag_TailProbability tail, double p, NagError *fail)

3  Description

The deviate, xp associated with the lower tail probability, p, for the standard Normal distribution is defined as the solution to
PXxp=p=-xpZXdX,
where
ZX=12πe-X2/2,   -<X< .
The method used is an extension of that of Wichura (1988). p is first replaced by q=p-0.5.
(a) If q0.3, xp is computed by a rational Chebyshev approximation
xp=sAs2 Bs2 ,
where s=2πq and A, B are polynomials of degree 7.
(b) If 0.3<q0.42, xp is computed by a rational Chebyshev approximation
xp=signq Ct Dt ,
where t=q-0.3 and C, D are polynomials of degree 5.
(c) If q>0.42, xp is computed as
xp=signq Eu Fu +u ,
where u = -2 × log minp,1-p  and E, F are polynomials of degree 6.
For the upper tail probability -xp is returned, while for the two tail probabilities the value xp* is returned, where p* is the required tail probability computed from the input value of p.

4  References

Abramowitz M and Stegun I A (1972) Handbook of Mathematical Functions (3rd Edition) Dover Publications
Hastings N A J and Peacock J B (1975) Statistical Distributions Butterworth
Wichura (1988) Algorithm AS 241: the percentage points of the Normal distribution Appl. Statist. 37 477–484

5  Arguments

1:     tailNag_TailProbabilityInput
On entry: indicates which tail the supplied probability represents.
tail=Nag_LowerTail
The lower probability, i.e., PXxp.
tail=Nag_UpperTail
The upper probability, i.e., PXxp.
tail=Nag_TwoTailSignif
The two tail (significance level) probability, i.e., PXxp+PX-xp.
tail=Nag_TwoTailConfid
The two tail (confidence interval) probability, i.e., PXxp-PX-xp.
Constraint: tail=Nag_LowerTail, Nag_UpperTail, Nag_TwoTailSignif or Nag_TwoTailConfid.
2:     pdoubleInput
On entry: p, the probability from the standard Normal distribution as defined by tail.
Constraint: 0.0<p<1.0.
3:     failNagError *Input/Output
The NAG error argument (see Section 3.6 in the Essential Introduction).

6  Error Indicators and Warnings

If on exit fail.code= NE_NOERROR, then nag_deviates_normal (g01fac) returns 0.0.
NE_BAD_PARAM
On entry, argument value had an illegal value.
NE_INTERNAL_ERROR
An internal error has occurred in this function. Check the function call and any array sizes. If the call is correct then please contact NAG for assistance.
NE_REAL_ARG_GE
On entry, p=value.
Constraint: p<1.0.
NE_REAL_ARG_LE
On entry, p=value.
Constraint: p>0.0.

7  Accuracy

The accuracy is mainly limited by the machine precision.

8  Further Comments

None.

9  Example

Four values of tail and p are input and the deviates calculated and printed.

9.1  Program Text

Program Text (g01face.c)

9.2  Program Data

Program Data (g01face.d)

9.3  Program Results

Program Results (g01face.r)


nag_deviates_normal (g01fac) (PDF version)
g01 Chapter Contents
g01 Chapter Introduction
NAG C Library Manual

© The Numerical Algorithms Group Ltd, Oxford, UK. 2012