Access state-space model data
[a,b,c,d] = ssdata(sys)
[a,b,c,d,Ts] = ssdata(sys)
[a,b,c,d] = ssdata(sys)
extracts the matrix (or multidimensional array) data A, B, C, D from
the state-space model (LTI array) sys. If sys is
a transfer function or zero-pole-gain model (LTI array), it is first
converted to state space. See ss (Control System Toolbox) for
more information on the format of state-space model data.
If sys appears in descriptor form (nonempty E matrix),
an equivalent explicit form is first derived.
If sys has internal delays, A, B, C, D are
obtained by first setting all internal delays to zero (creating a
zero-order Padé approximation). For some systems, setting delays
to zero creates singular algebraic loops, which result in either improper
or ill-defined, zero-delay approximations. For these systems, ssdata cannot
display the matrices and returns an error. This error does not imply
a problem with the model sys itself.
For generalized state-space (genss) models, ssdata returns
the state-space models evaluated at the current, nominal value of
all control design blocks. To access the dependency of a genss model
on its static control design blocks, use the A, B, C,
and D properties of the model.
[a,b,c,d,Ts] = ssdata(sys)
also returns the sample time Ts.
You can access the remaining LTI properties of sys with get or
by direct referencing. For example:
sys.statename
For arrays of state-space models with variable numbers of states, use the syntax:
[a,b,c,d] = ssdata(sys,'cell')
to extract the state-space matrices of each model as separate
cells in the cell arrays a, b, c,
and d.
get | idssdata | set | tfdata | zpkdata | dssdata (Control System Toolbox) | getDelayModel (Control System Toolbox) | ss (Control System Toolbox)