Matlab error: Incorrect specification for model order in the armax command

6 views (last 30 days)
I am trying to build an ARMAX model using matlab's system identification toolbox. The relevant part of my code is shown below;
"input = [Tpht CFMbyp chw];
output = Tsup;
tdata = iddata(output,input,60);
sys = armax(tdata, [30 30 30 1]); "
input is a 29566x3 matrix and output is a 29566x1 vector. Using these, I created iddata with 60 seconds sample interval. That was all okay until this point. Now, when I try to build the model of order 30, I encountered an error saying;
" Error using armax (line 89) Incorrect specification for model order in the "armax(DATA, ORDERS,...)" command. Specify ORDERS as an integer matrix of the form [na nb nc nk], or [na nc] if there are no inputs. Type "help armax" for more information.. "
I did not understand the error and I do not know how to correct it. If you could help me on this, I would really appreciate it.
Thank you, Irem

Accepted Answer

Walter Roberson
Walter Roberson on 4 Sep 2015
For a model with Ny outputs and Nu inputs:
  • na is the order of the polynomial A(q), specified as an Ny-by-Ny matrix of nonnegative integers.
  • nb is the order of the polynomial B(q) + 1, specified as an Ny-by-Nu matrix of nonnegative integers.
  • nc is the order of the polynomial C(q), specified as a column vector of nonnegative integers of length Ny.
  • nk is the input-output delay expressed as fixed leading zeros of the B polynomial. Specify nk as an Ny-by-Nu matrix of nonnegative integers.
You have Ny = 1 output, and Nu = 3 inputs. Your na will then need to be 1 x 1, your nb will need to be 1 x 3, your nc will need to be 1 x 1, your nk will need to be 1 x 3. Put together that gives a 1 x 8 vector being required for the second argument, but you are specifying instead a 1 x 4 vector. The 1 x 4 vector option is for the case of 1 input and 1 output.

More Answers (0)

Categories

Find more on Linear Model Identification in Help Center and File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!