State-space model with identifiable parameters
Use idss
to create a continuous-time or discrete-time state-space
model with identifiable (estimable) coefficients, or to convert Dynamic System Models to
state-space form.
A state-space model of a system with input vector u, output vector y, and disturbance e takes the following form in continuous time:
In discrete time, the state-space model takes the following form:
For idss
models, the elements of the state-space matrices
A, B, C, and D
can be estimable parameters. The elements of the state disturbance K can
also be estimable parameters. The idss
model stores the values of these
matrix elements in the A
, B
, C
,
D
, and K
properties of the model.
You can obtain an idss
model object in one of three ways.
Estimate the idss
model based on the input-output measurements of
a system by using n4sid
or ssest
. These estimation commands estimate the values of the estimable
elements of the state-space matrices. The estimated values are stored in the
A
, B
, C
, D
,
and K
properties of the resulting idss
model. The
Report
property of the resulting model stores information about the
estimation, such as on the handling of initial state values and the options used in
estimation. For
example:
sys = ssest(data,nx); A = sys.A; B = sys.B; sys.Report
For more examples of estimating an idss
model, see ssest
or n4sid
.
Create an idss
model using the idss
command.
For
example:
sys = idss(A,B,C,D)
idss
model to configure an initial parameterization for
estimation of a state-space model to fit measured response data. When you do so, you can
specify constraints on one or more of the state-space matrix elements. For instance, you
can fix the values of some elements, or specify minimum or maximum values for the free
elements. You can then use the configured model as an input argument to an estimation
command (ssest
or n4sid
) to estimate parameter values with those constraints. For examples,
see Create State-Space Model with Identifiable Parameters and Configure Identifiable Parameters of State-Space Model.Convert an existing dynamic system model to an idss
model using
the idss
command. For example:
sys_ss = idss(sys_tf);
For information on functions you can use to extract information from or transform
idss
model objects, see Object Functions.
creates a state-space
model with specified state-space matrices sys
= idss(A,B,C,D)A,B,C,D
. By default, sys
is a discrete-time model with
an unspecified sample time and no state disturbance element. Use this syntax especially
when you want to configure an initial parameterization as an input to a state-space
estimation function such as n4sid
or ssest
.
sets additional properties using one or more name-value pair arguments. Specify
name-value pair arguments after any of the input argument combinations in the previous
syntaxes.sys
= idss(___,Name,Value
)
converts sys
= idss(sys0
,'split')sys0
to idss
model form, and treats the
last Ny input channels of sys0
as noise channels
in the returned model.
sys0
must be a numeric (nonidentified) tf
(Control System Toolbox), zpk
(Control System Toolbox), or ss
(Control System Toolbox) model object. Also, sys0
must have at least as many
inputs as outputs.
In general, any function applicable to Dynamic System Models is
applicable to an idss
model object. These functions are of four general types.
Functions that operate and return idss
model objects enable you to
transform and manipulate idss
models. For instance:
Functions that perform analytical and simulation functions on idss
objects, such as bode
and sim
Functions that retrieve or interpret model information, such as advice
and getpar
Functions that convert idss
objects into a different model type,
such as idpoly
or idtf
for time domain or idfrd
for continuous domain
The following lists contain a representative subset of the functions that you can use with
idss
models.
idgrey
| idpoly
| idproc
| idssdata
| idtf
| n4sid
| pem
| ssest
| ssestOptions
| translatecov