Supported Models for Time- and Frequency-Domain Data
System Identification Toolbox™ software supports estimation of linear models from both time- and frequency-domain data. For nonlinear models, this toolbox supports only time-domain data. Your time-domain data should be sampled at discrete and uniformly spaced time instants to obtain an input sequence.
| u={u(T),u(2T),...,u(NT)} | (1) |
and a corresponding output sequence
| y={y(T),y(2T),...,y(NT)} | (2) |
u(t) and y(t) are the values of the input and output signals at time t, respectively.
The data can have single or multiple inputs and outputs, and can be either real or complex. This toolbox also supports modeling both single- or multiple-channel input-output data or time-series data.
For information about supported operations for complex data, see Manipulating Complex-Valued Data. For more information on supported data and representing the data, see Representing Data in MATLAB Workspace.
Ways to Obtain Identification Data
You can obtain identification data by:
Measuring input and output signals from a physical system.
Your data must capture the important system dynamics, such as dominant time constants. After measuring the signals, organize the data into variables, as described in Representing Data in MATLAB Workspace. Then, import it in the System Identification app or represent it as a data object for estimating models at the command line.
Generating an input signal with desired characteristics, such as a random Gaussian or binary signal or a sinusoid, using
idinput. Then, generate an output signal using this input to simulate a model with known coefficients. For more information, see Generate Data Using Simulation.Using input/output data thus generated helps you study the impact of input signal characteristics and noise on estimation.
Logging signals from Simulink® models.
This technique is useful when you want to replace complex components in your model with identified models to speed up simulations or simplify control design tasks. For more information on how to log signals, see Save Signal Data Using Signal Logging (Simulink).
Supported Models for Time-Domain Data
Continuous-Time Models
You can directly estimate the following types of continuous-time models:
You can also use d2c to convert an estimated discrete-time model
into a continuous-time model.
Discrete-Time Models
You can estimate all linear and nonlinear models supported by the System Identification Toolbox product as discrete-time models, except process models, which are defined only in continuous-time.
ODEs (Grey-Box Models)
You can estimate both continuous-time and discrete-time models from time-domain data for linear and nonlinear differential and difference equations.
Nonlinear Models
You can estimate discrete-time Hammerstein-Wiener and nonlinear ARX models from time-domain data.
You can also estimate nonlinear grey-box models from time-domain data. See Estimate Nonlinear Grey-Box Models.
Supported Models for Frequency-Domain Data
There are two types of frequency-domain data:
Frequency response data
Frequency domain input/output signals which are Fourier Transforms of the corresponding time domain signals.
The data is considered continuous-time if its sample time (Ts) is
0, and is considered discrete-time if the sample time is nonzero.
Continuous-Time Models
You can estimate the following types of continuous-time models directly:
Transfer function models using continuous- or discrete-time data.
Process models using continuous- or discrete-time data.
Input-output polynomial models of output-error structure using continuous time data.
State-space models using continuous- or discrete-time data.
From continuous-time frequency-domain data, you can only estimate continuous-time models.
You can also use d2c to convert an estimated discrete-time model
into a continuous-time model.
Discrete-Time Models
You can estimate all linear model types supported by the System Identification Toolbox product as discrete-time models, except process models, which are defined in continuous-time only. For estimation of discrete-time models, you must use discrete-time data.
The noise component of a model cannot be estimated using frequency domain data, except for ARX models. Thus, the K matrix of an identified state-space model, the noise component, is zero. An identified polynomial model has output-error (OE) or ARX structure; BJ/ARMAX or other polynomial structure with nontrivial values of C or D polynomials cannot be estimated.
ODEs (Grey-Box Models)
For linear grey-box models, you can estimate both continuous-time and discrete-time models
from frequency-domain data. The noise component of the model, the K matrix,
cannot be estimated using frequency domain data; it remains fixed to
0.
Nonlinear grey-box models are supported only for time-domain data.
Nonlinear Black-Box Models
Nonlinear black box (nonlinear ARX and Hammerstein-Wiener models) cannot be estimated using frequency domain data.