Outline Introduction Egenvärden & egenvektorer I MATLAB Visualisering Egenvärden och egenvektorer Carmen Arévalo 2010-02-01 Carmen Arévalo Egenvärden och egenvektorer 2010-02-01 1 / 16
Outline Introduction Egenvärden & egenvektorer I MATLAB Visualisering Översikt Introduktion: Grundläggande definitioner Karakteristiska polynomet i MATLAB Potensmetoden Visualisering av egenvärden och egenvektorer Skiftade potensmetoden Invers iteration Egenvärden, egenvektorer och diagonalisering i MATLAB Carmen Arévalo Egenvärden och egenvektorer 2010-02-01 2 / 16
Outline Introduction Egenvärden & egenvektorer I MATLAB Visualisering Egenvärden och egenvektorer Definitioner Diagonalisering Skalären λ är en egenvärde till matrisen A om Ax = λx, x 0 och vektorn x är en (motsvarande) egenvektor till A. ( ) ( ) ( ) ( ) ( 9 5 5 5 9 5 1 = 10, 1 5 1 1 1 5 1 ) ( 1 = 4 1 ) Om A är en n n matris, är p A (λ) = det(λi A) ett n-grad polynom som kallas för det karakteristiska polynomet för A. ( ) λ 9 5 det(λi A) = det 1 λ 5 = (λ 9) (λ 5) 5 = λ 2 14λ + 40 Carmen Arévalo Egenvärden och egenvektorer 2010-02-01 3 / 16
Outline Introduction Egenvärden & egenvektorer I MATLAB Visualisering Egenvärden och egenvektorer Definitioner Diagonalisering Skalären λ är en egenvärde till matrisen A om Ax = λx, x 0 och vektorn x är en (motsvarande) egenvektor till A. ( ) ( ) ( ) ( ) ( 9 5 5 5 9 5 1 = 10, 1 5 1 1 1 5 1 ) ( 1 = 4 1 ) Om A är en n n matris, är p A (λ) = det(λi A) ett n-grad polynom som kallas för det karakteristiska polynomet för A. ( ) λ 9 5 det(λi A) = det 1 λ 5 = (λ 9) (λ 5) 5 = λ 2 14λ + 40 Carmen Arévalo Egenvärden och egenvektorer 2010-02-01 3 / 16
Outline Introduction Egenvärden & egenvektorer I MATLAB Visualisering Egenvärden och egenvektorer Satser Diagonalisering Om Ax = λx så gäller att ca har egenvektorn x med motsvarande egenvärdet cλ, A + ci har egenvektorn x med motsvarande egenvärdet λ + c, A n har egenvektorn x med motsvarande egenvärdet λ n, A 1 har egenvektorn x med motsvarande egenvärdet 1/λ (om A är inverterbar). Egenvärdena till A är nollställena till p A. Egenvektorerna är lösningarna till (λi A)x = 0. ( ) λ 9 5 det = λ 2 14λ + 40 1 λ 5 = (λ 10) (λ 4) Carmen Arévalo Egenvärden och egenvektorer 2010-02-01 4 / 16
Outline Introduction Egenvärden & egenvektorer I MATLAB Visualisering Egenvärden och egenvektorer Satser Diagonalisering Om Ax = λx så gäller att ca har egenvektorn x med motsvarande egenvärdet cλ, A + ci har egenvektorn x med motsvarande egenvärdet λ + c, A n har egenvektorn x med motsvarande egenvärdet λ n, A 1 har egenvektorn x med motsvarande egenvärdet 1/λ (om A är inverterbar). Egenvärdena till A är nollställena till p A. Egenvektorerna är lösningarna till (λi A)x = 0. ( ) λ 9 5 det = λ 2 14λ + 40 1 λ 5 = (λ 10) (λ 4) Carmen Arévalo Egenvärden och egenvektorer 2010-02-01 4 / 16
Outline Introduction Egenvärden & egenvektorer I MATLAB Visualisering Egenvärden och egenvektorer Satser Diagonalisering Om Ax = λx så gäller att ca har egenvektorn x med motsvarande egenvärdet cλ, A + ci har egenvektorn x med motsvarande egenvärdet λ + c, A n har egenvektorn x med motsvarande egenvärdet λ n, A 1 har egenvektorn x med motsvarande egenvärdet 1/λ (om A är inverterbar). Egenvärdena till A är nollställena till p A. Egenvektorerna är lösningarna till (λi A)x = 0. ( ) λ 9 5 det = λ 2 14λ + 40 1 λ 5 = (λ 10) (λ 4) Carmen Arévalo Egenvärden och egenvektorer 2010-02-01 4 / 16
Outline Introduction Egenvärden & egenvektorer I MATLAB Visualisering Egenvärden och egenvektorer Diagonaliserbara matriser Diagonalisering En n n matris A är diagonaliserbar om det finns en matris S och en diagonalmatris D så att S 1 AS = D Detta betyder att det finns n linjärt oberoende egenvektorer till A. Kolonnerna i S är egenvektorerna och diagonalelementen i D är motsvarande egenvärden. ( 5 1 1 1 ) 1 ( 9 5 1 5 ) ( 5 1 1 1 ) = ( 10 0 0 4 ) Carmen Arévalo Egenvärden och egenvektorer 2010-02-01 5 / 16
Outline Introduction Egenvärden & egenvektorer I MATLAB Visualisering Egenvärden och egenvektorer Diagonaliserbara matriser Diagonalisering En n n matris A är diagonaliserbar om det finns en matris S och en diagonalmatris D så att S 1 AS = D Detta betyder att det finns n linjärt oberoende egenvektorer till A. Kolonnerna i S är egenvektorerna och diagonalelementen i D är motsvarande egenvärden. ( 5 1 1 1 ) 1 ( 9 5 1 5 ) ( 5 1 1 1 ) = ( 10 0 0 4 ) Carmen Arévalo Egenvärden och egenvektorer 2010-02-01 5 / 16
Outline Introduction Egenvärden & egenvektorer I MATLAB Visualisering Egenvärden och egenvektorer Symmetriska matriser Diagonalisering Om A T = A, gäller det att egenvektorer svarande mot olika egenvärden är ortogonala, alla egenvärden är reella, A är diagonaliserbar och S T AS = D med S ortogonal. Carmen Arévalo Egenvärden och egenvektorer 2010-02-01 6 / 16
Outline Introduction Egenvärden & egenvektorer I MATLAB Visualisering Egenvärden och egenvektorer Symmetriska matriser Diagonalisering Om A T = A, gäller det att egenvektorer svarande mot olika egenvärden är ortogonala, alla egenvärden är reella, A är diagonaliserbar och S T AS = D med S ortogonal. Carmen Arévalo Egenvärden och egenvektorer 2010-02-01 6 / 16
Outline Introduction Egenvärden & egenvektorer I MATLAB Visualisering Egenvärden och egenvektorer Symmetriska matriser Diagonalisering Om A T = A, gäller det att egenvektorer svarande mot olika egenvärden är ortogonala, alla egenvärden är reella, A är diagonaliserbar och S T AS = D med S ortogonal. Carmen Arévalo Egenvärden och egenvektorer 2010-02-01 6 / 16
Outline Introduction Egenvärden & egenvektorer I MATLAB Visualisering Egenvärden och egenvektorer Symmetriska matriser Diagonalisering Om A T = A, gäller det att egenvektorer svarande mot olika egenvärden är ortogonala, alla egenvärden är reella, A är diagonaliserbar och S T AS = D med S ortogonal. Carmen Arévalo Egenvärden och egenvektorer 2010-02-01 6 / 16
Outline Introduction Egenvärden & egenvektorer I MATLAB Visualisering Karakteristiska polynomet Potensmetoden Invers iteration Lösning av karakteristiska polynomet i MATLAB För att hitta ett polynoms nollställen, konstruerar MATLAB en matris som har det givna polynomet som karakteristiskt polynom och bestämmer matrisens egenvärden. Därför är det inte rimligt att bestämma egenvärdena i MATLAB genom att beräkna nollställena till karakteristiska polynomet. Istället använder MATLAB en iterativ metod. Man börjar med en gissning x 0 till lösningen x, och genererar en sekvens {x 0, x 1, x 2,... } som konvergerar mot x. Carmen Arévalo Egenvärden och egenvektorer 2010-02-01 7 / 16
Outline Introduction Egenvärden & egenvektorer I MATLAB Visualisering Karakteristiska polynomet Potensmetoden Invers iteration Potensmetoden Potensmetoden är en iterativ metod för att beräkna en egenvektor. Antag att A är en diagonaliserbar n n matris med reella egenvärden och λ 1 > λ 2 λ 3 λ n. Antag att v 1, v 2,..., v n är en bas av egenvektorer som svarar mot λ 1, λ 2,..., λ n. Startvektorn x 0 kan skrivas som x 0 = c 1 v 1 + c 2 v 2 + + c n v n. Kom ihåg att Ax = λx A k x = λ k x. A k x 0 = λ k 1v 1 + c 2 λ k 2v 2 + + c n λ k nv n A k ( ) x k ( ) k 0 λ2 λn λ k = c 1 v 1 + c 2 v 2 + + c n v n 1 λ 1 λ 1 När k är stort har A k x 0 (nästan) samma riktning som egenvektorn v 1. Kom ihåg att om v är en egenvektor så är cv en egenvektor. Därför kan vi säga att x k = A k x 0 närmar sig den egenvektor som motsvarar det egenvärde med största absolutbelopp. Carmen Arévalo Egenvärden och egenvektorer 2010-02-01 8 / 16
Outline Introduction Egenvärden & egenvektorer I MATLAB Visualisering Karakteristiska polynomet Potensmetoden Invers iteration Potensmetoden Potensmetoden är en iterativ metod för att beräkna en egenvektor. Antag att A är en diagonaliserbar n n matris med reella egenvärden och λ 1 > λ 2 λ 3 λ n. Antag att v 1, v 2,..., v n är en bas av egenvektorer som svarar mot λ 1, λ 2,..., λ n. Startvektorn x 0 kan skrivas som x 0 = c 1 v 1 + c 2 v 2 + + c n v n. Kom ihåg att Ax = λx A k x = λ k x. A k x 0 = λ k 1v 1 + c 2 λ k 2v 2 + + c n λ k nv n A k ( ) x k ( ) k 0 λ2 λn λ k = c 1 v 1 + c 2 v 2 + + c n v n 1 λ 1 λ 1 När k är stort har A k x 0 (nästan) samma riktning som egenvektorn v 1. Kom ihåg att om v är en egenvektor så är cv en egenvektor. Därför kan vi säga att x k = A k x 0 närmar sig den egenvektor som motsvarar det egenvärde med största absolutbelopp. Carmen Arévalo Egenvärden och egenvektorer 2010-02-01 8 / 16
Outline Introduction Egenvärden & egenvektorer I MATLAB Visualisering Karakteristiska polynomet Potensmetoden Invers iteration Potensmetoden Potensmetoden är en iterativ metod för att beräkna en egenvektor. Antag att A är en diagonaliserbar n n matris med reella egenvärden och λ 1 > λ 2 λ 3 λ n. Antag att v 1, v 2,..., v n är en bas av egenvektorer som svarar mot λ 1, λ 2,..., λ n. Startvektorn x 0 kan skrivas som x 0 = c 1 v 1 + c 2 v 2 + + c n v n. Kom ihåg att Ax = λx A k x = λ k x. A k x 0 = λ k 1v 1 + c 2 λ k 2v 2 + + c n λ k nv n A k ( ) x k ( ) k 0 λ2 λn λ k = c 1 v 1 + c 2 v 2 + + c n v n 1 λ 1 λ 1 När k är stort har A k x 0 (nästan) samma riktning som egenvektorn v 1. Kom ihåg att om v är en egenvektor så är cv en egenvektor. Därför kan vi säga att x k = A k x 0 närmar sig den egenvektor som motsvarar det egenvärde med största absolutbelopp. Carmen Arévalo Egenvärden och egenvektorer 2010-02-01 8 / 16
Outline Introduction Egenvärden & egenvektorer I MATLAB Visualisering Karakteristiska polynomet Potensmetoden Invers iteration Potensmetoden Potensmetoden är en iterativ metod för att beräkna en egenvektor. Antag att A är en diagonaliserbar n n matris med reella egenvärden och λ 1 > λ 2 λ 3 λ n. Antag att v 1, v 2,..., v n är en bas av egenvektorer som svarar mot λ 1, λ 2,..., λ n. Startvektorn x 0 kan skrivas som x 0 = c 1 v 1 + c 2 v 2 + + c n v n. Kom ihåg att Ax = λx A k x = λ k x. A k x 0 = λ k 1v 1 + c 2 λ k 2v 2 + + c n λ k nv n A k ( ) x k ( ) k 0 λ2 λn λ k = c 1 v 1 + c 2 v 2 + + c n v n 1 λ 1 λ 1 När k är stort har A k x 0 (nästan) samma riktning som egenvektorn v 1. Kom ihåg att om v är en egenvektor så är cv en egenvektor. Därför kan vi säga att x k = A k x 0 närmar sig den egenvektor som motsvarar det egenvärde med största absolutbelopp. Carmen Arévalo Egenvärden och egenvektorer 2010-02-01 8 / 16
Outline Introduction Egenvärden & egenvektorer I MATLAB Visualisering Karakteristiska polynomet Potensmetoden Invers iteration Potensmetoden Potensmetoden är en iterativ metod för att beräkna en egenvektor. Antag att A är en diagonaliserbar n n matris med reella egenvärden och λ 1 > λ 2 λ 3 λ n. Antag att v 1, v 2,..., v n är en bas av egenvektorer som svarar mot λ 1, λ 2,..., λ n. Startvektorn x 0 kan skrivas som x 0 = c 1 v 1 + c 2 v 2 + + c n v n. Kom ihåg att Ax = λx A k x = λ k x. A k x 0 = λ k 1v 1 + c 2 λ k 2v 2 + + c n λ k nv n A k ( ) x k ( ) k 0 λ2 λn λ k = c 1 v 1 + c 2 v 2 + + c n v n 1 λ 1 λ 1 När k är stort har A k x 0 (nästan) samma riktning som egenvektorn v 1. Kom ihåg att om v är en egenvektor så är cv en egenvektor. Därför kan vi säga att x k = A k x 0 närmar sig den egenvektor som motsvarar det egenvärde med största absolutbelopp. Carmen Arévalo Egenvärden och egenvektorer 2010-02-01 8 / 16
Outline Introduction Egenvärden & egenvektorer I MATLAB Visualisering Karakteristiska polynomet Potensmetoden Invers iteration Potensmetoden Potensmetoden är en iterativ metod för att beräkna en egenvektor. Antag att A är en diagonaliserbar n n matris med reella egenvärden och λ 1 > λ 2 λ 3 λ n. Antag att v 1, v 2,..., v n är en bas av egenvektorer som svarar mot λ 1, λ 2,..., λ n. Startvektorn x 0 kan skrivas som x 0 = c 1 v 1 + c 2 v 2 + + c n v n. Kom ihåg att Ax = λx A k x = λ k x. A k x 0 = λ k 1v 1 + c 2 λ k 2v 2 + + c n λ k nv n A k ( ) x k ( ) k 0 λ2 λn λ k = c 1 v 1 + c 2 v 2 + + c n v n 1 λ 1 λ 1 När k är stort har A k x 0 (nästan) samma riktning som egenvektorn v 1. Kom ihåg att om v är en egenvektor så är cv en egenvektor. Därför kan vi säga att x k = A k x 0 närmar sig den egenvektor som motsvarar det egenvärde med största absolutbelopp. Carmen Arévalo Egenvärden och egenvektorer 2010-02-01 8 / 16
Outline Introduction Egenvärden & egenvektorer I MATLAB Visualisering Karakteristiska polynomet Potensmetoden Invers iteration Normalisering av potensmetoden För att hindra vektorerna att bli för stora, normaliserar vi under varje steg: Givet matrisen A, gissa x 0 och iterera y n+1 = Ax n x n+1 = y n+1 / y n+1 2 fortsätt tills x n+1 x n 2 < tol där tol är ett litet tal vi väljer. A=rand(n,n) v=rand(n,1) % dif=1; tol=1e-6; for k=1:20 % eller while dif>tol y=v; v=a*y; v=v/norm(v) % dif=norm(y-v); end Carmen Arévalo Egenvärden och egenvektorer 2010-02-01 9 / 16
Outline Introduction Egenvärden & egenvektorer I MATLAB Visualisering Karakteristiska polynomet Potensmetoden Invers iteration Rayleighkvot Om vi har en egenvektor v kan vi beräkna det motsvarande egenvärdet: Av = λx v T Av = λv T v λ = v T Av v T v v T Av v T v kallas för Rayleighkvot Carmen Arévalo Egenvärden och egenvektorer 2010-02-01 10 / 16
Outline Introduction Egenvärden & egenvektorer I MATLAB Visualisering Karakteristiska polynomet Potensmetoden Invers iteration Invers iteration Om A är inverterbar, Ax = λx A 1 x = (1/λ)x Vi kan beräkna egenvektorn svarande mot egenvärdet med det minsta absolutbeloppet med iterationen x n+1 = A 1 x n. Carmen Arévalo Egenvärden och egenvektorer 2010-02-01 11 / 16
Outline Introduction Egenvärden & egenvektorer I MATLAB Visualisering Karakteristiska polynomet Potensmetoden Invers iteration Invers iteration Om A är inverterbar, Ax = λx A 1 x = (1/λ)x Vi kan beräkna egenvektorn svarande mot egenvärdet med det minsta absolutbeloppet med iterationen x n+1 = A 1 x n. Carmen Arévalo Egenvärden och egenvektorer 2010-02-01 11 / 16
Outline Introduction Egenvärden & egenvektorer I MATLAB Visualisering Karakteristiska polynomet Potensmetoden Invers iteration Skiftade potensmetoden Vi vet att om Av = λv så är λ s ett egenvärde till matrisen A si svarande mot samma egenvektor v. Genom att använda invers iteration för A si kan vi beräkna andra egenvärdena än det med största absolutbelopp. Oavsätt vilken metod vi använder, beräknas egenvärdet med Rayleighkvoten. ( ) 9 5 Till exempel, potensmetoden med A = ger λ 1 5 1 = 10, men om vi tar s = 1 och använder den skiftade inversiterationen får vi λ 2 = 4. Carmen Arévalo Egenvärden och egenvektorer 2010-02-01 12 / 16
Outline Introduction Egenvärden & egenvektorer I MATLAB Visualisering Karakteristiska polynomet Potensmetoden Invers iteration Skiftade potensmetoden Vi vet att om Av = λv så är λ s ett egenvärde till matrisen A si svarande mot samma egenvektor v. Genom att använda invers iteration för A si kan vi beräkna andra egenvärdena än det med största absolutbelopp. Oavsätt vilken metod vi använder, beräknas egenvärdet med Rayleighkvoten. ( ) 9 5 Till exempel, potensmetoden med A = ger λ 1 5 1 = 10, men om vi tar s = 1 och använder den skiftade inversiterationen får vi λ 2 = 4. Carmen Arévalo Egenvärden och egenvektorer 2010-02-01 12 / 16
Outline Introduction Egenvärden & egenvektorer I MATLAB Visualisering Karakteristiska polynomet Potensmetoden Invers iteration Skiftade potensmetoden Vi vet att om Av = λv så är λ s ett egenvärde till matrisen A si svarande mot samma egenvektor v. Genom att använda invers iteration för A si kan vi beräkna andra egenvärdena än det med största absolutbelopp. Oavsätt vilken metod vi använder, beräknas egenvärdet med Rayleighkvoten. ( ) 9 5 Till exempel, potensmetoden med A = ger λ 1 5 1 = 10, men om vi tar s = 1 och använder den skiftade inversiterationen får vi λ 2 = 4. Carmen Arévalo Egenvärden och egenvektorer 2010-02-01 12 / 16
Outline Introduction Egenvärden & egenvektorer I MATLAB Visualisering Egenvärden och egenvektorer Egenvärden och egenvektorer i MATLAB Diagonalisering I MATLAB kan vi använda kommandot eig: [V,D]=eig(A) ger matris V vars kolonner är egenvektorerna och diagonalmatris D med egenvärdena på diagonalen. >> A=[9 5;1 5] A = 9 5 1 5 >> [V,D]=eig(A) V = 0.9806-0.7071 0.1961 0.7071 D = 10 0 0 4 Obs ordningen! Carmen Arévalo Egenvärden och egenvektorer 2010-02-01 13 / 16
Outline Introduction Egenvärden & egenvektorer I MATLAB Visualisering Egenvärden och egenvektorer Diagonalisering i MATLAB Diagonalisering [V,D]=eig(A) ger V och D med V 1 AV = D Man kan få komplexa tal i V och D: A = 1 1-1 1 >> [V,D]=eig(A) V = 0.7071 0.7071 0 + 0.7071i 0-0.7071i D = 1.0000 + 1.0000i 0 0 1.0000-1.0000i Carmen Arévalo Egenvärden och egenvektorer 2010-02-01 14 / 16
Outline Introduction Egenvärden & egenvektorer I MATLAB Visualisering Egenvärden och egenvektorer Icke diagonaliserbar matriser i MATLAB Diagonalisering Om rank(v ) n betyder det att A är inte diagonaliserbar: A = 2 2 0 2 >> [V,D]=eig(A) V = 1.0000-1.0000 0 0.0000 D = 2 0 0 2 >> rank(v) ans= 1 Carmen Arévalo Egenvärden och egenvektorer 2010-02-01 15 / 16
Outline Introduction Egenvärden & egenvektorer I MATLAB Visualisering Egenvärden och egenvektorer i enhetscirkeln Enhetsvektorer x (blå) och deras transformationer Ax (röd). De Carmen Arévalo Egenvärden och egenvektorer 2010-02-01 16 / 16 A=rand(2); t=linspace(0, 2*pi); axis equal; hold x=cos(t); y=sin(t); plot(x,y); for i=linspace(0,2*pi,17) x=cos(i); y=sin(i); z=a*[x;y]; plot([0;x],[0;y]) plot([0;z(1)],[0;z(2)], r ), pause end
Outline Introduction Egenvärden & egenvektorer I MATLAB Visualisering Egenvärden och egenvektorer i enhetscirkeln Enhetsvektorer x (blå) och deras transformationer Ax (röd). De transformerade vektorer bildar en ellips. 1 0.8 0.6 0.4 0.2 0 0.2 0.4 0.6 0.8 1 1 0.5 0 0.5 1 Carmen Arévalo Egenvärden och egenvektorer 2010-02-01 16 / 16