Arma: Autoregressive moving average (ARMA) model

View source: R/Arma.R

ArmaR Documentation

Autoregressive moving average (ARMA) model

Description

Create an ARMA model representing a filter or system model, or convert other forms to an ARMA model.

Usage

Arma(b, a)

as.Arma(x, ...)

## S3 method for class 'Arma'
as.Arma(x, ...)

## S3 method for class 'Ma'
as.Arma(x, ...)

## S3 method for class 'Sos'
as.Arma(x, ...)

## S3 method for class 'Zpg'
as.Arma(x, ...)

Arguments

b

moving average (MA) polynomial coefficients.

a

autoregressive (AR) polynomial coefficients.

x

model or filter to be converted to an ARMA representation.

...

additional arguments (ignored).

Details

The ARMA model is defined by:

a(L)y(t) = b(L)x(t)

The ARMA model can define an analog or digital model. The AR and MA polynomial coefficients follow the convention in 'Matlab' and 'Octave' where the coefficients are in decreasing order of the polynomial (the opposite of the definitions for filterfilter and polyroot). For an analog model,

  H(s) = (b[1]*s^(m-1) + b[2]*s^(m-2) + ... + b[m]) / (a[1]*s^(n-1) +
  a[2]*s^(n-2) + ... + a[n])

For a z-plane digital model,

  H(z) = (b[1] + b[2]*z^(-1) + … + b[m]*z^(-m+1)) / (a[1] + a[2]*z^(-1) + … +
  a[n]*z^(-n+1))

as.Arma converts from other forms, including Zpg and Ma.

Value

A list of class 'Arma' with the following list elements:

b

moving average (MA) polynomial coefficients

a

autoregressive (AR) polynomial coefficients

Author(s)

Tom Short, tshort@eprisolutions.com,
adapted by Geert van Boxtel, gjmvanboxtel@gmail.com.

See Also

See also Zpg, Ma, filter, and various filter-generation functions like butter and cheby1 that return Arma models.

Examples

filt <- Arma(b = c(1, 2, 1)/3, a = c(1, 1))
zplane(filt)


gjmvanboxtel/gsignal documentation built on Nov. 22, 2023, 8:19 p.m.