armax {sysid} | R Documentation |
Estimate ARMAX Models
Description
Fit an ARMAX model of the specified order given the input-output data
Usage
armax(x, order = c(0, 1, 1, 0), init_sys = NULL, intNoise = FALSE,
options = optimOptions())
Arguments
x |
an object of class |
order |
Specification of the orders: the four integer components (na,nb,nc,nk) are the order of polynolnomial A, order of polynomial B + 1, order of the polynomial C,and the input-output delay respectively |
init_sys |
Linear polynomial model that configures the initial parameterization.
Must be an ARMAX model. Overrules the |
intNoise |
Logical variable indicating whether to add integrators in
the noise channel (Default= |
options |
Estimation Options, setup using |
Details
SISO ARMAX models are of the form
y[k] + a_1 y[k-1] + \ldots + a_{na} y[k-na] = b_{nk} u[k-nk] +
\ldots + b_{nk+nb} u[k-nk-nb] + c_{1} e[k-1] + \ldots c_{nc} e[k-nc]
+ e[k]
The function estimates the coefficients using non-linear least squares
(Levenberg-Marquardt Algorithm)
The data is expected to have no offsets or trends. They can be removed
using the detrend
function.
Value
An object of class estpoly
containing the following elements:
sys |
an |
fitted.values |
the predicted response |
residuals |
the residuals |
input |
the input data used |
call |
the matched call |
stats |
A list containing the following fields: |
options |
Option set used for estimation. If no custom options were configured, this is a set of default options |
termination |
Termination conditions for the iterative
search used for prediction error minimization:
|
References
Arun K. Tangirala (2015), Principles of System Identification: Theory and Practice, CRC Press, Boca Raton. Sections 14.4.1, 21.6.2
Examples
data(armaxsim)
z <- dataSlice(armaxsim,end=1533) # training set
mod_armax <- armax(z,c(1,2,1,2))
mod_armax