n4sid
Estimate state-space model using subspace method with time-domain or frequency-domain data
Syntax
Description
Estimate State-Space Model
estimates a discrete-time state-space model sys
= n4sid(tt
,nx
)sys
of order
nx
using all the input and output signals in the timetable
tt
.
sys
is a 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. For dynamic systems,
D is fixed to zero by default, meaning that the system has no
feedthrough. For static systems (nx = 0
), D is an
estimable parameter by default.
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. You can also use this syntax to
estimate a time-series model if tt
contains a single variable that
represents the sole output.
For MIMO systems and for timetables that contain more variables than you plan to use
for estimation, you must also use name-value arguments to specify the names of the input
and output channels you want. For more information, see tt
.
To estimate a continuous-time model, set 'Ts'
to
0
using name-value syntax.
uses the time-domain or frequency-domain data in the data object
sys
= n4sid(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 data sample time or experiment
labeling, that data objects provide.
Specify Additional Options
incorporates additional options specified by one or more name-value pair arguments. For
example, to estimate a continuous-time model, specify the sample time
sys
= n4sid(___,Name,Value
)'Ts'
as 0
. Use the 'Form'
,
'Feedthrough'
, and 'DisturbanceModel'
name-value pair 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.
Examples
Input Arguments
Output Arguments
References
[1] Ljung, L. System Identification: Theory for the User, Appendix 4A, Second Edition, pp. 132–134. Upper Saddle River, NJ: Prentice Hall PTR, 1999.
[2] van Overschee, P., and B. De Moor. Subspace Identification of Linear Systems: Theory, Implementation, Applications. Springer Publishing: 1996.
[3] Verhaegen, M. "Identification of the deterministic part of MIMO state space models." Automatica, 1994, Vol. 30, pp. 61–74.
[4] Larimore, W.E. "Canonical variate analysis in identification, filtering and adaptive control." Proceedings of the 29th IEEE Conference on Decision and Control, 1990, pp. 596–604.
[5] McKelvey, T., H. Akcay, and L. Ljung. "Subspace-based multivariable system identification from frequency response data." IEEE Transactions on Automatic Control, 1996, Vol. 41, pp. 960–979.