| | | | |

3.1 Método da Potência

Ajude a manter o site livre, gratuito e sem propagandas. Colabore!

Em revisão

O método da potência é uma técnica iterativa para computar o autovalor dominante de uma matriz e um autovetor associado. Modificações do método, tornam possível sua aplicação para a determinação de outros autovalores próximos a um número dado. Desta forma, pode ser utilizá-lo em conjunto com outra técnica de aproximação de autovalores e autovetores.

3.1.1 Autovalor dominante

Em revisão

Vamos denotar o espectro de uma dada matriz An×n por

σ(A)={λ1,λ2,,λn}, (3.1)

sendo λi o i-ésimo autovalor de uma matriz diagonalizável4949endnote: 49Existe uma base de n×n formada apenas de autovetores de A. A=[ai,j]i,j=1n,n, i.e. existe um vetor 𝟎𝒗in tal que

A𝒗i=λi𝒗i, (3.2)

sendo 𝒗i chamado de autovetor associado a λi. No desenvolvimento do método da potência, vamos assumir que os autovalores podem ser ordenados da seguinte forma

|λ1|>|λ2||λn|. (3.3)

Assim sendo, o λ1 é chamado de autovalor dominante. Na sequência, vamos denotar por 𝑨H a transposta conjugada de A, i.e. AH=[a¯j,i]i,j=1n,n.

A iteração do método da potência consiste em

𝒛(k)=A𝒒(k1), (3.4)
𝒒(k)=𝒛(k)/𝒛(k), (3.5)
ν(k)=(𝒒(k))HA𝒒(k), (3.6)

com dada aproximação inicial 𝒒(0) para um autovetor associado a λ1. Quando o método é bem sucedido, tem-se ν(k)λ1 quando k.

Convergência

Para mostrar a convergência do método, basta mostrar que 𝒒(k) converge para um autovetor associado a λ1. Primeiramente, notamos que5050endnote: 50Segue por indução matemática.

𝒒(k)=Ak𝒒(0)Ak𝒒(0),k1. (3.7)

Para A diagonalizável, temos que existe uma base {𝒗1,𝒗2,,𝒗n} de n×n formada apenas de autovetores de A. Segue que

𝒒(0)=i=1nαi𝒗i, (3.8)

onde αi. Vamos assumir que α105151endnote: 51Condição necessária para a convergência.. Ainda, A𝒗i=λi𝒗i, donde

Ak𝒒(0) =i=1nαiAk𝒗i (3.9)
=i=1nαiλik𝒗i (3.10)
=α1λ1k[𝒗1+i=2nαiα1(λkλ1)k𝒗i] (3.11)

Como |λi|/|λ1|<1, i=2,,n, temos que

𝒚(k)=i=2nαiα1(λkλ1)k𝒗i0, (3.12)

quando k. Logo, temos que

𝒒(k) =α1λ1k(𝒗1+𝒚(k))α1λ1(𝒗1+𝒚(k)) (3.13)
=λ1|λ1|(𝒗1+𝒚(k))𝒗1+𝒚(k). (3.14)

Por fim, observamos que λ1/|λ1| tem o mesmo sinal de λ1. Portanto, 𝒒(k) tende a um múltiplo não nulo de 𝒗1 quando k.

Observação 3.1.1 (Aproximação Inicial).

A convergência do método da potência está condicionada a escolha de uma aproximação inicial tal que (3.8) seja tal que α10. Não há como saber a priori que o 𝒒(0) escolhido satisfaz essa condição e, caso não satisfaça as iterações não são convergentes.

Observação 3.1.1 (Taxa de convergência).

Pode-se mostrar a seguinte taxa de convergência para o método da potência

𝒒~(k)𝒗1C|λ2λ1|k,k1, (3.15)

onde

𝒒~(k)=𝒗1+i=2nαiα1(λiλ1)k𝒗i. (3.16)

Consulte [8, Seção 5.3.].

Código 6: Algoritmo do Método da Potência
1import numpy as np
2import numpy.linalg as npla
3
4def metPot(A, q0, maxiter=1000, tol=1e-14):
5  q = q0/npla.norm(q0)
6  nu0 = np.dot(q, A @ q)
7  print(f"{0}: {nu0}")
8
9  info = -1
10  for k in range(maxiter):
11    z = A @ q
12    q = z/npla.norm(z)
13    nu = np.dot(q, A @ q)
14
15    print(f"{k+1}: {nu}")
16    if (np.fabs(nu-nu0) < tol):
17      info = 0
18      break
19
20    nu0 = nu
21
22  return nu, q, info

Exercícios

E. 3.1.1.

Use o método da potência para computar o autovalor dominante da matriz de coeficientes do problema discreto associado ao Exercício 1.1.3. Estude sua convergência para diferentes tamanhos da matriz.

E. 3.1.2.

Use o método da potência para computar o autovalor dominante da matriz de coeficientes do problema discreto associado ao Exemplo 1.1.2. Estude sua convergência para diferentes tamanhos da matriz.

3.1.2 Método da Potência Inversa

Em revisão

Esta variação do método da potência nos permite computar o autovalor mais próximo de um número μ dado, μσ(A). A ideia é aplicar o método para a matriz

Mμ1=(AμI)1. (3.17)

Neste contexto, μ é chamado de deslocamento (em inglês, shift).

Notamos que se (λi,𝒗i) é um autopar de A, então ξi=(λiμ)1 é autovalor de Mμ1 associado ao autovetor 𝒗i. De fato,

(λiμ)𝒗i=(AμI)𝒗i (3.18)
Mμ1(λiμ)𝒗i=𝒗i (3.19)
Mμ1𝒗i=(λiμ)1𝒗i. (3.20)

Isso também mostra que A e Mμ1 têm os mesmos autovetores.

Agora, se μ for suficientemente próximo de λm, autovalor simples de A, então

|λmμ|<|λiμ|,i=1,2,,n,im. (3.21)

Com isso, ξm=(λmμ)1 é o autovalor dominante de Mμ1 e, portanto, a iteração do método da potência aplicada a Mμ1 fornece este autovalor. Mais especificamente, como A e Mμ1 tem os mesmos autovetores, a iteração do método da potência inversa é dada como segue

(AμI)𝒛(k)=𝒒(k1), (3.22)
𝒒(k)=𝒛(k)/𝒛(k), (3.23)
ν(k)=(𝒒(k))HA𝒒(k), (3.24)

onde 𝒒(0) é uma aproximação inicial para o autovetor associado ao autovalor λm, ν(k)λm quando k.

Exercícios

E. 3.1.3.

Use o método da potência para computar diferentes autovalores da matriz de coeficientes do problema discreto associado ao Exercício 1.1.3. Estude sua convergência para diferentes tamanhos da matriz.

E. 3.1.4.

Use o método da potência para computar diferentes autovalores da matriz de coeficientes do problema discreto associado ao Exemplo 1.1.2. Verifique se há vantagem em aplicar os métodos GMRES e GC na resolução de (3.22).

3.1.3 Métodos de Deflação

Em construção


Envie seu comentário

As informações preenchidas são enviadas por e-mail para o desenvolvedor do site e tratadas de forma privada. Consulte a Política de Uso de Dados para mais informações. Aproveito para agradecer a todas/os que de forma assídua ou esporádica contribuem enviando correções, sugestões e críticas!