admissible_mods: Admissible models

View source: R/model_checks.R

admissible_modsR Documentation

Admissible models

Description

admissible_mods gives the qualified models according to the model selection criteria in section 3.3 of Estimation of Impulse-Response Functions with Dynamic Factor Models: A New Parametrization available at https://arxiv.org/pdf/2202.00310.pdf.

Usage

admissible_mods(q, max_nu, fix_r = TRUE)

Arguments

q

input dimension, number of shocks

max_nu

maximum Kronecker index value

fix_r

boolean, whether the state dimension of the state space representation is fixed to q*max_nu

Value

a list of two lists of equal length, where each element in the list correspond either to the Kronecker index specification or to the additional possible restrictions imposed on the lag orders of c(z) and d(z) for given DFM specification. The elements are saved in named lists

nus

list of Kronecker index vectors

degs

list of polynomial degrees

Note

This is a rather crude way of obtaining the set of models satisfying the model selection criteria because the function simulates the model parameters from a U(-1,1)-distribution and then runs the checks. This entails that the function may not always find the maximum number of qualified models, and this being the case especially with specifications where the dynamic factor dimension and maximum Kronecker index are set to a high value. However, for a small values of these parameters the function should work fine.

Examples

tmp <- admissible_mods(4, 4)
# Print an example model structure
sample(1:length(tmp$nus), 1) %>%
  sapply(function(x)
    cat("The qualified model no. ", x, "/", length(tmp$nus),
    "has a Kronecker index structure (", tmp$nus[[x]], ") with the
    orders of the lag polynomials restricted to deg(c(z)) =", tmp$degs[[x]][1],
     " and deg(d(z)) =", tmp$degs[[x]][2], "\n")) -> tmpp

juhokalle/rmfd4dfm documentation built on July 18, 2024, 10:19 p.m.