Autovalores e Autovetores - USP€¦ · Introdução Objetivo: Dada matriz A, n n, determinar todos...

21
Autovalores e Autovetores Maria Luísa B. de Oliveira SME0300 – Cálculo Numérico 24 de novembro de 2010

Transcript of Autovalores e Autovetores - USP€¦ · Introdução Objetivo: Dada matriz A, n n, determinar todos...

Page 1: Autovalores e Autovetores - USP€¦ · Introdução Objetivo: Dada matriz A, n n, determinar todos os vetores v que sejam paralelos a Av. Sendo A uma matriz de ordem n n, definimos

Autovalores e Autovetores

Maria Luísa B. de Oliveira

SME0300 – Cálculo Numérico

24 de novembro de 2010

Page 2: Autovalores e Autovetores - USP€¦ · Introdução Objetivo: Dada matriz A, n n, determinar todos os vetores v que sejam paralelos a Av. Sendo A uma matriz de ordem n n, definimos

IntroduçãoObjetivo: Dada matriz A, n× n, determinar todos osvetores v que sejam paralelos a Av.

Sendo A uma matriz de ordem n× n, definimos umautovalor de A como um escalar λ ∈ C se existe umvetor v (n× 1) não-nulo tal que

Av = λv.

Todo vetor v que satisfaz essa relação é denominadoum autovetor de A correspondente ao autovalor λ.

Para determinar λ, como

Av = λv⇔ (A− λIn)v = 0,

então devemos resolver a equação

det (A− λIn) = 0.

Para cada valor de λ devemos determinar (pelo menos)um v correspondente.

Page 3: Autovalores e Autovetores - USP€¦ · Introdução Objetivo: Dada matriz A, n n, determinar todos os vetores v que sejam paralelos a Av. Sendo A uma matriz de ordem n n, definimos

IntroduçãoObjetivo: Dada matriz A, n× n, determinar todos osvetores v que sejam paralelos a Av.

Sendo A uma matriz de ordem n× n, definimos umautovalor de A como um escalar λ ∈ C se existe umvetor v (n× 1) não-nulo tal que

Av = λv.

Todo vetor v que satisfaz essa relação é denominadoum autovetor de A correspondente ao autovalor λ.

Para determinar λ, como

Av = λv⇔ (A− λIn)v = 0,

então devemos resolver a equação

det (A− λIn) = 0.

Para cada valor de λ devemos determinar (pelo menos)um v correspondente.

Page 4: Autovalores e Autovetores - USP€¦ · Introdução Objetivo: Dada matriz A, n n, determinar todos os vetores v que sejam paralelos a Av. Sendo A uma matriz de ordem n n, definimos

IntroduçãoObjetivo: Dada matriz A, n× n, determinar todos osvetores v que sejam paralelos a Av.

Sendo A uma matriz de ordem n× n, definimos umautovalor de A como um escalar λ ∈ C se existe umvetor v (n× 1) não-nulo tal que

Av = λv.

Todo vetor v que satisfaz essa relação é denominadoum autovetor de A correspondente ao autovalor λ.

Para determinar λ, como

Av = λv⇔ (A− λIn)v = 0,

então devemos resolver a equação

det (A− λIn) = 0.

Para cada valor de λ devemos determinar (pelo menos)um v correspondente.

Page 5: Autovalores e Autovetores - USP€¦ · Introdução Objetivo: Dada matriz A, n n, determinar todos os vetores v que sejam paralelos a Av. Sendo A uma matriz de ordem n n, definimos

IntroduçãoExemplo: Determinar os autovalores e autovetores de

A =

3 42 1

.

Solução: Vamos calcular primeiro det(A− λIn) = 0.�

(3− λ) 42 (1− λ)

= 0⇒ (3− λ)(1− λ)− 8 = 0

⇒ λ2 − 4λ− 5 = 0⇒ (λ− 5)(λ+ 1) = 0.

Então λ é autovalor de A se e somente se λ = 5 ouλ = −1.Para calcular v = [v1,v2]

T correspondentes, resolver�

(3− λ) 42 (1− λ)

��

v1v2

=

00

.

Page 6: Autovalores e Autovetores - USP€¦ · Introdução Objetivo: Dada matriz A, n n, determinar todos os vetores v que sejam paralelos a Av. Sendo A uma matriz de ordem n n, definimos

