Accelerating the pace of engineering and science

# ivstruc

Loss functions for sets of ARX model structures

## Syntax

v = ivstruc(ze,zv,NN)
v = ivstruc(ze,zv,NN,p,maxsize)

## Description

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 \left(t\right){\phi }^{T}\left(t\right)$

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 v can then be misleading.

## Examples

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);
```

expand all

### Algorithms

A maximum-order ARX model is computed using the least squares method. Instruments are generated by filtering the input(s) through this model. The models are subsequently obtained by operating on submatrices in the corresponding large IV matrix.

## References

Ljung, L. System Identification: Theory for the User, Upper Saddle River, NJ, Prentice-Hal PTR, 1999.