# ivstruc

Compute loss functions for sets of ARX model structures using instrumental variable method

## 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 single-output 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 input-output 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-Hall 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

## 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

[1] Ljung, L. *System Identification: Theory for the
User*, Upper Saddle River, NJ,
Prentice-Hall PTR, 1999.

## Version History

**Introduced before R2006a**