Contenu principal

lyap

Résolution une équation de Lyapunov en temps continu

Description

Utilisez lyap pour résoudre les formes spéciales et générales de l’équation de Lyapunov. Les équations de Lyapunov interviennent dans plusieurs domaines du contrôle, notamment la théorie de la stabilité et l'étude du comportement de la moyenne quadratique (RMS) des systèmes.

X = lyap(A,Q) renvoie une solution à l'équation de Lyapunov AX+XAT+Q=0A et Q représentent des matrices carrées de tailles identiques. Si Q est une matrice symétrique, la solution X en est une également.

exemple

X = lyap(A,B,C) renvoie une solution à l'équation de Sylvester AX+XB+C=0, où l'entrée A est une matrice m par m, l'entrée B, une matrice n par n, et C et X, des matrices m par n.

exemple

X = lyap(A,Q,[],E) résout l'équation de Lyapunov généralisée AXET+EXAT+Q=0, où Q est une matrice symétrique. Vous devez utiliser des crochets vides [] pour cette syntaxe. Si vous y placez des valeurs, la fonction renvoie une erreur.

exemple

Exemples

réduire tout

Cet exemple indique comment résoudre l'équation de Lyapunov :

AX+XAT+Q=0,

A=[12-3-4] et Q=[3111].

La matrice A est stable et la matrice Q est définie positive.

Définissez les matrices.

A = [1 2; -3 -4];  
Q = [3 1; 1 1];

Pour résoudre l’équation de Lyapunov, utilisez la fonction lyap.

X = lyap(A,Q)
X = 2×2

    6.1667   -3.8333
   -3.8333    3.0000

La fonction renvoie une matrice symétrique X. Pour vérifier si X est définie positive, vous pouvez calculer les valeurs propres.

eig(X)
ans = 2×1

    0.4359
    8.7308

La solution est définie positive.

Cet exemple indique comment résoudre l'équation de Sylvester :

AX+XB+C=0,

A=5, B=[4333] et C=[21].

Définissez les matrices.

A = 5;
B = [4 3; 3 3];
C = [2 1];

Utilisez la fonction lyap pour résoudre l'équation de Sylvester pour ces valeurs de A, B et C.

X = lyap(A,B,C)
X = 1×2

   -0.2063   -0.0476

Vous obtenez une matrice 1 par 2.

Cet exemple indique comment résoudre l'équation de Lyapunov généralisée AXET+EXAT+Q=0.

Générez les matrices A et E avec des valeurs aléatoires.

rng(0)
A = rand(2)
A = 2×2

    0.8147    0.1270
    0.9058    0.9134

E = randn(2)
E = 2×2

    0.3188   -0.4336
   -1.3077    0.3426

Générez une matrice symétrique Q avec des valeurs complexes.

Q = complex(randn(2),randn(2));
Q = Q*Q'
Q = 2×2 complex

  15.6642 + 0.0000i   5.6211 + 4.1271i
   5.6211 - 4.1271i  16.9265 + 0.0000i

Résolvez l'équation de Lyapunov généralisée.

X = lyap(A,Q,[],E)
X = 2×2 complex

  -2.0000 + 0.0000i  19.6841 - 3.6552i
  19.6841 + 3.6552i  20.9934 + 0.0000i

La solution X est une matrice symétrique 2 par 2.

Arguments d'entrée

réduire tout

Matrices d'entrées spécifiées sous la forme de matrices des tailles suivantes :

  • A, Q et E : matrices carrées m par m

  • B : matrice n par n

  • C : matrice m par n

Types de données : single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | fi
Support des nombres complexes : Oui

Arguments en sortie

réduire tout

Solution renvoyée en tant que matrice. Pour les équations de Lyapounov, la solution X est une matrice carrée m par m. Pour l'équation de Sylvester, la solution X est une matrice de même taille que C.

Limitations

L’équation de Lyapunov continue dispose d’une solution unique si les valeurs propres α1,α2,...,αn de A et β1,β2,...,βn de B satisfont αi+βj0 pour toutes les paires (i,j).

Si cette condition n’est pas respectée, lyap émet le message d’erreur suivant :

Solution does not exist or is not unique.

Algorithmes

lyap utilise les routines SLICOT SB03MD et SG03AD pour les équations de Lyapunov, et SB04MD (SLICOT) et ZTRSYL (LAPACK) pour les équations Sylvester.

Références

[1] Bartels, R. H., and G. W. Stewart. “Algorithm 432 [C2]: Solution of the Matrix Equation AX + XB = C [F4].” Communications of the ACM 15, no. 9 (September 1972): 820–26. https://doi.org/10.1145/361573.361582.

[2] Barraud, A. “A Numerical Algorithm to solveA^{T}XA - X = Q.” IEEE Transactions on Automatic Control 22, no. 5 (October 1977): 883–85. https://doi.org/10.1109/TAC.1977.1101604.

[3] Hammarling, S. J. “Numerical Solution of the Stable, Non-Negative Definite Lyapunov Equation Lyapunov Equation.” IMA Journal of Numerical Analysis 2, no. 3 (1982): 303–23. https://doi.org/10.1093/imanum/2.3.303.

[4] Penzl, Thilo. “Numerical Solution of Generalized Lyapunov Equations.” Advances in Computational Mathematics 8, no. 1 (January 1, 1998): 33–48. https://doi.org/10.1023/A:1018979826766.

[5] Golub, G., S. Nash, and C. Van Loan. “A Hessenberg-Schur Method for the Problem AX + XB= C.” IEEE Transactions on Automatic Control 24, no. 6 (December 1979): 909–13. https://doi.org/10.1109/TAC.1979.1102170.

Historique des versions

Introduit avant R2006a

Voir aussi

|