diff options
author | Suraj Yerramilli | 2015-11-01 17:03:43 +0530 |
---|---|---|
committer | Suraj Yerramilli | 2015-11-01 17:03:43 +0530 |
commit | fc314fc273366f212ec534e930a3f564d2d1726f (patch) | |
tree | 7685ac48fe4c8f7540ff21867c27ce6cdf981fd1 /R | |
parent | 839ab8c3cb6a260a4ad6904d00a332f52164b280 (diff) | |
download | SysID-R-code-fc314fc273366f212ec534e930a3f564d2d1726f.tar.gz SysID-R-code-fc314fc273366f212ec534e930a3f564d2d1726f.tar.bz2 SysID-R-code-fc314fc273366f212ec534e930a3f564d2d1726f.zip |
adding documentation for ARMAX
Diffstat (limited to 'R')
-rw-r--r-- | R/estpoly.R | 51 |
1 files changed, 51 insertions, 0 deletions
diff --git a/R/estpoly.R b/R/estpoly.R index c95a1b3..b088053 100644 --- a/R/estpoly.R +++ b/R/estpoly.R @@ -194,6 +194,57 @@ arx <- function(x,order=c(0,1,0)){ residuals=(Y-X%*%coef)[1:N,],call=match.call(),input=u) } +#' Estimate ARMAX Models +#' +#' Fit an ARMAX model of the specified order given the input-output data +#' +#' @param x an object of class \code{idframe} +#' @param 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,and the input-output delay respectively +#' +#' @details +#' SISO ARX models are of the form +#' \deqn{ +#' 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 linear least squares (with +#' no regularization). Future versions may include regularization +#' parameters as well +#' \\ +#' The data is expected to have no offsets or trends. They can be removed +#' using the \code{\link{detrend}} function. +#' +#' @return +#' An object with classes \code{estARX} and \code{estPoly}, containing +#' the following elements: +#' +#' \tabular{ll}{ +#' \code{coefficients} \tab an \code{idpoly} object containing the +#' fitted coefficients \cr +#' \code{vcov} \tab the covariance matrix of the fitted coefficients\cr +#' \code{sigma} \tab the standard deviation of the innovations\cr +#' \code{df} \tab the residual degrees of freedom \cr +#' \code{fitted.values} \tab the predicted response \cr +#' \code{residuals} \tab the residuals \cr +#' \code{call} \tab the matched call \cr +#' \code{time} \tab the time of the data used \cr +#' \code{input} \tab the input data used +#' } +#' +#' +#' @references +#' Arun K. Tangirala (2015), \emph{Principles of System Identification: +#' Theory and Practice}, CRC Press, Boca Raton. Sections 14.4.1, 21.6.2 +#' +#' @examples +#' data(arxsim) +#' model <- armax(data,c(1,2,1,2)) +#' summary(model) # obtain estimates and their covariances +#' plot(model) # plot the predicted and actual responses +#' #' @export armax <- function(x,order=c(0,1,1,0)){ require(signal) |