Compute Theoretical ACF for an ARMA Process

DESCRIPTION:

Compute the theoretical autocorrelation function or partial autocorrelation function for an ARMA process.

USAGE:

ARMAacf(ar = numeric(0), ma = numeric(0), lag.max = r, pacf = FALSE)

ARGUMENTS:

ar
numeric vector of AR coefficients
ma
numeric vector of MA coefficients
lag.max
integer. Maximum lage required. Defaults to max(p, q+1), where p, q are the numbers of AR and MA terms respectively.
pacf
logical. Should the partial autocorrelations be returned?

DETAILS:

The methods used follow Brockwell & Davis (1991, section 3.3). Their equations (3.3.8) are solved for the autocovariances at lags 0, ..., max(p, q+1), and the remaining autocorrelations are given by a recursive filter.

VALUE:

A vector of (partial) autocorrelations, named by the lags.

AUTHOR(S):

B. D. Ripley

REFERENCES:

Brockwell, P. J. and Davis, R. A. (1991) Time Series: Theory and Methods, Second Edition. Springer.

SEE ALSO:

, , .

EXAMPLES:

ARMAacf(c(1.0, -0.25), 1.0, lag.max = 10)
## Example from Brockwell & Davis (1991, pp.92-4)
## answer
n <- 1:10; 2^(-n) * (32/3 + 8 * n) /(32/3)
ARMAacf(c(1.0, -0.25), 1.0, lag.max = 10, pacf = TRUE)
ARMAacf(c(1.0, -0.25), lag.max = 10, pacf = TRUE)