Industriële fabricage
Industrieel internet der dingen | Industriële materialen | Onderhoud en reparatie van apparatuur | Industriële programmering |
home  MfgRobots >> Industriële fabricage >  >> Industrial programming >> MATLAB

Eigenwaarden & Eigenvectoren in MATLAB Beheersen: Een Praktische Gids

Eigenwaarden en eigenvectoren zijn fundamentele concepten in lineaire algebra, breed gebruikt in diverse vakgebieden, waaronder natuurkunde, techniek en data-analyse. In MATLAB kunnen deze concepten eenvoudig verkend en berekend worden.

Wat zijn Eigenwaarden?

Een eigenwaarde is een scalaire, aangeduid als (lambda), geassocieerd met een lineaire transformatie van een vectorruimte. Het vertegenwoordigt de factor waarmee de corresponderende eigenvector tijdens de transformatie wordt geschaald.

Wat zijn Eigenvectoren?

Een eigenvector is een niet-nul vector die alleen verandert door een scalaire factor wanneer een lineaire transformatie op hem wordt toegepast. Met andere woorden, als A een matrix is, v een eigenvector van A corresponderend aan de eigenwaarde λ als:

Av = λv

Hierbij is A een vierkante matrix, v de eigenvector, en λ de eigenwaarde.

MATLAB Functies

MATLAB biedt ingebouwde functies om eigenwaarden en eigenvectoren te berekenen.

eig Gebruiken

Deze functie berekent de eigenwaarden en eigenvectoren van een matrix.

Syntaxis

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)

Uitleg van Syntaxis

  • e = eig(A) retourneert een kolomvector met de eigenwaarden van de vierkante matrix A.
  • [V,D] = eig(A) retourneert een diagonale matrix D met de eigenwaarden van A en een matrix V wiens kolommen de corresponderende eigenvectoren zijn. Dit betekent dat A * V hetzelfde is als V * D.
  • [V,D,W] = eig(A) retourneert ook een volledige matrix W wiens kolommen de corresponderende linkereigenvectoren zijn. Dit betekent dat W' * A hetzelfde is als D * W'.
  • Het eigenwaardeprobleem gaat over het vinden van oplossingen voor de vergelijking Av = λv, waar A een vierkante matrix is, v een kolomvector, en λ een scalaire. De waarden die deze vergelijking voldoen zijn de eigenwaarden, en de v-waarden die het voldoen zijn de rechter eigenvectoren. De linkereigenvectoren, w, voldoen aan de vergelijking w'A = λw'.
  • e = eig(A,B) retourneert een kolomvector met de gegeneraliseerde eigenwaarden van de vierkante matrices A en B.
  • [V,D] = eig(A,B) retourneert een diagonale matrix D met de gegeneraliseerde eigenwaarden en een volledige matrix V wiens kolommen de corresponderende rechter eigenvectoren zijn. Dit betekent dat A * V = B * V * D.
  • [V,D,W] = eig(A,B) retourneert ook een volledige matrix W wiens kolommen de corresponderende linkereigenvectoren zijn. Dit betekent dat W' * A = D * W' * B.
  • Het gegeneraliseerde eigenwaardeprobleem gaat over het vinden van oplossingen voor Av = λBv, waar A en B vierkante matrices zijn, v een kolomvector, en λ een scalaire. De waarden die voldoen zijn de gegeneraliseerde eigenwaarden, en de v-waarden de corresponderende rechter eigenvectoren. De linkereigenvectoren, w, voldoen aan w'A = λw'B.
  • [___] = eig(A, balanceOption), waar balanceOption "nobalance" is, schakelt de voorlopige balanceringsstap in het algoritme uit. Standaard is balanceOption "balance", wat balancering inschakelt. De eig functie kan elk van de uitvoerargumenten uit de vorige voorbeelden retourneren.
  • [___] = eig(A,B,algorithm), waar algorithm "chol" is, gebruikt de Cholesky-factorisatie van B om de gegeneraliseerde eigenwaarden te berekenen. Het standaardalgoritme hangt af van de eigenschappen van A en B, maar is "qz" (QZ-algoritme) wanneer A of B niet symmetrisch zijn.
  • [___] = eig(___,outputForm) retourneert de eigenwaarden in het formaat gespecificeerd door outputForm, met elk van de invoer- of uitvoerargumenten eerder genoemd. Stel outputForm in op "vector" om de eigenwaarden in een kolomvector te krijgen, of "matrix" om ze in een diagonale matrix te krijgen.