Introdução

λ = 5 :

−2 42 −4

��

v1v2

=

00

⇒¨

−2v1 + 4v2 = 02v1 − 4v2 = 0

⇒ v1 = 2v2⇒ v = v2

21

,∀v2 ∈ R.

λ = −1 :

4 42 2

��

v1v2

=

00

⇒¨

4v1 + 4v2 = 02v1 + 2v2 = 0

⇒ v1 = −v2⇒ v = v2

−11

,∀v2 ∈ R.

Page 7: Autovalores e Autovetores - USP€¦ · Introdução Objetivo: Dada matriz A, n n, determinar todos os vetores v que sejam paralelos a Av. Sendo A uma matriz de ordem n n, definimos

Métodos Numéricos – IntroduçãoMétodos numéricos para determinar os autovalores eautovetores correspondentes de uma matriz A deordem n, sem calcular o determinante.Três grupos:

i) métodos que determinam polinômiocaracterístico;

ii) métodos que determinam algunsautovalores:

método das potências e dapotência inversa;

iii) métodos que determinam todos osautovalores:

método de Jacobi.

Page 8: Autovalores e Autovetores - USP€¦ · Introdução Objetivo: Dada matriz A, n n, determinar todos os vetores v que sejam paralelos a Av. Sendo A uma matriz de ordem n n, definimos

Métodos Numéricos – IntroduçãoMétodos numéricos para determinar os autovalores eautovetores correspondentes de uma matriz A deordem n, sem calcular o determinante.Três grupos:

i) métodos que determinam polinômiocaracterístico;

ii) métodos que determinam algunsautovalores: método das potências e dapotência inversa;

iii) métodos que determinam todos osautovalores: método de Jacobi.

Page 9: Autovalores e Autovetores - USP€¦ · Introdução Objetivo: Dada matriz A, n n, determinar todos os vetores v que sejam paralelos a Av. Sendo A uma matriz de ordem n n, definimos

Método das PotênciasObjetivo: Determinar o autovalor de maior valorabsoluto λ1 de uma matriz A e seu autovetor vcorrespondente.

Suponha que, para a matriz A de ordem n,

|λ1| > |λ2| ≥ . . . ≥ |λn|,

isto é, λ1 é o autovalor de maior valor absoluto de A.Também suponha que os autovetores são linearmenteindependentes.Se há uma sequência de vetores yk definida por

yk+1 = Ayk, k = 0,1, . . .

com y0 arbitrário, então

λ1 = limk→∞

(yk+1)r(yk)r

e v = limk→∞

(yk).

Page 10: Autovalores e Autovetores - USP€¦ · Introdução Objetivo: Dada matriz A, n n, determinar todos os vetores v que sejam paralelos a Av. Sendo A uma matriz de ordem n n, definimos

Método das PotênciasPara determinar λ1, seguimos o seguinte algoritmo:

Dado um vetor y0 qualquer, não nulo, construímos

zk+1 = Ayk; yk+1 =1

αk+1zk+1; k = 0,1,2, . . . ,

com αk = max1≤r≤n |(zk+1)r |.

A cada k = 0,1, . . . determinar o vetor λ(k)1 =

(zk+1)r(yk)r

.

Se, para qualquer componente r,�

�λ(k)1 − λ

(k−1)1

r�

�λ(k)1

r

< ϵ,

então λ1 = (λ(k)1 )r e v = yk.

Page 11: Autovalores e Autovetores - USP€¦ · Introdução Objetivo: Dada matriz A, n n, determinar todos os vetores v que sejam paralelos a Av. Sendo A uma matriz de ordem n n, definimos

Método das PotênciasExemplo: Determinar o maior autovalor (em valorabsoluto) λ1 e o autovetor correspondente v1 de

A =

3 42 1

.

Tomemos y0 = [1,1]T. Então

k = 0 : z1 = Ay0 = [7,3]T ; α1 = max (|7|, |3|) = 7.

λ(0)1 = (z1)r/(y0)r = [7,3]T ; y1 = z1/α1 =

1, 37

�T.

k = 1 : z2 = Ay1 =�33

7 ,177

�T; α2 = max

��

337

� ,�

177

= 337 .

λ(1)1 = (z2)r/(y1)r =

