hide long namesshow long names
hide short namesshow short names
Integer type:  int32  int64  nag_int  show int32  show int32  show int64  show int64  show nag_int  show nag_int

PDF version (NAG web site, 64-bit version, 64-bit version)
Chapter Contents
Chapter Introduction
NAG Toolbox

NAG Toolbox: nag_stat_prob_chisq_vector (g01sc)

 Contents

    1  Purpose
    2  Syntax
    7  Accuracy
    9  Example

Purpose

nag_stat_prob_chisq_vector (g01sc) returns a number of lower or upper tail probabilities for the χ2-distribution with real degrees of freedom.

Syntax

[p, ivalid, ifail] = g01sc(tail, x, df, 'ltail', ltail, 'lx', lx, 'ldf', ldf)
[p, ivalid, ifail] = nag_stat_prob_chisq_vector(tail, x, df, 'ltail', ltail, 'lx', lx, 'ldf', ldf)

Description

The lower tail probability for the χ2-distribution with νi degrees of freedom, P = Xi xi :νi  is defined by:
P = Xixi:νi = 1 2 νi/2 Γ νi/2 0.0 xi Xi νi/2-1 e -Xi/2 dXi ,   xi 0 , νi > 0 .  
To calculate P = Xi xi :νi  a transformation of a gamma distribution is employed, i.e., a χ2-distribution with νi degrees of freedom is equal to a gamma distribution with scale parameter 2 and shape parameter νi/2.
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:     tailltail – cell array of strings
Indicates whether the lower or upper tail probabilities are required. For j= i-1 mod ltail +1 , for i=1,2,,maxltail,lx,ldf:
tailj='L'
The lower tail probability is returned, i.e., pi = P Xi xi :νi .
tailj='U'
The upper tail probability is returned, i.e., pi = P Xi xi :νi .
Constraint: tailj='L' or 'U', for j=1,2,,ltail.
2:     xlx – double array
xi, the values of the χ2 variates with νi degrees of freedom with xi=xj, j=i-1 mod lx+1.
Constraint: xj0.0, for j=1,2,,lx.
3:     dfldf – double array
νi, the degrees of freedom of the χ2-distribution with νi=dfj, j=i-1 mod ldf+1.
Constraint: dfj>0.0, for j=1,2,,ldf.

Optional Input Parameters

1:     ltail int64int32nag_int scalar
Default: the dimension of the array tail.
The length of the array tail.
Constraint: ltail>0.
2:     lx int64int32nag_int scalar
Default: the dimension of the array x.
The length of the array x.
Constraint: lx>0.
3:     ldf int64int32nag_int scalar
Default: the dimension of the array df.
The length of the array df.
Constraint: ldf>0.

Output Parameters

1:     p: – double array
The dimension of the array p will be maxltail,ldf,lx
pi, the probabilities for the χ2 distribution.
2:     ivalid: int64int32nag_int array
The dimension of the array ivalid will be maxltail,ldf,lx
ivalidi indicates any errors with the input arguments, with
ivalidi=0
No error.
ivalidi=1
On entry,invalid value supplied in tail when calculating pi.
ivalidi=2
On entry,xi<0.0.
ivalidi=3
On entry,νi0.0.
ivalidi=4
The solution has failed to converge while calculating the gamma variate. The result returned should represent an approximation to the solution.
3:     ifail int64int32nag_int scalar
ifail=0 unless the function detects an error (see Error Indicators and Warnings).

Error Indicators and Warnings

Note: nag_stat_prob_chisq_vector (g01sc) 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  ifail=1
On entry, at least one value of x, df or tail was invalid, or the solution failed to converge.
Check ivalid for more information.
   ifail=2
Constraint: ltail>0.
   ifail=3
Constraint: lx>0.
   ifail=4
Constraint: ldf>0.
   ifail=-99
An unexpected error has been triggered by this routine. Please contact NAG.
   ifail=-399
Your licence key may have expired or may not have been installed correctly.
   ifail=-999
Dynamic memory allocation failed.

Accuracy

A relative accuracy of five significant figures is obtained in most cases.

Further Comments

For higher accuracy the transformation described in Description may be used with a direct call to nag_specfun_gamma_incomplete (s14ba).

Example

Values from various χ2-distributions are read, the lower tail probabilities calculated, and all these values printed out.
function g01sc_example


fprintf('g01sc example results\n\n');

x = [8.26; 6.2; 55.76];
df = [20; 7.5; 45];
tail = {'L'};
% calculate probability
[prob, ivalid, ifail] = g01sc( ...
                               tail, x, df);

fprintf('    x      df     prob\n');
lx    = numel(x);
ldf   = numel(df);
ltail = numel(tail);
len   = max ([lx, ldf, ltail]);
for i=0:len-1
  fprintf('%7.3f%8.3f%8.3f\n', x(mod(i,lx)+1), df(mod(i,ldf)+1), prob(i+1));
end


g01sc example results

    x      df     prob
  8.260  20.000   0.010
  6.200   7.500   0.428
 55.760  45.000   0.869

PDF version (NAG web site, 64-bit version, 64-bit version)
Chapter Contents
Chapter Introduction
NAG Toolbox

© The Numerical Algorithms Group Ltd, Oxford, UK. 2009–2015