in_paramspace_int
checks whether the parameter vector lies in the parameter
space.
in_paramspace_int(
p,
M,
d,
params,
all_boldA,
alphas,
all_Omega,
W_constraints = NULL,
stat_tol = 0.001,
posdef_tol = 1e-08
)
a positive integer specifying the autoregressive order of the model.
a positive integer specifying the number of mixture components.
the number of time series in the system.
a real valued vector specifying the parameter values.
Should be size \(((M(pd^2+d+d(d+1)/2+1)-1)x1)\) and have the form \(\theta\)\( = \)(\(\upsilon\)\(_{1}\), ...,\(\upsilon\)\(_{M}\), \(\alpha_{1},...,\alpha_{M-1}\)), where
\(\upsilon\)\(_{m}\) \( = (\phi_{m,0},\)\(\phi\)\(_{m}\)\(,\sigma_{m})\)
\(\phi\)\(_{m}\)\( = (vec(A_{m,1}),...,vec(A_{m,p})\)
and \(\sigma_{m} = vech(\Omega_{m})\), m=1,...,M.
Should be size \(((M(d+d(d+1)/2+1)+q-1)x1)\) and have the form \(\theta\)\( = (\phi_{1,0},...,\phi_{M,0},\)\(\psi\), \(\sigma_{1},...,\sigma_{M},\alpha_{1},...,\alpha_{M-1})\), where
\(\psi\) \((qx1)\) satisfies (\(\phi\)\(_{1}\)\(,...,\) \(\phi\)\(_{M}) =\) \(C \psi\) where \(C\) is \((Mpd^2xq)\) constraint matrix.
Should have the form \(\theta\)\( = (\)\(\mu\),\(\psi\), \(\sigma_{1},...,\sigma_{M},\alpha_{1},...,\alpha_{M-1})\), where
\(\mu\)\(= (\mu_{1},...,\mu_{g})\) where \(\mu_{i}\) is the mean parameter for group \(i\) and \(g\) is the number of groups.
If AR constraints are employed, \(\psi\) is as for constrained models, and if AR constraints are not employed, \(\psi\)\( = \) (\(\phi\)\(_{1}\)\(,...,\)\(\phi\)\(_{M})\).
Should have the form \(\theta\)\( = (\phi_{1,0},...,\phi_{M,0},\)\(\phi\)\(_{1},...,\)\(\phi\)\(_{M}, vec(W),\)\(\lambda\)\(_{2},...,\)\(\lambda\)\(_{M},\alpha_{1},...,\alpha_{M-1})\), where
\(\lambda\)\(_{m}=(\lambda_{m1},...,\lambda_{md})\) contains the eigenvalues of the \(m\)th mixture component.
Replace \(\phi\)\(_{1}\)\(,...,\) \(\phi\)\(_{M}\) with \(\psi\) \((qx1)\) that satisfies (\(\phi\)\(_{1}\)\(,...,\) \(\phi\)\(_{M}) =\) \(C \psi\), as above.
Replace \((\phi_{1,0},...,\phi_{M,0})\) with \((\mu_{1},...,\mu_{g})\), as above.
Remove the zeros from \(vec(W)\) and make sure the other entries satisfy the sign constraints.
Replace \(\lambda\)\(_{2},...,\)\(\lambda\)\(_{M}\) with \(\gamma\) \((rx1)\) that satisfies (\(\lambda\)\(_{2}\)\(,...,\) \(\lambda\)\(_{M}) =\) \(C_{\lambda} \gamma\) where \(C_{\lambda}\) is a \((d(M-1) x r)\) constraint matrix.
Above, \(\phi_{m,0}\) is the intercept parameter, \(A_{m,i}\) denotes the \(i\)th coefficient matrix of the \(m\)th
mixture component, \(\Omega_{m}\) denotes the error term covariance matrix of the \(m\):th mixture component, and
\(\alpha_{m}\) is the mixing weight parameter. The \(W\) and \(\lambda_{mi}\) are structural parameters replacing the
error term covariance matrices (see Virolainen, 2020). If \(M=1\), \(\alpha_{m}\) and \(\lambda_{mi}\) are dropped.
If parametrization=="mean"
, just replace each \(\phi_{m,0}\) with regimewise mean \(\mu_{m}\).
\(vec()\) is vectorization operator that stacks columns of a given matrix into a vector. \(vech()\) stacks columns
of a given matrix from the principal diagonal downwards (including elements on the diagonal) into a vector.
The notation is in line with the cited article by Kalliovirta, Meitz and Saikkonen (2016) introducing the GMVAR model.
3D array containing the \(((dp)x(dp))\) "bold A" matrices related to each mixture component VAR-process,
obtained from form_boldA
. Will be computed if not given.
(Mx1) vector containing all mixing weight parameters, obtained from pick_alphas
.
3D array containing all covariance matrices \(\Omega_{m}\), obtained from pick_Omegas
.
set NULL
for reduced form models. For structural models, this should be the
constraint matrix \(W\) from the list of structural parameters.
numerical tolerance for stationarity of the AR parameters: if the "bold A" matrix of any regime
has eigenvalues larger that 1 - stat_tol
the model is classified as non-stationary. Note that if the
tolerance is too small, numerical evaluation of the log-likelihood might fail and cause error.
numerical tolerance for positive definiteness of the error term covariance matrices: if the error term covariance matrix of any regime has eigenvalues smaller than this, the model is classified as not satisfying positive definiteness assumption. Note that if the tolerance is too small, numerical evaluation of the log-likelihood might fail and cause error.
Returns TRUE
if the given parameter values are in the parameter space and FALSE
otherwise.
This function does NOT consider the identifiability condition!
The parameter vector in the argument params
should be unconstrained and it is used for
structural models only.
Kalliovirta L., Meitz M. and Saikkonen P. 2016. Gaussian mixture vector autoregression. Journal of Econometrics, 192, 485-498.
Virolainen S. 2020. Structural Gaussian mixture vector autoregressive model. Unpublished working paper, available as arXiv:2007.04713.