Main Content

lyap

Soluzione dell'equazione di Lyapunov continua

Sintassi

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

Descrizione

lyap risolve le forme speciali e generali dell'equazione di Lyapunov. Le equazioni di Lyapunov si presentano in diverse aree di controllo, tra cui la teoria della stabilità e lo studio del comportamento RMS dei sistemi.

X = lyap(A,Q) risolve l'equazione di Lyapunov

AX+XAT+Q=0

dove A e Q rappresentano matrici quadrate di grandezza identica. Se Q è una matrice simmetrica, anche la soluzione X è una matrice simmetrica.

X = lyap(A,B,C) risolve l'equazione di Sylvester

AX+XB+C=0

Le matrici A, B e C devono avere dimensioni compatibili ma non devono essere quadratiche.

X = lyap(A,Q,[],E) risolve l'equazione di Lyapunov generalizzata

AXET+EXAT+Q=0

dove Q è una matrice simmetrica. Per questa funzione è necessario utilizzare le parentesi quadre vuote []. Se si inserisce un qualsiasi valore all'interno delle parentesi, la funzione restituirà un messaggio di errore.

Limiti

L'equazione di Lyapunov continua ha una soluzione unica se gli autovalori α1,α2,...,αn di A e β1,β2,...,βn di B soddisfano

αi+βj0forallpairs(i,j)

Se questa condizione è violata, lyap produce il seguente messaggio di errore:

Solution does not exist or is not unique.

Esempi

Esempio 1

Risolvere l'equazione di Lyapunov

Risolvere l'equazione di Lyapunov

AX+XAT+Q=0

dove

A=[1234]Q=[3111]

La matrice A è stabile e la matrice Q è positiva definita.

A = [1 2; -3 -4];  
Q = [3 1; 1 1];
X = lyap(A,Q)
Questi comandi restituiscono la seguente matrice X:
X =

    6.1667   -3.8333
   -3.8333    3.0000
È possibile calcolare gli autovalori per vedere che X sia positivo definito.

eig(X)

Il comando restituisce il seguente risultato:

ans =

    0.4359
    8.7308

Esempio 2

Risolvere l'equazione di Sylvester

Risolvere l'equazione di Sylvester

AX+XB+C=0

dove

A=5B=[4343]C=[21]

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

Questi comandi restituiscono la seguente matrice X:

X =

   -0.2000   -0.0500

Algoritmi

lyap utilizza le routine SLICOT SB03MD e SG03AD per le equazioni di Lyapunov e la routine (SLICOT) SB04MD e ZTRSYL (LAPACK) per le equazioni di Sylvester.

Riferimenti

[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.

Cronologia versioni

Introduzione prima di R2006a

Vedi anche

|