�337 ,

173

�T; y2 = z2/α2 =

1, 1733

�T.

�λ(1)1 − λ

(0)1

r�

�λ(1)1

r

≈�

0,4850,471

; . . .

Page 12: Autovalores e Autovetores - USP€¦ · Introdução Objetivo: Dada matriz A, n n, determinar todos os vetores v que sejam paralelos a Av. Sendo A uma matriz de ordem n n, definimos

Método das PotênciasExemplo: Determinar o maior autovalor (em valorabsoluto) λ1 e o autovetor correspondente v1 de

A =

3 42 1

.

Tomemos y0 = [1,1]T. Então

k = 0 : z1 = Ay0 = [7,3]T ; α1 = max (|7|, |3|) = 7.

λ(0)1 = (z1)r/(y0)r = [7,3]T ; y1 = z1/α1 =

1, 37

�T.

k = 1 : z2 = Ay1 =�33

7 ,177

�T; α2 = max

��

337

� ,�

177

= 337 .

λ(1)1 = (z2)r/(y1)r =

�337 ,

173

�T; y2 = z2/α2 =

1, 1733

�T.

�λ(1)1 − λ

(0)1

r�

�λ(1)1

r

≈�

0,4850,471

; . . .

Page 13: Autovalores e Autovetores - USP€¦ · Introdução Objetivo: Dada matriz A, n n, determinar todos os vetores v que sejam paralelos a Av. Sendo A uma matriz de ordem n n, definimos

Método das PotênciasExemplo: Determinar o maior autovalor (em valorabsoluto) λ1 e o autovetor correspondente v1 de

A =

3 42 1

.

Tomemos y0 = [1,1]T. Então

k = 0 : z1 = Ay0 = [7,3]T ; α1 = max (|7|, |3|) = 7.

λ(0)1 = (z1)r/(y0)r = [7,3]T ; y1 = z1/α1 =

1, 37

�T.

k = 1 : z2 = Ay1 =�33

7 ,177

�T; α2 = max

��

337

� ,�

177

= 337 .

λ(1)1 = (z2)r/(y1)r =

�337 ,

173

�T; y2 = z2/α2 =

1, 1733

�T.

�λ(1)1 − λ

(0)1

r�

�λ(1)1

r

≈�

0,4850,471

; . . .

Page 14: Autovalores e Autovetores - USP€¦ · Introdução Objetivo: Dada matriz A, n n, determinar todos os vetores v que sejam paralelos a Av. Sendo A uma matriz de ordem n n, definimos

Método das PotênciasExemplo: Determinar o maior autovalor (em valorabsoluto) λ1 e o autovetor correspondente v1 de

A =

3 42 1

.

Tomemos y0 = [1,1]T. Então

k = 0 : z1 = Ay0 = [7,3]T ; α1 = max (|7|, |3|) = 7.

λ(0)1 = (z1)r/(y0)r = [7,3]T ; y1 = z1/α1 =

1, 37

�T.

k = 1 : z2 = Ay1 =�33

7 ,177

�T; α2 = max

��

337

� ,�

177

= 337 .

λ(1)1 = (z2)r/(y1)r =

�337 ,

173

�T; y2 = z2/α2 =

1, 1733

�T.

�λ(1)1 − λ

(0)1

r�

�λ(1)1

r

≈�

0,4850,471

; . . .

Page 15: Autovalores e Autovetores - USP€¦ · Introdução Objetivo: Dada matriz A, n n, determinar todos os vetores v que sejam paralelos a Av. Sendo A uma matriz de ordem n n, definimos

Método da Potência

Inversa

Como determinar o menor autovalor λn (e respectivoautovetor v) de A?

Determinar maior autovalor de A−1 (e respectivoautovetor).

Dado y0, resolver

Azk+1 = ykpara zk+1 e

yk+1 =1

αk+1zk+1

para determinar 1λn

= limk→∞

h

(zk+1)r(yk)r

i

e v = limk→∞(yk).

Page 16: Autovalores e Autovetores - USP€¦ · Introdução Objetivo: Dada matriz A, n n, determinar todos os vetores v que sejam paralelos a Av. Sendo A uma matriz de ordem n n, definimos

Método da Potência InversaComo determinar o menor autovalor λn (e respectivoautovetor v) de A?

