PDF version (NAG web site
, 64-bit version, 64-bit version)
NAG Toolbox: nag_stat_prob_f_vector (g01sd)
Purpose
nag_stat_prob_f_vector (g01sd) returns a number of lower or upper tail probabilities for the or variance-ratio distribution with real degrees of freedom.
Syntax
[
p,
ivalid,
ifail] = g01sd(
tail,
f,
df1,
df2, 'ltail',
ltail, 'lf',
lf, 'ldf1',
ldf1, 'ldf2',
ldf2)
[
p,
ivalid,
ifail] = nag_stat_prob_f_vector(
tail,
f,
df1,
df2, 'ltail',
ltail, 'lf',
lf, 'ldf1',
ldf1, 'ldf2',
ldf2)
Description
The lower tail probability for the
, or variance-ratio, distribution with
and
degrees of freedom,
, is defined by:
for
,
,
.
The probability is computed by means of a transformation to a beta distribution,
:
and using a call to
nag_stat_prob_beta (g01ee).
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).
The input arrays to this function are designed to allow maximum flexibility in the supply of vector arguments by re-using elements of any arrays that are shorter than the total number of evaluations required. See
Vectorized Routines in the G01 Chapter Introduction for further information.
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
Parameters
Compulsory Input Parameters
- 1:
– cell array of strings
-
Indicates whether the lower or upper tail probabilities are required. For
, for
:
- The lower tail probability is returned, i.e., .
- The upper tail probability is returned, i.e., .
Constraint:
or , for .
- 2:
– double array
-
, the value of the variate with , .
Constraint:
, for .
- 3:
– double array
-
, the degrees of freedom of the numerator variance with , .
Constraint:
, for .
- 4:
– double array
-
, the degrees of freedom of the denominator variance with , .
Constraint:
, for .
Optional Input Parameters
- 1:
– int64int32nag_int scalar
-
Default:
the dimension of the array
tail.
The length of the array
tail.
Constraint:
.
- 2:
– int64int32nag_int scalar
-
Default:
the dimension of the array
f.
The length of the array
f.
Constraint:
.
- 3:
– int64int32nag_int scalar
-
Default:
the dimension of the array
df1.
The length of the array
df1.
Constraint:
.
- 4:
– int64int32nag_int scalar
-
Default:
the dimension of the array
df2.
The length of the array
df2.
Constraint:
.
Output Parameters
- 1:
– double array
-
The dimension of the array
p will be
, the probabilities for the -distribution.
- 2:
– int64int32nag_int array
-
The dimension of the array
ivalid will be
indicates any errors with the input arguments, with
- No error.
-
On entry, | invalid value supplied in tail when calculating . |
-
-
On entry, | , |
or | . |
- The solution has failed to converge. The result returned should represent an approximation to the solution.
- 3:
– int64int32nag_int scalar
unless the function detects an error (see
Error Indicators and Warnings).
Error Indicators and Warnings
Note: nag_stat_prob_f_vector (g01sd) may return useful information for one or more of the following detected errors or warnings.
Errors or warnings detected by the function:
Cases prefixed with W are classified as warnings and
do not generate an error of type NAG:error_n. See nag_issue_warnings.
- W
-
On entry, at least one value of
f,
df1,
df2 or
tail was invalid, or the solution failed to converge.
Check
ivalid for more information.
-
-
Constraint: .
-
-
Constraint: .
-
-
Constraint: .
-
-
Constraint: .
-
An unexpected error has been triggered by this routine. Please
contact
NAG.
-
Your licence key may have expired or may not have been installed correctly.
-
Dynamic memory allocation failed.
Accuracy
The result should be accurate to five significant digits.
Further Comments
For higher accuracy
nag_stat_prob_beta_vector (g01se) can be used along with the transformations given in
Description.
Example
This example reads values from, and degrees of freedom for, a number of -distributions and computes the associated lower tail probabilities.
Open in the MATLAB editor:
g01sd_example
function g01sd_example
fprintf('g01sd example results\n\n');
f = [5.5; 39.9; 2.5];
df1 = [1.5; 1; 20.25];
df2 = [25.5; 1; 1];
tail = {'L'};
[prob, ivalid, ifail] = g01sd( ...
tail, f, df1, df2);
fprintf(' F df1 df2 prob\n');
lf = numel(f);
ldf1 = numel(df1);
ldf2 = numel(df2);
ltail = numel(tail);
len = max ([lf, ldf1, ldf2, ltail]);
for i=0:len-1
fprintf('%7.3f%8.3f%8.3f%8.3f\n', f(mod(i,lf)+1), df1(mod(i,ldf1)+1), ...
df2(mod(i,ldf2)+1), prob(i+1));
end
g01sd example results
F df1 df2 prob
5.500 1.500 25.500 0.984
39.900 1.000 1.000 0.900
2.500 20.250 1.000 0.534
PDF version (NAG web site
, 64-bit version, 64-bit version)
© The Numerical Algorithms Group Ltd, Oxford, UK. 2009–2015