| Control System Toolbox™ | ![]() |
csys = canon(sys,'modal')
csys = canon(sys,'modal',CONDT)
csys = canon(sys,'companion')
canon computes a canonical state-space model for the continuous or discrete LTI system sys. Two types of canonical forms are supported.
csys = canon(sys,'modal') returns a realization csys in
modal form. If A has no repeated eigenvalues, the
real eigenvalues appear on the diagonal of the A matrix
and the complex conjugate eigenvalues appear in 2-by-2 blocks on the
diagonal of A. For a system with eigenvalues
, the modal A matrix
is of the form

csys = canon(sys,'modal',CONDT) specifies an upper bound CONDT on the condition number of the block-diagonalizing transformation T. The default value is CONDT=1e8. Increase CONDT to reduce the size of the eigenvalue clusters (setting CONDT=Inf amounts to diagonalizing A).
csys = canon(sys,'companion') produces a companion realization of sys where the characteristic polynomial of the system appears explicitly in the rightmost column of the A matrix. For a system with characteristic polynomial
![]()
the corresponding companion
matrix is

For state-space models sys,
[csys,T] = canon(sys,'type')
also returns the state coordinate transformation T relating
the original state vector
and the canonical state vector
, where
![]()
This syntax is meaningful only when sys is a state-space model.
Transfer functions or zero-pole-gain models are first converted to state space using ss.
The transformation to modal form uses the matrix P of eigenvectors of the A matrix. The modal form is then obtained as

The state transformation
returned is the inverse of
.
The reduction to companion form uses a state similarity transformation based on the controllability matrix [1].
The companion transformation requires that the system be controllable from the first input. The companion form is often poorly conditioned for most state-space computations; avoid using it when possible.
[1] Kailath, T. Linear Systems, Prentice-Hall, 1980.
![]() | c2d | care | ![]() |
| © 1984-2008- The MathWorks, Inc. - Site Help - Patents - Trademarks - Privacy Policy - Preventing Piracy - RSS |