Sylvester equation
From Wikipedia, the free encyclopedia
In control theory, the Sylvester equation is the matrix equation of the form
- AX + XB = C,
where A,B,X,C are matrices.
Contents |
[edit] Existence and uniqueness of the solution
Using the Kronecker product notation and the vectorization operator , we can rewrite the equation in the form
where In is the identity matrix. In this form, the Sylvester equation can be seen as a linear system of dimension .[1]
If A = ULU − 1 and BT = VMV − 1 are the Jordan canonical forms of A and BT, and λi and μj are their eigenvalues, one can write
Since is upper triangular with diagonal elements λi + μj, the matrix on the left hand side is singular if and only if there exist i and j such that λi = − μj.
Therefore, we have proved that the Sylvester equation has a unique solution if and only if A and − B have no common eigenvalues.
[edit] Numerical solutions
A classical algorithm for the numerical solution of the Sylvester equation is the Bartels--Stewart algorithm, which consists in transforming A and B into Schur form by a QR algorithm, and then solving the resulting triangular system via back-substitution. This algorithm, whose computational cost is O(n3) arithmetical operations, is used, among others, by LAPACK, Matlab and GNU Octave (in the syl
function).
[edit] See also
[edit] References
R. H. Bartels and G. W. Stewart, Solution of the matrix equation $AX +XB = C$, Comm. ACM, 15 (1972), pp. 820 – 826.
[edit] Notes
- ^ Rewriting the equation in this form is not advised for the numerical solution, though, since the linear system version is costly to solve and can be ill-conditioned