# Arma: Create an autoregressive moving average (ARMA) model. In signal: Signal Processing

## Description

Returns an ARMA model. The model could represent a filter or system model.

## Usage

 ``` 1 2 3 4 5 6 7 8 9 10``` ```Arma(b, a) ## S3 method for class 'Zpg' as.Arma(x, ...) ## S3 method for class 'Arma' as.Arma(x, ...) ## S3 method for class 'Ma' 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 Matlab/Octave convention where the coefficients are in decreasing order of the polynomial (the opposite of the definitions for filter from the stats package and polyroot from the base package). 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, EPRI Solutions, Inc., (tshort@eprisolutions.com)

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

## Examples

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

### Example output

```Attaching package: 'signal'

The following objects are masked from 'package:stats':

filter, poly
```

signal documentation built on May 25, 2021, 9:06 a.m.