HammersteinWiener model
sys = idnlhw(Orders)
sys = idnlhw(Orders,InputNL,OutputNL)
sys = idnlhw(Orders,InputNL,OutputNL,Name,Value)
sys = idnlhw(LinModel)
sys = idnlhw(LinModel,InputNL,OutputNL)
sys = idnlhw(LinModel,InputNL,OutputNL,Name,Value)
creates
a HammersteinWiener model with the specified orders, and using piecewise
linear functions as input and output nonlinearity estimators.sys
= idnlhw(Orders
)
uses sys
= idnlhw(Orders
,InputNL
,OutputNL
)InputNL
and OutputNL
as
the input and output nonlinearity estimators, respectively.
specifies additional attributes of the sys
= idnlhw(Orders
,InputNL
,OutputNL
,Name,Value
)idnlhw
model
structure using one or more Name,Value
pair arguments.
uses a linear model sys
= idnlhw(LinModel
)LinModel
to specify the model
orders and default piecewise linear functions for the input and output
nonlinearity estimators.
specifies
input and output nonlinearity estimators for the model.sys
= idnlhw(LinModel
,InputNL
,OutputNL
)
specifies additional attributes of the sys
= idnlhw(LinModel
,InputNL
,OutputNL
,Name,Value
)idnlhw
model
structure using one or more Name,Value
pair arguments.
idnlhw
represents a HammersteinWiener
model. The HammersteinWiener structure represents
a linear model with inputoutput nonlinearities.
Use the nlhw
command to
both construct an idnlhw
object and estimate
the model parameters.
You can also use the idnlhw
constructor
to create the HammersteinWiener model and then estimate the model
parameters using nlhw
.
For idnlhw
object properties, see Properties.
idnlhw
object properties include:

Model orders and delays of the linear subsystem transfer function,
where For a MIMO transfer function with  

B polynomial of the linear block in the model
structure, specified as a cell array of  

F polynomial of the linear block in the model
structure, specified as a cell array of  

Input nonlinearity estimator, specified as one of the following:
Specifying a character vector creates a nonlinearity estimator object with default settings. Use object representation instead to configure the properties of a nonlinearity estimator. InputNonlinearity = wavenet; InputNonlinearity.NumberOfUnits = 10; Alternatively, use the associated input nonlinearity estimator function with NameValue pair arguments. InputNonlinearity = wavenet('NumberOfUnits',10); For Default:  

Output nonlinearity estimator, specified as one of the following:
Specifying a character vector creates a nonlinearity estimator object with default settings. Use object representation instead to configure the properties of a nonlinearity estimator. OutputNonlinearity = sigmoidnet; OutputNonlinearity.NumberOfUnits = 10; Alternatively, use the associated input nonlinearity estimator function with NameValue pair arguments. OutputNonlinearity = sigmoidnet('NumberOfUnits',10); For Default:  

The linear model in the linear block of the model structure,
represented as an  

Summary report that contains information about the estimation
options and results when the model is estimated using the
The contents of m = idnlhw([2 2 1]); m.Report.OptionsUsed ans = [] If you use load iddata1; m = nlhw(z1,[2 2 1],[],'pwlinear'); m.Report.OptionsUsed Option set for the nlhw command: InitialCondition: 'zero' Display: 'off' Regularization: [1x1 struct] SearchMethod: 'auto' SearchOption: [1x1 idoptions.search.identsolver] OutputWeight: 'noise' Advanced: [1x1 struct]
For more information on this property and how to use it, see Output Arguments in
the  

Independent variable for the inputs, outputs, and—when
available—internal states, specified as a character vector. Default:  

Noise variance (covariance matrix) of the model innovations e.  

Sample time. Changing this property does not discretize or resample the model. Default:  

Units for the time variable, the sample time
Changing this property has no effect on other properties, and
therefore changes the overall system behavior. Use Default:  

Input channel names, specified as one of the following:
Alternatively, use automatic vector expansion to assign input
names for multiinput models. For example, if sys.InputName = 'controls'; The input names automatically expand to When you estimate a model using an You can use the shorthand notation Input channel names have several uses, including:
Default:  

Input channel units, specified as one of the following:
Use Default:  

Input channel groups. The sys.InputGroup.controls = [1 2]; sys.InputGroup.noise = [3 5]; creates input groups named sys(:,'controls') Default: Struct with no fields  

Output channel names, specified as one of the following:
Alternatively, use automatic vector expansion to assign output
names for multioutput models. For example, if sys.OutputName = 'measurements'; The output names automatically expand to When you estimate a model using an You can use the shorthand notation Output channel names have several uses, including:
Default:  

Output channel units, specified as one of the following:
Use Default:  

Output channel groups. The sys.OutputGroup.temperature = [1]; sys.InputGroup.measurement = [3 5]; creates output groups named sys('measurement',:) Default: Struct with no fields  

System name, specified as a character vector. For example, Default:  

Any text that you want to associate with the system, stored as a string or a cell array of
character vectors. The property stores whichever data type you
provide. For instance, if sys1.Notes = "sys1 has a string."; sys2.Notes = 'sys2 has a character vector.'; sys1.Notes sys2.Notes ans = "sys1 has a string." ans = 1×1 cell array {'sys2 has a character vector.'} Default:  

Any type of data you want to associate with system, specified as any MATLAB^{®} data type. Default: 
customnet
 findop
 linear
 linearize
 nlhw
 pem
 poly1d
 saturation
 saturation
 sigmoidnet
 wavenet