g13 Chapter Contents
g13 Chapter Introduction
NAG C Library Manual

# NAG Library Function Documentnag_tsa_arma_roots (g13dxc)

## 1  Purpose

nag_tsa_arma_roots (g13dxc) calculates the zeros of a vector autoregressive (or moving average) operator.

## 2  Specification

 #include #include
 void nag_tsa_arma_roots (Integer k, Integer ip, const double par[], double rr[], double ri[], double rmod[], NagError *fail)

## 3  Description

Consider the vector autoregressive moving average (VARMA) model
 $Wt-μ=ϕ1Wt-1-μ+ϕ2Wt-2-μ+⋯+ϕpWt-p-μ+εt-θ1εt-1-θ2εt-2-⋯-θqεt-q,$ (1)
where ${W}_{t}$ denotes a vector of $k$ time series and ${\epsilon }_{t}$ is a vector of $k$ residual series having zero mean and a constant variance-covariance matrix. The components of ${\epsilon }_{t}$ are also assumed to be uncorrelated at non-simultaneous lags. ${\varphi }_{1},{\varphi }_{2},\dots ,{\varphi }_{p}$ denotes a sequence of $k$ by $k$ matrices of autoregressive (AR) parameters and ${\theta }_{1},{\theta }_{2},\dots ,{\theta }_{q}$ denotes a sequence of $k$ by $k$ matrices of moving average (MA) parameters. $\mu$ is a vector of length $k$ containing the series means. Let
 $Aϕ= ϕ1 I 0 . . . 0 ϕ2 0 I 0 . . 0 . . . . . . ϕp-1 0 . . . 0 I ϕp 0 . . . 0 0 pk×pk$
where $I$ denotes the $k$ by $k$ identity matrix.
The model (1) is said to be stationary if the eigenvalues of $A\left(\varphi \right)$ lie inside the unit circle. Similarly let
 $Bθ= θ1 I 0 . . . 0 θ2 0 I 0 . . 0 . . . . . . θq-1 0 . . . 0 I θq 0 . . . 0 0 qk×qk .$
Then the model is said to be invertible if the eigenvalues of $B\left(\theta \right)$ lie inside the unit circle.
nag_tsa_arma_roots (g13dxc) returns the $pk$ eigenvalues of $A\left(\varphi \right)$ (or the $qk$ eigenvalues of $B\left(\theta \right)$) along with their moduli, in descending order of magnitude. Thus to check for stationarity or invertibility you should check whether the modulus of the largest eigenvalue is less than one.

## 4  References

Wei W W S (1990) Time Series Analysis: Univariate and Multivariate Methods Addison–Wesley

## 5  Arguments

1:     kIntegerInput
On entry: $k$, the dimension of the multivariate time series.
Constraint: ${\mathbf{k}}\ge 1$.
2:     ipIntegerInput
On entry: the number of AR (or MA) parameter matrices, $p$ (or $q$).
Constraint: ${\mathbf{ip}}\ge 1$.
3:     par[${\mathbf{ip}}×{\mathbf{k}}×{\mathbf{k}}$]const doubleInput
On entry: the AR (or MA) parameter matrices read in row by row in the order ${\varphi }_{1},{\varphi }_{2},\dots ,{\varphi }_{p}$ (or ${\theta }_{1},{\theta }_{2},\dots ,{\theta }_{q}$). That is, ${\mathbf{par}}\left[\left(\mathit{l}-1\right)×k×k+\left(i-1\right)×k+j-1\right]$ must be set equal to the $\left(i,j\right)$th element of ${\varphi }_{l}$, for $\mathit{l}=1,2,\dots ,p$ (or the $\left(i,j\right)$th element of ${\theta }_{\mathit{l}}$, for $\mathit{l}=1,2,\dots ,q$).
4:     rr[${\mathbf{k}}×{\mathbf{ip}}$]doubleOutput
On exit: the real parts of the eigenvalues.
5:     ri[${\mathbf{k}}×{\mathbf{ip}}$]doubleOutput
On exit: the imaginary parts of the eigenvalues.
6:     rmod[${\mathbf{k}}×{\mathbf{ip}}$]doubleOutput
On exit: the moduli of the eigenvalues.
7:     failNagError *Input/Output
The NAG error argument (see Section 3.6 in the Essential Introduction).

## 6  Error Indicators and Warnings

NE_ALLOC_FAIL
Dynamic memory allocation failed.
On entry, argument $〈\mathit{\text{value}}〉$ had an illegal value.
NE_EIGENVALUES
An excessive number of iterations have been required to calculate the eigenvalues.
NE_INT
On entry, ${\mathbf{ip}}=〈\mathit{\text{value}}〉$.
Constraint: ${\mathbf{ip}}\ge 1$.
On entry, ${\mathbf{k}}=〈\mathit{\text{value}}〉$.
Constraint: ${\mathbf{k}}\ge 1$.
NE_INTERNAL_ERROR
An internal error has occurred in this function. Check the function call and any array sizes. If the call is correct then please contact NAG for assistance.

## 7  Accuracy

The accuracy of the results depends on the original matrix and the multiplicity of the roots.

## 8  Further Comments

The time taken is approximately proportional to $k{p}^{3}$ (or $k{q}^{3}$).

## 9  Example

This example finds the eigenvalues of $A\left(\varphi \right)$ where $k=2$ and $p=1$ and ${\varphi }_{1}=\left[\begin{array}{rr}0.802& 0.065\\ 0.000& 0.575\end{array}\right]$.

### 9.1  Program Text

Program Text (g13dxce.c)

### 9.2  Program Data

Program Data (g13dxce.d)

### 9.3  Program Results

Program Results (g13dxce.r)