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 (Control System Toolbox) 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.
Version History
Introduced before R2006aSee Also
ctrb (Control System Toolbox) | ctrbf (Control System Toolbox) | ss2ss (Control System Toolbox) | tf (Control System Toolbox) | zpk (Control System Toolbox) | ss (Control System Toolbox) | pid (Control System Toolbox) | genss (Control System Toolbox) | uss (Robust Control Toolbox) | idtf | idss | idproc | idpoly | idgrey