View source: R/Hypergeom1F1MatApprox.R
Hypergeom1F1MatApprox | R Documentation |
1F1(a,b,X)
of a matrix argumentHypergeom1F1MatApprox(a, b, X)
computes the approximation of the confluent
hypergeometric function 1F1(a,b,X)
of a matrix argument, defined for the complex parameters a
and b
,
with Re(a) > (p-1)/2
and Re(b-a) > (p-1)/2
, and a REAL symmetric (p x p)
-matrix argument X
.
In fact, 1F1(a,b,X)
depends only on the eigenvalues of X
, so X
could be specified
as a (p x p)
-diagonal matrix or a p
-dimensional vector of eigenvalues of the original matrix X
, say x
.
Based on heuristic arguments (not formally proved yet), the value of the confluent
hypergeometric function 1F1(a,b,X)
of a matrix argument is calculated as
1F1(a;b;X) ~ 1F1(a;b;x(1)) * ... * 1F1(a;b;x(p))
,
where 1F1(a;b;x(1))
is the scalar value confluent hypergeometric
function 1F1(a,b,x(i))
with [x(1),...,x(p)] = eig(X)
.
Here the confluent hypergeometric function 1F1(a;b;z)
is evaluated for the vector
parameters a
and b
and the scalar argument z
by using the simple (4-step) series expansion.
Hypergeom1F1MatApprox(a, b, X)
a |
complex vector of parameters of the hypergeometric function |
b |
complex vector of parameters of the hypergeometric function |
X |
real symmetric |
(Approximate) value of the confluent hypergeometric function 1F1(a;b;X)
, of a matrix argument X
.
Ver.: 06-Oct-2018 18:45:44 (consistent with Matlab CharFunTool v1.3.0, 19-Jul-2018 16:11:57).
Other Utility Function:
ChebCoefficients()
,
ChebPoints()
,
ChebPolyValues()
,
ChebPoly()
,
ChebValues()
,
GammaLog()
,
GammaMultiLog()
,
GammaMulti()
,
GammaZX()
,
Hypergeom1F1Mat()
,
Hypergeom2F1Mat()
,
Hypergeom2F1()
,
HypergeompFqMat()
,
InterpChebValues()
,
hypergeom1F1()
,
interpBarycentric()
## EXAMPLE 1
a <- 3
b <- 5
c <-
X <- c(1, 2)
f <- Hypergeom1F1MatApprox(a, b, X)
## EXAMPLE 2
# PDF/CDF of minus log Wilks Lambda RV (p=10, n=30, q=5) from its CF
# Here, cf_LogRV_WilksLambdaNC id based on using Hypergeom1F1MatApprox
p <- 10
n <- 30
q <- 5
Delta <- c(1, 2, 3, 10, 50) # nonzero eigenvalues of non-centrality matrix
coef <- -1
cf <- function(t) cf_LogRV_WilksLambdaNC(t, p, n, q, Delta, coef)
prob <- c(0.9, 0.95, 0.99)
options <- list()
options$xMin <- 0
result <- cf2DistGP(cf, prob = prob, options = options)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.