Determinar maior autovalor de A−1 (e respectivoautovetor).

Dado y0, resolver

Azk+1 = ykpara zk+1 e

yk+1 =1

αk+1zk+1

para determinar 1λn

= limk→∞

h

(zk+1)r(yk)r

i

e v = limk→∞(yk).

Page 17: Autovalores e Autovetores - USP€¦ · Introdução Objetivo: Dada matriz A, n n, determinar todos os vetores v que sejam paralelos a Av. Sendo A uma matriz de ordem n n, definimos

Método da Potência InversaComo determinar o menor autovalor λn (e respectivoautovetor v) de A?

Determinar maior autovalor de A−1 (e respectivoautovetor).

Dado y0, resolver

Azk+1 = ykpara zk+1 e

yk+1 =1

αk+1zk+1

para determinar 1λn

= limk→∞

h

(zk+1)r(yk)r

i

e v = limk→∞(yk).

Page 18: Autovalores e Autovetores - USP€¦ · Introdução Objetivo: Dada matriz A, n n, determinar todos os vetores v que sejam paralelos a Av. Sendo A uma matriz de ordem n n, definimos

Método de JacobiObjetivo: Determinar todos os autovalores eautovetores de uma matriz simétrica A.

Seja

Uk =

upp = uqq = cosφupq = −uqp = sen φ

uii = 1, i 6= p, i 6= q

uij = 0, no resto

,

i = 1, . . . ,n; j = 1, . . . ,n

uma matriz de rotação de um ângulo φ no plano doseixos p e q, tal que U−1k =UT

k.

Page 19: Autovalores e Autovetores - USP€¦ · Introdução Objetivo: Dada matriz A, n n, determinar todos os vetores v que sejam paralelos a Av. Sendo A uma matriz de ordem n n, definimos

Método de JacobiSe D = diag(λ1, . . . , λn) = V−1AV e λ1, . . . , λn sãoautovalores de A, então as colunas de V sãoautovetores vi de A correspondentes aos autovaloresλi.

O Método de Jacobi utiliza as matrizes Uk para, a cadapasso k, zerar um par de elementos fora da diagonal damatriz A, com Ak+1 =UT

kAkUk,A1 = A e assim obteruma matriz equivalente diagonal.Então,

D =

λ1λ2

. . .λn

≈ Am+1 =UTm · · ·U

T1AU1 · · ·Um.

Page 20: Autovalores e Autovetores - USP€¦ · Introdução Objetivo: Dada matriz A, n n, determinar todos os vetores v que sejam paralelos a Av. Sendo A uma matriz de ordem n n, definimos

Método de JacobiAlgoritmo:Para cada k, até que Ak+1 seja diagonal:

1) Determinar o elemento de maior módulo deAk fora da diagonal. Esse elemento temcoordenadas linha p e coluna q.

2) Calcular:i) ϕ =

aqq−app2apq

;

ii) t =

( 1

ϕ+sinal(ϕ)pϕ2+1

, ϕ 6= 0;

1, ϕ = 0;

iii) cosφ = 1p1+t2

;

iv) sen φ = tp1+t2

;

3) Calcular Ak+1 =UTkAkUk, com A1 = A e Uk

sendo a matriz de rotação de ângulo φ noplano p, q.

Page 21: Autovalores e Autovetores - USP€¦ · Introdução Objetivo: Dada matriz A, n n, determinar todos os vetores v que sejam paralelos a Av. Sendo A uma matriz de ordem n n, definimos

Método de JacobiExemplo: Determinar os autovalores e autovetores de

A =

4 22 1

.

Seja A1 = A.Como a12 = 2 é o elemento de maior módulo de A1,então p = 1 e q = 2. Assim: ϕ = a22−a11

2a12= 1−4

4 = −34 ;

t = 1

− 34−Æ

2516

= 1−2 = −1

2 ; cosφ = 1Æ

1+ 14

= 2p5; senφ = − 1p

5.

Então,

U1 =

2p5− 1p

51p5

2p5

; UT1 =

2p5

1p5

− 1p5

2p5

;

A2 =UT1A1U1 =

5 00 0

(diagonal).

⇒ λ1 = 5, v1 =h

2p5, 1p

5

iT; λ2 = 0, v2 =

h

− 1p5, 2p

5

iT