For very large values of both and , greater than , a normal approximation is used. If only one of or is greater than then a approximation is used, see Abramowitz and Stegun (1972).
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
1: – Character(1)Input
On entry: indicates whether an upper or lower tail probability is required.
The lower tail probability is returned, i.e., .
The upper tail probability is returned, i.e., .
2: – Real (Kind=nag_wp)Input
On entry: , the value of the variate.
3: – Real (Kind=nag_wp)Input
On entry: the degrees of freedom of the numerator variance, .
4: – Real (Kind=nag_wp)Input
On entry: the degrees of freedom of the denominator variance, .
5: – IntegerInput/Output
On entry: ifail must be set to , or to set behaviour on detection of an error; these values have no effect when no error is detected.
A value of causes the printing of an error message and program execution will be halted; otherwise program execution continues. A value of means that an error message is printed while a value of means that it is not.
If halting is not appropriate, the value or is recommended. If message printing is undesirable, then the value is recommended. Otherwise, the value is recommended since useful values can be provided in some output arguments even when on exit. When the value or is used it is essential to test the value of ifail on exit.
On exit: unless the routine detects an error or a warning has been flagged (see Section 6).
6Error Indicators and Warnings
If on entry or , explanatory error messages are output on the current error message unit (as defined by x04aaf).
Errors or warnings detected by the routine:
Note: in some cases g01edf may return useful information.
if , or on exit, then g01edf returns .
On entry, .
Constraint: or .
On entry, .
On entry, and .
Constraint: and .
The probability is too close to or . f is too far out into the tails for the probability to be evaluated exactly. The result tends to approach if is large, or if is small. The result returned is a good approximation to the required solution.
An unexpected error has been triggered by this routine. Please
See Section 7 in the Introduction to the NAG Library FL Interface for further information.
Your licence key may have expired or may not have been installed correctly.
See Section 8 in the Introduction to the NAG Library FL Interface for further information.
Dynamic memory allocation failed.
See Section 9 in the Introduction to the NAG Library FL Interface for further information.
The result should be accurate to five significant digits.
8Parallelism and Performance
Background information to multithreading can be found in the Multithreading documentation.
g01edf is not threaded in any implementation.
For higher accuracy g01eef can be used along with the transformations given in Section 3.
This example reads values from, and degrees of freedom for, a number of -distributions and computes the associated lower tail probabilities.