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