Voorbeelden voor MATLAB Functie eig()

Hier zijn enkele voorbeelden om te illustreren hoe u het gebruikt:

Voorbeeld 1: Eigenwaarden Berekenen met e = eig(A)

In MATLAB kunt u de eigenwaarden van matrix A vinden met de eig functie. Overweeg de volgende code:

% Definieer de matrix A
A = [1, 2, 3; 4, 5, 6; 7, 8, 9];
% Bereken de eigenwaarden
e = eig(A)

In het bovenstaande voorbeeld:

  • De matrix A is gedefinieerd als een 3x3 matrix met invoer zoals getoond.
  • De eig(A) functie berekent de eigenwaarden van matrix A.
  • Het resultaat van eig(A) wordt opgeslagen in de variabele e, een kolomvector met de eigenwaarden van A.

Wanneer de code wordt berekend, is de uitvoer als volgt:

>> % Definieer de matrix A
A = [1, 2, 3; 4, 5, 6; 7, 8, 9];
% Bereken de eigenwaarden
e = eig(A)
e =
16.1168
-1.1168
-0.0000

Voorbeeld 2: Eigenwaarden en Eigenvectoren Krijgen met [V,D] = eig(A)

In MATLAB kunt u de eigenwaarden en eigenvectoren van matrix A vinden met de eig functie.

Overweeg de volgende code:

% Definieer de matrix A
A = [2, -1; 4, 3];
% Bereken de eigenwaarden en eigenvectoren
[V, D] = eig(A);
% Toon de eigenwaarden
disp('Eigenwaarden:');
disp(D);
% Toon de eigenvectoren
disp('Eigenvectoren:');
disp(V);

In bovenstaande code:

  • De matrix A is gedefinieerd als een 2x2 matrix met invoer zoals getoond.
  • De [V, D] = eig(A) functie berekent zowel de eigenwaarden (D) als de corresponderende eigenvectoren (V) van matrix A.
  • D is een diagonale matrix met de eigenwaarden van A.
  • V is een matrix wiens kolommen de corresponderende eigenvectoren zijn.

Wanneer de code wordt uitgevoerd, is de uitvoer als volgt:

>> % Definieer de matrix A
A = [2, -1; 4, 3];
% Bereken de eigenwaarden en eigenvectoren
[V, D] = eig(A);
% Toon de eigenwaarden
disp('Eigenwaarden:');
disp(D);
% Toon de eigenvectoren
disp('Eigenvectoren:');
disp(V);
Eigenwaarden:
2.5000 + 1.9365i     0.0000 + 0.0000i
0.0000 + 0.0000i     2.5000 - 1.9365i
Eigenvectoren:
-0.1118 + 0.4330i   -0.1118 - 0.4330i
0.8944 + 0.0000i     0.8944 + 0.0000i

MATLAB

  1. MATLAB Getallen: Typen, Opslag en Conversie
  2. Polynomen in MATLAB: Representatie, Evaluatie & Curve Fitting
  3. MATLAB Handleiding: Efficiënt Polynoomafgeleiden Berekenen
  4. MATLAB voor Calculus: Limieten, Differentiaal & Integralen
  5. Essentiële MATLAB Commando's voor Efficiënte Berekening
  6. Variabelen in MATLAB Begrijpen: Basis en Voorbeelden
  7. MATLAB: Uitgebreid Overzicht van een Leidende Numerieke Rekenomgeving
  8. Symbolische Afgeleiden Berekenen in MATLAB met diff
  9. Beslissingen in MATLAB: Uitgebreide Gids
  10. Algebraïsche Vergelijkingen in MATLAB: Oplossen, Vereenvoudigen & Ontbinden
  11. Data Exporteren uit MATLAB: Bestandsformaten & Technieken