Unlimited learning, half price | 50% off

Last chance! 50% off unlimited learning

Sale ends in


CompQuadForm (version 1.4.3)

imhof: Imhof method.

Description

Distribution function (survival function in fact) of quadratic forms in normal variables using Imhof's method.

Usage

imhof(q, lambda, h = rep(1, length(lambda)),
      delta = rep(0, length(lambda)),
      epsabs = 10^(-6), epsrel = 10^(-6), limit = 10000)

Arguments

q
value point at which the survival function is to be evaluated
lambda
distinct non-zero characteristic roots of AΣ
h
respective orders of multiplicity of the λs
delta
non-centrality parameters (should be positive)
epsabs
absolute accuracy requested
epsrel
relative accuracy requested
limit
determines the maximum number of subintervals in the partition of the given integration interval

Value

Qq
P[Q>q]
abserr
estimate of the modulus of the absolute error, which should equal or exceed abs(i - result)

Details

Let X=(X1,,Xn) be a column random vector which follows a multidimensional normal law with mean vector 0 and non-singular covariance matrix Σ. Let μ=(μ1,,μn) be a constant vector, and consider the quadratic form Q=(x+μ)A(x+μ)=r=1mλrχhr;δr2. The function imhof computes P[Q>q]. The λr's are the distinct non-zero characteristic roots of AΣ, the hr's their respective orders of multiplicity, the δr's are certain linear combinations of μ1,,μn and the χhr;δr2 are independent χ2-variables with hr degrees of freedom and non-centrality parameter δr. The variable χh,δ2 is defined here by the relation χh,δ2=(X1+δ)2+i=2hXi2, where X1,,Xh are independent unit normal deviates.

References

P. Duchesne, P. Lafaye de Micheaux, Computing the distribution of quadratic forms: Further comparisons between the Liu-Tang-Zhang approximation and exact methods, Computational Statistics and Data Analysis, Volume 54, (2010), 858-862 J. P. Imhof, Computing the Distribution of Quadratic Forms in Normal Variables, Biometrika, Volume 48, Issue 3/4 (Dec., 1961), 419-426

Examples

Run this code
# Some results from Table 1, p.424, Imhof (1961)

# Q1 with x = 2
round(imhof(2, c(0.6, 0.3, 0.1))$Qq, 4)

# Q2 with x = 6
round(imhof(6, c(0.6, 0.3, 0.1), c(2, 2, 2))$Qq, 4)

# Q6 with x = 15
round(imhof(15, c(0.7, 0.3), c(1, 1), c(6, 2))$Qq, 4)

Run the code above in your browser using DataLab