Learn R Programming

FluxPoint (version 0.1.2)

get_Sig_e1_approx: Approximate the long-run covariance matrix \(\Gamma_{\boldsymbol{\epsilon}}(0)\)

Description

Computes an approximate long-run covariance matrix \(\Gamma_{\boldsymbol{\epsilon}}(0)\) for the stationary VAR(1) process $$\boldsymbol{\epsilon}_t = \Phi \boldsymbol{\epsilon}_{t-1} + \boldsymbol{\nu}_t,$$ where \(\boldsymbol{\nu}_t\) has innovation covariance \(\Sigma_{\boldsymbol{\nu}}\). The approximation is obtained via a truncated series expansion up to order `m`.

Usage

get_Sig_e1_approx(Sig_nu, Phi, m = 6)

Value

A numeric \(p \times p\) matrix giving the approximate \(\Gamma_{\boldsymbol{\epsilon}}(0)\).

Arguments

Sig_nu

Numeric \(p \times p\) matrix representing the innovation covariance \(\Sigma_{\boldsymbol{\nu}}\).

Phi

Numeric \(p \times p\) autoregressive coefficient matrix \(\Phi\).

m

Integer (default = 6). Number of lag terms used in the truncated series expansion. Larger values yield higher accuracy but increase computation time.

Details

For a stable VAR(1) process, the theoretical long-run covariance satisfies $$\mathrm{vec}(\Gamma_{\boldsymbol{\epsilon}}(0)) = (I_{p^2} - \Phi \otimes \Phi)^{-1} \mathrm{vec}(\Sigma_{\boldsymbol{\nu}}).$$ To avoid matrix inversion, this function approximates the inverse by the truncated Neumann series: $$(I_{p^2} - \Phi \otimes \Phi)^{-1} = I_{p^2} + \sum_{i=1}^{m} (\Phi^{\otimes i}),$$ where \(\Phi^{\otimes i}\) denotes the Kronecker product of \(\Phi^i\) with itself. The truncation level `m` controls the approximation accuracy.