ssest
Estimate state-space model using time-domain or frequency-domain data
Syntax
Description
Estimate State-Space Model
estimates the continuous-time state-space model sys
= ssest(tt
,nx
)sys
of order
nx
, using all the input and output signals in the timetable
tt
.
You can use this syntax for SISO and MISO systems. The function assumes that the last variable in the timetable is the single output signal.
sys
is an idss
model of the following form:
A, B, C,
D, and K are state-space matrices.
u(t) is the input,
y(t) is the output,
e(t) is the disturbance, and
x(t) is the vector of nx
states.
All entries of A, B, C, and
K are free estimable parameters by default. D is
fixed to zero by default, meaning that there is no feedthrough, except for static systems
(nx = 0
).
To estimate discrete-time models, set 'Ts'
to the model sample
time using name-value syntax.
To estimate MIMO models, use name-value syntax to specify the input and output
channels using 'InputName'
and 'OutputName'
to
the corresponding timetable variable names.
You can also use 'InputName'
and
'OutputName'
to specify specific channels when you do not want to
use all the available channels in tt
.
estimates a discrete-time state-space model using the time-domain input and output signals
in the comma-separated matrices sys
= ssest(u
,y
,nx
,'Ts'
,Ts
)u
,y
and the
model sample time Ts
.
The software assumes that the data sample time is Ts
seconds.
You can use this syntax for SISO, MISO, and MIMO systems.
Estimating a continuous-time model with u
,y
by not specifying Ts
is not recommended. The software assumes that
the data sample time is 1 second. You cannot change this sample time. If you want to
estimate a continuous-time model from data with a sample time other than 1 second, you
must first convert your matrix data to a timetable or iddata
object. For
an example of this conversion, see Convert SISO Matrix Data to Timetable or Convert MIMO Matrix Data to Timetable for Continuous-Time Model Estimation.
estimates a continuous-time state-space model using the time-domain or frequency-domain
data in the data object sys
= ssest(data
,nx
)data
.
Use this syntax especially when you want to estimate a state-space model using frequency-domain or frequency-response data, or when you want to take advantage of the additional information, such as intersample behavior, data sample time, or experiment labeling, that data objects provide.
Estimate Time Series State-Space Model
estimates the continuous time series model sys
= ssest(tt
,nx
)sys
to fit the data in the
timetable tt
. tt
must contain a single numeric
variable. The function interprets the timetable variable data as a time series, which has
no inputs and a single output.
For a time series model, the sys
idss
model has the following form:
estimates a multivariate time series model that uses the timetable output signals that
have the variable names specified in sys
= ssest(tt
,nx
,'OutputName'
,outputVariables,'InputName'
,[])outputVariables
. The function
interprets the specified variables as a multivariate time series. If you specify all the
variables in tt
in 'OutputName'
, you can omit
the specification of 'InputName'
.
Specify Additional Model Options
incorporates additional options specified by one or more name-value pair arguments. sys
= ssest(___,Name,Value
)
For example, specify a discrete-time system from matrix data that has a sample time of
0.1 using sys = ssest(um,ym,np,'Ts',0.1)
. Specify input and output
signal variable names that correspond with the variables to use for MIMO timetable data
using sys =
ssest(data,nx,'InputName',["u1","u4"],'OutputName',["y1","y3"])
. Use the
'Form'
, 'Feedthrough'
, and
'DisturbanceModel'
name-value arguments to modify the default
behavior of the A, B, C,
D, and K matrices.
You can use this syntax with any of the previous input-argument combinations.
Configure Initial Parameters
Specify Additional Estimation Options
Examples
Input Arguments
Output Arguments
Algorithms
ssest
initializes the parameter estimates using either a noniterative
subspace approach or an iterative rational function estimation approach. It then refines the
parameter values using the prediction error minimization approach. For more information, see
pem
and ssestOptions
.
References
[1] Ljung, L. System Identification: Theory for the User, Second Edition. Upper Saddle River, NJ: Prentice Hall PTR, 1999.
Version History
Introduced in R2012aSee Also
Functions
ssestOptions
|ssregest
|idss
|n4sid
|tfest
|procest
|polyest
|iddata
|idfrd
|canon
|idgrey
|pem
Live Editor Tasks
Topics
- Estimate State-Space Models at the Command Line
- Estimate State-Space Models with Free-Parameterization
- Estimate State-Space Models with Canonical Parameterization
- Estimate State-Space Models with Structured Parameterization
- Use State-Space Estimation to Reduce Model Order
- What Are State-Space Models?
- Supported State-Space Parameterizations
- State-Space Model Estimation Methods
- Regularized Estimates of Model Parameters
- Estimating Models Using Frequency-Domain Data