Main Content

Regressor expressions and numerical values in nonlinear ARX model

`Rs = getreg(model)`

Rm = getreg(model,data)

Rm = getreg(model,data,init)

Rm = getreg(___,'Type',regressorType)

`Rs = getreg(model)`

returns expressions for computing regressors
in the nonlinear ARX model. `model`

is an `idnlarx`

object. A typical use of the regression matrices built by
`getreg`

is to generate input data when you want to evaluate the
output of a mapping function such as `wavenet`

using `evaluate`

. For example, the following pair
of commands evaluates the output of a mapping function
`model`

.

```
Regressor_Value = getreg(model,data,'z')
y = evaluate(model.OutputFcn,RegressorValue)
```

y = predict(model,data,1,predictOptions('InitialCondition','z'))

`Rm = getreg(model,data)`

returns regressor values as a `timetable`

for the specified input/output data set
`data`

.

`Rm = getreg(model,data,init)`

uses the initial conditions that are
specified in `init`

. The first `N`

rows of each
regressor matrix depend on the initial states `init`

, where
`N`

is the maximum delay in the regressors (see
`getDelayInfo`

).

`Rm = getreg(___,'Type',`

returns the names of the regressors of the specified `regressorType`

)`regressorType`

.
For example, use the command `Rm = getreg(model,'Type','input')`

to
return the names of only the input regressors.

`data`

`iddata`

object containing measured data or numeric matrix that contains the values of the output and input variables in the order`[model.OutputName model.InputName]`

.`init`

Initial conditions of your data:

`'z'`

(default) specifies zero initial state.`NaN`

denotes unknown initial conditions.Real column vector containing the initial state values. For more information on initial states, see Definition of idnlarx States in

`idnlarx`

. For multiple-experiment data, this is a matrix where each column specifies the initial state of the model corresponding to that experiment.`iddata`

object containing input and output samples at time instants before to the first sample in`data`

. When the`iddata`

object contains more samples than the maximum delay in the model, only the most recent samples are used. The number of samples required is equal to`max(getDelayInfo(model))`

.

`model`

`iddata`

object representing nonlinear ARX model.`regressorType`

Type of regressor to return, specified as one of the following:

`'all'`

(default) — All regressors`'input'`

— Only input regressors`'output'`

— Only output regressors`'standard'`

— Only linear and polynomial regressors`'custom'`

— Only custom regressors

`Rm`

`timetable`

of regressor values for all or a specified subset of regressors. Each column in`Rm`

contains as many rows as there are data samples. For a model with`nr`

regressors,`Rm`

contains one column for each regressor. When`data`

contains multiple experiments,`Rm`

is a cell array where each element corresponds to a timetable of regressor values for an experiment.`Rs`

Regressor expressions represented as a cell array of character vectors. For example, the expression

`'u1(t-2)'`

computes the regressor by delaying the input signal`u1`

by two time samples. Similarly, the expression`'y2(t-1)'`

computes the regressor by delaying the output signal`y2`

by one time sample.The order of regressors in

`Rs`

corresponds to regressor indices in the`idnlarx`

object property`model.RegressorUsage`

.

`customRegressor`

| `evaluate`

| `idnlarx`

| `linearRegressor`

| `polynomialRegressor`