Loss functions for sets of ARX model structures
v = ivstruc(ze,zv,NN)
v = ivstruc(ze,zv,NN,p,maxsize)
v = ivstruc(ze,zv,NN)
computes the loss
functions for sets of ARX model structures. NN
is
a matrix that defines a number of different structures of the ARX
type. Each row of NN
is of the form
nn = [na nb nk]
with the same interpretation as described for arx
.
See struc
for easy generation
of typical NN
matrices.
ze
and zv
are iddata
objects
containing output-input data. Only time-domain data is supported.
Models for each model structure defined in NN
are
estimated using the instrumental variable (IV) method on data set ze
.
The estimated models are simulated using the inputs from data set zv
.
The normalized quadratic fit between the simulated output and the
measured output in zv
is formed and returned in v
.
The rows below the first row in v
are the transpose
of NN
, and the last row contains the logarithms
of the condition numbers of the IV matrix
$$\sum \varsigma (t){\phi}^{T}(t)$$
A large condition number indicates that the structure is of unnecessarily high order (see Ljung, L. System Identification: Theory for the User, Upper Saddle River, NJ, Prentice-Hal PTR, 1999, p. 498).
The information in v
is best analyzed using selstruc
.
The routine is for single-output systems only.
v = ivstruc(ze,zv,NN,p,maxsize)
specifies
the computation of condition numbers and the size of largest matrix
formed during computations. If p
is equal to zero,
the computation of condition numbers is suppressed. maxsize
affects
the speed/memory trade-off.
Note
The IV method used does not guarantee that the models obtained
are stable. The output-error fit calculated in |
Compare the effect of different orders and delays, using the same data set for both the estimation and validation.
load iddata1 z1; v = ivstruc(z1,z1,struc(1:3,1:2,2:4)); nn = selstruc(v) m = iv4(z1,nn);
Ljung, L. System Identification: Theory for the User, Upper Saddle River, NJ, Prentice-Hal PTR, 1999.