arburg {gsignal} | R Documentation |
Autoregressive model coefficients - Burg's method
Description
Calculate the coefficients of an autoregressive model using the whitening lattice-filter method of Burg (1968)[1].
Usage
arburg(x, p, criterion = NULL)
Arguments
x |
input data, specified as a numeric or complex vector or matrix. In case of a vector it represents a single signal; in case of a matrix each column is a signal. |
p |
model order; number of poles in the AR model or limit to the number of poles if a valid criterion is provided. Must be < length(x) - 2. |
criterion |
model-selection criterion. Limits the number of poles so that spurious poles are not added when the whitened data has no more information in it. Recognized values are:
The default is to NOT use a model-selection criterion (NULL) |
Details
The inverse of the autoregressive model is a moving-average filter which
reduces x
to white noise. The power spectrum of the AR model is an
estimate of the maximum entropy power spectrum of the data. The function
ar_psd
calculates the power spectrum of the AR model.
For data input x(n)
and white noise e(n)
, the autoregressive
model is
p+1 x(n) = sqrt(v).e(n) + SUM a(k).x(n-k) k=1
arburg
does not remove the mean from the data. You should remove the
mean from the data if you want a power spectrum. A non-zero mean can produce
large errors in a power-spectrum estimate. See detrend
Value
A list
containing the following elements:
- a
vector or matrix containing
(p+1)
autoregression coefficients. Ifx
is a matrix, then each row of a corresponds to a column ofx
.a
hasp + 1
columns.- e
white noise input variance, returned as a vector. If
x
is a matrix, then each element of e corresponds to a column ofx
.- k
Reflection coefficients defining the lattice-filter embodiment of the model returned as vector or a matrix. If
x
is a matrix, then each column ofk
corresponds to a column ofx
.k
hasp
rows.
Note
AIC, AICc, KIC and AKICc are based on information theory. They attempt to balance the complexity (or length) of the model against how well the model fits the data. AIC and KIC are biased estimates of the asymmetric and the symmetric Kullback-Leibler divergence, respectively. AICc and AKICc attempt to correct the bias. See reference [2].
Author(s)
Peter V. Lanspeary, pvl@mecheng.adelaide.edu.au.
Conversion to R by Geert van Boxtel, gjmvanboxtel@gmail.com.
References
[1] Burg, J.P. (1968) A new analysis technique for time series
data, NATO advanced study Institute on Signal Processing with Emphasis on
Underwater Acoustics, Enschede, Netherlands, Aug. 12-23, 1968.
[2] Seghouane, A. and Bekara, M. (2004). A small sample model selection
criterion based on Kullback’s symmetric divergence. IEEE Trans. Sign.
Proc., 52(12), pp 3314-3323,
See Also
Examples
A <- Arma(1, c(1, -2.7607, 3.8106, -2.6535, 0.9238))
y <- filter(A, 0.2 * rnorm(1024))
coefs <- arburg(y, 4)