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_lincomb (g01jd)

Purpose

nag_stat_prob_chisq_lincomb (g01jd) calculates the lower tail probability for a linear combination of (central) χ2χ2 variables.

Syntax

[prob, ifail] = g01jd(rlam, d, c, 'method', method, 'n', n)
[prob, ifail] = nag_stat_prob_chisq_lincomb(rlam, d, c, 'method', method, 'n', n)
Note: the interface to this routine has changed since earlier releases of the toolbox:
Mark 23: method now optional (default d)
.

Description

Let u1,u2,,unu1,u2,,un be independent Normal variables with mean zero and unit variance, so that u12,u22,,un2u12,u22,,un2 have independent χ2χ2-distributions with unit degrees of freedom. nag_stat_prob_chisq_lincomb (g01jd) evaluates the probability that
λ1u12 + λ2u22 + + λnun2 < d(u12 + u22 + + un2) + c.
λ1u12+λ2u22++λnun2<d(u12+u22++un2)+c.
If c = 0.0c=0.0 this is equivalent to the probability that
(λ1u12 + λ2u22 + + λnun2)/(u12 + u22 + + un2) < d.
λ1u12+λ2u22++λnun2 u12+u22++un2 <d.
Alternatively let
λi * = λid,   ​ i = 1,2,,n,
λi*=λi-d,   ​ i= 1,2,,n,
then nag_stat_prob_chisq_lincomb (g01jd) returns the probability that
λ1 * u12 + λ2 * u22 + + λn * un2 < c.
λ1*u12+λ2*u22++λn*un2<c.
Two methods are available. One due to Pan (1964) (see Farebrother (1980)) makes use of series approximations. The other method due to Imhof (1961) reduces the problem to a one-dimensional integral. If n6n6 then a non-adaptive method described in nag_quad_1d_fin_smooth (d01bd) is used to compute the value of the integral otherwise nag_quad_1d_fin_bad (d01aj) is used.
Pan's procedure can only be used if the λi * λi* are sufficiently distinct; nag_stat_prob_chisq_lincomb (g01jd) requires the λi * λi* to be at least 1%1% distinct; see Section [Further Comments]. If the λi * λi* are at least 1%1% distinct and n60n60, then Pan's procedure is recommended; otherwise Imhof's procedure is recommended.

References

Farebrother R W (1980) Algorithm AS 153. Pan's procedure for the tail probabilities of the Durbin–Watson statistic Appl. Statist. 29 224–227
Imhof J P (1961) Computing the distribution of quadratic forms in Normal variables Biometrika 48 419–426
Pan Jie–Jian (1964) Distributions of the noncircular serial correlation coefficients Shuxue Jinzhan 7 328–337

Parameters

Compulsory Input Parameters

1:     rlam(n) – double array
n, the dimension of the array, must satisfy the constraint n1n1.
The weights, λiλi, for i = 1,2,,ni=1,2,,n, of the central χ2χ2 variables.
Constraint: rlam(i)drlamid for at least one ii. If method = 'P'method='P', then the λi * λi* must be at least 1%1% distinct; see Section [Further Comments], for i = 1,2,,ni=1,2,,n.
2:     d – double scalar
dd, the multiplier of the central χ2χ2 variables.
Constraint: d0.0d0.0.
3:     c – double scalar
cc, the value of the constant.

Optional Input Parameters

1:     method – string (length ≥ 1)
Indicates whether Pan's, Imhof's or an appropriately selected procedure is to be used.
method = 'P'method='P'
Pan's method is used.
method = 'I'method='I'
Imhof's method is used.
method = 'D'method='D'
Pan's method is used if λi * λi*, for i = 1,2,,ni=1,2,,n are at least 1%1% distinct and n60n60; otherwise Imhof's method is used.
Default: 'D''D'
Constraint: method = 'P'method='P', 'I''I' or 'D''D'.
2:     n – int64int32nag_int scalar
Default: The dimension of the array rlam.
nn, the number of independent standard Normal variates, (central χ2χ2 variates).
Constraint: n1n1.

Input Parameters Omitted from the MATLAB Interface

work

Output Parameters

1:     prob – double scalar
The lower tail probability for the linear combination of central χ2χ2 variables.
2:     ifail – int64int32nag_int scalar
ifail = 0ifail=0 unless the function detects an error (see [Error Indicators and Warnings]).

Error Indicators and Warnings

Errors or warnings detected by the function:
  ifail = 1ifail=1
On entry,n < 1n<1,
ord < 0.0d<0.0,
ormethod'P'method'P', 'I''I' or 'D''D'.
  ifail = 2ifail=2
On entry, rlam(i) = drlami=d for all values of ii, for i = 1,2,,ni=1,2,,n.
  ifail = 3ifail=3
On entry, method = 'P'method='P' yet two successive values of the ordered λi * λi*, for i = 1,2,,ni=1,2,,n, were not at least 1%1% distinct.

Accuracy

On successful exit at least four decimal places of accuracy should be achieved.

Further Comments

Pan's procedure can only work if the λi * λi* are sufficiently distinct. nag_stat_prob_chisq_lincomb (g01jd) uses the check |wjwj1|0.01 × max (|wj|,|wj1|)|wj-wj-1|0.01×max(|wj|,|wj-1|), where the wjwj are the ordered nonzero values of λi * λi*.
For the situation when all the λiλi are positive nag_stat_prob_chisq_noncentral_lincomb (g01jc) may be used. If the probabilities required are for the Durbin–Watson test, then the bounds for the probabilities are given by nag_stat_prob_durbin_watson (g01ep).

Example

function nag_stat_prob_chisq_lincomb_example
method = 'P';
rlam = [-9;
     -7;
     -5;
     -3;
     -1;
     2;
     4;
     6;
     8;
     10];
d = 1;
c = 0;
[prob, ifail] = nag_stat_prob_chisq_lincomb(rlam, d, c, 'method', method)
 

prob =

    0.5749


ifail =

                    0


function g01jd_example
method = 'P';
rlam = [-9;
     -7;
     -5;
     -3;
     -1;
     2;
     4;
     6;
     8;
     10];
d = 1;
c = 0;
[prob, ifail] = g01jd(rlam, d, c, 'method', method)
 

prob =

    0.5749


ifail =

                    0



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–2013