Fabrication industrielle
Internet des objets industriel | Matériaux industriels | Entretien et réparation d'équipement | Programmation industrielle |
home  MfgRobots >> Fabrication industrielle >  >> Industrial programming >> MATLAB

Maîtriser les valeurs et vecteurs propres dans MATLAB : Guide pratique

Les valeurs propres et vecteurs propres sont des concepts fondamentaux en algèbre linéaire, largement utilisés dans divers domaines, y compris la physique, l'ingénierie et l'analyse de données. Dans MATLAB, ces concepts peuvent être explorés et calculés facilement.

Que sont les valeurs propres ?

Une valeur propre est un scalaire, noté (lambda), associé à une transformation linéaire d'un espace vectoriel. Elle représente le facteur par lequel le vecteur propre correspondant est mis à l'échelle pendant la transformation.

Que sont les vecteurs propres ?

Un vecteur propre est un vecteur non nul qui ne change que par un facteur scalaire quand une transformation linéaire lui est appliquée. En d'autres termes, si A est une matrice, v est un vecteur propre de A correspondant à la valeur propre si −

Av = λv

Ici, A est une matrice carrée, v est le vecteur propre, et λ est la valeur propre.

Fonctions MATLAB

MATLAB fournit des fonctions intégrées pour calculer les valeurs propres et vecteurs propres.

Utilisation de eig

Cette fonction calcule les valeurs propres et vecteurs propres d'une matrice.

Syntaxe

 e = eig(A) [V,D] = eig(A) [V,D,W] = eig(A) e = eig(A,B) [V,D] = eig(A,B) [V,D,W] = eig(A,B) [___] = eig(A,balanceOption) [___] = eig(A,B,algorithm) [___] = eig(___,outputForm) 

Explication de la syntaxe

e = eig(A) retourne un vecteur colonne avec les valeurs propres de la matrice carrée A.

[V,D] = eig(A) retourne une matrice diagonale D avec les valeurs propres de A et une matrice V dont les colonnes sont les vecteurs propres correspondants. Cela signifie que multiplier A par V est la même chose que multiplier V par D.

[V,D,W] = eig(A) retourne aussi une matrice complète W dont les colonnes sont les vecteurs propres gauches correspondants. Cela signifie que multiplier la transposée de W par A est la même chose que multiplier D par la transposée de W.

Le problème des valeurs propres consiste à trouver les solutions de l'équation Av = λv, où A est une matrice carrée, v est un vecteur colonne, et λ est un scalaire. Les valeurs qui satisfont cette équation sont les valeurs propres, et les valeurs de v qui la satisfont sont les vecteurs propres droits. Les vecteurs propres gauches, w, satisfont l'équation w'A = λw'.

e = eig(A,B) retourne un vecteur colonne avec les valeurs propres généralisées des matrices carrées A et B.

[V,D] = eig(A,B) retourne une matrice diagonale D avec les valeurs propres généralisées et une matrice complète V dont les colonnes sont les vecteurs propres droits correspondants. Cela signifie que multiplier A par V est la même chose que multiplier B, V et D ensemble.

[V,D,W] = eig(A,B) retourne aussi une matrice complète W dont les colonnes sont les vecteurs propres gauches correspondants. Cela signifie que multiplier la transposée de W par A est la même chose que multiplier D, la transposée de W et B.

Le problème des valeurs propres généralisées consiste à trouver les solutions de l'équation Av = λBv, où A et B sont des matrices carrées, v est un vecteur colonne, et λ est un scalaire. Les valeurs qui satisfont cette équation sont les valeurs propres généralisées, et les valeurs de v sont les vecteurs propres droits correspondants. Les vecteurs propres gauches, w, satisfont l'équation w'A = λw'B.

[___] = eig(A, balanceOption), où balanceOption est "nobalance", désactive l'étape préliminaire d'équilibrage dans l'algorithme. Par défaut, balanceOption est "balance", ce qui active l'équilibrage. La fonction eig peut retourner l'un des arguments de sortie mentionnés dans les exemples précédents.

[___] = eig(A,B,algorithm), où algorithm est "chol", utilise la factorisation de Cholesky de B pour calculer les valeurs propres généralisées. L'algorithme par défaut dépend des propriétés de A et B, mais c'est "qz" (algorithme QZ) quand A ou B ne sont pas symétriques.

[___] = eig(___,outputForm) retourne les valeurs propres dans le format spécifié par outputForm, en utilisant l'un des arguments d'entrée ou de sortie mentionnés précédemment. Définissez outputForm sur "vector" pour obtenir les valeurs propres dans un vecteur colonne, ou "matrix" pour les obtenir dans une matrice diagonale.

Exemples pour la fonction Matlab eig()

Voici quelques exemples pour illustrer comment l'utiliser −

Exemple 1 : Calculer les valeurs propres en utilisant e = eig(A)

Dans MATLAB, vous pouvez trouver les valeurs propres de la matrice A en utilisant la fonction eig. Considérez le code suivant −

 % Définir la matrice A A = [1, 2, 3; 4, 5, 6; 7, 8, 9]; % Calculer les valeurs propres e = eig(A) 

Dans l'exemple ci-dessus −

Quand le code est calculé, la sortie que nous obtenons est la suivante −

 >> % Définir la matrice A A = [1, 2, 3; 4, 5, 6; 7, 8, 9]; % Calculer les valeurs propres e = eig(A) e = 16.1168 -1.1168 -0.0000 

Exemple 2 : Obtenir les valeurs propres et vecteurs propres en utilisant [V,D] = eig(A)

Dans MATLAB, vous pouvez trouver les valeurs propres et vecteurs propres de la matrice A en utilisant la fonction eig.

Considérez le code suivant −

 % Définir la matrice A A = [2, -1; 4, 3]; % Calculer les valeurs propres et vecteurs propres [V, D] = eig(A); % Afficher les valeurs propres disp('Valeurs propres:'); disp(D); % Afficher les vecteurs propres disp('Vecteurs propres:'); disp(V); 

Dans le code ci-dessus nous avons −

Quand le code est exécuté, la sortie que nous obtenons est la suivante −

 >> % Définir la matrice A A = [2, -1; 4, 3]; % Calculer les valeurs propres et vecteurs propres [V, D] = eig(A); % Afficher les valeurs propres disp('Valeurs propres:'); disp(D); % Afficher les vecteurs propres disp('Vecteurs propres:'); disp(V); Valeurs propres: 2.5000 + 1.9365i 0.0000 + 0.0000i 0.0000 + 0.0000i 2.5000 - 1.9365i Vecteurs propres: -0.1118 + 0.4330i -0.1118 - 0.4330i 0.8944 + 0.0000i 0.8944 + 0.0000i 

MATLAB

  1. Visualiser les expressions mathématiques dans MATLAB : Guide de tracé 2D et 3D
  2. MATLAB : Aperçu complet de l'environnement de calcul numérique de référence
  3. Maîtriser les chaînes de caractères MATLAB : création et utilisation faciles
  4. Comprendre les variables dans MATLAB : Bases et exemples
  5. Commandes MATLAB essentielles pour un calcul efficace
  6. MATLAB pour le calcul : résolution d'équations différentielles, intégrales et limites
  7. Maîtriser les structures de décision dans MATLAB : Guide complet
  8. Maîtriser les graphiques MATLAB : techniques de tracé avancées
  9. MATLAB Transformée Cosinus Inverse 2-D : Restaurer des images depuis les données de fréquence