Note: This page has been translated by MathWorks. Click here to see

To view all translated materials including this page, select Country from the country navigator on the bottom of this page.

To view all translated materials including this page, select Country from the country navigator on the bottom of this page.

Continuous Lyapunov equation solution

`lyap `

X = lyap(A,Q)

X = lyap(A,B,C)

X = lyap(A,Q,[],E)

`lyap `

solves the special
and general forms of the Lyapunov equation. Lyapunov equations arise
in several areas of control, including stability theory and the study
of the RMS behavior of systems.

`X = lyap(A,Q) `

solves the
Lyapunov equation

$$AX+X{A}^{T}+Q=0$$

where *A* and *Q* represent
square matrices of identical sizes. If *Q* is a symmetric
matrix, the solution `X`

is also a symmetric matrix.

`X = lyap(A,B,C) `

solves
the Sylvester equation

$$AX+XB+C=0$$

The matrices `A`

, `B`

, and `C`

must
have compatible dimensions but need not be square.

`X = lyap(A,Q,[],E)`

solves the generalized
Lyapunov equation

$$AX{E}^{T}+EX{A}^{T}+Q=0$$

where *Q* is a symmetric matrix. You must use
empty square brackets `[]`

for this function. If
you place any values inside the brackets, the function errors out.

The continuous Lyapunov equation has a unique solution if the
eigenvalues $${\alpha}_{1},{\alpha}_{2},\mathrm{...},{\alpha}_{n}$$ of *A* and $${\beta}_{1},{\beta}_{2},\mathrm{...},{\beta}_{n}$$ of *B* satisfy

$${\alpha}_{i}+{\beta}_{j}\ne 0\text{\hspace{1em}}for\text{\hspace{0.17em}}all\text{\hspace{0.17em}}pairs\text{\hspace{0.17em}}(i,j)$$

If this condition is violated, `lyap`

produces
the error message:

Solution does not exist or is not unique.

**Solve Lyapunov Equation**

Solve the Lyapunov equation

$$AX+X{A}^{T}+Q=0$$

where

$$A=\left[\begin{array}{cc}1& 2\\ -3& -4\end{array}\right]\text{\hspace{1em}}\text{\hspace{1em}}Q=\left[\begin{array}{cc}3& 1\\ 1& 1\end{array}\right]$$

The *A* matrix is stable, and the *Q* matrix
is positive definite.

A = [1 2; -3 -4]; Q = [3 1; 1 1]; X = lyap(A,Q)

X = 6.1667 -3.8333 -3.8333 3.0000

eig(X)

The command returns the following result:

ans = 0.4359 8.7308

**Solve Sylvester Equation**

Solve the Sylvester equation

$$AX+XB+C=0$$

where

$$A=5\text{\hspace{1em}}\text{\hspace{1em}}B=\left[\begin{array}{cc}4& 3\\ 4& 3\end{array}\right]\text{\hspace{1em}}\text{\hspace{1em}}C=\left[\begin{array}{cc}2& 1\end{array}\right]$$

A = 5; B = [4 3; 4 3]; C = [2 1]; X = lyap(A,B,C)

These commands return the following *X* matrix:

X = -0.2000 -0.0500

`lyap`

uses SLICOT routines SB03MD and SG03AD
for Lyapunov equations and SB04MD (SLICOT) and ZTRSYL (LAPACK) for
Sylvester equations.

[1] Bartels, R.H. and G.W. Stewart, "Solution
of the Matrix Equation AX + XB = C," *Comm. of the ACM*,
Vol. 15, No. 9, 1972.

[2] Barraud, A.Y., “A numerical algorithm
to solve A XA - X = Q,” *IEEE ^{®} Trans. Auto. Contr.*,
AC-22, pp. 883–885, 1977.

[3] Hammarling, S.J., “Numerical solution
of the stable, non-negative definite Lyapunov equation,” *IMA
J. Num. Anal.*, Vol. 2, pp. 303–325, 1982.

[4] Penzl, T., ”Numerical solution of
generalized Lyapunov equations,” *Advances in Comp.
Math.*, Vol. 8, pp. 33–48, 1998.

[5] Golub, G.H., Nash, S. and Van Loan, C.F.,
“A Hessenberg-Schur method for the problem AX + XB = C,”* IEEE Trans.
Auto. Contr.*, AC-24, pp. 909–913, 1979.