Get input/output delay information for `idnlarx`

model
structure

`DELAYS = getDelayInfo(MODEL)`

DELAYS = getDelayInfo(MODEL,TYPE)

`DELAYS = getDelayInfo(MODEL)`

obtains the
maximum delay in each input and output variable of an `idnlarx`

model.

`DELAYS = getDelayInfo(MODEL,TYPE)`

lets
you choose between obtaining maximum delays across all input and output
variables or maximum delays for each output variable individually.
When delays are obtained for each output variable individually a matrix
is returned, where each row is a vector containing *n _{y}*+

*n*is the number of outputs of_{y}`MODEL`

.*n*is the number of inputs of_{u}`MODEL`

.

Delay information is useful for determining the number of states
in the model. For nonlinear ARX models, the states are related to
the set of delayed input and output variables that define the model
structure (regressors). For example, if an input or output variable *p* has
a maximum delay of *D* samples, then it contributes *D* elements
to the state vector:

*p*(*t*-1), *p*(*t*-2),
...*p*(*t*-*D*)

The number of states of a nonlinear ARX model equals the sum
of the maximum delays of each input and output variable. For more
information about the definition of states for `idnlarx`

models,
see Definition of idnlarx States

`getDelayInfo`

accepts the following arguments:

`MODEL`

:`idnlarx`

model.`TYPE`

: (Optional) Specifies whether to obtain channel delays`'channelwise'`

or`'all'`

as follows:`'all'`

: Default value.`DELAYS`

contains the maximum delays across each output (vector of*n*+_{y}*n*entries, where_{u}`[ny, nu] = size(MODEL)`

).`'channelwise'`

:`DELAYS`

contains delay values separated for each output (*n*-by-(_{y}*n*+_{y}*n*) matrix)._{u}

`DELAYS`

: Contains delay information in a vector of length*n*+_{y}*n*arranged with output channels preceding the input channels, i.e.,_{u}`[y1, y2,.., u1, u2,..]`

.

Was this topic helpful?