canon
(Not recommended) Canonical state-space realization
canon
is not recommended. Use modalreal
and compreal
instead. (since R2023b) For more information on how to update your code, see Version History.
Description
transforms the linear model csys
= canon(sys
,type
)sys
into the canonical realization
csys
. type
specifies whether
csys
is in modal or companion form.
For information on controllable and observable canonical forms, see State-Space Realizations.
Examples
Input Arguments
Output Arguments
Limitations
You cannot use frequency-response data models to convert to canonical state-space form.
The companion form is poorly conditioned for most state-space computations, that is, the transformation to companion form is based on the controllability matrix which is almost always numerically singular for mid-range orders. Hence, avoid using it when possible.
Algorithms
The canon
command uses the bdschur
command to convert sys
into modal form and to
compute the transformation T
. If sys
is not a
state-space model, canon
first converts it to state space using
ss
.
The reduction to companion form uses a state similarity transformation based on the controllability matrix [1].
References
[1] Kailath, T. Linear Systems, Prentice-Hall, 1980.