These are internal functions to calculate the coefficients in polynomial expansion of joint generating functions for three quadratic forms in potentially noncentral multivariate normal variables, \(\mathbf{x} \sim N_n(\bm{\mu}, \mathbf{I}_n)\). They are primarily used in calculations around moments of a ratio involving three quadratic forms.
d3_ijk_m(
A1,
A2,
A3,
m = 100L,
p = m,
q = m,
r = m,
thr_margin = 100,
fill_across = c(!missing(p), !missing(q), !missing(r))
)d3_ijk_v(
L1,
L2,
L3,
m = 100L,
p = m,
q = m,
r = m,
thr_margin = 100,
fill_across = c(!missing(p), !missing(q), !missing(r))
)
d3_pjk_m(A1, A2, A3, m = 100L, p = 1L, thr_margin = 100)
d3_pjk_v(L1, L2, L3, m = 100L, p = 1L, thr_margin = 100)
h3_ijk_m(
A1,
A2,
A3,
mu = rep.int(0, n),
m = 100L,
p = m,
q = m,
r = m,
thr_margin = 100,
fill_across = c(!missing(p), !missing(q), !missing(r))
)
h3_ijk_v(
L1,
L2,
L3,
mu = rep.int(0, n),
m = 100L,
p = m,
q = m,
r = m,
thr_margin = 100,
fill_across = c(!missing(p), !missing(q), !missing(r))
)
htil3_pjk_m(A1, A2, A3, mu = rep.int(0, n), m = 100L, p = 1L, thr_margin = 100)
htil3_pjk_v(L1, L2, L3, mu = rep.int(0, n), m = 100L, p = 1L, thr_margin = 100)
hhat3_pjk_m(A1, A2, A3, mu = rep.int(0, n), m = 100L, p = 1L, thr_margin = 100)
hhat3_pjk_v(L1, L2, L3, mu = rep.int(0, n), m = 100L, p = 1L, thr_margin = 100)
(p + 1) * (m + 1) * (m + 1)
array for the *_pjk_*
functions
(m + 1) * (m + 1) * (m + 1)
array for the *_ijk_*
functions
(by default; see “Details”).
The 1st, 2nd, and 3rd dimensions correspond to increasing orders for
\(\mathbf{A}_1\), \(\mathbf{A}_2\), and
\(\mathbf{A}_3\), respectively. And the 1st row/column of
each dimension corresponds to the 0th order (hence
[p + 1, q + 1, r + 1]
for the \((p,q,r)\)-th order).
Has the attribute "logscale"
as described in the “Scaling”
section in d1_i
. This is an array of the same size
as the return itself.
Argument matrices. Assumed to be symmetric and of the same order.
Integer-alike to specify the desired order along A2
/L2
and A3
/L3
Integer-alikes to specify the desired orders along
A1
/L1
, A2
/L2
, and A3
/L3
,
respectively.
Optional argument to adjust the threshold for scaling (see “Scaling”
in d1_i
)
Logical vector of length 3, to specify whether each dimension of the output matrix should be filled.
Eigenvalues of the argument matrices
Mean vector \(\bm{\mu}\) for \(\mathbf{x}\)
All these functions have equivalents for two-matrix cases
(d2_ij
), to which the user is referred for
documentations. The primary difference of these functions from the latter is
the addition of arguments for the third matrix A3
/L3
.
d3_*jk_*()
functions calculate
\(d_{i,j,k}(\mathbf{A}_1, \mathbf{A}_2, \mathbf{A}_3)
\) in
Hillier et al. (2009, 2014) and Bao and Kan (2013). These are
also related to the top-order invariant polynomials as described
in d2_ij
.
h3_ijk_*()
, htil3_pjk_*()
, and hhat3_pjk_*()
functions
calculate \(h_{i,j,k}(\mathbf{A}_1, \mathbf{A}_2, \mathbf{A}_3)
\),
\(\tilde{h}_{i;j,k}(\mathbf{A}_1; \mathbf{A}_2, \mathbf{A}_3)
\), and
\(\hat{h}_{i;j,k}(\mathbf{A}_1; \mathbf{A}_2, \mathbf{A}_3)
\),
respectively, as described in the package vignette. These are equivalent
to similar coefficients described in Bao and Kan (2013) and
Hillier et al. (2014).
The difference between the *_pjk_*
and *_ijk_*
functions
is as described for *_pj_*
and *_ij_*
(see “Details” in d2_ij
). The only difference is
that these functions return a 3D array. In the *_pjk_*
functions,
all the slices along the first dimension (i.e., [i, , ]
) are
an upper-left triangular matrix like what the *_ij_*
functions return
in the 2D case; in other words, the return has the coefficients for the terms
that satisfy \(j + k \le m\) for all \(i = 0, 1, \dots, p\). Typically,
the [p + 1, , ]
-th slice is used for subsequent calculations. In the
return of the *_ijk_*
functions, only the triangular prism
close to the [1, 1, 1]
is filled with coefficients, which
correspond to the terms satisfying \(i + j + k \le m\).
Bao, Y. and Kan, R. (2013) On the moments of ratios of quadratic forms in normal random variables. Journal of Multivariate Analysis, 117, 229--245. tools:::Rd_expr_doi("10.1016/j.jmva.2013.03.002").
Hillier, G., Kan, R. and Wang, X. (2014) Generating functions and short recursions, with applications to the moments of quadratic forms in noncentral normal vectors. Econometric Theory, 30, 436--473. tools:::Rd_expr_doi("10.1017/S0266466613000364").
qfmrm
is a
major front-end function that utilizes these functions
dtil2_pq
for \(\tilde{d}\)
used for moments of a product of quadratic forms
d2_ij
for equivalents for two matrices