Sunteți pe pagina 1din 109

Notas de Aula

Métodos Numéricos para Equações


Diferenciais Parciais Elı́pticas

1
Rodney Josué Biezuner
Departamento de Matemática
Instituto de Ciências Exatas (ICEx)
Universidade Federal de Minas Gerais (UFMG)

Notas de aula do curso Tópicos em Análise: Métodos Numéricos para EDPs Elı́pticas do Programa
de Pós-Graduação em Matemática, ministrado durante o primeiro semestre do ano de 2007.

15 de junho de 2007

1
E-mail: rodney@mat.ufmg.br; homepage: http://www.mat.ufmg.br/∼rodney.
Sumário

1 Método de Diferenças Finitas 3


1.1 O Caso Unidimensional . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.1.1 Séries de Taylor e Diferenças Finitas em Uma Dimensão . . . . . . . . . . . . . . . . . 3
1.1.2 Discretização . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.1.3 Resolução Numérica do Problema de Autovalor Unidimensional . . . . . . . . . . . . . 5
1.2 O Caso Bidimensional . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
1.2.1 A Fórmula dos Cinco Pontos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
1.2.2 Existência e Unicidade da Solução Discreta – Autovalores do Problema Bidimensional 10
1.2.3 Princı́pio do Máximo Discreto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
1.2.4 Convergência da Solução Discreta para a Solução Clássica . . . . . . . . . . . . . . . . 15
1.3 Discretizações de Ordem Superior . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
1.3.1 Caso Unidimensional . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
1.3.2 Caso Bidimensional: A Fórmula dos Nove Pontos Compacta . . . . . . . . . . . . . . 20
1.4 Diferenças Finitas em Coordenadas Polares . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
1.5 Domı́nios Arbitrários . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
1.6 Exercı́cios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31

2 Existência e Unicidade de Soluções Discretas 33


2.1 Normas Matriciais . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
2.2 Matrizes Diagonalmente Dominantes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
2.3 Teorema dos Discos de Gershgorin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
2.4 Propriedade FC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
2.5 Matrizes Irredutı́veis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
2.6 Invertibilidade de Matrizes de Discretização . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
2.6.1 Esquemas de Diferenças Finitas para o Intervalo e para o Retângulo . . . . . . . . . . 48
2.6.2 Esquema de Coordenadas Polares . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
2.6.3 Esquema de Shortley-Weller . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49

3 Métodos Iterativos para a Resolução de Sistemas Lineares 50


3.1 Métodos Iterativos Lineares . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
3.1.1 Método de Jacobi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
3.1.2 Método de Gauss-Seidel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
3.1.3 Método SOR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
3.1.4 Comparação da Velocidade de Convergência dos Três Métodos . . . . . . . . . . . . . 53
3.1.5 Método de Jacobi Amortecido . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
3.2 Análise de Convergência dos Métodos Iterativos Lineares . . . . . . . . . . . . . . . . . . . . . 55
3.2.1 Convergência dos Métodos Iterativos Lineares . . . . . . . . . . . . . . . . . . . . . . . 56
3.2.2 Velocidade de Convergência dos Métodos Iterativos Lineares . . . . . . . . . . . . . . 58
3.2.3 Convergência para Matrizes Simétricas Positivas Definidas . . . . . . . . . . . . . . . . 60

1
Rodney Josué Biezuner 2

3.3 Convergência dos Métodos Iterativos Lineares para as Matrizes de Discretização . . . . . . . 61


3.3.1 Convergência do Método de Jacobi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
3.3.2 Convergência do Método de Gauss-Seidel . . . . . . . . . . . . . . . . . . . . . . . . . 63
3.3.3 Convergência do Método SOR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
3.3.4 Convergência do Método de Jacobi Amortecido . . . . . . . . . . . . . . . . . . . . . . 73
3.3.5 Resumo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
3.4 Método do Gradiente Conjugado . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
3.4.1 Métodos de Descida . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
3.4.2 Método da Descida Mais Acentuada . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
3.4.3 Método do Gradiente Conjugado . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78
3.5 Convergência do Método do Gradiente Conjugado . . . . . . . . . . . . . . . . . . . . . . . . 82

4 Métodos Multigrid 85
4.1 A Malha de Multigrid . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86
4.2 Freqüências Altas e Baixas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
4.3 Suavização do Erro . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
4.3.1 Método de Jacobi Amortecido . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
4.4 O Ciclo de Duas Malhas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91
4.5 O Ciclo Multigrid: Ciclos V . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93

5 Método dos Volumes Finitos 94


5.1 Leis de Conservação . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94
5.1.1 Lei de Conservação Unidimensional . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94
5.1.2 Lei de Conservação em Várias Dimensões . . . . . . . . . . . . . . . . . . . . . . . . . 96
5.1.3 Relações Constitutivas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97
5.2 O Caso Unidimensional . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98
5.3 O Caso Bidimensional . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102
5.4 Linearização do Termo Fonte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105
5.4.1 Termo Fonte do Tipo f (u) = Au + B com A < 0 . . . . . . . . . . . . . . . . . . . . . 106
5.4.2 Termo Fonte do Tipo f (u) = Au + B com A > 0 . . . . . . . . . . . . . . . . . . . . . 106
5.4.3 Termo Fonte do Tipo f (u) com f 0 (u) < 0 . . . . . . . . . . . . . . . . . . . . . . . . . 106
Capı́tulo 1

Método de Diferenças Finitas

1.1 O Caso Unidimensional


Nesta seção, desenvolveremos um método numérico de diferenças finitas para resolver o problema de Dirichlet
para a equação de Poisson em uma dimensão
½
−u00 = f (x) em [0, L] ,
u (0) = a, u (L) = b.

1.1.1 Séries de Taylor e Diferenças Finitas em Uma Dimensão


Seja ∆x > 0. Considere as seguintes expansões de Taylor de uma função u em torno de um ponto x0 ,
respectivamente à direita e à esquerda de x0 :
1 00 1 000
u(x0 + ∆x) = u(x0 ) + u0 (x0 )∆x + u (x0 )∆x2 + u (x0 )∆x3 + . . . , (1.1)
2! 3!
1 1 000
u(x0 − ∆x) = u(x0 ) − u0 (x0 )∆x + u00 (x0 )∆x2 − u (x0 )∆x3 + . . . (1.2)
2! 3!
Daı́,

u(x0 + ∆x) − u(x0 ) 1 1 000


u0 (x0 ) = − u00 (x0 )∆x − u (x0 )∆x2 − . . . ,
∆x 2! 3!
u(x0 ) − u(x0 − ∆x) 1 1 000
u0 (x0 ) = + u00 (x0 )∆x − u (x0 )∆x2 + . . .
∆x 2! 3!
Isso fornece duas aproximações possı́veis para a primeira derivada u0 (x0 ) de u em x0 :

u(x0 + ∆x) − u(x0 )


u0 (x0 ) ≈ , (1.3)
∆x
u(x0 ) − u(x0 − ∆x)
u0 (x0 ) ≈ . (1.4)
∆x
A primeira é chamada uma diferença progressiva e a segunda é uma diferença regressiva. Pela Fórmula
de Taylor com Resto, o erro destas aproximações é dado por
1
² = ± u00 (ξ)∆x = O(∆x),
2
onde x0 6 ξ 6 x0 + ∆x no primeiro caso, e x0 − ∆x 6 ξ 6 x0 no segundo caso.

3
Rodney Josué Biezuner 4

Por outro lado, se subtrairmos (1.2) de (1.1), obtemos


u(x0 + ∆x) − u(x0 − ∆x) 1 1
u0 (x0 ) = − u000 (x0 )∆x2 − u(5) (x0 )∆x4 − . . .
2∆x 3! 5!
o que dá uma outra aproximação possı́vel para a primeira derivada u0 (x0 ) de u em x0 :
u(x0 + ∆x) − u(x0 − ∆x)
u0 (x0 ) ≈ (1.5)
2∆x
com erro
1
² = − u000 (ξ)∆x2 = O(∆x2 ),
6
para algum x0 − ∆x 6 ξ 6 x0 + ∆x. Esta aproximação por diferença finita é chamada diferença centrada.
Ela é uma melhor aproximação que as aproximações laterais (progressiva e regressiva).
Se, ao invés, adicionarmos (1.1) e (1.2), obtemos
u(x0 + ∆x) + u(x0 − ∆x) − 2u(x0 ) 2 2
u00 (x0 ) = − u(4) (x0 )∆x2 − u(6) (x0 )∆x4 − . . .
∆x2 4! 5!
o que fornece uma aproximação para a derivada segunda u00 (x0 ) de u em x0 :
u(x0 + ∆x) + u(x0 − ∆x) − 2u(x0 )
u00 (x0 ) ≈ (1.6)
∆x2
com erro
1 (4)
u (ξ)∆x2 = O(∆x2 ),
²=−
12
onde x0 − ∆x 6 ξ 6 x0 + ∆x. Esta aproximação é também chamada uma diferença centrada para a
derivada segunda.

1.1.2 Discretização
Dividimos o intervalo [0, L] em n subintervalos de comprimento ∆x = L/n através de n − 1 pontos interiores
uniformemente espaçados:
x0 = 0, x1 = ∆x, x2 = 2∆x, . . . , xn−1 = (n − 1) ∆x, xn = n∆x = L,
de modo que [0, L] = [x0 , x1 ] ∪ [x1 , x2 ] ∪ . . . ∪ [xn−1 , xn ]. Introduzimos a notação:
ui = u(xi ),
fi = f (xi ) .
Esta é uma discretização uniforme do intervalo [0, L]. Uma vez discretizado o domı́nio da equação difer-
encial parcial, procedemos à discretização desta. Usando diferenças centradas para cada ponto interior xi ,
1 6 i 6 n − 1, temos
−ui−1 + 2ui − ui+1
= fi . (1.7)
∆x2
Para os pontos de fronteira, a condição de Dirichlet implica
u0 = a e un = b. (1.8)
Portanto, para encontrar a solução discretizada temos que resolver o sistema linear com n − 1 equações a
n − 1 incógnitas: 

 ∆x−2 (2u1 − u2 ) = f1 + a∆x−2

 −2
 ∆x (−u1 + 2u2 − u3 )
 = f2
.. ,
 .

 ∆x−2 (−un−3 + 2un−2 − un−1 ) = fn−2



∆x−2 (−un−2 + 2un−1 ) = fn−1 + b∆x−2
Rodney Josué Biezuner 5

ou seja,     
2 −1 u1 f1 + a∆x−2
 −1 2 −1  u2   f2 
    
 .. ..  ..   .. 
1  −1 . . 
 .  
= . 
.
∆x2 
 ..
.
..
. −1

 ..  
  .. 

  .   . 
 −1 2 −1   un−2   fn−2 
−1 2 un−1 fn−1 + b∆x−2
Esta é uma matriz tridiagonal simétrica, esparsa. Além disso, como veremos na próxima subseção, ela é
positiva definida (isto é, seus autovalores são positivos) e portanto possui uma inversa, o que garante a
existência e unicidade da solução. Dada sua simplicidade, ela pode ser resolvida por eliminação gaussiana
ou sua inversa pode ser efetivamente calculada. Por exemplo, para n = 4, 5, 6 temos
 −1   1    
2 −1 0 1 21 13 0 0 1 0 0 3 2 1
 −1
2 1
2 −1  =  0 1 23   0 32 0   12 1 0  =  2 4 2  ,
3 1 2 4
0 −1 2 0 0 1 0 0 4 3 3 1 1 2 3
 −1  1 1 1
 1
   
2 −1 0 0 1 2 3 4 2 0 0 0 1 0 0 0 4 3 2 1
 −1 0   0 2 2  0 2
0   1 0   2 
 2 −1  = 1 3 4  3 0  2 1 0 = 1 3 6 4 
 0 −1 2 −1   0 0 1 3  0 0 3
0   13 2
1 0  5 2 4 6 3 
4 4 3
4 1 2 3
0 0 −1 2 0 0 0 1 0 0 0 5 4 4 4 1 1 2 3 4

 −1  1 1 1 1
 1
 
2 −1 0 0 0 1 2 3 4 5 2 0 0 0 0 1 0 0 0 0
 −1 2 −1 0 0   0 1 2 2 2  0 2
0 0 0  1
1 0 0 0 
   3 4 5  3  2 
 0 −1 2 −1 0  = 3 3  0 0 3
0 0  1 2
1 0 0 
   0 0 1 4 5  4  3 3 
 0 0 −1 2 −1   0 0 0 1 4  0 0 0 4
0  1 1 3
1 0 
5 5 4 2 4
5 1 2 3 4
0 0 0 −1 2 0 0 0 0 1 0 0 0 0 6 5 5 5 5 1
 
5 4 3 2 1
 4 8 6 4 2 
1 
=  3 6 9 6 3 
.
6
 2 4 6 8 4 
1 2 3 4 5

A forma da inversa no caso geral pode ser facilmente adivinhada.

1.1.3 Resolução Numérica do Problema de Autovalor Unidimensional


Os autovalores de Dirichlet do laplaciano em [0, L] devem ser aproximados pelos autovalores da matriz
(n − 1) × (n − 1)  
2 −1
 −1 2 −1 
 
 .. .. 
1   −1 . . 

A=  
∆x 2 .. .. 
 . . −1 
 −1 2 −1 
−1 2
quando n → ∞ e correspondentemente ∆x → 0.
Lembrando que as autofunções de Dirichlet do laplaciano no intervalo [0, L] são as funções
jπx
Uj (x) = sen ,
L
Rodney Josué Biezuner 6

este fato sugere que os autovetores uj da matriz A são os vetores de coordenadas

Uj (x1 ) , Uj (x2 ) , . . . , Uj (xn−2 ) , Uj (xn−1 ) = Uj (∆x) , Uj (2∆x) , . . . , Uj ((n − 2) ∆x) , Uj ((n − 1) ∆x) ,

ou seja, como ∆x = L/n, os vetores


1 θ
sin = cos θ
2 2
µ ¶
jπ 2jπ (n − 2) jπ (n − 1) jπ
uj = sen , sen , . . . , sen , sen .
n n n n
Usando identidades trigonométricas, vamos verificar que isso de fato acontece:

1.1 Lema. Os n − 1 autovalores da matriz A são


µ ¶
2 jπ 4 jπ
λj = 1 − cos = sen2 , j = 1, . . . , n − 1, (1.9)
∆x2 n ∆x2 2n

e os autovetores correspondentes são


µ ¶
jπ 2jπ (n − 2) jπ (n − 1) jπ
uj = sen , sen , . . . , sen , sen , j = 1, . . . , n − 1. (1.10)
n n n n

Prova. Temos
 jπ   
  sen jπ 2jπ
2 −1  n   2 sen − sen 
   n n 
 −1 2 −1  2jπ   jπ 2jπ 3jπ 
  sen   − sen + 2 sen − sen 
 .. ..  n   n n n 
 −1 . .  ..   .. 
  = . 
 .. ..  .   
 . .  
 −1  (n − 2) jπ   (n − 3) jπ (n − 2) jπ (n − 1) jπ 
 −1 2 −1   sen    − sen + 2 sen − sen 

 n  n n n
−1 2    (n − 2) jπ (n − 1) jπ 
(n − 1) jπ − sen + 2 sen
sen n n
n  

 sen 
 n 
 2jπ 
sen
µ ¶ n 

jπ  .. 
= 2 1 − cos  . ,
n  
 (n − 2) jπ 
 sen 
 n 
 (n − 1) jπ 
sen
n
pois µ ¶
jπ 2jπ jπ jπ jπ jπ jπ
2 sen − sen = 2 sen − 2 sen cos = 2 1 − cos sen ,
n n n n n n n
Rodney Josué Biezuner 7

(n − k − 1) jπ (n − k) jπ (n − k + 1) jπ
− sen + 2 sen − sen
· n ¸ n n
· ¸
(n − k) jπ jπ (n − k) jπ (n − k) jπ jπ
= − sen − + 2 sen − sen +
n n n n n
(n − k) jπ jπ (n − k) jπ jπ (n − k) jπ
= − sen cos + cos sen + 2 sen
n n n n n
(n − k) jπ jπ (n − k) jπ jπ
− sen cos − cos sen
µ n ¶ n n n
jπ (n − k) jπ
= 2 1 − cos sen ,
n n
e
(n − 2) jπ (n − 1) jπ
− sen + 2 sen
· n ¸ n
(n − 1) jπ jπ (n − 1) jπ
= − sen − + 2 sen
n n n
(n − 1) jπ jπ (n − 1) jπ jπ (n − 1) jπ
= − sen cos + cos sen + 2 sen
n n n n n
(n − 1) jπ jπ (n − 1) jπ jπ (n − 1) jπ
= − sen cos − sen cos + 2 sen
µ n ¶ n n n n
jπ (n − 1) jπ
= 2 1 − cos sen ,
n n

onde na penúltima identidade usamos o fato que

(n − 1) jπ jπ (n − 1) jπ jπ
cos sen = − sen cos
n n n n
porque · ¸
(n − 1) jπ jπ (n − 1) jπ jπ (n − 1) jπ jπ
0 = sen jπ = sen + = sen cos + cos sen .
n n n n n n
¥
Os autovalores de A são positivos, portanto A é uma matriz positiva definida. Observe que, fixado j, se n é
arbitrariamente grande então
jπ j 2 π2
cos ≈1− ,
n 2n2
pois o desenvolvimento em série de Taylor da função cosseno em torno da origem é
1 ¡ ¢
cos x = 1 − x2 + O x3 ;
2
tomando x = jπ/n para n suficientemente grande e desprezando os termos de terceira ordem, obtemos a
aproximação acima. Daı́,
µ ¶ µ ¶ µ · ¸¶
2 jπ 2n2 jπ 2n2 j 2 π2 j 2 π2
1 − cos = 1 − cos ≈ 1 − 1 − = ,
∆x2 n L2 n L2 2n2 L2

de forma que os menores autovalores da matriz A são uma boa aproximação para os menores autovalores de
Dirichlet do laplaciano no intervalo [0, L]. Já o maior autovalor da matriz A é
µ ¶ µ ¶
2 (n − 1) π 2n2 (n − 1) π 4n2
λn−1 = 1 − cos = 1 − cos ≈ ,
∆x2 n L2 n L2
Rodney Josué Biezuner 8

que não é uma boa aproximação para um autovalor do laplaciano. Vemos que se aumentarmos o número de
pontos de discretização (malha mais refinada) obteremos melhores aproximações e uma quantidade maior de
autovalores próximos aos autovalores do laplaciano. Para comparar, veja a tabela a seguir para os autovalores
do laplaciano no intervalo [0, π]; na primeira coluna temos os
µ autovalores
¶ exatos do laplaciano, enquanto que
2n2 jπ
na demais colunas os autovalores da matriz A, λj = 2 1 − cos , com a linha superior indicando o
π n
número n de subintervalos na malha
n = 11 n = 21 n = 31 n = 51 n = 101 n = 1001
1 0.993 221 21 0.998 136 38 0.999 144 44 0.999 683 82 0.999 919 37 0.999 999 18
4 3.892 419 95 3.970 248 82 3.986 325 21 3.994 943 16 3.998 710 15 3.999 986 87
9 8.462 720 39 8.849 945 24 8.930 889 79 8.974 415 97 8.993 471 18 8.999 933 51
16 14.333 863 96 15.528 221 28 15.782 100 25 15.919 213 41 15.979 370 36 15.999 789 87
25 21.030 205 54 23.855 895 28 24.469 653 89 24.802 991 47 24.949 649 29 24.999 486 99
36 28.009 247 34 33.646 940 78 34.904 404 68 35.592 050 94 35.895 629 79 35.998 936 22
49 34.705 588 92 44.682 641 99 46.979 277 93 48.245 465 23 48.806 722 35 48.998 029 23
64 40.576 732 50 56.716 479 58 60.570 369 11 62.715 235 6 63.670 436 30 63.996 637 97
81 45.147 032 93 69.479 637 52 75.538 215 24 78.946 473 26 80.472 391 97 80.994 614 71
100 48.046 231 68 82.687 007 94 91.729 225 95 96.877 607 56 99.196 334 56 99.991 792 02

1.2 O Caso Bidimensional


Nesta seção, desenvolveremos um método numérico de diferenças finitas para resolver o problema de Dirichlet
para a equação de Poisson no retângulo (0, a) × (0, b)
½
−∆u = f (x, y) em (0, a) × (0, b) ,
u=0 sobre ∂ ((0, a) × (0, b)) ,

e para o problema de autovalor de Dirichlet para o laplaciano no retângulo


½
−∆u = λu em (0, a) × (0, b) ,
u=0 sobre ∂ ((0, a) × (0, b)) .

1.2.1 A Fórmula dos Cinco Pontos


Vamos estabelecer alguma notação. Denote
© ª
Ω = (0, a) × (0, b) = (x, y) ∈ R2 : 0 < x < a, 0 < y < b .

Ao discretizar Ω através dos pontos

(xi , yj ) = (i∆x, j∆y) , 0 6 i 6 n, 0 6 j 6 m

onde
a b
∆x = , ∆y = ,
n m
substituı́mos o domı́nio Ω pela malha (ou gride) uniforme

Ωd = {(x, y) ∈ Ω : x = i∆x, y = j∆y, 1 6 i 6 n − 1, 1 6 j 6 m − 1} .

Sua fronteira discretizada é o conjunto

∂Ωd = {(x, y) ∈ ∂Ω : x = i∆x, y = j∆y, 0 6 i 6 n, 0 6 j 6 m} ,


Rodney Josué Biezuner 9

de forma que © ª
Ωd = (x, y) ∈ Ω : x = i∆x, y = j∆y, 0 6 i 6 n, 0 6 j 6 m .
A equação de Poisson
−uxx − uyy = f (x, y)
pode ser agora discretizada. Denotamos

ui,j = u (xi , yj ) ,
fi,j = f (xi , yj ) .

Aproximamos cada derivada parcial de segunda ordem pela sua diferença centrada, obtendo
−ui−1,j + 2ui,j − ui+1,j
−uxx ≈ ,
∆x2
−ui,j−1 + 2ui,j − ui,j+1
−uyy ≈ .
∆y 2
Portanto, a equação de Poisson discretizada toma a forma
−ui−1,j + 2ui,j − ui+1,j −ui,j−1 + 2ui,j − ui,j+1
2
+ = fi,j . (1.11)
∆x ∆y 2
Como a função u é calculada em cinco pontos, esta equação é chamada a fórmula dos cinco pontos.
Para cada ponto interior da malha obtemos uma equação, logo temos um sistema linear de (n − 1) (m − 1)
equações com o mesmo número de incógnitas. Diferente do caso unidimensional, no entanto, não existe uma
maneira natural de ordenar os pontos da malha, logo não podemos obter imediatamente uma representação
matricial para o problema discretizado. Precisamos antes escolher uma ordenação para os pontos da malha,
e como existem várias ordenações possı́veis, existem várias matrizes associadas.
Talvez a mais simples ordenação é a ordem lexicográfica induzida de Z2 . Nesta ordem, os pontos da
malha são percorridos linha por linha, da esquerda para a direita, de baixo para cima:

u1,1 , u2,1 , . . . , un−1,1 , u1,2 , u2,2 , . . . , un−1,2 , . . . . . . , u1,m−1 , u2,m−1 , . . . , un−1,m−1 .

Neste caso, a matriz associada ao sistema linear é uma matriz (n − 1) (m − 1) × (n − 1) (m − 1) que pode
ser escrita como uma matriz de (m − 1) × (m − 1) blocos de dimensão (n − 1) × (n − 1) na forma
 1 
B − I
 ∆y 2 
 
 − 1 I B
1
− 2I 
 ∆y 2 ∆y 
 
 1 .. .. 
 − I . . 
 ∆y 2 
A=



 .. .. 1 
 . . − I 
 ∆y 2 
 1 1 
 − I B − 2I 
 ∆y 2 ∆y 
 1 
− I B
∆y 2 (m−1)×(m−1)
Rodney Josué Biezuner 10

onde I é a matriz identidade (n − 1) × (n − 1) e B é a matriz (n − 1) × (n − 1) dada por


 µ ¶ 
1 1 1
 2 2
+ 2
− 2 
 ∆x ∆y µ ∆x ¶ 
 1 1 1 1 
 − 2 + − 
 ∆x 2 ∆x 2 ∆y 2 ∆x 2 
 
 1 .. .. 
 − . . 
 ∆x 2 
 
 .. .. 1 
 . . − 
 µ ∆x2 ¶ 
 1 1 1 1 
 − 2 + − 
 ∆x2 ∆x2 ∆y 2 ∆x 2 
 µ ¶ 
 1 1 1 
− 2 +
∆x2 ∆x2 ∆y 2 (n−1)×(n−1)

Observe que µ ¶
1 1
aii = 2 2
+
∆x ∆y 2
para todo 1 6 i 6 (n − 1) (m − 1), enquanto que
1
aij = −
∆y 2
se o ponto j é vizinho à esquerda ou à direita do ponto i e
1
aij = −
∆x2
se o ponto j é vizinho acima ou abaixo do ponto i. Por exemplo, no caso especial ∆x = ∆y, se n = 4 e m = 6
(ou seja 3 × 5 = 15 pontos internos na malha e uma matriz 15 × 15), temos
 
4 −1 0 −1 0 0 0 0 0 0 0 0 0 0 0
 −1 4 −1 0 −1 0 0 0 0 0 0 0 0 0 0 
 
 0 −1 4 0 0 −1 0 0 0 0 0 0 0 0 0 
 
 −1 0 0 4 −1 0 −1 0 0 0 0 0 0 0 0 
 
 0 −1 0 −1 4 −1 0 −1 0 0 0 0 0 0 0 
 
 0 0 −1 0 −1 4 0 0 −1 0 0 0 0 0 0 
 
 0 0 0 −1 0 0 4 −1 0 −1 0 0 0 0 0 
1  0

A= 2  0 0 0 −1 0 −1 4 −1 0 −1 0 0 0 0 

∆x 
 0 0 0 0 0 −1 0 −1 4 0 0 −1 0 0 0 

 0 0 0 0 0 0 −1 0 0 4 −1 0 −1 0 0 
 
 0 0 0 0 0 0 0 −1 0 −1 4 −1 0 −1 0 
 
 0 0 0 0 0 0 0 0 −1 0 −1 4 0 0 −1 
 
 0 0 0 0 0 0 0 0 0 −1 0 0 4 −1 0 
 
 0 0 0 0 0 0 0 0 0 0 −1 0 −1 4 −1 
0 0 0 0 0 0 0 0 0 0 0 −1 0 −1 4
Observe que a matriz A é uma matriz simétrica, pentadiagonal e esparsa.

1.2.2 Existência e Unicidade da Solução Discreta – Autovalores do Problema


Bidimensional
Denotaremos por ud a função u|Ωd , isto é, ud é a discretização da função u no domı́nio discretizado Ωd .
Vamos definir o operador laplaciano discreto obtido a partir da fórmula dos cinco pontos por
µ ¶
ui−1,j − 2ui,j + ui+1,j ui,j−1 − 2ui,j + ui,j+1
−∆d ud = − + . (1.12)
∆x2 ∆y 2
Rodney Josué Biezuner 11

de modo que a discretização do problema


½
−∆u = f em Ω,
u=0 sobre ∂Ω,
é o problema ½
−∆d ud = fd em Ωd ,
(1.13)
ud = 0 sobre ∂Ωd .
Para estabelecer a existência e unicidade da solução discreta, provaremos que a matriz de discretização A,
que é uma matriz simétrica, é também uma matriz positiva definida, pois isso implica em particular que A
é invertı́vel.
Lembrando que as autofunções de Dirichlet do laplaciano no retângulo [0, a] × [0, b] são as funções
kπx lπy
Ukl (x, y) = sen sen ,
a b
este fato sugere que os autovetores ukl da matriz A na ordem lexicográfica são os vetores de coordenadas
Ukl (x1 , y1 ) , Ukl (x2 , y1 ) , . . . , Ukl (xn−1 , y1 ) ,
Ukl (x1 , y2 ) , Ukl (x2 , y2 ) , . . . , Ukl (xn−1 , y2 ) ,
..
.
Ukl (x1 , ym−1 ) , Ukl (x2 , ym−1 ) , . . . , Ukl (xn−1 , ym−1 )

= Ukl (∆x, ∆y) , Ukl (2∆x, ∆y) , . . . , Ukl ((n − 1) ∆x, ∆y) ,
Ukl (∆x, 2∆y) , Ukl (2∆x, 2∆y) , . . . , Ukl ((n − 1) ∆x, 2∆y) ,
..
.
Ukl (∆x, (m − 1) ∆y) , Ukl (2∆x, (m − 1) ∆y) , . . . , Ukl ((n − 1) ∆x, (m − 1) ∆y) ,
ou seja, como ∆x = a/n e ∆y = b/m, os vetores
µ
kπ lπ 2kπ lπ (n − 1) kπ lπ
ukl = sen sen , sen sen , . . . , sen sen ,
n m n m n m
kπ 2lπ 2kπ 2lπ (n − 1) kπ 2lπ
sen sen , sen sen , . . . , sen sen ,
n m n m n m
...,

kπ (m − 1) lπ 2kπ (m − 1) lπ (n − 1) kπ (m − 1) lπ
sen sen , sen sen , . . . , sen sen .
n m n m n m
1.2 Lema. Os (n − 1) × (m − 1) autovalores da matriz A são
· µ ¶ µ ¶¸ µ ¶
1 kπ 1 lπ 1 2 kπ 1 2 lπ
λkl = 2 1 − cos + 1 − cos =4 sen + sen , (1.14)
∆x2 n ∆y 2 m ∆x2 2n ∆y 2 2m
k = 1, . . . , n − 1, l = 1, . . . , m − 1, e os autovetores correspondentes são
µ
kπ lπ 2kπ lπ (n − 1) kπ lπ
ukl = sen sen , sen sen , . . . , sen sen ,
n m n m n m
kπ 2lπ 2kπ 2lπ (n − 1) kπ 2lπ
sen sen , sen sen , . . . , sen sen , (1.15)
n m n m n m
...,

kπ (m − 1) lπ 2kπ (m − 1) lπ (n − 1) kπ (m − 1) lπ
sen sen , sen sen , . . . , sen sen ,
n m n m n m
k = 1, . . . , n − 1, l = 1, . . . , m − 1.
Rodney Josué Biezuner 12

Prova. Embora a demonstração deste lema possa ser feita de maneira análoga à do Lema 1.1, usando
identidades trigonométricas, daremos uma demonstração diferente. Lembrando que as autofunções e os
autovalores de Dirichlet do laplaciano no retângulo são facilmente obtidos através do método de separação
de variáveis, encontraremos os autovalores da matriz A usando um método de separação de variáveis discreto
para achar os autovalores do laplaciano discreto
µ ¶
ui−1,j − 2ui,j + ui+1,j ui,j−1 − 2ui,j + ui,j+1
− + = λui,j . (1.16)
∆x2 ∆y 2

Em particular, este método não depende da maneira como os pontos da malha são ordenados (não depende
da matriz A usada para representar o laplaciano discreto). Como no método de separação de variáveis
contı́nuo, assumimos que as soluções da equação discreta acima são produtos da forma

ui,j = F (i) G (j) , (1.17)

onde F e G são funções de uma variável inteira. Substituindo esta expressão na equação de Helmholtz
discreta, obtemos

F (i − 1) G (j) − 2F (i) G (j) + F (i + 1) G (j) F (i) G (j − 1) − 2F (i) G (j) + F (i) G (j + 1)


+ = −λF (i) G (j) .
∆x2 ∆y 2

Dividindo esta equação por F (i) G (j), segue que

F (i − 1) − 2F (i) + F (i + 1) G (j − 1) − 2G (j) + G (j + 1)
+ = −λ.
∆x2 F (i) ∆y 2 G (j)

Separando as variáveis, concluı́mos que cada um dos quocientes acima é independente de i ou de j, isto é,
eles são constantes:
F (i − 1) − 2F (i) + F (i + 1)
= A, (1.18)
F (i)
G (j − 1) − 2G (j) + G (j + 1)
= B, (1.19)
G (j)

onde as constantes α, β estão relacionadas pela identidade


A B
2
+ = −λ. (1.20)
∆x ∆y 2

Estas equações podem ser escritas como fórmulas de recorrência (análogas às equações diferenciais ordinárias
obtidas no método de separação de variáveis contı́nuo)

F (i + 1) − (A + 2) F (i) + F (i − 1) = 0,
G (j − 1) − (B + 2) G (j) + G (j + 1) = 0.

Para resolvê-las, é mais conveniente trabalhar com as constantes

2α = A + 2, 2β = B + 2.

Desta forma, as equações para F e G tornam-se

F (i − 1) − 2αF (i) + F (i + 1) = 0, (1.21)


G (j − 1) − 2βG (j) + G (j + 1) = 0. (1.22)
Rodney Josué Biezuner 13

Observe que µ ¶
1−α 1−β
λ=2 + . (1.23)
∆x2 ∆y 2
Vamos resolver a equação para F , já que a equação para G é completamente análoga. Substituindo em
(1.21) uma solução da forma
F (i) = z i (1.24)
obtemos
z i−1 − 2αz i + z i+1 = 0,
donde, dividindo por z i−1 extraı́mos a equação quadrática (análoga à equação indicial)

z 2 − 2αz + 1 = 0. (1.25)

As duas raı́zes são p


z± = α ± α2 − 1,
com z+ + z− = 2α e z+ z− = 1. Portanto, a solução geral para a equação (1.21) é
i i
F (i) = c1 z+ + c2 z−

para algumas constantes c1 , c2 . Para determinarmos estas constantes e também α, aplicamos as condições
de fronteira, que implicam
F (0) = F (n) = 0.
A primeira destas por sua vez implica que c1 = −c2 , logo
¡ i i
¢
F (i) = c z+ − z− . (1.26)

Como a equação para F é homogênea, a constante c é arbitrária. Aplicando a segunda, segue que
n n
z+ = z− ,

ou, como z+ z− = 1,
2n
z+ =1
Conseqüentemente, z+ é uma 2n-ésima raiz complexa de 1:

z+ = eijπ/n (1.27)

para algum inteiro 1 6 k 6 2n − 1, onde i = −1. Como z− = 1/z+ , podemos restringir 0 6 k 6 n − 1 e
(1.26) produz todas as soluções não-triviais F de (1.21).
Portanto,
z+ + z− eiπk/n + e−iπk/n kπ
α= = = cos , 0 6 k 6 n − 1,
2 2 n
e, escolhendo c = 1/2,
ikπ
Fk (i) = eiπki/n − e−iπki/n = sen .
n
Analogamente,

β = cos , 0 6 l 6 m − 1,
m
e
jlπ
Gl (j) = sen .
m
Rodney Josué Biezuner 14

Segue que os autovalores são


· µ ¶ µ ¶¸
1 kπ 1 lπ
λkl = 2 1 − cos + 1 − cos
∆x2 n ∆y 2 m

e as coordenadas das autofunções associadas são dadas por


ikπ jlπ
(ukl )i,j = Fk (i) Gl (j) = sen sen .
n m
¥

1.3 Teorema. (Existência e Unicidade da Solução Discreta) Seja Ω = (0, a) × (0, b). Então o problema
discretizado ½
−∆d ud = fd em Ωd ,
ud = 0 sobre ∂Ωd ,
possui uma única solução.

Prova. Pelo lema anterior, os autovalores da matriz simétrica A são positivos, logo ela é uma matriz
invertı́vel. ¥

1.2.3 Princı́pio do Máximo Discreto


Para obter uma estimativa a priori para a equação de Poisson discretizada, e com isso provar a convergência
da solução discreta para a solução clássica, usaremos um princı́pio do máximo discreto que enunciaremos e
provaremos nesta subseção.

1.4 Lema. (Propriedade do Valor Médio) Se ∆d ud = 0, então para pontos interiores vale

∆x2 (ui,j−1 + ui,j+1 ) + ∆y 2 (ui−1,j + ui+1,j )


ui,j = .
2 (∆x2 + ∆y 2 )

Em particular, se ∆x = ∆y, então para pontos interiores vale


ui,j−1 + ui,j+1 + ui−1,j + ui+1,j
ui,j = .
4

1.5 Teorema. (Princı́pio do Máximo Discreto) Se ∆d ud > 0, o máximo de ud em Ωd é atingido na fronteira


∂Ωd ; se o máximo de ud é atingido no interior, então ud é constante.
Se ∆d ud 6 0, o mı́nimo de ud em Ωd é atingido na fronteira ∂Ωd ; se o mı́nimo de ud é atingido no
interior, então ud é constante.

Prova. Primeiro provaremos para ∆x = ∆y, para ilustrar a analogia com o caso contı́nuo. ∆d ud > 0 implica
ui,j−1 + ui,j+1 + ui−1,j + ui+1,j
ui,j 6 .
4
Logo, um ponto interior é um máximo local, isto é,

ui,j > ui,j−1 , ui,j+1 , ui−1,j , ui+1,j

(ou seja, é um máximo em relação aos seus quatro vizinhos), somente se cada um dos seus quatro vizinhos
assume este mesmo valor máximo, e a desigualdade torna-se uma identidade. Aplicando este argumento a
todos os pontos da malha, concluı́mos que ou não existe um máximo interior, e portanto o máximo é atingido
Rodney Josué Biezuner 15

na fronteira, ou existe um máximo interior e todos os pontos da malha assumem o mesmo valor, isto é, ud é
constante.
No caso geral ∆x 6= ∆y, se ∆d ud > 0 temos
µ ¶ µ ¶
1 1 1 ui,j−1 + ui,j+1 ui−1,j + ui+1,j
+ u i,j 6 + .
∆x2 ∆y 2 2 ∆y 2 ∆x2

Se ui,j é um máximo local, segue que


µ ¶ µ ¶ µ ¶
1 1 1 ui,j + ui,j ui,j + ui,j 1 1 1
+ ui,j 6 + = + ui,j ,
∆x2 ∆y 2 2 ∆y 2 ∆x2 2 ∆x2 ∆y 2

logo nenhum dos seus quatro vizinhos pode assumir um valor menor que ui,j , isto é, cada um dos quatro
vizinhos assume o mesmo valor máximo e o argumento prossegue como no caso anterior. O caso ∆d ud 6 0
é provado considerando-se −ud . ¥

1.2.4 Convergência da Solução Discreta para a Solução Clássica


Por simplicidade, trabalharemos no quadrado unitário, isto é, Ω = (0, 1) × (0, 1). Consideraremos a norma
do máximo discreta para funções vd definidas no domı́nio discretizado Ωd :

kvd k∞ = max |vi,j | .


06i6n
06j6m

Em primeiro lugar, obtemos uma estimativa a priori discreta (que também pode ser visto como um resultado
de regularidade discreto) para soluções da equação de Poisson discreta com condição de Dirichlet homogênea:
2
1.6 Lema. (Estimativa a Priori) Seja Ω = (0, 1) . Seja ud uma solução de
½
−∆d ud = fd em Ωd ,
ud = 0 sobre ∂Ωd .

Então
1
kud k∞ 6 k∆d ud k∞ . (1.28)
8
Prova. Considere a função "µ ¶2 µ ¶2 #
1 1 1
w (x, y) = x− + y−
4 2 2
e sua versão discretizada wd definida por
"µ ¶2 µ ¶2 #
1 1 1
wi,j = xi − + yj − . (1.29)
4 2 2

Então
w>0 e ∆w = 1,
e também
wd > 0 e ∆d wd = 1, (1.30)
Rodney Josué Biezuner 16

pois
wi−1,j − 2wi,j + wi+1,j wi,j−1 − 2wi,j + wi,j+1
∆d wd = +
∆x2 ∆y 2
"¡ ¢ 2 ¡ ¢ 2 ¡ ¢2 ¡ ¢2 ¡ ¢2 ¡ ¢2
1 xi−1 − 12 + yj − 12 − 2 xi − 12 − 2 yj − 12 + xi+1 − 21 + yj − 12
=
4 ∆x2
¡ ¢2 ¡ ¢2 ¡ ¢2 ¡ ¢2 ¡ ¢2 ¡ ¢2 #
xi − 12 + yj−1 − 12 − 2 xi − 12 − 2 yj − 12 + xi − 12 + yj+1 − 12
+
∆y 2
"¡ ¢2 ¡ ¢2 ¡ ¢2 ¡ ¢2 ¡ ¢2 ¡ ¢2 #
1 xi−1 − 12 − 2 xi − 12 + xi+1 − 12 yj−1 − 21 − 2 yj − 12 + yj+1 − 12
= +
4 ∆x2 ∆y 2
"¡ ¢2 ¡ ¢2 ¡ ¢2 ¡ ¢2 ¡ ¢2 ¡ ¢2 #
1 xi − ∆x − 12 − 2 xi − 12 + xi + ∆x − 12 yj − ∆y − 12 − 2 yj − 12 + yj + ∆y − 12
= +
4 ∆x2 ∆y 2
"¡ ¢ ¡ ¢ ¡ ¢
1 x2i + ∆x2 + 14 − 2xi ∆x − xi + ∆x − 2 x2i − xi + 14 + x2i + ∆x2 + 14 + 2xi ∆x − xi − ∆x
=
4 ∆x2
¡ 2 ¢ ¡ ¢ ¡ ¢#
yj + ∆y 2 + 14 − 2yj ∆y − yj + ∆y − 2 yj2 − yj + 41 + yj2 + ∆y 2 + 14 + 2yj ∆y − yj − ∆y
+
∆y 2
µ ¶
1 2∆x2 2∆y 2
= 2
+ = 1.
4 ∆x ∆y 2
Considere agora a função
ud − k∆d ud k∞ wd . (1.31)
Temos então
∆d (ud − k∆d ud k∞ wd ) = ∆d ud − k∆d ud k∞ ∆d wd
= ∆d ud − k∆d ud k∞
6 0.
Segue do Princı́pio do Máximo Discreto que a função ud − k∆d ud k∞ wd assume o seu mı́nimo na fronteira.
Este último é igual a − k∆d ud k∞ max∂Ωd wd . Por sua vez, o máximo de wd na fronteira é menor ou igual ao
máximo de w em ∂Ω, dado por
µ ¶2 µ ¶2
1 1 1 1 1
max x− = max y− = .
06x61 4 2 06x61 4 2 8
Portanto, concluı́mos que
1
ui,j > ui,j − k∆d ud k∞ wi,j > − k∆d ud k∞ (1.32)
8
para todos i, j. Analogamente,
∆d (ud + k∆d ud k∞ wd ) > 0
e a função ud + k∆d ud k∞ wd assume o seu máximo na fronteira, igual a k∆d ud k∞ max∂Ωd wd 6 18 a, donde
1
ui,j 6 ui,j − k∆d ud k∞ wi,j 6 k∆d ud k∞ (1.33)
8
para todos i, j. Reunindo as duas desigualdades, segue que
1
|ui,j | 6 k∆d ud k∞
8
para todos i, j, o que conclui a demonstração. ¥
Rodney Josué Biezuner 17

2 ¡ ¢
1.7 Teorema. Seja Ω = (0, 1) . Sejam u ∈ C 4 Ω uma solução clássica para o problema de Dirichlet
½
−∆u = f em Ω,
u=0 sobre ∂Ω,

e vd uma solução do correspondente problema discretizado


½
−∆d vd = fd em Ωd ,
vd = 0 sobre ∂Ωd .

Então existe uma constante C > 0 independente de u tal que


° ° ¡ ¢
kud − vd k∞ 6 C °D4 u°L∞ (Ω) ∆x2 + ∆y 2 . (1.34)
¡ ¢ ¡ ¢
Prova. A hipótese f ∈ C 2,α Ω garante que u ∈ C 4 Ω . Lembre-se que
¯ 4 ¯
° 4 ° ¯ ∂ u ¯
°D u° ∞ = sup ¯ p q (x, y)¯¯ .
¯
L (Ω)
(x,y)∈Ω ∂x ∂y
p+q=4

Pela Fórmula de Taylor,


∂2u u(xi − ∆x, yj ) − 2u(xi , yj ) + u(xi + ∆x, yj ) 2 ∂4u 2 ∂6u
2
(xi , yj ) = 2
− 4
(xi , yj )∆x2 − (xi , yj )∆x4 − . . .
∂x ∆x 4! ∂x 5! ∂x6
ui−1,j − 2ui,j + ui+1,j 2 ∂4u 2 2 ∂6u
= − (x i , y j )∆x − (xi , yj )∆x4 − . . . ,
∆x2 4! ∂x4 5! ∂x6
∂2u u(xi , yj − ∆y) − 2u(xi , yj ) + u(xi , yj + ∆y) 2 ∂4u 2 ∂6u
2
(xi , yj ) = 2
− 4
(xi , yj )∆y 2 − (xi , yj )∆y 4 − . . .
∂y ∆y 4! ∂y 5! ∂y 6
ui,j−1 − 2ui,j + ui,j+1 2 ∂4u 2 ∂6u
= 2
− 4
(xi , yj )∆y 2 − (xi , yj )∆y 4 − . . . ,
∆y 4! ∂y 5! ∂y 6
donde µ ¶
1 ∂4u ∂4u ¡ ¢
∆u (xi , yj ) = (∆d ud )ij − 4
(xi , yj )∆x2 + 4 (xi , yj )∆y 2 + O ∆x4 , ∆y 4 . (1.35)
3! ∂x ∂y
Como
−∆u (xi , yj ) = f (xi , yj ) ,
temos que
µ ¶
1 ∂4u 2 ∂4u ¡ ¢
− (∆d ud )i,j = (fd )i,j − (xi , yj )∆x + (xi , yj )∆y 2 + O ∆x4 , ∆y 4 . (1.36)
3! ∂x4 ∂y 4
Subtraindo desta equação a equação
− (∆d vd )i,j = (fd )i,j ,
obtemos µ ¶
1 ∂4u 2 ∂4u ¡ ¢
− (∆d ud − ∆d vd )i,j =− (x i , y j )∆x + (xi , yj )∆y 2 + O ∆x4 , ∆y 4 ,
3! ∂x4 ∂y 4
o que implica
1 ° °
°D4 u° ∞
¡ 2 ¢ ¡ ¢
k∆d (ud − vd )k∞ 6 L (Ω)
∆x + ∆y 2 + O ∆x4 , ∆y 4
3! ° ° ¡ ¢
6 C °D4 u°L∞ (Ω) ∆x2 + ∆y 2 .

Usando a estimativa a priori do lema anterior, obtemos finalmente o resultado desejado. ¥


Rodney Josué Biezuner 18

Definição. Dizemos que as soluções do problema discretizado


½
−∆d vd = fd em Ωd ,
vd = 0 sobre ∂Ωd ,
convergem para a solução exata u do problema de Poisson
½
−∆u = f em Ω,
u=0 sobre ∂Ω,
com relação à norma k·k se
kud − vd k → 0
quando ∆x, ∆y → 0. Dizemos que a convergência é de ordem k (ou que o esquema de diferenças
finitas é convergente de ordem k) se
¡ ¢
kud − vd k = O ∆xk , ∆y k .

O Teorema 1.7 diz que o esquema de diferenças


¡ ¢ finitas da fórmula de cinco pontos é um esquema convergente
na norma do sup de ordem 2, se u ∈ C 4 Ω . Maior regularidade da solução u não causa melhor convergência
no método. Na verdade, a ordem de convergência da fórmula de cinco
¡ ¢ pontos ainda é 2 mesmo
¡ ¢ sob hipóteses
mais fracas sobre a regularidade de u: basta assumir u ∈ C 3,1 Ω , ao invés de u ∈ C 4 Ω . No entanto,
regularidade menor que esta em u afeta negativamente
¡ ¢ a ordem de convergência da fórmula de cinco pontos.
Em geral, pode-se provar que se u ∈ C k,α Ω , 2 6 k 6 4, então existe uma constante C = C (k, α) tal que
¡ ¢
kud − vd k∞ 6 C ∆xk+α−2 + ∆y k+α−2 kukC k,α (Ω) . (1.37)

Para uma demonstração destes resultados, veja [Hackbusch], págs. 60-61. Se quisermos uma melhor ordem
de convergência para as soluções discretizadas, é necessário considerar outras forma de discretizar o laplaciano
através de diferenças finitas. Isto será feito na próxima seção.

1.3 Discretizações de Ordem Superior


Para obter esquemas de diferenças finitas com melhor ordem de convergência, em geral é necessário acres-
centar mais pontos na fórmula. O método dos coeficientes indeterminados é um método simples para
construir estes esquemas.

1.3.1 Caso Unidimensional


Vamos obter um esquema de diferenças finitas convergente de ordem 4 para o caso unidimensional. O
esquema envolvendo três pontos, que obtivemos no inı́cio do capı́tulo através da aproximação da derivada
segunda em um ponto por uma diferença finita centrada (que envolve o ponto e seus dois vizinhos, à esquerda
e à direita), é convergente de ordem 2 (isso que pode ser provado de maneira semelhante a como fizemos para
a fórmula de cinco pontos). Para obter um esquema com uma maior ordem de convergência, acrescentamos
mais dois pontos à fórmula de diferenças finitas do esquema, que denotaremos por δui :
δui = c1 ui−2 + c2 ui−1 + c3 ui + c4 ui+1 + c5 ui+2 . (1.38)
Cada termo tem sua expansão em série de Taylor:
4 8 16 32 ¡ ¢
u(xi − 2∆x) = u(xi ) − 2u0 (xi )∆x + u00 (xi )∆x2 − u000 (xi )∆x3 + u(4) (xi )∆x4 − u(5) (xi )∆x5 + O ∆x6 ,
2! 3! 4! 5!
1 00 1 000 1 (4) 1 (5) ¡ ¢
0
u(xi − ∆x) = u(xi ) − u (xi )∆x + u (xi )∆x − u (xi )∆x + u (xi )∆x − u (xi )∆x5 + O ∆x6 ,
2 3 4
2! 3! 4! 5!
1 00 1 000 1 (4) 1 ¡ ¢
u(xi + ∆x) = u(xi ) + u (xi )∆x + u (xi )∆x + u (xi )∆x + u (xi )∆x + u(5) (xi )∆x5 + O ∆x6 ,
0 2 3 4
2! 3! 4! 5!
4 00 8 000 16 (4) 32 ¡ ¢
u(xi + 2∆x) = u(xi ) + 2u (xi )∆x + u (xi )∆x + u (xi )∆x + u (xi )∆x + u(5) (xi )∆x5 + O ∆x6 .
0 2 3 4
2! 3! 4! 5!
Rodney Josué Biezuner 19

Substituindo estas expressões na fórmula acima, obtemos:

δui = (c1 + c2 + c3 + c4 + c5 ) u (xi )


+ ∆x (−2c1 − c2 + c4 + 2c5 ) u0 (xi )
µ ¶
1 1
+ ∆x2 2c1 + c2 + c4 + 2c5 u00 (xi )
2 2
µ ¶
4 1 1 4
+ ∆x3 − c1 − c2 + c4 + c5 u000 (xi )
3 6 6 3
µ ¶
2 1 1 2
+ ∆x4 c1 + c2 + c4 + c5 u(4) (xi )
3 24 24 3
µ ¶
4 1 1 4
+ ∆x5 − c1 − c2 + c4 + c5 u(5) (xi )
15 120 120 15
¡ 6¢
+ O ∆x .

Como procuramos um esquema de diferenças finitas com ordem de convergência maior que 2, queremos obter
uma solução não-nula para o sistema

 c1 + c2 + c3 + c4 + c5 = 0



 −2c 1 − c2 + c 4 + 2c 5 = 0



 2c1 + 1 c2 + 1 c4 + 2c5

=
1
2 2 ∆x2 ;

 4 1 1 4
 − c1 − c2 + c4 + c5 =
 0

 3 6 6 3


 2c + 1 c + 1 c + 2c =

0
1 2 4 5
3 24 24 3
isso implicaria em princı́pio em um esquema com ordem de convergência pelo menos igual a 3:
¡ ¢
δui = u00 (xi ) + O ∆x3 .

Como a matriz  
1 1 1 1 1
 −2 −1 0 1 2 
 
 1 1 
 2 0 2 
 2 2 
 
 4 1 1 4 
 − 
 3 −6 0 6 3 
 
2 1 1 2
0
3 24 24 3
tem determinante igual a 1, ela é invertı́vel e o sistema possui a solução única
1 1
c1 = − ,
12 ∆x2
4 1
c2 = ,
3 ∆x2
5 1
c3 =−
2 ∆x2
4 1
c4 = ,
3 ∆x2
1 1
c5 =− .
12 ∆x2
Rodney Josué Biezuner 20

Incidentalmente, esta solução também implica


4 1 1 4
− c1 − c2 + c4 + c5 = 0
15 120 120 15
o que permite obter um esquema com ordem de convergência igual a 4:
¡ ¢
δui = u00 (xi ) + O ∆x4 ,

aproximando a derivada segunda u00 pela diferença finita


1 4 5 4 1
− ui−2 + ui−1 − ui + ui+1 − ui+2
00
u = 12 3 2 3 12
∆x2
ou
ui−2 − 16ui−1 + 30ui − 16ui+1 + ui+2
−u00 = . (1.39)
12∆x2

1.3.2 Caso Bidimensional: A Fórmula dos Nove Pontos Compacta


Um esquema de ordem 4 para a equação de Poisson em duas dimensões é a fórmula de nove pontos compacta.
Se buscássemos uma fórmula de nove pontos simplesmente a partir da fórmula de cinco pontos unidi-
mensional obtida na subseção precedente (como obtivemos a fórmula de cinco pontos bidimensional a partir
da fórmula de três pontos unidimensional), escreverı́amos
ui−2,j − 16ui−1,j + 30ui,j − 16ui+1,j + ui+2,j ui,j−2 − 16ui,j−1 + 30ui,j − 16ui,j+1 + ui,j+2
−∆d ud = + ,
12∆x2 12∆y 2
(1.40)
que pode ser resumida na forma
 1 

 12∆y 2 
 16 
 − 
 12∆y 2 
 µ ¶ 
 1 16 1 1 16 1 

−∆d ud =  − − 30 + − − .
 12∆x
2 12∆x 2 12∆x 2 12∆y 2 12∆x 2 12∆x 
2

 16 
 − 
 12∆y 2 
 1 

12∆y 2
Embora este esquema seja de fato de ordem 4, ele apresenta dificuldades para pontos interiores adjacentes à
fronteira do retângulo (por exemplo, se considerarmos o ponto (x1 , y1 ), os pontos (x−1 , y1 ) e (x1 , y−1 ) estão
fora do retângulo). Uma possibilidade para resolver este problema seria aplicar a fórmula dos cinco pontos
nos pontos interiores adjacentes à fronteira e aplicar a fórmula dos nove pontos apenas nos pontos interiores
mais distantes da fronteira. No entanto, como a fórmula de cinco pontos é de segunda ordem, a convergência
deste método misto não deve ser de ordem 4.
Vamos tentar encontrar uma fórmula de nove pontos compacta, em que os nove pontos estão dispostos
em três linhas e três colunas, de modo que não há problemas em usá-la nos pontos interiores adjacentes à
fronteira. Aplicando o método dos coeficientes indeterminados, buscamos nove coeficientes para a diferença
finita

−∆d ud = c1 ui−1,j−1 + c2 ui,j−1 + c3 ui+1,j−1


+ c4 ui−1,j + c5 ui,j + c6 ui+1,j (1.41)
+ c7 ui−1,j+1 + c8 ui,j+1 + c9 ui+1,j+1 .
Rodney Josué Biezuner 21

Observe a distribuição dos nove pontos. Além dos cinco usuais, foram acrescentados os quatro pontos que
ocupam as posições diagonais. Para os quatro pontos vizinhos horizontais ou verticais do ponto central, a
fórmula de Taylor produz

∂u 1 ∂2u 1 ∂3u 1 ∂4u


u(xi − ∆x, yj ) = u(xi , yj ) − (xi , yj )∆x + 2
(xi , yj )∆x2 − 3
(xi , yj )∆x3 + (xi , yj )∆x4
∂x 2! ∂x 3! ∂x 4! ∂x4
1 ∂5u ¡ ¢
− 5
(xi , yj )∆x5 + O ∆x6
5! ∂x
∂u 1 ∂2u 1 ∂3u 1 ∂4u
u(xi + ∆x, yj ) = u(xi , yj ) + (xi , yj )∆x + 2
(xi , yj )∆x2 + 3
(xi , yj )∆x3 + (xi , yj )∆x4
∂x 2! ∂x 3! ∂x 4! ∂x4
1 ∂5u ¡ ¢
+ (xi , yj )∆x5 + O ∆x6
5! ∂x5
∂u 1 ∂2u 1 ∂3u 1 ∂4u
u(xi , yj − ∆y) = u(xi , yj ) − (xi , yj )∆y + 2
(xi , yj )∆y 2 − 3
(xi , yj )∆y 3 + (xi , yj )∆y 4
∂y 2! ∂y 3! ∂y 4! ∂y 4
1 ∂5u ¡ ¢
− 5
(xi , yj )∆x5 + O ∆x6
5! ∂x
∂u 1 ∂2u 1 ∂3u 1 ∂4u
u(xi , yj + ∆y) = u(xi , yj ) + (xi , yj )∆y + 2
(xi , yj )∆y 2 + 3
(xi , yj )∆y 3 + (xi , yj )∆y 4
∂y 2! ∂y 3! ∂y 4! ∂y 4
1 ∂5u ¡ ¢
+ 5
(xi , yj )∆x5 + O ∆x6 , ∆y 6
5! ∂x
enquanto que para os quatro pontos diagonais temos

u(xi + ∆x, yj + ∆y)


· ¸ · ¸
∂u ∂u 1 ∂2u 2 ∂2u ∂2u 2
= u(xi , yj ) + (xi , yj )∆x + (xi , yj )∆y + (xi , yj )∆x + 2 (xi , yj )∆x∆y + 2 (xi , yj )∆y
∂x ∂y 2! ∂x2 ∂x∂y ∂y
· 3 3 3 3
¸
1 ∂ u ∂ u ∂ u ∂ u
+ (xi , yj )∆x3 + 3 2 (xi , yj )∆x2 ∆y + 3 (xi , yj )∆x∆y 2 + 3 (xi , yj )∆y 3
3! ∂x3 ∂x ∂y ∂x∂y 2 ∂y
· 4 4 4
¸
1 ∂ u 4 ∂ u 3 ∂ u 2 2 ∂3u 3 ∂4u 4
+ (xi , yj )∆x + 4 3 (xi , yj )∆x ∆y + 6 (xi , yj )∆x ∆y + 4 (xi , yj )∆x∆y + 4 (xi , yj )∆y
4! ∂x4 ∂x ∂y ∂x∂y 3 ∂x∂y 3 ∂y
· 5 5 5 5
1 ∂ u ∂ u ∂ u ∂ u
+ 5
(xi , yj )∆x5 + 5 4 (xi , yj )∆x4 ∆y + 10 3 2 (xi , yj )∆x3 ∆y 2 + 10 (xi , yj )∆x2 ∆y 3
5! ∂x ∂x ∂y ∂x ∂y ∂x∂y 4
¸
∂5u ∂5u ¡ ¢
+5 4
(xi , yj )∆x∆y + 5 (xi , yj )∆y + O ∆x6 , ∆y 6 ,
4 5
∂x∂y ∂y

u(xi − ∆x, yj − ∆y)


· ¸ · ¸
∂u ∂u 1 ∂2u 2 ∂2u ∂2u 2
= u(xi , yj ) − (xi , yj )∆x + (xi , yj )∆y + (x ,
i jy )∆x + 2 (x ,
i jy )∆x∆y + (x ,
i jy )∆y
∂x ∂y 2! ∂x2 ∂x∂y ∂y 2
· 3 ¸
1 ∂ u ∂3u ∂3u ∂3u
− 3
(xi , yj )∆x3 + 3 2 (xi , yj )∆x2 ∆y + 3 2
(xi , yj )∆x∆y 2 + 3 (xi , yj )∆y 3
3! ∂x ∂x ∂y ∂x∂y ∂y
· 4 4 4
¸
1 ∂ u 4 ∂ u 3 ∂ u 2 2 ∂3u 3 ∂4u 4
+ (x ,
i jy )∆x + 4 (x ,
i jy )∆x ∆y + 6 (x ,
i j y )∆x ∆y + 4 (x ,
i jy )∆x∆y + (x ,
i jy )∆y
4! ∂x4 ∂x3 ∂y ∂x∂y 3 ∂x∂y 3 ∂y 4
· 5
1 ∂ u ∂5u ∂5u ∂5u
− 5
(xi , yj )∆x5 + 5 4 (xi , yj )∆x4 ∆y + 10 3 2 (xi , yj )∆x3 ∆y 2 + 10 (xi , yj )∆x2 ∆y 3
5! ∂x ∂x ∂y ∂x ∂y ∂x∂y 4
¸
∂5u 4 ∂5u 5
¡ ¢
+5 4
(x ,
i jy )∆x∆y + 5
(x ,
i jy )∆y + O ∆x6
∂x∂y ∂y
Rodney Josué Biezuner 22

u(xi + ∆x, yj − ∆y)


· ¸
∂u ∂u
= u(xi , yj ) + (xi , yj )∆x − (xi , yj )∆y
∂x ∂y
· ¸
1 ∂2u 2 ∂ 2
u ∂2u 2
+ (x i , y j )∆x − 2 (x i , y j )∆x∆y + (xi , y j )∆y
2! ∂x2 ∂x∂y ∂y 2
· 3 ¸
1 ∂ u 3 ∂3u 2 ∂3u 2 ∂3u 3
+ (x ,
i j y )∆x − 3 (x ,
i j y )∆x ∆y + 3 (x ,
i jy )∆x∆y − (x ,
i jy )∆y
3! ∂x3 ∂x2 ∂y ∂x∂y 2 ∂y 3
· 4 ¸
1 ∂ u 4 ∂4u 3 ∂4u 2 2 ∂3u 3 ∂4u 4
+ (x ,
i j y )∆x − 4 (x ,
i j y )∆x ∆y + 6 (x ,
i jy )∆x ∆y − 4 (x ,
i jy )∆x∆y + (x ,
i jy )∆y
4! ∂x4 ∂x3 ∂y ∂x∂y 3 ∂x∂y 3 ∂y 4
· 5
1 ∂ u ∂5u ∂5u ∂5u
+ 5
(xi , yj )∆x5 − 5 4 (xi , yj )∆x4 ∆y + 10 3 2 (xi , yj )∆x3 ∆y 2 − 10 (xi , yj )∆x2 ∆y 3
5! ∂x ∂x ∂y ∂x ∂y ∂x∂y 4
¸
∂5u 4 ∂5u 5
¡ ¢
+5 4
(x ,
i j y )∆x∆y − 5
(x ,
i j y )∆y + O ∆x6 , ∆y 6 ,
∂x∂y ∂y

u(xi − ∆x, yj + ∆y)


· ¸
∂u ∂u
= u(xi , yj ) + − (xi , yj )∆x + (xi , yj )∆y
∂x ∂y
· 2 ¸
1 ∂ u 2 ∂2u ∂2u 2
+ (xi , yj )∆x − 2 (xi , yj )∆x∆y + 2 (xi , yj )∆y
2! ∂x2 ∂x∂y ∂y
· 3 3
¸
1 ∂ u 3 ∂ u 2 ∂3u 2 ∂3u 3
+ − 3 (xi , yj )∆x + 3 2 (xi , yj )∆x ∆y − 3 (xi , yj )∆x∆y + 3 (xi , yj )∆y
3! ∂x ∂x ∂y ∂x∂y 2 ∂y
· 4 4 4
¸
1 ∂ u 4 ∂ u 3 ∂ u 2 2 ∂3u 3 ∂4u 4
+ (xi , yj )∆x − 4 3 (xi , yj )∆x ∆y + 6 (xi , yj )∆x ∆y − 4 (xi , yj )∆x∆y + 4 (xi , yj )∆y
4! ∂x4 ∂x ∂y ∂x∂y 3 ∂x∂y 3 ∂y
· 5 5 5 5
1 ∂ u ∂ u ∂ u ∂ u
+ − 5 (xi , yj )∆x5 + 5 4 (xi , yj )∆x4 ∆y − 10 3 2 (xi , yj )∆x3 ∆y 2 + 10 (xi , yj )∆x2 ∆y 3
5! ∂x ∂x ∂y ∂x ∂y ∂x∂y 4
¸
∂5u ∂5u ¡ ¢
−5 4
(xi , yj )∆x∆y + 5 (xi , yj )∆y + O ∆x6 , ∆y 6 .
4 5
∂x∂y ∂y
Rodney Josué Biezuner 23

Substituindo estas expressões na fórmula acima, obtemos:

−∆d ud = (c1 + c2 + c3 + c4 + c5 + c6 + c7 + c8 + c9 ) u (xi , yj )


∂u
+ ∆x (−c1 + c3 − c4 + c6 − c7 + c9 ) (xi , yj )
∂x
∂u
+ ∆y (−c1 − c2 − c3 + c7 + c8 + c9 ) (xi , yj )
∂y
µ ¶ 2
1 1 1 1 1 1 ∂ u
+ ∆x2 c1 + c3 + c4 + c6 + c7 + c9 (xi , yj )
2 2 2 2 2 2 ∂x2
∂2u
+ ∆x∆y (c1 − c3 − c7 + c9 ) (xi , yj )
∂x∂y
µ ¶ 2
1 1 1 1 1 1 ∂ u
+ ∆y 2 c1 + c2 + c3 + c7 + c8 + c9 (xi , yj )
2 2 2 2 2 2 ∂y 2
µ ¶ 3
1 1 1 1 1 1 ∂ u
+ ∆x3 − c1 + c3 − c4 + c6 − c7 + c9 (xi , yj )
6 6 6 6 6 6 ∂x3
µ ¶ 3
1 1 1 1 ∂ u
+ ∆x2 ∆y − c1 − c3 + c7 + c9 (xi , yj )
2 2 2 2 ∂x2 ∂y
µ ¶ 3
2 1 1 1 1 ∂ u
+ ∆x∆y − c1 + c3 − c7 + c9 (xi , yj )
2 2 2 2 ∂x∂y 2
µ ¶ 3
3 1 1 1 1 1 1 ∂ u
+ ∆y − c1 − c2 − c3 + c7 + c8 + c9 (xi , yj )
6 6 6 6 6 6 ∂y 3
µ ¶ 4
1 1 1 1 1 1 ∂ u
+ ∆x4 c1 + c3 + c4 + c6 + c7 + c9 (xi , yj )
24 24 24 24 24 24 ∂x4
µ ¶ 4
1 1 1 1 ∂ u
+ ∆x3 ∆y c1 − c3 − c7 + c9 (xi , yj )
6 6 6 6 ∂x3 ∂y
µ ¶
1 1 1 1 ∂4u
+ ∆x2 ∆y 2 c1 + c3 + c7 + c9 (xi , yj )
4 4 4 4 ∂x2 ∂y 2
µ ¶ 4
1 1 1 1 ∂ u
+ ∆x∆y 3 c1 − c3 − c7 + c9 (xi , yj )
6 6 6 6 ∂x∂y 3
µ ¶ 4
4 1 1 1 1 1 1 ∂ u
+ ∆y c1 + c2 + c3 + c7 + c8 + c9 (xi , yj )
24 24 24 24 24 24 ∂y 4

µ ¶ 5
1 1 1 1 1 1 ∂ u
+ ∆x5 − c1 + c3 − c4 + c6 − c7 + c9 (xi , yj )
120 120 120 120 120 120 ∂x5
µ ¶ 5
1 1 1 1 ∂ u
+ ∆x4 ∆y − c1 − c3 + c7 + c9 (xi , yj )
24 24 24 24 ∂x4 ∂y
µ ¶
1 1 1 1 ∂5u
+ ∆x3 ∆y 2 − c1 + c3 + c7 + c9 (xi , yj )
12 12 12 12 ∂x3 ∂y 2
µ ¶
2 3 1 1 1 1 ∂5u
+ ∆x ∆y − c1 − c3 − c7 + c9 (xi , yj )
12 12 12 12 ∂x2 ∂y 3
µ ¶ 5
1 1 1 1 ∂ u
+ ∆x∆y 4 − c1 + c3 − c7 + c9 (xi , yj )
24 24 24 24 ∂x∂y 4
µ ¶ 5
5 1 1 1 1 1 1 ∂ u
+ ∆y − c1 − c2 − c3 + c7 + c8 + c9 (xi , yj )
120 120 120 120 120 120 ∂y 5
Rodney Josué Biezuner 24

Para obter um esquema com ordem de convergência pelo menos igual a 3, precisarı́amos obter uma solução
não-nula para o sistema


 c1 + c2 + c3 + c4 + c5 + c6 + c7 + c8 + c9 = 0



 −c1 + c3 − c4 + c6 − c7 + c9 = 0

 −c1 − c2 − c3 + c7 + c8 + c9

 = 0

 1

 c1 + c3 + c4 + c6 + c7 + c9 =



 ∆x2

 c1 − c3 − c7 + c9 = 0



 1

 c1 + c2 + c3 + c7 + c8 + c9 =

 ∆y 2
−c1 + c3 − c4 + c6 − c7 + c9 = 0

 −c1 − c3 + c7 + c9 = 0



 −c1 + c3 − c7 + c9 = 0



 −c1 − c2 − c3 + c7 + c8 + c9 = 0



 c1 + c3 + c4 + c6 + c7 + c9 = 0



 c1 − c3 − c7 + c9 = 0



 c1 + c3 + c7 + c9 = 0



 c1 − c3 − c7 + c9 = 0


c1 + c2 + c3 + c7 + c8 + c9 = 0
Infelizmente este sistema não tem solução pois ele é inconsistente: a sexta e a última equação são incom-
patı́veis, assim como a quarta e a décima primeira. Portanto, não existe uma fórmula de nove pontos
compacta tal que ¡ ¢
−∆d ud = −∆u + O ∆x3 , ∆y 3 .
No entanto, em 1975 o matemático e lógico Rosser introduziu a seguinte fórmula de nove pontos compacta
no caso especial ∆x = ∆y (em [Rosser1]; veja também [Rosser2])
ui−1,j−1 + 4ui,,j−1 + ui+1,j−1 + 4ui−1,j − 20ui,j + 4ui+1,j + ui−1,j+1 + 4ui,j+1 + ui+1,j+1
∆d ud = , (1.42)
6∆x2
que pode ser resumida na forma
 
−1 −4 −1
1 
−∆d ud = −4 20 −4  , (1.43)
6∆x2
−1 −4 −1
¡ ¢ ¡ ¢
a qual produz um esquema convergente de quarta ordem se a solução u ∈ C 6 Ω (ou mesmo se u ∈ C 5,1 Ω
apenas)¡ dependendo
¢ de como a função f é discretizada. Para entender como isso ocorre, observe que se
u ∈ C 8 Ω a fórmula de Taylor produz
· ¸
∆x2 2 ∆x4 ∂ 4 ∂4 ∂4 ¡ ¢
−∆d ud = −∆u − ∆ u− 4
+ 4 2 2 + 4 ∆u + O ∆x6 (1.44)
12 360 ∂x ∂x ∂y ∂y
· ¸
∆x2 ∆x4 ∂ 4 ∂4 ∂4 ¡ ¢
= −∆u + ∆f + 4
+ 4 2 2
+ 4
f + O ∆x6 . (1.45)
12 360 ∂x ∂x ∂y ∂y
O ponto crucial aqui é que o erro é expresso em termos de −∆u e, conseqüentemente, por f . Ainda é
necessário escolher uma discretização especial para f :
fi,,j−1 + fi−1,j + 8fi,j + fi+1,j + fi,j+1
fd = (1.46)
12
ou  
1
1 
fd = 1 8 1 . (1.47)
12
1
Rodney Josué Biezuner 25

Usando a fórmula de Taylor para f , obtemos que esta discretização especial para f satisfaz

∆x2 ¡ ¢
fd = f + ∆f + O ∆x4 . (1.48)
12
Somando esta estimativa com (1.45), e usando −∆d ud = fd , −∆u = f , obtemos
¡ ¢
−∆d ud = −∆u + O ∆x4

Para este esquema, pode-se provar (veja [Hackbusch], pág. 64) que existe uma constante C > 0 tal que

kud − vd k∞ 6 C∆x4 kukC 6 (Ω) ou kud − vd k∞ 6 C∆x4 kukC 5,1 (Ω) (1.49)

O esquema de Rosser também satisfaz o princı́pio do máximo. Concluindo, vemos que uma maior regularidade
da solução permite obter métodos de diferenças finitas com maior ordem de convergência, embora esta não
seja uma tarefa simples.

1.4 Diferenças Finitas em Coordenadas Polares


Consideraremos nesta seção diferenças finitas em coordenadas polares para domı́nios com simetria radial.
Consideraremos em detalhes os casos do disco e do anel. O primeiro caso inclui a origem no domı́nio da
definição, onde o laplaciano apresenta uma singularidade quando escrito em coordenadas polares, singulari-
dade esta que não existe no problema original, e esta particularidade deve ser tratada com cuidado para não
atrapalhar a ordem de convergência do esquema obtido.
Considere a equação de Poisson em coordenadas polares no disco Ω = [0, R) × [0, 2π) :
(
1 1
urr + ur + 2 uθθ = f (r, θ) se 0 6 r < R e 0 < θ < 2π,
r r
u (R, θ) = 0 se 0 6 θ 6 2π.

A solução exata deste problema deve satisfazer a condição de continuidade

u (r, 0) = u (r, 2π) para todo 0 6 r 6 R.

Embora esta condição não seja uma condição de fronteira e aparece apenas por causa do sistema de coor-
denadas utilizado, ela acaba funcionando como uma condição de fronteira em muitos métodos numéricos (e
mesmo analı́ticos), pois não deixa de ser uma condição na fronteira do retângulo (0, R) × (0, 2π).

∆r

∆θ

Discretizamos o disco através de uma malha polar

Ωd = {(ri , θj ) ∈ Ω : ri = i∆r, θj = j∆θ, 0 6 i 6 n − 1, 0 6 j 6 m}

onde
R 2π
∆r = , ∆θ = .
n m
Rodney Josué Biezuner 26

Sua fronteira discretizada é o conjunto

∂Ωd = {(rn , θj ) ∈ ∂Ω : rn = n∆r = R, θj = j∆θ, 0 6 j 6 m} .

Discretizamos a equação de Poisson da seguinte forma. Denotamos os valores das discretizações ud e fd


em pontos da malha por

ui,j = u (ri , θj ) ,
fi,j = f (ri , θj ) ,

entendendo que ui,j e fi,j devem satisfazer

u0,0 = u0,j e f0,0 = f0,j (1.50)

para todo 0 6 j 6 m, já que existe apenas um ponto associado com i = 0 (a origem, correspondente a r = 0).
Além disso, pela condição de continuidade, devemos ter também

ui,0 = ui,2π e fi,0 = fi,2π (1.51)

para todo 0 6 i 6 n. Usando uma diferença centrada usual para derivadas segundas, o terceiro termo do
laplaciano em coordenadas polares pode ser aproximado para pontos interiores do disco por
µ ¶
1 1 ui,j−1 − 2ui,j − ui,j+1
2
uθθ (ri , θj ) ≈ 2 . (1.52)
r ri ∆θ2

Para aproximar os primeiros dois termos, escrevemos


1 1
urr + ur = (rur )r .
r r
Se (ri , θj ) é um ponto interior do disco diferente da origem (isto é, i 6= 0), podemos usar diferenças centradas
para a derivada primeira, tanto na primeira quanto na segunda aproximações a seguir, obtendo

1 1 (rur ) (ri + ∆r/2, θj ) − (rur ) (ri − ∆r/2, θj )


(rur )r (ri , θj ) ≈
r ri 2∆r/2
u (ri + ∆r, θj ) − u (ri , θj ) u (ri , θj ) − u (ri − ∆r, θj )
1 ri+1/2 ∆r
− ri−1/2
∆r

ri ∆r
1 ri+1/2 (ui+1,j − ui,j ) − ri−1/2 (ui,j − ui−1,j )
= . (1.53)
ri ∆r2
Portanto, a discretização da equação de Poisson no disco para pontos interiores do disco diferentes da origem
é · ¸
1 ri+1/2 (ui+1,j − ui,j ) − ri−1/2 (ui,j − ui−1,j ) 1 ui,j−1 − 2ui,j − ui,j+1
− + = fi,j (1.54)
ri ∆r2 ri2 ∆θ2
para 1 6 i 6 n − 1 e 1 6 j 6 m − 1. Se j = 0, usando a condição de continuidade que identifica o ponto
(i, 0) com o ponto (i, n), substituı́mos ui,j−1 por ui,n−1 e escrevemos
· ¸
1 ri+1/2 (ui+1,0 − ui,0 ) − ri−1/2 (ui,0 − ui−1,0 ) 1 ui,n−1 − 2ui,0 − ui,1
− + = fi,0 (1.55)
ri ∆r2 ri2 ∆θ2

para 1 6 i 6 n − 1. Como este esquema de diferenças finitas foi obtido através de diferenças centradas,
ele deve ser de segunda ordem. No entanto, devemos ter cuidado ao discretizar a equação de Poisson na
Rodney Josué Biezuner 27

origem para preservar esta ordem de convergência. Para isso, multiplicamos a equação de Poisson por r e
integramos o resultado sobre um pequeno disco Dε centrado na origem de raio ε:
Z 2π Z ε Z 2π Z ε · ¸
1 1
f r drdθ = r (rur )r + 2 uθθ drdθ
0 0 0 0 r r
Z 2π Z ε Z ε Z 2π
1
= (rur )r drdθ + uθθ drdθ
0 0 0 r 0
Z 2π Z ε
ε 1 2π
= [rur ]0 dθ + [uθ ]0 drdθ
0 0 r
Z 2π
=ε ur (ε, θ) dθ,
0

onde assumimos u ∈ C 2 (Ω) de modo que

uθ (r, 0) = uθ (r, 2π)

para todo 0 6 r < R. Escolhendo ε = ∆r/2, discretizamos a equação integral


Z 2π Z 2π Z ∆r/2
∆r
ur (∆r/2, θ) dθ = f r drdθ
2 0 0 0

aproximando a derivada primeira ur (∆r/2, θ) = (ur )i+1/2,j por diferenças centradas e f por f (0) (pois ∆r
é suposto pequeno), de modo que
u1,j − u0,j
ur (∆r/2, θj ) ≈ ,
∆r
Z 2π Z ∆r/2 Z 2π Z ∆r/2 ¯∆r/2
r2 ¯¯ π
f r drdθ ≈ f (0) r drdθ = 2πf (0) = f (0) ∆r2 ,
0 0 0 0 2 ¯0 4

e assim
m−1
∆r X u1,j − u0,j π
∆θ = f (0) ∆r2 ,
2 j=0 ∆r 4

donde, como u0 := u0,j independe de j, segue que o valor de u na origem será dado por
m−1
∆θ ∆θ X π
m u0 = u1,j − f (0) ∆r2 ,
2 2 j=0 4

ou, usando m∆θ = 2π,


m−1
4u0 2∆θ X
− u1,j = f0 . (1.56)
∆r2 π∆r2 j=0

Para escrever essas diferenças finitas em forma matricial

Au = f ,

escolhemos ordenar os pontos da malha discretizada no retângulo polar {(ri , θj ) : 1 6 i 6 n − 1, 0 6 j 6 m}


pela ordem lexicográfica em (θ, r) e colocando a origem antes de todos estes pontos:.

u = (u0 , u1,0 , u1,1 , . . . , u1,m−1 , u2,0 , u2,1 , . . . , u2,m−1 , . . . . . . , un−1,0 , un−1,1 , . . . , un−1,m−1 ) . (1.57)
Rodney Josué Biezuner 28

Observe que existem (n − 1) × m + 1 incógnitas. Nesta ordenação, segue que A tem a forma em blocos
 
α0 b
 a B1 −β1 I 
 
 . . 
 −α2 I B2 −β2 I . 
 
A=  −α3 I B3 −β3 I , (1.58)

 .. .. .. 
 . . . 
 
 −αn−2 I Bn−2 −βn−2 I 
−αn−1 I Bn−1

onde
4
α0 = ,
∆r2
 
−α1
 
a =  ...  ,
−α1 m×1

1 ri−1/2
αi = , i = 1, . . . , n − 1,
∆r2 ri
1 ri+1/2
βi = , i = 1, . . . , n − 2,
∆r2 ri
£ ¤
b = −β0 . . . −β0 1×m ,
2 ∆θ
β0 = ,
π ∆r2
I = Im ,
 
γi −δi 0 −δi
 −δi γi −δi 
 
 −δi γi −δi 
 
Bi =  .. .. ..  ,
 . . . 
 
 −δi γi −δi 
−δi −δi γi m×m

onde
1 ri+1/2 + ri−1/2 2 1
γi = 2
+ 2 ,
ri ∆r ri ∆θ2
1 1
δi = 2 .
ri ∆θ2
Rodney Josué Biezuner 29

A matriz A em geral não é simétrica. Por exemplo, no caso n = 4 e m = 5 ((n − 1) × m + 1 = 16) temos
 
α −β0 −β0 −β0 −β0 −β0 0 0 0 0 0 0 0 0 0 0
 −α1 γ1 −δ1 0 0 −δ1 −β1 0 0 0 0 0 0 0 0 0 
 
 −α1 −δ1 γ1 −δ1 0 0 0 −β1 0 0 0 0 0 0 0 0 
 
 −α1 0 −δ1 γ1 −δ1 0 0 0 −β1 0 0 0 0 0 0 0 
 
 −α1 0 0 −δ1 γ1 −δ1 0 0 0 −β1 0 0 0 0 0 0 
 
 −α1 −δ1 0 0 −δ1 γ1 0 0 0 0 −β1 0 0 0 0 0 
 
 0 −α2 0 0 0 0 γ2 −δ2 0 0 −δ2 −β2 0 0 0 0 
 
 0 0 −α2 0 0 0 −δ2 γ2 −δ2 0 0 0 −β2 0 0 0 
 
 0 0 0 −α2 0 0 0 −δ2 γ2 −δ2 0 0 0 −β2 0 0 
 
 0 0 0 0 −α2 0 0 0 −δ2 γ2 −δ2 0 0 0 −β2 0 
 
 0 0 0 0 0 −α2 −δ2 0 0 −δ2 γ2 0 0 0 0 −β2 
 
 0 0 0 0 0 0 −α3 0 0 0 0 γ3 −δ3 0 0 −δ3 
 
 0 0 0 0 0 0 0 −α3 0 0 0 −δ3 γ3 −δ3 0 0 
 
 0 0 0 0 0 0 0 0 −α3 0 0 0 −δ3 γ3 −δ3 0 
 
 0 0 0 0 0 0 0 0 0 −α3 0 0 0 −δ3 γ3 −δ3 
0 0 0 0 0 0 0 0 0 0 −α3 −δ3 0 0 −δ3 γ3
A primeira linha e a primeira coluna são diferentes porque os pontos (0, j), j = 0, . . . , m, são realmente um
único ponto e este ponto é vizinho a todos os pontos (1, j), j = 0, . . . , m.
A matriz de discretização A no caso do anel será um pouco mais simples, já que ela será igual à matriz
de discretização no caso do disco menos a primeira linha e a primeira coluna.

1.5 Domı́nios Arbitrários


Queremos agora discutir a resolução numérica da equação de Poisson através de diferenças finitas em um
domı́nio arbitrário.
Seja Ω ⊂ R2 um domı́nio arbitrário. Se sobrepusermos uma malha uniforme
M = {(i∆x, j∆y) ∈ Ω : i ∈ Z e j ∈ Z}
sobre Ω, obtemos um domı́nio discretizado definido por
Ωd = {(x, y) ∈ Ω : x/∆x ∈ Z e y/∆y ∈ Z} . (1.59)
Esta é exatamente a maneira como discretizamos o retângulo. No entanto, o conjunto discretizado dos
pontos de fronteira ∂Ωd de um domı́nio arbitrário deve ser tratado de maneira diferente do retângulo, já que
a malha uniforme M em geral não vai se sobrepor à fronteira de Ω, podendo não possuir nenhum ponto em
comum com a fronteira ou um número muito pequeno de pontos em poucas regiões da fronteira.
Uma maneira de tratar este problema é a seguinte. Para determinar se o ponto (xi , yj ) ∈ Ωd é adjacente
à “fronteira esquerda” de Ω, por exemplo, e ao mesmo tempo encontrar o seu vizinho à esquerda na fronteira
se for o caso, basta verificar se o segmento
[xi − ∆x, yj ] = {(xi − t∆x, yj ) : t ∈ [0, 1]}
está inteiramente contido em Ω ou não. Se não estiver, então (xi , yj ) é um ponto interior adjacente à fronteira
e existe um número tW ∈ (0, 1) tal que
(xi − tW ∆x, yj ) ∈ ∂Ω e (xi − t∆x, yj ) ∈ Ω para todo t ∈ [0, tW ). (1.60)
Este será o vizinho à esquerda de (xi , yj ) na fronteira discretizada ∂Ωd do domı́nio. Analogamente, os
pontos vizinhos na fronteira discretizada à direita, abaixo e acima de pontos adjacentes à fronteira podem
ser encontrados; eles satisfazem, respectivamente,
(xi + tE ∆x, yj ) ∈ ∂Ω e (xi + t∆x, yj ) ∈ Ω para todo t ∈ [0, tE ). (1.61)
Rodney Josué Biezuner 30

(xi , yj − tS ∆y) ∈ ∂Ω e (xi , yj − t∆y) ∈ Ω para todo t ∈ [0, tS ). (1.62)


(xi , yj + tN ∆y) ∈ ∂Ω e (xi , yj + t∆y) ∈ Ω para todo t ∈ [0, tN ). (1.63)
(os subı́ndices W, E, S, N correspondem aos quatro pontos cardeais oeste, leste, sul, norte em inglês). Defin-
imos
∂Ωd = {(x, y) ∈ ∂Ω : (x, y) satisfaz (1.60), (1.61), (1.62) ou (1.63)} (1.64)
Dependendo da geometria de Ω é concebı́vel que um ponto seja simultaneamente adjacente às “quatro
fronteiras” de Ω, isto é, que ele tenha os seus quatro vizinhos em ∂Ωd . Além disso, embora os pontos
interiores da malha estejam distribuı́dos uniformemente, esta discretização da fronteira do domı́nio permite
que às vezes dois pontos da malha da fronteira estejam bem próximos um do outro em alguma região da
fronteira e relativamente distantes em outras (isso ocorre mesmo em domı́nio regulares como um disco).
Para discretizar a equação de Poisson nesta malha, observe que pela fórmula de Taylor temos, para pontos
x− < x < x+ , µ ¶
2 u (x+ ) − u (x) u (x) − u (x− )
u00 (x) = − + r, (1.65)
x+ − x− x+ − x x − x−
onde
2 2
1 (x+ − x) + (x − x− ) 1
|r| 6 kukC 3 ([x− ,x+ ]) 6 max (x+ − x, x − x− ) kukC 3 ([x− ,x+ ]) . (1.66)
3 x+ − x− 3

De fato,
1 2 1 000 3
u(x− ) = u(x) − u0 (x) (x − x− ) + u00 (x) (x − x− ) − u (ξ− ) (x − x− ) ,
2 3!
1 2 1 000 3
u(x+ ) = u(x) + u0 (x) (x+ − x) + u00 (x) (x+ − x) + u (ξ+ ) (x+ − x) ,
2 3!
para alguns ξ− ∈ [x− , x] , ξ+ ∈ [x, x+ ], de modo que

u (x) − u (x− ) 1 1 2
− = −u0 (x) + u00 (x) (x − x− ) − u000 (ξ− ) (x − x− ) ,
x − x− 2 6
u (x+ ) − u (x) 1 1 2
= u0 (x) + u00 (x) (x+ − x) + u000 (ξ+ ) (x+ − x) ,
x+ − x 2 6

donde, somando as duas expressões,

u (x+ ) − u (x) u (x) − u (x− ) 1 1 h 000 2 2


i
− = u00 (x) (x+ − x− ) + u (ξ+ ) (x+ − x) − u000 (ξ− ) (x − x− ) .
x+ − x x − x− 2 6

Assim, podemos aproximar


µ ¶
2 u (x+ ) − u (x) u (x) − u (x− )
u00 (x) ≈ −
x+ − x− x+ − x x − x−

Se x− = x − ∆x e x+ = x + ∆x, obtemos a fórmula de diferenças centradas usual para a derivada segunda.


Para aproximar o laplaciano através de uma fórmula de cinco pontos, usamos os quatro pontos vizinhos

(xi − tW ∆x, yj ) , (xi + tE ∆x, yj ) , (xi , yj − tS ∆y) , (xi , yj + tN ∆y) , com t∗ ∈ (0, 1]
Rodney Josué Biezuner 31

definindo o esquema de diferenças finitas de Shortley-Weller :


µ ¶
2 u (xi + tE ∆x, yj ) − u (xi , yj ) u (xi , yj ) − u (xi − tW ∆x, yj )
∆d ud = −
(xi + tE ∆x) − (xi − tW ∆x) (xi + tE ∆x) − xi xi − (xi − tW ∆x)
µ ¶
2 u (xi , yj + tN ∆y) − u (xi , yj ) u (xi , yj ) − u (xi , yj − tS ∆y)
+ −
(yj + tN ∆y) − (yj − tS ∆y) (yj + tN ∆y) − yj yj − (yj − tS ∆y)
µ ¶
2 ui+tE ∆x,j − ui,j ui,j − ui−tW ∆x,j
= −
(tE + tW ) ∆x tE ∆x tW ∆x
µ ¶
2 ui,j+tN ∆y − ui,j ui,j − ui,j−tS ∆y
+ −
(tN + tS ) ∆y tN ∆y tS ∆y
ou
· ¸
2 1 1 1
−∆d ud = − ui+tE ∆x,j + ui,j − ui−tW ∆x,j (1.67)
∆x2 tE (tE + tW ) tE tW tW (tE + tW )
· ¸
2 1 1 1
+ − ui,j−tS ∆y + ui,j − ui,j+tN ∆y .
∆y 2 tS (tN + tS ) tN tS tN (tN + tS )

Se (xi , yj ) é um ponto interior distante da fronteira (isto é, não adjacente à fronteira), então t∗ = 1 e para este
ponto vale a fórmula dos cinco pontos usual. Observe que a matriz obtida pelo esquema de Shortley-Weller
não é simétrica, em geral.
Embora a ordem de aproximação do laplaciano para pontos próximos à fronteira é apenas 1, o esquema
de Shortley-Weller é convergente de segunda ordem. No próximo capı́tulo, provaremos que o problema
discretizado possui solução única.

1.6 Exercı́cios
1. Implemente os métodos discutidos neste capı́tulo computacionalmente, verifique a precisão comparando
com a solução exata e também a velocidade de convergência.
2. Discretize o problema de Poisson com valor de fronteira de Dirichlet a seguir, usando a fórmula de
cinco pontos. ½
−∆u = f (x, y) em (0, a) × (0, b) ,
u = g (x, y) sobre ∂ ((0, a) × (0, b)) ,
Implemente alguns exemplos deste problema computacionalmente e compare os resultados obtidos com
as soluções exatas.
3. Prove que a fórmula dos nove pontos compacta satisfaz o princı́pio do máximo discreto.
4. Prove resultados equivalentes ao Lema 1.5 e ao Teorema 1.6 para a fórmula dos nove pontos compacta.
5. Investigue a ordem de convergência do esquema de diferenças finitas misto: fórmula dos nove pontos nos
pontos interiores distantes da fronteira e fórmula dos cinco pontos para pontos adjacentes à fronteira.
6. Encontre um esquema de diferenças finitas de segunda ordem para a equação de laplace tridimensional
em um paralelepı́pedo reto. Escolha uma ordenação apropriada dos pontos da malha e descreva a
matriz de discretização obtida. Implemente o método no computador.
7. Mostre que o esquema de diferenças finitas em coordenadas polares introduzido neste capı́tulo satisfaz
o princı́pio do máximo discreto desde que o valor de u0 seja dado pela fórmula (1.56).
Rodney Josué Biezuner 32

8. Mostre que se ∆d denota o esquema de diferenças finitas em coordenadas polares introduzido neste
capı́tulo e Ω é o disco unitário, então vale a estimativa a priori: se ud é uma solução de
½
−∆d ud = fd em Ωd ,
ud = 0 sobre ∂Ωd ,

então
1
kud k∞ 6
k∆d ud k∞ (1.68)
4
desde que o valor de u0 seja dado pela fórmula (1.56). Conclua que este esquema tem ordem de
convergência 2.
9. Encontre os autovalores da matriz de discretização do esquema de diferenças finitas em coordenadas
polares e compare com os autovalores de Dirichlet do laplaciano no disco.
10. Discretize o problema de Poisson com valor de fronteira de Dirichlet para o anel:

 −∆u = f (r, θ) se R1 < r < R2 e 0 < θ < 2π,
u (R1 , θ) = g1 (θ)

u (R2 , θ) = g2 (θ) se 0 6 θ 6 2π.

Implemente alguns exemplos deste problema computacionalmente e compare os resultados obtidos com
as soluções exatas.

11. Mostre que tomando o “quadrado” da fórmula de três pontos para o laplaciano unidimensional (es-
quema de diferenças centradas para a derivada segunda) obtemos a seguinte fórmula de cinco pontos
para o operador biharmônico unidimensional (esquema de diferenças centradas para a derivada quarta):
ui−2 − 4ui−1 + 6ui − 4ui+1 + ui+2
δ 4 ui = (1.69)
∆x4
Usando a fórmula de Taylor, obtenha o expoente p tal que

δ 4 ui = u(4) (xi ) + O (∆xp ) .

12. O esquema de diferenças finitas mais simples para o operador biharmônico ∆2 em duas dimensões é a
seguinte fórmula de 13 pontos (para o caso ∆x = ∆y):
 
1
 2 −8 2 
1 

2
∆ u= 1 −8 20 −8 1  . (1.70)
∆x4 
 
2 −8 2
1

Mostre que esta fórmula pode ser obtida a partir do “quadrado” da fórmula de cinco pontos para
o laplaciano. Como a equação biharmônica não satisfaz o princı́pio do máximo, a demonstração da
ordem de convergência deste esquema necessita de argumentos diferentes dos usados neste capı́tulo
para o laplaciano. Na realidade, dependendo de como
¡ as duas
¢ condições
¡ ¢ de fronteira são discretizadas,
a ordem de convergência deste método pode ser O ∆x3/2 ou O ∆x2 . Veja [Hackbusch], pág. 103 e
págs. 105-109, para detalhes e referências.
Capı́tulo 2

Existência e Unicidade de Soluções


Discretas

Determinar a existência e unicidade de soluções discretas para as matrizes de discretização obtidas via
esquemas de diferenças finitas através do cálculo de seus autovalores como fizemos no capı́tulo anterior para
diferenças centradas em uma dimensão e para a fórmula de cinco pontos é inviável em geral (tente calcular
os autovalores da matriz de discretização para a fórmula dos nove pontos, para o esquema em coordenadas
polares e para o esquema de Shortley-Weller). Neste capı́tulo, desenvolveremos métodos mais gerais e mais
fáceis de aplicar.

2.1 Normas Matriciais


Uma norma matricial no espaço vetorial Mn (C) das matrizes complexas n × n é uma norma vetorial que
satisfaz a propriedade submultiplicativa
kABk 6 kAk kBk (2.1)
para todas as matrizes A, B ∈ Mn (C). Algumas das normas mais importantes em Mn (C) são as seguintes:

1. Norma l1
n
X
kAk1 = |aij | . (2.2)
i,j=1

De fato,
¯
n ¯X
¯
X n ¯ n
X n
X n
X n
X
¯ ¯
kABk1 = ¯ aik bkj ¯ 6 |aik bkj | 6 |aik blj | = |aik | |blj | = kAk1 kBk1 .
¯ ¯
i,j=1 k=1 i,j,k=1 i,j,k,l=1 i,j=1 k,l=1

2. Norma l2
 1/2
n
X 2
kAk2 =  |aij |  . (2.3)
i,j=1

Com efeito,
¯
n ¯X
¯2 Ã n !Ã n !  n  
X n ¯ n
X X X X n
X
2 ¯ ¯ 2 2 2 2 2 2
kABk2 = ¯ aik bkj ¯ 6 |aik | |blj | = |aik |   |blj |  = kAk2 kBk2 .
¯ ¯
i,j=1 k=1 i,j=1 k=1 l=1 i,k=1 j,l=1

33
Rodney Josué Biezuner 34

A norma l2 também é chamada norma euclidiana e, mais raramente e somente para matrizes, norma
de Schur, norma de Frobenius ou norma de Hilbert-Schmidt.
3. Norma l∞ modificada
A norma l∞
kAk∞ = max |aij | .
16i,j6n

é uma norma vetorial no espaço das matrizes complexas, mas não é uma norma matricial, pois se
· ¸
1 1
A= ,
1 1
então · ¸
2 2
A2 =
2 2
e portanto ° 2°
°A ° = 2 > 1 = kAk∞ kAk∞ .

Mas um múltiplo escalar desta norma vetorial é uma norma matricial:

kAkn∞ = n max |aij | . (2.4)


16i,j6n

Com efeito,
¯ ¯
¯Xn ¯ n
X n
X
¯ ¯
kABkn∞ = n max ¯ aik bkj ¯ 6 n max |aik bkj | 6 n max kAk∞ kBk∞
16i,j6n ¯ ¯ 16i,j6n 16i,j6n
k=1 k=1 k=1
= n kAk∞ n kBk∞ = kABkn∞ .

4. Norma induzida
Dada uma norma vetorial |·| em Cn , ela induz uma norma matricial através da definição
|Ax|
kAk = max |Ax| = max . (2.5)
|x|=1 x6=0 |x|
De fato,
µ ¶
|ABx| |ABx| |Bx| |ABx| |Bx| |Ay| |Bx|
kABk = max = max 6 max max 6 max max = kAk kBk .
x6=0 |x| x6=0 |Bx| |x| x6=0 |Bx| x6=0 |x| y6=0 |y| x6=0 |x|

Esta norma também é chamada norma do operador. Ela satisfaz a propriedade muitas vezes útil

|Ax| 6 kAk |x| (2.6)

para todo vetor x ∈ Cn .


5. Norma do máximo das somas das linhas
n
X
kAkL = max |aij | . (2.7)
16i6n
j=1

Esta norma é induzida pela norma vetorial l∞ . De fato, se x = (x1 , . . . , xn ), temos


¯ ¯
¯ n ¯ n n
¯X ¯ X X
|Ax|∞ = max ¯¯ aij xj ¯¯ 6 max |aij xj | 6 max |aij | |x|∞ = kAkL |x|∞ ,
16i6n ¯ ¯ 16i6n j=1 16i6n
j=1 j=1
Rodney Josué Biezuner 35

de modo que
max |Ax|∞ 6 kAkL .
|x|=1

Supondo que a k-ésima linha de A é não-nula, definimos o vetor y = (y1 , . . . , yn ) ∈ Cn por



 akj se aij 6= 0,
yi = |a | ,
 1kj se aij = 0.

o que implica |y|∞ = 1, akj yj = |akj | e


¯ ¯ ¯ ¯
¯X ¯ ¯X ¯ X
¯ n ¯ ¯ n ¯ n
max |Ax|∞ > |Ay|∞ = max ¯¯ ¯ ¯
aij yj ¯ > ¯ akj yj ¯¯ = |akj | .
|x|∞ =1 16i6n ¯ ¯ ¯ j=1 ¯ j=1
j=1

Isso vale para todo k, logo


n
X
max |Ax|∞ > max |aij | = kAkL .
|x|∞ =1 16k6n
j=1

6. Norma do máximo das somas das colunas


n
X
kAkC = max |aij | . (2.8)
16j6n
i=1

Esta norma é induzida pela norma vetorial l1 . De fato, escrevendo A em termos de suas colunas

A = [A1 . . . An ]

segue que
kAkC = max |Aj |1 .
16j6n

Se x = (x1 , . . . , xn ), segue que


n
X n
X n
X
|Ax|1 = |x1 A1 + . . . + xn An |1 6 |xi Ai |1 = |xi | |Ai |1 6 |xi | max |Aj |1
16j6n
i=1 i=1 i=1
n
X
= kAkC |xi | = kAkC |x|1 ,
i=1

donde
max |Ax|1 6 kAkC .
|x|1 =1

Agora, se escolhermos y = ej , temos que |y|1 = 1 e

|Ay|1 = |Aj |1

para todo k, logo


max |Ax|1 > |Ay|1 = max |Aj |1 = kAkC .
|x|1 =1 16j6n

7. p-normas
Este é o nome geral para as normas induzidas pela norma vetorial lp . O caso especial da norma induzida
pela norma vetorial l2 (a norma vetorial euclidiana) é também chamada a norma espectral e satisfaz
p n√ o
k|A|k2 = λmax = max λ : λ é um autovalor de A∗ A .
Rodney Josué Biezuner 36

De fato, A∗ A é uma matriz hermitiana e possui autovalores não-negativos, pois se A∗ Ay = λy, então
2 2
λ |y|2 = hy, λyi2 = hy, A∗ Ayi2 = hAy, Ayi2 = |Ay|2
e, além disso, pela caracterização variacional dos autovalores de uma matriz hermitiana temos
2
hA∗ Ax, xi2 |Ax|2
λmax = max 2 = max 2 .
x6=0 |x|2 x6=0 |x|2
Observe que a 2-norma é diferente da norma matricial l2 . Note também que se A é uma matriz
hermitiana, então A∗ A = A2 e k|A|k2 é portanto o módulo do maior autovalor de A, isto é, a norma
espectral de A é o raio espectral de A, definido como sendo o maior valor absoluto dos autovalores
de A:
ρ (A) = max |λi | ,
i=1,...,n

8. Norma induzida por uma matriz invertı́vel


Se k·k é uma norma matricial qualquer e se S é uma matriz invertı́vel, então
° °
kAkS = °S −1 AS ° (2.9)
define uma norma matricial. Com efeito,
° ° ° ° ° °° °
kABkS = °S −1 ABS ° = °S −1 ASS −1 BS ° 6 °S −1 AS ° °S −1 BS ° = kAkS kBkS .

Lembramos que todas as normas em um espaço vetorial são equivalentes, e isso vale em particular para
normas matriciais.

2.2 Matrizes Diagonalmente Dominantes


Definição. Dizemos que uma matriz An×n é diagonalmente dominante se
n
X
|aii | > |aij | para todo i = 1, . . . , n
j=1
j6=i

e estritamente diagonalmente dominante se


n
X
|aii | > |aij | para todo i = 1, . . . , n.
j=1
j6=i

2.1 Proposição. Se A é uma matriz estritamente diagonalmente dominante, então A é invertı́vel.


Prova. Uma matriz A é invertı́vel se existe alguma norma matricial k·k tal que kI − Ak < 1. De fato, se
esta condição é satisfeita, então a inversa é dada explicitamente pela série

X k
A−1 = (I − A) . (2.10)
k=0
P∞
A condição kI − Ak < 1 garante a convergência desta série, pois a série geométrica k=0 rk tem raio de
convergência 1; como para todo N temos
N
X N
X N
X N
X +1
k k k k N +1
A (I − A) = [I − (I − A)] (I − A) = (I − A) − (I − A) = I − (I − A) ,
k=0 k=0 k=0 k=1
Rodney Josué Biezuner 37

tomando o limite quando N → ∞, concluı́mos (2.10).


Para provar a proposição, denote por D a matriz diagonal cujas entradas diagonais são as entradas
diagonais de A. Uma matriz estritamente diagonalmente dominante possui, por definição, entradas diagonais
não-nulas, logo D é uma matriz invertı́vel. A matriz D−1 A tem apenas 1’s na diagonal principal e se
mostramos que D−1 A é invertı́vel, isto implicará que A é invertı́vel. Para provar isso, considere a matriz
I − D−1 A. Temos ½
¡ −1
¢ 0 se i = j,
I − D A ij =
−aij /aii se i 6= j.
Usemos a norma do máximo das somas das linhas. Para cada 1 6 i 6 n temos
n ¯ n ¯ ¯
X ¯¡ ¢ ¯¯ X ¯ aij ¯ Xn
¯ I − D−1 A ij ¯ = ¯ ¯= 1 |aij | < 1,
¯ aii ¯ |aii |
j=1 j=1 j=1
j6=i j6=i
° °
logo °I − D−1 A° < 1 e o resultado segue. ¥
Às vezes, exigir dominância diagonal estrita em todas as linhas é pedir demais. Para certas matrizes,
dominância diagonal junto com dominância diagonal estrita em apenas uma linha é suficiente para garantir
a sua invertibilidade. As matrizes de discretização obtidas no capı́tulo anterior satisfazem esta condição
(nas linhas correspondentes à pontos adjacentes à fronteira), e nenhuma delas é estritamente diagonalmente
dominante. Por outro lado, esta condição não é suficiente para estabelecer a invertibilidade de uma matriz
em geral, como o exemplo  
4 2 1
 0 1 1 
0 1 1
demonstra. Precisamos de desenvolver várias idéias e ferramentas teóricas antes de provar a invertibilidade
das matrizes de discretização do capı́tulo anterior.

2.3 Teorema dos Discos de Gershgorin


A primeira ferramenta teórica é o importante Teorema dos Discos de Gershgorin. Ele decorre da seguinte
observação: se A é uma matriz complexa n × n, podemos sempre escrever A = D + B, onde D = diag
(a11 , . . . , ann ) é a matriz diagonal formada pela diagonal principal de A e B consiste dos elementos restantes
de A, possuindo uma diagonal principal nula. Se definirmos Aε = D + εB, então A0 = D e A1 = A. Os
autovalores de D são a11 , . . . , ann , enquanto que os autovalores de Aε devem estar localizados em vizinhanças
dos pontos a11 , . . . , ann , desde que ε seja suficientemente pequeno. O mesmo deve valer para os autovalores
da matriz A: eles devem estar contidos em discos centrados nos elementos a11 , . . . , ann da diagonal principal
se os discos são suficientemente grandes. O Teorema de Gershgorin dá uma estimativa precisa e simples de
calcular para os raios destes discos em função das entradas restantes da matriz A. Denote o disco complexo
fechado de centro em a e raio R por
DR (a) = {z ∈ C : |z − a| 6 R} .
2.2 Teorema. (Teorema dos Discos de Gershgorin) Se A ∈ Mn (C) e
n
X
Ri (A) = |aij | (2.11)
j=1
j6=i

denota a soma dos valores absolutos dos elementos da linha i de A excetuando o elemento da diagonal
principal, então todos os autovalores de A estão contidos na união dos n discos de Gershgorin
n
[
G (A) = DRi (A) (aii ) . (2.12)
i=1
Rodney Josué Biezuner 38

Além disso, se uma união de k destes discos forma uma região que é disjunta dos n−k discos restantes,
então existem exatamente k autovalores de A nesta região.

Prova. Seja λ um autovalor de A e x = (x1 , . . . , xn ) 6= 0 um autovetor associado. Seja k um ı́ndice tal que

|xk | > |xj | para j = 1, . . . , n,

isto é, xk é a coordenada de x de maior valor absoluto. Denotando por (Ax)k a k-ésima coordenada do vetor
Ax = λx, temos
Xn
λxk = (Ax)k = akj xj
j=1

que é equivalente a
n
X
xk (λ − akk ) = akj xj .
j=1
j6=k

Daı́,
n
X n
X n
X
|xk | |λ − akk | 6 |akj xj | = |akj | |xj | 6 |xk | |akj | = |xk | Rk (A) ,
j=1 j=1 j=1
j6=k j6=k j6=k

ou seja,
|λ − akk | 6 Rk (A) .
Isso prova o resultado principal do Teorema de Gershgorin (como não sabemos qual k é apropriado para
cada autovalor λ, e um mesmo k pode servir para vários autovalores λ, tudo o que podemos afirmar é que
os autovalores estão na união dos discos).
Para provar a segunda afirmação, escreva A = D + B, onde D = diag (a11 , . . . , ann ) e defina

At = D + tB

para 0 6 t 6 1. Note que


Ri (At ) = Ri (tB) = tRi (A) .
Para simplificar a notação, assuma que a união dos primeiros k discos de Gershgorin
k
[
Gk (A) = DRi (A) (aii )
i=1

satisfaz Gk (A) ∩ [G (A) \Gk (A)] = ∅. Temos

DRi (At ) (aii ) = {z ∈ C : |z − aii | 6 Ri (At )} = {z ∈ C : |z − aii | 6 tRi (A)} ⊂ DRi (A) (aii ) ,

logo
Gk (At ) ⊂ Gk (A)
e
Gk (A) ∩ [G (At ) \Gk (At )] = ∅
para 0 6 t 6 1. Porque os autovalores são funções contı́nuas das entradas de uma matriz, o caminho

λi (t) = λi (At )

é um caminho contı́nuo que liga λi (A0 ) = λi (D) = aii a λi (A1 ) = λi (A). Como λi (At ) ∈ Gk (At ) ⊂ Gk (A),
concluı́mos que para cada 0 6 t 6 1 existem k autovalores de At em Gk (A); em particular, fazendo t = 1,
Rodney Josué Biezuner 39

obtemos que Gk (A) possui pelo menos k autovalores de A. Da mesma forma, não pode haver mais que
k autovalores de A em Gk (A), pois os n − k autovalores restantes de A0 = D começam fora do conjunto
Gk (A) e seguem caminhos contı́nuos que permanecem fora de Gk (A). ¥
A união G (A) dos discos de Gershgorin é conhecida como a região de Gershgorin. Observe que enquanto
não podemos em geral afirmar com certeza que cada disco de Gershgorin possui um autovalor, a segunda
afirmação do teorema permite-nos fazer tal conclusão desde que os discos de Gershgorin sejam dois a dois
disjuntos.
O Teorema dos Discos de Gershgorin permite entender o resultado da Proposição 2.1: se uma matriz A é
estritamente diagonalmente dominante, então os discos de Gershgorin DRi (A) (aii ) não interceptam a origem,
logo 0 não pode ser um autovalor para a matriz A, o que implica que A é invertı́vel. Além disso, se todos
os elementos da diagonal principal de A são reais e positivos, então os autovalores de A estão localizados no
semiplano direito de C, de modo que se A é também simétrica, concluı́mos que todos os autovalores de A
são positivos.
A aplicação mais óbvia do Teorema dos Discos de Gershgorin é na estimativa dos autovalores de uma
matriz, o que é importante se vamos usar os autovalores de matrizes de discretização para aproximar os
autovalores do laplaciano:

Aplicação 1. Pelo Teorema dos Discos de Gershgorin, os autovalores da matriz de discretização do lapla-
ciano no intervalo (0, π) discretizado com n + 1 pontos (esquema de diferenças finitas centradas para
a derivada segunda unidimensional)
 
2 −1
 −1 2 −1 
 
 .. .. 
n2 
 −1 . . 

A= 2 
π  . .. . . . −1 
 
 −1 2 −1 
−1 2

estão todos localizados no intervalo (A é simétrica,£ logo seus¤autovalores são todos reais) centrado em
x = 2n2 /π 2 de raio 2n2 /π 2 , ou seja, no intervalo 0, 4n2 /π 2 . Em particular o maior autovalor de A
não pode exceder 4n2 /π 2 . Como os autovalores do laplaciano neste intervalo são da forma λj = j 2 ,
para termos esperança em aproximar o autovalor λj por autovalores da matriz A precisamos que
j 2 6 4n2 /π 2 , isto é, precisamos discretizar o intervalo (0, π) com
π
n> j
2
pontos. Isso dá uma estimativa bastante grosseira do quão refinada a nossa malha precisa ser para
aproximar os autovalores do laplaciano. Na prática, vimos que apenas os primeiros autovalores de
A aproximam bem os primeiros autovalores do laplaciano e portanto precisamos de uma malha com
um número muito maior de pontos. Observe que uma estimativa semelhante vale para a matriz de
2
discretização M fornecida pela fórmula de cinco pontos no quadrado (0, π) quando tomamos ∆x =
2 2
∆y = π/n: como os£ autovalores ¤ de M estão localizados no intervalo de centro em x = 4n /π de raio
2 2 2 2
4n /π , isto é, em 0, 8n /π , precisamos de
π p2
n> √ i + j2
2 2
pontos no eixos horizontal e vertical para aproximar o autovalor i2 + j 2 . Por outro lado, no caso
bidimensional isso implica em uma matriz de discretização da ordem de i2 + j 2 . ¤

Usos mais refinados do Teorema de Gershgorin permitem obter conhecimento mais preciso sobre onde
os autovalores da matriz se encontram e correspondentemente melhores estimativas para o raio espectral
Rodney Josué Biezuner 40

de uma matriz. Por exemplo, como A e At possuem os mesmos autovalores, existe um teorema dos discos
de Gershgorin equivalente para as colunas de uma matriz. Em particular, todos os autovalores de A estão
localizados na interseção destas duas regiões: G (A) ∩ G (At ). Isso implica a seguinte estimativa simples para
o raio espectral de uma matriz complexa:
2.3 Corolário. Se A ∈ Mn (C), então
 
n
X n
X
ρ (A) 6 min  max |aij | , max |aij | = min (kAkL , kAkC ) .
i=1,...,n j=1,...,n
j=1 i=1

Prova. O ponto no i-ésimo disco de Gershgorin que é mais distante da origem tem módulo
n
X
|aii | + Ri (A) = |aij |
j=1

e um resultado semelhante vale para as colunas de A. ¥


O resultado do Corolário 2.3 não é surpreendente em vista do raio espectral de uma matriz ser menor que
qualquer norma matricial (veja o próximo capı́tulo). Um resultado melhor pode ser obtido uma vez que
se observa que A e S −1 AS também possuem os mesmos autovalores, qualquer que seja a matriz invertı́vel
S. Em particular, quando S = D = diag (p1 , . . . , pn ) é uma matriz diagonal com todos os seus elementos
positivos, isto é, pi > 0 para todo i, aplicando o Teorema de Gershgorin à matriz
µ ¶
−1 pj
D AD = aij
pi
e à sua transposta, obtemos o seguinte resultado que permite obter uma estimativa arbitrariamente boa dos
autovalores de A:
2.4 Corolário. Se A ∈ Mn (C) e p1 , . . . , pn > 0, então todos os autovalores de A estão contidos em
 

 

¡ −1 ¢ ¡ t −1
¢ [ n
1 X
n 
G D AD ∩ G DA D = z ∈ C : |z − aii | 6 pj |aij | (2.13)
 pi j=1 
i=1 
 

j6=i
 
[ n 
 Xn 

1
∩ z ∈ C : |z − aii | 6 pj |aij | .
 p 
i=1  i=1 i 
i6=j

Em particular,
 
Xn Xn
1 1
ρ (A) 6 min  max pj |aij | , max pj |aij | . (2.14)
p1 ,...,pn >0 i=1,...,n pi j=1,...,n pi
j=1 i=1

2.4 Propriedade FC
Na nossa busca por propriedades para matrizes diagonalmente dominantes que garantirão a sua invertibil-
idade, uma observação fundamental é a de que se A é uma matriz diagonalmente dominante, então 0 não
pode ser um ponto interior de nenhum disco de Gershgorin. De fato, se λ é um autovalor de A interior a
algum disco de Gershgorin então devemos ter desigualdade estrita
n
X
|λ − aii | < Ri (A) = |aij |
j=1
j6=i
Rodney Josué Biezuner 41

para algum i. Se 0 é um autovalor de A interior a algum disco de Gershgorin, então


n
X
|aii | < |aij |
j=1
j6=i

para algum i e A não pode ser diagonalmente dominante na linha i.


Uma condição equivalente para que um autovalor λ de A não seja um ponto interior de nenhum disco de
Gershgorin é que
n
X
|λ − aii | > Ri (A) = |aij | para todo i = 1, . . . , n.
j=1
j6=i

Tais pontos λ na região de Gershgorin G (A) (não necessariamente autovalores de A) constituem precisa-
mente a fronteira ∂G (A) da região de Gershgorin. Chamaremos a fronteira de um disco de Gershgorin
{z ∈ C : |z − aii | = Ri (A)} um cı́rculo de Gershgorin.

2.5 Lema. Seja A ∈ Mn (C) e λ um autovalor de A que não é um ponto interior de nenhum disco de
Gershgorin. Seja x = (x1 , . . . , xn ) 6= 0 um autovetor associado a λ e k um ı́ndice tal que

|xk | > |xj | para j = 1, . . . , n.

Se i é qualquer ı́ndice tal que


|xi | = |xk |
então o i-ésimo cı́rculo de Gershgorin passa por λ. Se, além disso,

aij 6= 0,

então
|xj | = |xk |
e o j-ésimo cı́rculo de Gershgorin também passa por λ.

Prova. Como na demonstração do Teorema de Gershgorin, temos


n
X n
X n
X
|xi | |λ − aii | 6 |aij xj | = |aij | |xj | 6 |xk | |aij | = |xk | Ri (A) (2.15)
j=1 j=1 j=1
j6=k j6=k j6=k

para todo ı́ndice i. Logo, se |xi | = |xk |, temos

|λ − aii | 6 Ri (A) .

Como por hipótese


|λ − aii | > Ri (A)
para todo ı́ndice i, segue que
|λ − aii | = Ri (A) .
Em geral, |xi | = |xk | implica que as desigualdades em (2.15) são identidades; em particular,
n
X n
X
|aij | |xj | = |xi | |aij |
j=1 j=1
j6=k j6=k
Rodney Josué Biezuner 42

donde
n
X
|aij | (|xi | − |xj |) = 0.
j=1
j6=k

Esta é uma soma de termos não-negativos, pois |xi | > |xj |, logo se aij 6= 0 necessariamente devemos ter
|xj | = |xi | = |xk |. ¥
Este lema técnico tem as seguintes conseqüências úteis:

2.6 Teorema. Seja A ∈ Mn (C) uma matriz cujas entradas são todas não-nulas e seja λ um autovalor de
A que não é um ponto interior de nenhum disco de Gershgorin. Então todo cı́rculo de Gershgorin
de A passa por λ (isto é, λ está na interseção de todos os cı́rculos de Gershgorin de A) e se x =
(x1 , . . . , xn ) 6= 0 é um autovetor associado a λ então

|xi | = |xj | para todos i, j = 1, . . . , n.

Prova. Decorre diretamente do lema anterior. ¥

2.7 Corolário. Se A ∈ Mn (C) é uma matriz cujas entradas são todas não-nulas e diagonalmente dominante
P
n
tal que |aii | > |aij | para pelo menos alguma linha i, então A é invertı́vel.
j=1
j6=i

Prova. Pois, como A é diagonalmente dominante, se 0 é um autovalor de A então 0 não pode ser um ponto
interior de nenhum disco de Gershgorin. Por outro lado, pelo teorema anterior, segue que todo cı́rculo de
Gershgorin passa por 0. Entretanto, o i-ésimo cı́rculo de Gershgorin centrado em aii e com raio Ri < |aii |
não pode passar por 0. Concluı́mos que 0 não é um autovalor de A, logo A é invertı́vel. ¥
Na verdade, usando com maior cuidado a informação dada pelo Lema 2.5 podemos obter resultados ainda
melhores:

Definição. Dizemos que uma matriz A = (aij ) ∈ Mn (C) satisfaz a propriedade FC se para todo par de
inteiros distintos i, j existe uma seqüência de inteiros distintos i1 = i, i2 , i3 , . . . , im−1 , im = j, com
1 6 m 6 n, tais que todas as entradas matriciais

ai1 i2 , ai2 i3 , . . . , aim−1 im

são não-nulas.

Por exemplo, a matriz diagonalmente dominante não-invertı́vel


 
4 2 1
 0 1 1 ,
0 1 1

já vista anteriormente, não satisfaz a propriedade FC porque o par 2, 1 não admite tal seqüência (a única
seqüência possı́vel é a23 , a31 ). Já qualquer par de inteiros distintos i, j tal que aij 6= 0 admite a seqüência
trivial não-nula aij , de modo que uma matriz cujas entradas não-diagonais são todas não-nulas satisfaz a
propriedade FC. O significado da abreviatura “FC”, ou “fortemente conexo”, ficará claro mais adiante.

2.8 Teorema. Seja A ∈ Mn (C) uma matriz que satisfaz a propriedade FC e seja λ um autovalor de A que
não é um ponto interior de nenhum disco de Gershgorin. Então todo cı́rculo de Gershgorin de A passa
por λ (isto é, λ está na interseção de todos os cı́rculos de Gershgorin de A) e se x = (x1 , . . . , xn ) 6= 0
é um autovetor associado a λ então

|xi | = |xj | para todos i, j = 1, . . . , n.


Rodney Josué Biezuner 43

Prova. Seja x = (x1 , . . . , xn ) 6= 0 um autovetor associado a λ e i um ı́ndice tal que

|xi | > |xk | para k = 1, . . . , n.

Pelo Lema 2.5,


|λ − aii | = Ri (A) .
Seja j 6= i qualquer outro ı́ndice e i1 = i, i2 , i3 , . . . , im−1 , im = j, com 1 6 m 6 n, ı́ndices tais que todas as
entradas matriciais
aii2 , ai2 i3 , . . . , aim−1 j 6= 0.
Como aii2 6= 0, segue da segunda afirmativa do Lema 2.5 que |xi2 | = |xi |. Mas então ai2 i3 6= 0 e portanto
|xi3 | = |xi2 | = |xi |. Prosseguindo desta forma, concluı́mos que
¯ ¯
|xi | = |xi2 | = . . . ¯xim−1 ¯ = |xj | .

Em particular, segue novamente do Lema 2.5 que o j-ésimo cı́rculo de Gershgorin passa por λ. Como j é
arbitrário, isso prova o teorema. ¥

2.9 Corolário. Se A ∈ Mn (C) é uma matriz que satisfaz a propriedade FC e diagonalmente dominante tal
P
n
que |aii | > |aij | para pelo menos alguma linha i, então A é invertı́vel.
j=1
j6=i

Prova. Segue do teorema anterior da mesma forma que o Corolário 2.7 segue do Teorema 2.6. ¥
Vamos tentar entender melhor o significado da propriedade FC. Note que ela se refere apenas à localização
dos elementos não-nulos de A fora da diagonal principal – os elementos da diagonal principal e os valores
especı́ficos dos elementos fora da diagonal principal são irrelevantes. Isso motiva as seguintes definições:

Definição. Dada uma matriz A = (aij ) ∈ Mn (C) definimos o módulo da matriz A como sendo a matriz

|A| = (|aij |)

cujos elementos são os módulos dos elementos da matriz A e a matriz indicadora de A como sendo
a matriz
M (A) = (µij ) ,
onde ½
1 se aij 6= 0,
µij =
0 se aij = 0.

O conceito de uma seqüência de entradas não-nulas da matriz A que aparece na definição da propriedade
FC pode ser visualizado em termos de caminhos em um grafo associado a A:

Definição. Dada uma matriz A ∈ Mn (C), o grafo direcionado de A é o grafo direcionado Γ (A) com n
nodos P1 , . . . , Pn tais que existe um arco direcionado em Γ (A) de Pi a Pj se e somente se aij 6= 0.
Um caminho direcionado γ em um grafo Γ é uma seqüência de arcos Pi1 Pi2 , Pi2 Pi3 , . . . em Γ. O
comprimento de um caminho direcionado é o número de arcos sucessivos no caminho direcionado. Um
ciclo é um caminho direcionado que começa e termina no mesmo nó.
Dizemos que um grafo direcionado é fortemente conexo se entre qualquer par de nodos distintos
Pi , Pj ∈ Γ existir um caminho direcionado de comprimento finito que começa em Pi e termina em Pj .

Observe que quando Γ é um grafo direcionado com n nodos, se existe um caminho direcionado entre dois
nodos de Γ, então sempre existe um caminho direcionado entre estes dois nodos de comprimento menor que
ou igual a n − 1.
Rodney Josué Biezuner 44

2.10 Teorema. A ∈ Mn (C) satisfaz a propriedade FC se e somente se Γ (A) é fortemente conexo.

Verificar a propriedade FC a partir do grafo direcionado de A pode ser impraticável se o tamanho da


matriz for muito grande. Existe um método computacional mais explı́cito para fazê-lo:

2.11 Teorema. Sejam A ∈ Mn (C) e Pi , Pj nodos de Γ (A). Existe um caminho direcionado de compri-
mento m em Γ (A) de Pi para Pj se e somente se
m
(|A| )ij 6= 0

ou, equivalentemente, se e somente se


m
[M (A) ]ij 6= 0.

Prova. Provaremos o teorema por indução. Para m = 1 a afirmativa é trivial. Para m = 2, temos
³ ´ n
X n
X
2
|A| = (|A|)ik (|A|)kj = |aik | |akj | ,
ij
k=1 k=1
³ ´
2
de modo que |A| 6= 0 se e somente se aik , akj são ambos não-nulos para algum ı́ndice k. Mas isso é
ij
equivalente a dizer que existe um caminho direcionado de comprimento 2 em Γ (A) de Pi para Pj .
Em geral, supondo a afirmativa provada para m, temos
³ ´ n
X n
X
m+1 m m
|A| = (|A| )ik (|A|)kj = (|A| )ik |akj | 6= 0
ij
k=1 k=1

m
se e somente se (|A| )ik , akj são ambos não-nulos para algum ı́ndice k. Por hipótese de indução, isso é
equivalente a existir um caminho direcionado de comprimento m em Γ (A) de Pi para Pk e um caminho
direcionado de comprimento 1 em Γ (A) de Pk para Pj , isto é, um caminho direcionado de comprimento
m + 1 em Γ (A) de Pi para Pj . O mesmo argumento vale para M (A). ¥

Definição. Seja A = (aij ) ∈ Mn (C). Dizemos que A > 0 se aij > 0 para todos 1 6 i, j 6 n e que A > 0 se
aij > 0 para todos 1 6 i, j 6 n.

2.12 Corolário. Seja A ∈ Mn (C). Existe um caminho direcionado de comprimento m em Γ (A) de cada
nodo Pi para cada nodo Pj se e somente se
m
|A| >0

ou, equivalentemente, se e somente se


m
M (A) > 0.

2.13 Corolário. Seja A ∈ Mn (C). A satisfaz a propriedade FC se e somente se


n−1
(I + |A|) >0

ou, equivalentemente, se e somente se


n−1
[I + M (A)] > 0.

Prova. Temos
µ ¶ µ ¶
n−1 n−1 2 n−1 n−1 n−1
(I + |A|) = I + (n − 1) |A| + |A| + . . . + |A| + |A| >0
2 n−3
Rodney Josué Biezuner 45

2 n−1
se e somente se para cada par de ı́ndices i, j com i 6= j pelo menos um dos termos |A| , |A| , . . . , |A|
tem uma entrada positiva em (i, j). Pelo Teorema 2.11, isso ocorre se e somente se existe algum caminho
direcionado em Γ (A) de Pi para Pj com comprimento 6 n−1. Isto é equivalente a A satisfazer a propriedade
FC. O mesmo argumento vale para M (A). ¥
Em geral, a maneira como uma matriz foi obtida (como as nossas matrizes de discretização; veja a última
seção do capı́tulo) torna clara se elas são matrizes que satisfazem a propriedade FC ou não. Se isso
não é possı́vel, e pretende-se verificar a propriedade FC através do Corolário 2.13, é preferı́vel calcular
n−1
[I + M (A)] , já que M (A) é uma matriz composta apenas de 0’s e 1’s.

2.5 Matrizes Irredutı́veis


Lembre-se que uma matriz de permutação P é uma matriz quadrada cujas entradas são todas 0 ou 1 e,
além disso, em cada linha e em cada coluna de P existe exatamente um 1. Em particular, P é uma matriz
ortogonal, de modo que P −1 = P t , isto é, a inversa de P também é uma matriz de permutação. Um caso
especial de uma matriz de permutação é uma matriz de transposição, que é uma matriz de permutação T
igual à matriz identidade exceto em duas posições, isto é, para algum par de ı́ndices fixado k, l temos

 δij se (i, j) 6= (k, l) , (l, k) , (k, k) ou (l, l) ,
Tij = 1 e (i, j) = (k, l) ou se (i, j) = (l, k) ,

0 se (i, j) = (k, k) ou se (i, j) = (l, l) .

Matrizes de transposição são simétricas. O efeito de multiplicar uma matriz A por uma matriz de transposição
à esquerda é trocar a posição de duas linhas da matriz A (no caso acima, as linhas k e l), enquanto que a
multiplicação de A por uma matriz de transposição à direita muda a posição de duas colunas de A (no caso
acima, as colunas k e l).
    
1 0 0 0 a11 a12 a13 a14 a11 a12 a13 a14
 0 0 1 0   a21 a22 a23 a24   a31 a32 a33 a34 
TA =    
 0 1 0 0   a31 a32 a33 a34  =  a21 a22 a23 a24  ,

0 0 0 1 a41 a42 a43 a44 a41 a42 a43 a44


    
a11 a12 a13 a14 1 0 0 0 a11 a13 a12 a14
 a21 a22 a23 a24   0 0 1 0   a21 a23 a22 a24 
AT =    
 a31 a32 a33 a34   0 1 0 0  =  a31 a33 a32 a34  .

a41 a42 a43 a44 0 0 0 1 a41 a43 a42 a44

Pode-se provar que toda matriz de permutação P é o produto de matrizes de transposição P = T1 . . . Tm ;


em particular, P t = Tm . . . T1 . A matriz

P t AP = Tm . . . T1 AT1 . . . Tm

é portanto obtida através da permutação de linhas e colunas de A, de modo que nenhum novo elemento é
criado ou algum elemento existente de A destruı́do.

Definição. Dizemos que uma matriz A ∈ Mn (C) é redutı́vel se existe alguma matriz de permutação P e
algum inteiro 1 6 m 6 n − 1 tal que · ¸
B C
P t AP =
0 D
onde B é uma matriz m × m, D é uma matriz (n − m) × (n − m), C é uma matriz m × (n − m) e 0 é
a matriz nula (n − m) × m. Caso contrário, dizemos que A é irredutı́vel.
Rodney Josué Biezuner 46

Da definição vemos que se |A| > 0, então A é irredutı́vel, e para que A seja redutı́vel, ela precisa ter pelo
menos n − 1 zeros (caso m = 1). A motivação para este nome é a seguinte. Suponha que queiramos resolver
o sistema Ax = b e que A seja redutı́vel. Então, se escrevermos
· ¸
B C
A = P t AP = ,
0 D

teremos Ax = P AP t x = b ou AP t x = P t b; denotando x = P t x e b = P t b, resolver o sistema Ax = b é então


equivalente a resolver o sistema
Ax = b.
Escrevendo · ¸ · ¸
y b1
x= , b=
z b2
onde y, b1 ∈ Cm e z, b2 ∈ Cn−m , este sistema é por sua vez equivalente ao sistema
½
By + Cz = b1
Dz = b2

Se resolvermos primeiro Dz = b2 e utilizarmos o valor de z encontrado na primeira equação resolvendo


By = b1 − Cz, teremos reduzido o problema original a dois problemas menores, mais fáceis de resolver.

2.14 Teorema. Uma matriz A ∈ Mn (C) é irredutı́vel se e somente se


n−1
(I + |A|) >0

ou, equivalentemente, se e somente se


n−1
[I + M (A)] > 0.

n−1
Prova. Para provar o resultado, mostraremos que A é redutı́vel se e somente se (I + |A|) possui pelo
menos uma entrada nula.
Assuma primeiramente que A é redutı́vel, de modo que para alguma matriz de permutação P tenhamos
· ¸
B C
A=P P t =: P AP t .
0 D

Observe que ¯ ¯ ¯ ¯
|A| = ¯P AP t ¯ = P ¯A¯ P t ,
já que o efeito de P é apenas trocar linhas e colunas. Além disso, note que
· k ¸
k B Ck
A =
0 Dk

para alguma matriz Ck . Logo, como


¡ ¯ ¯ ¢n−1 ¡ ¯ ¯¢n−1 t
= I + P ¯A¯ P t = P I + ¯A¯
n−1
(I + |A|) P
· µ ¶ µ ¶ ¸
n−1 2 n−1 n−1 n−1
= P I + (n − 1) |A| + |A| + . . . + |A| + |A| Pt
2 n−3

e todos os termos dentro dos colchetes são matrizes que tem um bloco (n − m) × m nulo no canto esquerdo
n−1
inferior, segue que (I + |A|) é redutı́vel, logo possui entradas nulas e não pode ser positiva.
Rodney Josué Biezuner 47

n−1
Reciprocamente, suponha que (I + |A|) possui pelo menos uma entrada nula. Como
n−1
X µ ¶
n−1 n−1 m
(I + |A|) =I+ |A| ,
m=1
m

n−1
(I
h + |A|) não
i possui entradas diagonais nulas, logo podemos assumir que para algum par i 6= j temos
n−1 m
(I + |A|) = 0, o que implica [|A| ]ij = 0 para todo 1 6 m 6 n − 1. Pelo Teorema 2.11 (e observação
ij
imediatamente posterior à definição de grafo direcionado), não existe um caminho direcionado em Γ (A) de
comprimento finito entre Pi e Pj . Defina os conjuntos de nodos

S1 := {Pk : Pk = Pj ou existe um caminho direcionado em Γ (A) entre Pk e Pj } ,


S2 = [ nodos de Γ (A)] \S1 .

Por definição destes conjuntos, não pode existir nenhum caminho de algum nodo de S2 para algum nodo de
m
S1 , logo [|A| ]lk = 0 se Pl ∈ S2 e Pk ∈ S1 . E ambos os conjuntos são não-vazios, pois Pj ∈ S1 e Pi ∈ S2 .
Renomeando os nodos de modo que
n o
S1 = Pe1 , . . . , Pem ,
n o
S2 = Pem+1 , . . . , Pen ,

segue que existe uma matriz de permutação P tal que


· ¸
t B C
P AP = .
0 D

De fato, P é justamente a matriz de permutação que troca as colunas de tal forma que as variáveis anteriores
correspondentes aos nodos Pe1 , . . . , Pem no sistema Ax = b são as novas m primeiras variáveis do sistema linear
Ax = b; como não existe nenhum caminho direcionado entre nenhum dos nodos Pem+1 , . . . , Pen e qualquer um
dos nodos Pe1 , . . . , Pem , temos aij = 0 para m + 1 6 i 6 n e 1 6 j 6 m pelo Teorema 2.11. ¥

2.15 Corolário. Uma matriz A ∈ Mn (C) é irredutı́vel se e somente se ela satisfaz a propriedade FC.
P
n
2.16 Proposição. Se A é uma matriz irredutı́vel, diagonalmente dominante tal que |aii | > |aij | para
j=1
j6=i
pelo menos alguma linha i, então A é invertı́vel.
Além disso, se A é hermitiana e todos os elementos da diagonal principal de A são positivos, então
todos os autovalores de A são positivos.

Prova. O resultado segue do Teorema 2.14, do Corolário 2.9 e do Teorema dos Discos de Gershgorin (veja
comentários após o Teorema 2.2). ¥

2.6 Invertibilidade de Matrizes de Discretização


Os resultados obtidos nas seções anteriores fornecem uma demonstração alternativa de que as matrizes
de discretização do capı́tulo anterior (tanto no caso unidimensional, quanto no caso bidimensional) são
invertı́veis, sem a necessidade de se calcular os seus autovalores.
Rodney Josué Biezuner 48

2.6.1 Esquemas de Diferenças Finitas para o Intervalo e para o Retângulo


É fácil ver que todas as matrizes de discretização obtidas no capı́tulo anterior para o intervalo e para o
retângulo (isto é, os esquemas unidimensionais de três pontos e cinco pontos, e os esquemas bidimensionais
de cinco e nove pontos, compacto ou não-compacto) são matrizes diagonalmente dominantes com dominância
diagonal estrita nas linhas correspondentes a pontos adjacentes à fronteira. Além disso, elas são matrizes
irredutı́veis porque elas satisfazem a propriedade FC. De fato, cada ı́ndice i da matriz corresponde a um
ponto interior Pi da malha e aij 6= 0 sempre que Pi e Pj são pontos vizinhos naqueles esquemas. Então,
dados dois pontos distintos Pi , Pj é fácil encontrar uma seqüência de ı́ndices i1 = i, i2 , i3 , . . . , im−1 , im = j,
com 1 6 m 6 n, tais que todas as entradas matriciais

ai1 i2 , ai2 i3 , . . . , aim−1 im

são não-nulas: no caso unidimensional, basta percorrer a malha diretamente de Pi até Pj (andando a partir
de Pi sempre para a direita ou sempre para a esquerda, conforme o caso, até encontrar Pj ), e no caso
bidimensional basta usar qualquer caminho interior de Pi até Pj (pode-se usar a ordem lexicográfica para
percorrer a malha, ou a ordem lexicográfica inversa, dependendo das posições relativas de Pi e Pj ; no entanto,
estes caminhos são mais longos que o necessário). Em outras palavras, identificando as malhas de pontos
internos com os grafos direcionados da matriz de discretização, de modo que existe um arco direcionado entre
dois pontos da malha se e somente se eles são vizinhos, os esquemas de discretização considerados garantem
que estes grafos são fortemente conexos.
As matrizes obtidas através de diferenças finitas em geral são irredutı́veis, pois elas satisfazem a pro-
priedade FC. É difı́cil imaginar um esquema de diferenças finitas para uma malha sobre um domı́nio conexo
em que não houvesse um caminho direcionado entre pontos vizinhos (isto é, em que tivéssemos aij = 0
para dois pontos vizinhos Pi e Pj ). Outra maneira de pensar sobre isso é observar que se uma matriz de
discretização fôsse (após permutação de linhas e colunas) da forma
· ¸
B C
,
0 D

isso implicaria que um conjunto de pontos da malha (os correspondentes ao bloco D) teriam diferenças
finitas independentes do conjunto dos pontos restantes da malha (os correspondentes ao bloco D); pior
ainda, estes últimos poderiam ter diferenças finitas dependentes dos primeiros (já que o bloco C poderia
ser não-nulo). Em última análise, seria possı́vel reduzir o problema de resolver o sistema linear associado à
discretização a dois problemas mais simples. É difı́cil imaginar um esquema de diferenças finitas com esta
propriedade, embora talvez possa ocorrer em algum domı́nio com geometria altamente irregular em que a
malha de pontos interiores se dividisse em essencialmente duas malhas independentes. Tal situação deve ser
evitada com cuidado na hora de discretizar tais regiões.

2.6.2 Esquema de Coordenadas Polares


As mesmas observações anteriores valem para a matriz de discretização obtida através do esquema de coorde-
nadas polares do capı́tulo anterior, isto é, ela satisfaz a propriedade FC. Para verificar que ela é diagonalmente
dominante, note que para todas as linhas, exceto a primeira que deve ser tratada separadamente, temos
1 ri+1/2 + ri−1/2 2 1
|aii | = γi = + 2 .
ri ∆r2 ri ∆θ2
Além disso, para todas as linhas, excetuando a primeira e as linhas correspondentes a pontos adjacentes à
fronteira do disco temos
n
X 1 ri−1/2 1 ri+1/2 2 1
|aij | = αi + βi + 2δi = 2
+ 2
+ 2 = |aii | .
j=1
∆r ri ∆r ri ri ∆θ2
j6=i
Rodney Josué Biezuner 49

Nestas linhas existe dominância diagonal, enquanto que nas linhas correspondentes a pontos adjacentes à
fronteira do disco temos
(n−1)×m+1
X
|aij | = αi + 2δi < |aii | ,
j=1
j6=i

isto é, temos dominância diagonal estrita. Finalmente, para a primeira linha também temos dominância
diagonal, pois
4
|a00 | = ,
∆r2
(n−1)×m+1
X 2 ∆θ m ∆θ 4
|a0j | = m =4 = = |a00 | .
j=1
π ∆r2 2π ∆r2 ∆r2
j6=0

2.6.3 Esquema de Shortley-Weller


Se a geometria é razoavelmente regular, o esquema de Shortley-Weller para o problema de Dirichlet deve
satisfazer a propriedade FC : aij 6= 0 sempre que Pi e Pj são pontos internos vizinhos, e se a geometria não é
altamente irregular (por exemplo, se o domı́nio é “razoavelmente” convexo) existe um caminho direcionado de
um ponto interno arbitrário a qualquer outro ponto interno da malha passando apenas por pontos internos do
domı́nio. Caso contrário, a matriz de discretização obtida pode deixar de ser irredutı́vel, mas isso deve ocorrer
apenas devido à quebra da malha de pontos internos em várias submalhas desconexas, e cada submalha por
si só deve ser fortemente conexa. Portanto, a matriz de discretização total deve ser uma matriz em blocos,
cada bloco satisfazendo a propriedade FC, logo a matriz é invertı́vel.
Capı́tulo 3

Métodos Iterativos para a Resolução


de Sistemas Lineares

Neste capı́tulo investigaremos métodos iterativos para a resolução de sistemas lineares

Ax = b.

Embora a matriz A que temos em mente é em geral uma matriz grande e esparsa, do tipo que aparece
em esquemas de diferenças finitas, os métodos considerados aqui requerem apenas que A seja uma matriz
invertı́vel com todas as entradas diagonais aii não-nulas.
Métodos iterativos requerem um chute inicial x0 , um vetor inicial que aproxima a solução exata x (se
não há nenhuma informação disponı́vel sobre a solução exata, de modo que não temos como construir o
chute inicial de forma inteligente, x0 pode ser uma aproximação muito ruim de x). Uma vez que x0 é dado,
o método iterativo gera a partir de x0 uma nova aproximação x1 , que esperamos deve aproximar melhor a
solução exata. Em seguida, x1 é usada para gerar 2
¡ k ¢uma nova melhor aproximação x e assim por diante.
Desta forma, gera-se uma seqüência de vetores x que espera-se convergir para x. Como na prática não
podemos iterar para sempre, algum critério de parada deve ser estabelecido a priori. Uma vez que xk esteja
suficientemente próximo da solução exata quanto se precise, de acordo com uma margem de tolerância aceita,
pára-se o processo de iteração e aceita-se xk como a solução aproximada adequada para o problema. Por
exemplo, o critério de parada pode ser estabelecido através de uma cota de tolerância τ : quando
° °
°b − Axk ° < τ

ou quando ° k+1 °
°x − xk ° < τ
as iterações são interrompidas e o último valor aproximado obtido é aceito como a melhor aproximação da
solução dentro das circunstâncias.
Os métodos discutidos neste capı́tulo não necessitam de um bom chute inicial (embora, é claro, quanto
melhor o chute inicial, menor o número de iterações necessárias para se chegar à solução aproximada com a
precisão especificada).

3.1 Métodos Iterativos Lineares


Nesta seção apresentamos alguns exemplos clássicos de métodos iterativos lineares. Na próxima seção dare-
mos condições necessárias e suficientes para estabelecer a sua convergência.

50
Rodney Josué Biezuner 51

3.1.1 Método de Jacobi


O primeiro método iterativo (que já foi descrito como o mais lento para convergir, embora isso realmente
depende da matriz A do sistema) é o algoritmo de Jacobi. Escrevendo o sistema Ax = b na forma
 n
 P

 a1j xj = b1


 j=1
.. ,
 .

 P
n

 anj xj = bn

j=1

se aii 6= 0 para todo i, cada xi pode ser isolado na i-ésima equação e escrito na forma
 
Xn
1 bi −

xi =  aij xj 
.
aii j=1
j6=i
¡ ¢
Isso sugere definir um método iterativo da seguinte forma: suposto xk = xk1 , . . . , xkn obtido no passo
¡ ¢
anterior, obtemos xk+1 = xk+1
1 , . . . , xk+1
n por
 
Xn
1 bi −

xk+1
i =  aij xkj 
. (3.1)
aii j=1
j6=i

No caso da fórmula de cinco pontos para o problema de Poisson com ∆x = ∆y, como a equação para
cada ponto (i, j) é dada por

−ui,j−1 − ui,j+1 + 4ui,j − ui−1,j − ui+1,j = ∆x2 fi,j

o método de Jacobi é
1¡ k ¢
uk+1
i,j = ui,j−1 + uki,j+1 + uki−1,j + uki+1,j + ∆x2 fi,j . (3.2)
4
No caso especial da equação de Laplace (f = 0) com condição de fronteira de Dirichlet não-nula, o método
de Jacobi é simplesmente a propriedade do valor médio discreta
1¡ k ¢
uk+1
i,j = ui,j−1 + uki,j+1 + uki−1,j + uki+1,j . (3.3)
4
Em outras palavras, calculados os valores de u em todos os pontos da malha na iteração anterior, o novo
valor de u em um ponto interior da malha nesta iteração é calculado através da média dos seus quatro
pontos vizinhos. Os valores iniciais de u nos pontos interiores da malha para a primeira iteração (isto é, o
chute inicial) podem ser atribuidos arbitrariamente ou através de algum argumento razoável; por exemplo,
podemos utilizar uma média ponderada dos valores de fronteira para o valor inicial em cada ponto interior
da malha, de acordo com a posição do ponto em relação aos pontos das quatro fronteiras discretizadas.
Em forma matricial, o algoritmo de Jacobi pode ser descrito da seguinte forma. Denotando por D = diag
(a11 , . . . , ann ) a matriz diagonal cujas entradas são as entradas diagonais de A, temos que
£ ¤
xk+1 = D−1 (D − A) xk + b (3.4)

ou ¡ ¢
xk+1 = D−1 Cxk + b (3.5)
onde C = D − A é a matriz consistindo dos elementos restantes de A fora da diagonal principal.
Rodney Josué Biezuner 52

3.1.2 Método de Gauss-Seidel


Um método iterativo que converge cerca de duas vezes mais rápido que o método de Jacobi (pelo menos em
várias aplicações) é o método de Gauss-Seidel, onde os valores de x são atualizados dentro de cada iteração,
sem esperar pela próxima. Em outras palavras, obtido o valor de xk+1 l este é usado no lugar de xkl no cálculo
seguinte. No sistema Ax = b em que aii 6= 0 para todo i, como antes isolamos cada xi na i-ésima equação
mas desta vez escrevemos  
Xi−1 Xn
1 
xi = bi − aij xj + aij xj  .
aii j=1 j=i+1

Então definimos  
i−1
X Xn
1 
xk+1
i = bi − aij xk+1
j + aij xkj  (3.6)
aii j=1 j=i+1

pois os valores xk+1


1 , . . . , xk+1 k k
i−1 já foram computados nesta iteração, enquanto que os valores xi+1 , . . . , xn são
fornecidos pela iteração anterior.
Por exemplo, no caso da equação de Laplace, poderı́amos utilizar a fórmula
1 ¡ k+1 ¢
uk+1
i,j = ui,j−1 + uki,j+1 + uk+1 k
i−1,j + ui+1,j (3.7)
4
assumindo que os pontos da malha são percorridos na ordem lexicográfica, de modo que quando vamos
calcular o valor de u no ponto i, j na iteração k + 1, nesta mesma iteração já calculamos os valores de u em
i − 1, j e em i, j − 1, e usamos estes valores para calcular uk+1 k k
i,j ao invés dos valores ui,j−1 e ui−1,j obtidos
na iteração anterior.
Em forma matricial, o algoritmo de Jacobi pode ser descrito da seguinte forma. Dada uma matriz A,
existe uma única decomposição
A=D−L−U (3.8)
onde D é uma matriz diagonal, L é uma matriz estritamente triangular inferior e U é uma matriz estritamente
triangular superior; de fato, D = diag (a11 , . . . , ann ) é a parte diagonal de A, −L é a parte estritamente
triangular inferior de A e −U é a parte estritamente triangular superior de A. Então o algoritmo de Jacobi
pode ser definido por ¡ ¢
xk+1 = D−1 Lxk+1 + U xk + b (3.9)
ou
(D − L) xk+1 = U xk + b,
donde ¡ k ¢
−1
xk+1 = (D − L) Ux + b . (3.10)
É importante ressaltar que existem matrizes para as quais o método de Jacobi converge e o método de
Gauss-Seidel diverge, e vice-versa. Veja a próxima seção sobre a convergência dos métodos.

3.1.3 Método SOR


O processo de corrigir uma equação através da modificação de uma variável é às vezes chamado de relax-
amento. Antes da correção, a equação não é verdadeira; como um conjunto de partes que não se ajustam,
ela está em estado de tensão. A correção de uma variável relaxa a tensão. O método de Gauss-Seidel efetua
relaxamento sucessivo, ou seja, passa de equação para equação, relaxando uma depois da outra. [Watkins]
Por este motivo, os métodos de Jacobi e de Gauss-Seidel são também chamados métodos de relaxamento.
Em muitos casos, a convergência pode ser substancialmente acelerada através de sobrerelaxamento. Isso
significa que ao invés de fazer uma correção para a qual a equação é satisfeita exatamente, nós fazemos uma
correção maior. No caso mais simples, escolhe-se um fator de relaxamento ω > 1 que sobrecorrige por aquele
Rodney Josué Biezuner 53

fator em cada passo (se mover um passo na direção de xk para xk+1 é bom, mover naquela direção ω > 1
passos é melhor). Este é o chamado método de sobrerelaxamento sucessivo (SOR, successive overrelaxation):
usando o método de Gauss-Seidel obtemos
 
i−1
X Xn
1 bi −
bk+1
xi = aij xk+1
j + aij xkj  ;
aii j=1 j=i+1

daı́ tomamos ¡ k+1 ¢


xk+1
i = xki + ω x
bi − xki .
Isso pode ser resumido em
   
i−1
X Xn
1
xk+1
i = xki + ω  bi − k+1
aij xj − aij xkj  − xki  . (3.11)
aii j=1 j=i+1

Quando ω = 1, o método SOR é exatamente o método de Gauss-Seidel. Um fator ω < 1 (subrelaxamento)


normalmente diminui a velocidade de convergência.
Para a maioria dos problemas, o melhor valor para o fator de relaxamento é desconhecido. Para a matriz
de discretização obtida a partir da fórmula de cinco pontos, é sabido que o valor ótimo de ω é, como veremos
na próxima seção,
2
ω= . (3.12)
1 + sen (π∆x)
Em forma matricial, o método SOR pode ser descrito da seguinte forma. Como antes, dada uma matriz
A escrevemos
A=D−L−U (3.13)
onde D é uma matriz diagonal, L é uma matriz estritamente triangular inferior e U é uma matriz estritamente
triangular superior. Então, escrevendo o algoritmo SOR na forma
 
i−1
X n
X
aii xk+1
i = aii xki + ω bi − aij xk+1
j − aij xkj  ,
j=1 j=i

temos £ ¤
Dxk+1 = Dxk + ω Lxk+1 + (U − D) xk + b (3.14)
ou µ ¶ µ ¶
1 k+1 1−ω
D−L x = D + U xk + b,
ω ω
donde µ ¶−1 ·µ ¶ ¸
k+1 1 1−ω k
x = D−L D+U x +b . (3.15)
ω ω

3.1.4 Comparação da Velocidade de Convergência dos Três Métodos


A tabela a seguir foi extraı́da de [Watkins], págs. 533 e 542. Os métodos introduzidos acima foram usados
para resolver o sistema linear Ax = b onde A é a matriz de discretização obtida a partir da fórmula dos
2
cinco pontos do laplaciano no quadrado unitário Ω = (0, 1) e b é estabelecido pela condição de fronteira de
Dirichlet dada por 

 0 se x = 0,

y se x = 1,
g (x, y) =

 (x − 1) sen x se y = 0,

x (2 − x) se y = 1,
Rodney Josué Biezuner 54

ou seja, para resolver o problema discretizado


½
−∆d ud = 0 em Ωd ,
ud = gd sobre ∂Ωd .
As iterações foram interrompidas quando
¯ k+1 ¯
¯u − uk ¯ 2
< 10−8 .
|uk+1 |2
O número de iterações necessárias para convergir de acordo com esta margem de tolerância, para três refina-
mentos possı́veis da malha (correspondentes a matrizes de dimensões n = 81, 361 e 1521, respectivamente),
de acordo com cada método e para diferentes valores de ω no caso do método SOR é apresentado na tabela
abaixo.

∆x = 0.1 ∆x = 0.05 ∆x = 0.025


Jacobi 299 1090 3908
SOR (ω = 0.8) 235 845 3018
Gauss-Seidel 160 581 2082
SOR (ω = 1.4) 67 262 955
SOR (ω = 1.6) 42 151 577
SOR (ω = 1.7) 57 96 412
SOR (ω = 1.8) 86 89 252
SOR (ω = 1.9) 176 180 179
SOR (ω = 2.0) ∞ ∞ ∞
Vemos que o método de Gauss-Seidel é cerca de duas vezes mais rápido para convergir que o método de
Jacobi e que dependendo da escolha de ω, o método SOR pode ser até dez vezes mais rápido que o método
de Gauss-Seidel para a malha mais refinada. Subrelaxamento não ajuda e para ω = 2 o método SOR é
divergente.

3.1.5 Método de Jacobi Amortecido


O método de Gauss-Seidel pode ser sobrerelaxado através de um parâmetro ω > 1 para obter um método
que converge mais rápido.Já o método de Jacobi não pode em geral ser sobrerelaxado, porque o método
obtido não converge. Ele pode no entanto ser subrelaxado através de um parâmetro ω < 1 para obter um
método convergente, se bem que mais vagaroso. A vantagem de se utilizar um tal método é que para certos
valores de ω ele é um ótimo suavizador de erro (em um sentido que será explicado no próximo capı́tulo),
enquanto que o método de Jacobi usual não possui esta propriedade. Assim, o método de Jacobi amortecido
pode ser usado em métodos multigrid (veja o próximo capı́tulo).
Pelo método de Jacobi usual obtemos
 
Xn
1 bi −

bk+1
x i =  aij xkj 
,
aii j=1
j6=i

e tomamos ¡ k+1 ¢
xk+1
i = xki + ω x
bi − xki ,
ou seja,    
Xn
 1   
xk+1 = xk
+ ω  b − aij xkj  k
i i  aii  i  − xi  . (3.16)
j=1
j6=i
Rodney Josué Biezuner 55

Este método é conhecido como método de Jacobi amortecido, método de Jacobi ponderado ou ainda
método de relaxamento simultâneo (diferente do método de relaxamento sucessivo, baseado no método de
Gauss-Seidel, em que cada variável é substituı́da sucessivamente dentro da mesma iteração à medida que
ela é atualizada; no método de Jacobi, as variáveis são todas substituı́das simultameamente na próxima
iteração).
Em forma matricial, o método de Jacobi amortecido pode ser descrito da seguinte forma. Denotando por
D a parte diagonal de A, temos
 
Xn
aii xk+1
i = aii xki + ω bi − aij xkj  ,
j=1

temos £ ¤
Dxk+1 = Dxk + ω b − Axk (3.17)
ou µ ¶ µ ¶
1 1
D xk+1 = D − A xk + ωb,
ω ω
donde µ ¶−1 ·µ ¶ ¸
k+1 1 1 k
x = D D−A x +b . (3.18)
ω ω
Em contraste com o método SOR, que converge em geral para 0 < ω < 2, o método de Jacobi amortecido
converge para 0 < ω 6 1 (veja a próxima seção).

3.2 Análise de Convergência dos Métodos Iterativos Lineares


Os métodos descritos na seção anterior são casos especiais de uma classe geral de métodos chamados métodos
iterativos lineares ou métodos de correção residual. Um método iterativo linear para resolver o sistema
linear
Ax = b
envolve a decomposição da matriz A na forma
A = B − C, (3.19)
onde B é necessariamente uma matriz invertı́vel, e então a resolução iterativa do sistema de equações
Bxk+1 = Cxk + b (3.20)
ou, mais explicitamente, ¡ ¢
xk+1 = B −1 Cxk + b .
Se xk → x, então Bx = Cx + b, donde Ax = b. Do ponto de vista prático, é importante que a matriz B
seja “fácil de resolver” (mesmo que a inversa de B não seja efetivamente calculada), como nos exemplos da
seção anterior:
B C
Jacobi D D−A
Gauss-Seidel D−L U
1 1−ω
SOR D−L D+U
ω ω
Para obter uma convergência rápida, também gostarı́amos que B ≈ A e C ≈ 0. Deste ponto de vista, o ideal
seria B = A e C = 0 (convergência em uma iteração), mas isso viola em geral o critério que B seja “fácil
de resolver”. Um compromisso é necessário: B deve aproximar A o melhor possı́vel sem se tornar muito
complicada.
Rodney Josué Biezuner 56

3.2.1 Convergência dos Métodos Iterativos Lineares


Para métodos iterativos em geral, definimos o erro algébrico por

ek = x − xk , (3.21)

enquanto que o erro residual é dado por

rk = Ax − Axk = f − Axk . (3.22)

O erro algébrico tem interesse puramente teórico (para provar que determinado método iterativo converge,
precisamos mostrar que o erro algébrico tende a zero), já que ele só pode ser calculado uma vez que se
conhece a solução exata, e se este for o caso obviamente não há necessidade de resolver o sistema. Já o erro
residual pode ser usado como critério de parada para o método iterativo. Como
¡ ¢
Bek+1 = Bx − Bxk+1 = Ax + Cx − Cxk − b = C x − xk = Cek ,

segue que
ek+1 = B −1 Cek .
Observe que
B −1 C = B −1 (B − A) = I − B −1 A.
A matriz
R = I − B −1 A = B −1 C (3.23)
é chamada a matriz de iteração ou matriz de propagação do erro do algoritmo considerado, porque

xk+1 = Rxk + B −1 b. (3.24)

e o erro é dado por


ek+1 = Rek . (3.25)
Em particular,
ek = R k e0 (3.26)
0 k
de modo que o erro converge para 0, independentemente do chute inicial x , se e somente se R → 0. Isso
ocorre se e somente se existe alguma norma matricial k·k tal que kRk < 1. Obter uma norma matricial
que satisfaz esta propriedade, no entanto, é difı́cil. Vamos obter uma condição necessária e suficiente para
Rk → 0 em termos do raio espectral da matriz de iteração (Corolário 3.5 a seguir), que é em geral um pouco
mais fácil de calcular. Antes, para motivar o resultado, suponha que A seja uma matriz diagonalizável com
λ1 , . . . , λn os seus autovalores e {v1 , . . . , vn } uma correspondente base de autovetores. Escrevendo o erro
inicial como uma combinação linear dos autovetores, temos
n
X
e0 = ai vi .
i=1

Logo,
n
X
ek = Rk e0 = ai λki vi ,
i=1

de modo que
n
¯ k¯ X
¯e ¯ 6 k
|ai | |λi | |vi | .
i=1
k
Como |λi | → 0 se e somente se |λi | < 1, concluı́mos que ek → 0 qualquer que seja o erro inicial (isto é,
qualquer que seja o chute inicial), se e somente se ρ (R) = max16i6n |λi | < 1 .
Rodney Josué Biezuner 57

3.1 Lema. Se A ∈ Mn (C) e k·k é qualquer norma matricial, então

ρ (A) 6 kAk .

Prova. Seja λ um autovalor qualquer de A e x um autovetor não-nulo correspondente a λ, de modo que

Ax = λx.

Considere a matriz X ∈ Mn (C) cujas colunas são todas iguais ao vetor x. Temos também

AX = λX

de modo que
|λ| kXk = kAXk 6 kAk kXk ,
donde
|λ| 6 kAk
para todo autovalor λ de A. Como existe um autovalor λ de A tal que ρ (A) = λ, isso prova o resultado. ¥

3.2 Lema. Seja A ∈ Mn (C) e ε > 0 dado. Então existe uma norma matricial k·k tal que

ρ (A) 6 kAk 6 ρ (A) + ε. (3.27)

Prova. Toda matriz complexa é triangularizável através de uma matriz unitária (isto é, uma matriz U que
satisfaz U ∗ U = U U ∗ = I; sua inversa é a sua adjunta ou transposta conjugada). Sejam então
 
λ1 a12 a22 . . . a1n
 λ2 a23 . . . a2n 
 
 λ3 . . . a3n 
T = 
 .. .. 
 . . 
λn
uma matriz triangular e U uma matriz unitária tais que

A = U ∗ T U.

Considere a matriz diagonal  


t
 t2 
 
Dt =  .. .
 . 
tn
Temos  
λ1 a12 t−1 a22 t−2 ... ... a1n t−n+1
 λ2 a23 t−1 ... ... a2n t−n+2 
 
 λ3 ... ... a3n t−n+3 
 
Dt T Dt−1 = .. .. .
 . . 
 
 λn−1 an−1,n t−1 
λn
Logo, para t > 0 suficientemente grande, a matriz Dt T Dt−1 tem a propriedade que a soma dos valores
absolutos de elementos fora da diagonal principal é menor que ε. Em particular, se k·kL denota a norma do
máximo das somas das linhas, podemos garantir que
° °
°Dt T Dt−1 ° 6 ρ (A) + ε
L
Rodney Josué Biezuner 58

para t suficientemente grande. Portanto, fixado um tal t, se definirmos uma norma por
° ° °¡ ¢−1 °
° °
kAk := °Dt U AU ∗ Dt−1 °L = ° U ∗ Dt−1 AU ∗ Dt−1 ° ,
L

teremos ° ° ° °
kAk = °Dt U AU ∗ Dt−1 °L = °Dt T Dt−1 °L 6 ρ (A) + ε.
Pelo lema anterior, ρ (A) 6 kAk. ¥

3.3 Lema. Seja A ∈ Mn (C). Se existe alguma norma matricial k·k tal que kAk < 1, então

Ak → 0.

Prova. Se kAk < 1, então ° k°


°A ° 6 kAkk → 0.
¥

3.4 Proposição. Seja A ∈ Mn (C). Então


Ak → 0
se e somente se
ρ (A) < 1.

Prova. Se existe algum autovalor λ de A tal que |λ| > 1 e x é um autovetor não-nulo correspondente, então

Ak x = λk x

não converge para 0. Reciprocamente, se ρ (A) < 1, então pelo Lema 3.2 existe uma norma matricial k·k tal
que kAk < 1, logo Ak → 0 pelo lema anterior. ¥

3.5 Corolário. Seja R a matriz de iteração de um método iterativo linear. Então

ek → 0

se e somente se
ρ (R) < 1.
Em outras palavras, um método iterativo linear é convergente independentemente da escolha do chute
inicial se e somente se todos os autovalores da matriz de iteração têm valor absoluto menor que 1.

3.2.2 Velocidade de Convergência dos Métodos Iterativos Lineares


O raio espectral também dá informação sobre a velocidade de convergência. Se nós tivermos dois métodos
iterativos lineares diferentes, isto é, duas maneiras diferentes de decompor a matriz A:

A = B1 − C1 = B2 − C2 ,

então o segundo método convergirá mais rápido se e somente se

ρ (R2 ) < ρ (R1 ) .

Vamos analisar a velocidade de convergência dos métodos iterativos com maior precisão. Novamente à
tı́tulo de motivação, suponha que R é uma matriz diagonalizável com seu maior autovalor sendo um autovalor
simples. Ordene os autovalores de R na forma

|λ1 | > |λ2 | > . . . > |λn |


Rodney Josué Biezuner 59

e seja {v1 , . . . , vn } uma correspondente base de autovetores. Escrevendo de novo


n
X
e0 = ai vi ,
i=1

donde
n
X
ek = Rk e0 = ai λki vi ,
i=1
segue que " #
n
X µ ¶k
λi
ek = λk1 a1 x1 + ai vi .
i=2
λ1
Como µ ¶k
λi
→ 0,
λ1
k
a taxa de convergência é determinada por |λ1 | . Para k grande, temos
ek ≈ λk1 a1 v1 .
Portanto, ¯ k+1 ¯
¯e ¯
= |λ1 | = ρ (R) . (3.28)
|ek |
Em outras palavras, a convergência é linear com taxa de convergência igual ao raio espectral. Se a1 =
0 a convergência será mais rápida, pois dependerá do módulo do segundo autovalor, mas é obviamente
extremamente raro que o chute inicial satisfaça esta condição. Para o caso geral, precisamos do seguinte
resultado:
3.6 Proposição. Seja A ∈ Mn (C) e k·k uma norma matricial. Então
° °1/k
ρ (A) = lim °Ak ° .

Prova. Como os autovalores da matriz Ak são as k-ésimas potências dos autovalores de A, temos que
¡ ¢ ° °
ρ (A) = ρ Ak 6 °Ak ° ,
k

donde ° °1/k
ρ (A) 6 °Ak ° .
Dado ε > 0, a matriz
1
B= A
ρ (A) + ε
tem raio espectral menor que 1, logo B k → 0. Portanto, existe algum N = N (ε, A) tal que
° k°
°B ° < 1

ou seja,
° k °1/k
°A ° < ρ (A) + ε
para todo k > N . ¥
Definimos a taxa média de convergência de um método iterativo linear com matriz de iteração R por
° °1/k 1 ° °
Rk (R) = − log10 °Rk ° = − log10 °Rk ° (3.29)
k
e a taxa assintótica de convergência por
R∞ (R) = lim Rk (R) . (3.30)
k→∞
Rodney Josué Biezuner 60

3.7 Corolário. Seja R a matriz de iteração de um método iterativo linear. Então a taxa assintótica de
convergência do método é dada por

R∞ (R) = − log10 ρ (R) . (3.31)

Prova. Pois ° °1/k ° °1/k


R∞ (R) = − lim log10 °Rk ° = − log10 lim °Rk ° = − log10 ρ (R) .
k→∞ k→∞

¥
A taxa assintótica de convergência mede o aumento no número de casas decimais corretas na solução por
iteração. De fato, usando a norma matricial do Lema 3.2 e medindo as normas dos vetores de acordo, temos
¯ k+1 ¯ ¯ k+1 0 ¯
¯e ¯ ¯R e ¯
= 6 kRk = ρ (R) + ε,
|ek | |Rk e0 |
donde ¯ k+1 ¯
¯e ¯
− log10 = − log10 ρ (R) + O (ε)
|ek |
ou ¯ ¯ ¯ ¯
log10 ¯ek ¯ − log10 ¯ek+1 ¯ = R∞ (R) + O (ε) . (3.32)
Assim, se
¯ k¯ ¡ ¢
¯e ¯ = O 10−p ,
¯ k+1 ¯ ¡ ¢
¯e ¯ = O 10−q ,

teremos
q − p ≈ R∞ (R) ,
isto é, reduzimos R∞ (R) ≈ q − p casas decimais no erro. Visto de outra forma, como
¯ k+m ¯ ¯ k+m 0 ¯
¯e ¯ ¯R e ¯ m
= 6 kRm k = ρ (R) + O (ε) ,
|ek | |Rk e0 |
donde ¯ k+m ¯
¯e ¯
− log10 ≈ −m log10 ρ (R) ,
|ek |
ou ¡¯ ¯ ¯ ¯¢
log10 ¯ek+m ¯ / ¯ek ¯
m= (3.33)
log10 ρ (R)
é o número de iterações necessárias para diminuir o erro de um número prescrito de casas decimais.

3.2.3 Convergência para Matrizes Simétricas Positivas Definidas


Para matrizes reais simétricas positivas definidas é mais fácil provar a convergência dos métodos iterativos
lineares. Temos o seguinte resultado básico a seguir. Antes precisamos da seguinte definição:

Definição. Introduzimos uma ordenação parcial em Mn (C) definindo

A6B

se
hAx, xi 6 hBx, xi
n
para todo x ∈ C .
Rodney Josué Biezuner 61

Em particular, se A é uma matriz positiva definida, segue que A > εI para algum ε (o menor autovalor de
A) e denotamos este fato por
A > 0.

3.8 Teorema. Seja A uma matriz simétrica positiva definida e seja A = B − C com B invertı́vel. Então
o método iterativo linear com matriz de iteração R = B −1 C converge se e somente se B t + C é uma
matriz simétrica positiva definida.

Prova. Medimos a norma do erro através da norma induzida por A


1/2
|x|A := hAx, xi

e consideraremos a norma matricial k·kA induzida por esta norma. Se provarmos que

kRkA < 1,

o método convergirá. Temos


¯ −1 ¯2 ­ ® ­ t −t ®
° −1 °2 ¯B Cx¯ AB −1 Cx, B −1 Cx C B AB −1 Cx, x
2
kRkA ° °
= B C A = sup A
= sup = sup . (3.34)
2 hAx, xi hAx, xi
x6=0 |x|A x6=0 x6=0

Suponha que B t + C é uma matriz simétrica, positiva definida. Temos


¡ ¢ ¡ ¢ ¡ ¢
C t B −t AB −1 C = B t − A B −t AB −1 (B − A) = I − AB −t A I − B −1 A
¡ ¢
= A − AB −t A + AB −1 A − AB −t AB −1 A
¡ ¢
= A − AB −t B + B t − A B −1 A
¡ ¢t ¡ ¢
= A − B −1 A B + B t − A B −1 A

ou ¡ ¢t ¡ ¢
C t B −t AB −1 C = A − B −1 A B t + C B −1 A, (3.35)
de modo que C t B −t AB −1 C é uma matriz simétrica, positiva definida. Logo, por (4.8), mostrar que kRkA < 1
é equivalente a provar que
C t B −t AB −1 C < A,
¡ ¢t
e por (4.16) C t B −t AB −1 C < A se e somente se B −1 A (B t + C) B −1 A > 0, o que é verdade porque B t +C
é positiva definida. ¥

3.3 Convergência dos Métodos Iterativos Lineares para as Ma-


trizes de Discretização
3.3.1 Convergência do Método de Jacobi
P
n
3.9 Teorema. Se A é uma matriz irredutı́vel, diagonalmente dominante tal que |aii | > |aij | para pelo
j=1
j6=i
menos alguma linha i, então o método de Jacobi converge.

Prova. Seja D a parte diagonal da matriz A e R = D−1 (D − A) = I − D−1 A a matriz de iteração do


método
¡ de Jacobi
¢ para A. Suponha por absurdo que exista um autovalor λ de R tal que |λ| > 1. Como
λ det λ−1 R − I = det (R − λI) = 0, temos
¡ ¢
det I − λ−1 R = 0.
Rodney Josué Biezuner 62

Por outro lado, observe que I − λ−1 R também é irredutı́vel, pois


(
¡ ¢ 0 se i = j,
−1
Rij = I − D A ij = aij
− se i 6= j,
aii
(
¡ ¢ 1 se i = j,
−1 aij
−1
I − λ R ij = λ se i 6= j,
aii
de modo que, onde A se anula, I − λ−1 R também se anula. Além −1
¡ disso,−1I −¢λ R é diagonalmente dominante
−1
e estritamente dominante nas linhas onde A é, pois |λ| 6 1, I − λ R ii = 1 e
n ¯
X ¯¡ ¢ ¯¯ |λ|−1 X n
1 X
n
¯ I − λ−1 R ij ¯ = |aij | 6 |aij | .
j=1
|aii | j=1 |aii | j=1
j6=i j6=i j6=i

Mas, pela Proposição 2.16, isso implica que I − λ−1 R é invertı́vel, uma contradição. ¥
O Teorema 3.8 mostra que o método de Jacobi converge para as matrizes de discretização obtidas através
dos esquemas de diferenças finitas do Capı́tulo 2.
Através do Teorema 3.9, fomos capazes de provar a convergência do método de Jacobi para as matrizes de
discretização sem calcular explicitamente os seus raios espectrais. Para analizar a velocidade de convergência
do método de Jacobi, no entanto, é necessário obter os raios espectrais destas matrizes. Vamos fazer isso
para as matrizes de discretização obtidas a partir da fórmula de três pontos unidimensional e a partir da
fórmula de cinco pontos bidimensional.

3.10 Teorema. Seja A a matriz de discretização obtida a partir da fórmula de três pontos unidimensional
ou a partir da fórmula de cinco pontos bidimensional com ∆x = ∆y. Seja R = D−1 (D − A) a matriz
de iteração do método de Jacobi. Então
π
ρ (R) = cos . (3.36)
n

Prova. Para o método de Jacobi, a matriz de discretização xk+1 = Rxk + D−1 b é obtida através da fórmula:
1¡ k ¢
uk+1
i,j = ui,j−1 + uki,j+1 + uki−1,j + uki+1,j .
4
Já vimos no Lema 1.2 que
¡ ¢ kl
−ukl kl kl kl kl
i−1,j − ui+1,j + 4ui,j − ui,j−1 − ui,j+1 = λkl ∆x
2
ui,j

com µ ¶
2 kπ lπ
λkl = 2 − cos − cos .
∆x2 n n
Daı́ segue que ¡ ¢ kl
ukl kl kl kl
i,j−1 + ui,j+1 + ui−1,j + ui+1,j = 4 − λkl ∆x
2
ui,j
Logo
1 ¡ kl ¢
u + ukl kl kl kl
i,j+1 + ui−1,j + ui+1,j = µlk ui,j
4 i,j−1
para µ ¶ µ ¶
1 1 kπ lπ 1 kπ lπ
µlk = 1 − λkl ∆x2 = 1 − 2 − cos − cos = cos + cos .
4 2 n n 2 n n
Rodney Josué Biezuner 63

Estes são os autovalores da matriz de iteração de Jacobi para a matriz de discretização obtida a partir da
fórmula de cinco pontos (observe que elas possuem os mesmos autovetores; no entanto R possui autovalores
nulos). Segue que o máximo autovalor ocorre quando k = l = 1, logo
π
ρ (R) = cos .
n
O argumento para a fórmula de três pontos é análogo. ¥
Para o quadrado unitário temos
ρ (R) = cos (π∆x) . (3.37)
Vemos em particular que ρ (R) → 1 quando ∆x → 0, de modo que a velocidade de convergência do método
de Jacobi vai ficando cada vez menor para malhas mais refinadas. Podemos dizer mais usando a expansão
da função cosseno em torno da origem
1 ¡ ¢
cos x = 1 − x2 + O x4 ;
2
se ∆x é pequeno podemos aproximar

π2
cos (π∆x) ≈ 1 − ∆x2 ,
2
de modo que ρ (R) → 1 quadraticamente quando ∆x → 0. Em outras palavras, para uma malha duas vezes
mais refinada (isto é, ∆x reduzido pela metade), o método de Jacobi é cerca de quatro vezes mais vagaroso
em média (consulte novamente a tabela no final da seção anterior). A tabela abaixo mostra os valores do
raio espectral para alguns valores de ∆x:

∆x 0.1 0.05 0.025


ρ (R) 0.9511 0.9877 0.9969

Para ∆x = 0.025 (correspondente a uma matriz de tamanho n = 39 × 39 = 1521), temos

R∞ (R) = − log10 (0.9969) = 0.0013484,

de modo que para reduzir o erro pelo fator de uma casa decimal precisamos de
log10 0.1 1 1
m= =− = ≈ 742
log10 ρ (R) log10 ρ (R) 0.00135
iterações.

3.3.2 Convergência do Método de Gauss-Seidel


P
n
3.11 Teorema. Se A é uma matriz irredutı́vel, diagonalmente dominante tal que |aii | > |aij | para pelo
j=1
j6=i
menos alguma linha i, então o método de Gauss-Seidel converge.

Prova. Sejam D a parte diagonal, −L a parte triangular inferior estrita e −U a parte triangular superior
−1
estrita da matriz A, e seja R = (D − L) U a matriz de iteração do método de Gauss-Seidel para A.
Escrevemos £ ¡ ¢¤−1
−1
R = (D − L) U = D I − D−1 L U
ou ¡ ¢−1 −1
R = I − D−1 L D U. (3.38)
Rodney Josué Biezuner 64

Suponha por absurdo que exista um autovalor λ de R tal que |λ| > 1; como na demonstração do Teorema
3.9, temos ³ h¡
¡ ¢ ¢−1 −1 i´
det I − λ−1 R = det I − λ−1 I − D−1 L D U = 0.
Agora, observando que ¡ ¢
det I − D−1 L = 1
porque I − D−1 L é uma matriz triangular inferior com apenas 1’s na diagonal principal, escrevemos
³ h¡ ¢−1 −1 i´
0 = det I − λ−1 I − D−1 L D U
¡ ¢ ³ h¡ ¢−1 −1 i´
= det I − D−1 L det I − λ−1 I − D−1 L D U
n¡ ¢ ³ h ¡ ¢−1 −1 i´o
= det I − D−1 L I − λ−1 I − D−1 L D U
¡ ¢
= det I − D−1 L − λ−1 D−1 U .

Por outro lado,


D−1 A = I − D−1 L − D−1 U
é irredutı́vel, diagonalmente dominante e estritamente dominante nas linhas onde A é porque
(
¡ −1 ¢ 1 se i = j,
D A ij = aij
se i 6= j.
aii
Logo, a matriz I − D−1 L − λ−1 D−1 U também satisfaz estas propriedades, pois I, −D−1 L e −D−1 U são
respectivamente a parte diagonal, a parte triangular inferior estrita e a parte triangular superior estrita da
matriz D−1 A, e multiplicar a parte triangular inferior estrita pelo número λ−1 cujo módulo é menor que ou
igual a 1 não alterará a dominância diagonal (na verdade só tende a melhorá-la) nem acrescentará zeros à
matriz. A Proposição 2.16 implica então que I − D−1 L − λ−1 D−1 U é invertı́vel, um absurdo. ¥
Usando o Teorema 3.11, concluı́mos que o método de Gauss-Seidel converge para as matrizes de discretização
obtidas através dos esquemas de diferenças finitas do Capı́tulo 1. Para analizar a velocidade de convergência
do método de Gauss-Seidel, vamos obter os raios espectrais para as matrizes de discretização obtidas a partir
da fórmula de três pontos unidimensional e a partir da fórmula de cinco pontos bidimensional.

3.12 Teorema. Seja A a matriz de discretização obtida a partir da fórmula de três pontos unidimensional
−1
ou a partir da fórmula de cinco pontos bidimensional com ∆x = ∆y. Seja R = (D − L) U a matriz
de iteração do método de Gauss-Seidel. Então
π
ρ (R) = cos2 . (3.39)
n
Prova. Para obter o raio espectral da matriz de iteração R, queremos encontrar os autovalores µ de R:
−1
Ru = (D − L) U u = µu,

ou seja,
U u = µ (D − L) u
(um problema de autovalor generalizado). No caso da matriz de discretização da fórmula de cinco pontos,
isso significa encontrar µ tal que

ui,j+1 + ui+1,j = µ (4ui,j − ui,j−1 − ui−1,j ) . (3.40)

Para os autovalores não-nulos, podemos fazer a substituição


i+j
ui,j = µ 2 vi,j (3.41)
Rodney Josué Biezuner 65

para transformar a equação de autovalor naquela que aparece no método de Jacobi. Temos
i+j+1 i+j+1
³ i+j i+j−1 i+j−1
´
µ 2 vi,j + µ 2 vi+1,j = µ 4µ 2 vi,j − µ 2 vi,j−1 − µ 2 vi−1,j
i+j+2 i+j+1 i+j+1
= 4µ 2 vi,j − µ 2 vi,j−1 − µ 2 vi−1,j ,
i+j+1
de modo que, dividindo por µ 2 , obtemos

vi−1,j + vi+1,j + vi,j−1 + vi,j+1 = µ1/2 4vi,j .

Portanto os autovalores da matriz de iteração de Gauss-Seidel para esta matriz são exatamente os quadrados
dos autovalores da matriz de iteração de Jacobi (e os autovetores são os mesmos):
µ ¶2
1 kπ lπ
µlk = cos + cos .
4 n n
Portanto, o máximo autovalor ocorre quando k = l = 1 e
π
ρ (R) = cos2 .
n
O argumento para a fórmula de três pontos é análogo. ¥
Para o quadrado unitário temos
ρ (R) = cos2 (π∆x) ,
e usando · ¸
1 ¡ ¢ 2 ¡ ¢
cos2 x = 1 − x2 + O x4 = 1 − x2 + O x4 ,
2
se ∆x é pequeno podemos aproximar

cos2 (π∆x) ≈ 1 − π 2 ∆x2 .

No método de Gauss-Seidel ainda temos ρ (R) → 1 quadraticamente quando ∆x → 0, mas a sua velocidade
de convergência para a matriz de discretização de cinco pontos do quadrado unitário é duas vezes maior que
a do método de Jacobi. Para ver isso, faça a expansão do logaritmo em torno do ponto x = 1:
¡ ¢
log (1 + x) = x + O ∆x2 .

Segue que
π2 ¡ ¢
R∞ (RJacobi ) = ∆x2 + O ∆x4 , (3.42)
2 ¡ ¢
R∞ (RGauss-Seidel ) = π 2 ∆x2 + O ∆x4 . (3.43)

3.3.3 Convergência do Método SOR


3.13 Teorema. Se o método SOR converge, então

0 < ω < 2.

Prova. A matriz de iteração do método SOR é


µ ¶−1 µ ¶ · ¸ µ ¶
1 1−ω 1 ¡ −1
¢ −1 1 − ω
R= D−L D+U = D I − ωD L D+U
ω ω ω ω
µ ¶
¡ ¢−1 1−ω
= I − ωD−1 L ωD−1 D+U
ω
Rodney Josué Biezuner 66

ou ¡ ¢−1 £ ¤
R = I − ωD−1 L (1 − ω) I + ωD−1 U . (3.44)
Se λ1 , . . . , λn são os autovalores de R, então

det R = λ1 . . . λn .

Mas,
n¡ ¢−1 £ ¤o
det R = det I − ωD−1 L (1 − ω) I + ωD−1 U
¡ ¢−1 £ ¤
= det I − ωD−1 L det (1 − ω) I + ωD−1 U
n
= (1 − ω) ,

já que I − ωD−1 L é uma matriz triangular inferior com apenas 1 na diagonal principal e (1 − ω) I + ωD−1 U
é uma matriz triangular superior com apenas 1 − ω na diagonal principal. Logo
n
λ1 . . . λn = (1 − ω) .

Em particular, pelo menos um dos autovalores λj de R deve satisfazer

|λj | > |1 − ω| .

Mas, se o método SOR converge, devemos ter também |λ| < 1 para todo autovalor λ de R. Logo

|1 − ω| < 1,

donde
0 < ω < 2.
¥

3.14 Corolário. Se R é a matriz de iteração n × n para o método SOR, então


n
det R = (1 − ω) .

Em particular, diferente das matrizes de iteração dos métodos de Jacobi e de Gauss-Seidel (para a matriz de
discretização de cinco pontos), zero não é um autovalor para a matriz de iteração do método SOR se ω 6= 1
(para nenhuma matriz).
P
n
3.15 Teorema. Se A é uma matriz irredutı́vel, diagonalmente dominante tal que |aii | > |aij | para pelo
j=1
j6=i
menos alguma linha i, então o método SOR converge se 0 < ω 6 1.

Prova. A demonstração é análoga à do Teorema 3.11. A matriz de iteração do método SOR é


¡ ¢−1 £ ¤
R = I − ωD−1 L (1 − ω) I + ωD−1 U .

Suponha por absurdo que exista um autovalor λ de R tal que |λ| > 1; temos
¡ ¢ ³ n¡ ¢−1 £ ¤o´
det I − λ−1 R = det I − λ−1 I − ωD−1 L (1 − ω) I + ωD−1 U = 0.

Agora, observando que ¡ ¢


det I − ωD−1 L = 1
Rodney Josué Biezuner 67

porque I − ωD−1 L é uma matriz triangular inferior com apenas 1’s na diagonal principal, escrevemos
³ n¡ ¢−1 £ ¤o´
0 = det I − λ−1 I − ωD−1 L (1 − ω) I + ωD−1 U
¡ ¢ ³ n¡ ¢−1 £ ¤o´
= det I − ωD−1 L det I − λ−1 I − ωD−1 L (1 − ω) I + ωD−1 U
h¡ ¢³ n¡ ¢−1 £ ¤o´i
= det I − ωD−1 L I − λ−1 I − ωD−1 L (1 − ω) I + ωD−1 U
¡ £ ¤¢
= det I − ωD−1 L − λ−1 (1 − ω) I + ωD−1 U
©£ ¤ ª
= det 1 − λ−1 (1 − ω) I − ωD−1 L − λ−1 ωD−1 U .

Por outro lado, como vimos na demonstração do Teorema 3.11, a matriz

D−1 A = I − D−1 L − D−1 U

é irredutı́vel, diagonalmente dominante e estritamente dominante nas linhas onde A é, logo a matriz
£ ¤
S = 1 − λ−1 (1 − ω) I − ωD−1 L − λ−1 ωD−1 U

também satisfaz estas propriedades. De fato, S tem zeros nas mesmas posições que I − D−1 L − D−1 U , logo
a sua irredutibilidade não é afetada. Além disso, pela dominância diagonal de D−1 A, sabemos que se
¡ ¢
bij = D−1 L ij ,
¡ ¢
cij = D−1 U ij .

então
i−1
X n
X
1> |bij | + |cij | .
j=1 j=i+1

Para provar a dominância diagonal de S, observamos que os valores que S possui na diagonal principal são
1−ω λ+ω−1
1 − λ−1 (1 − ω) = 1 − = ,
λ λ
de modo que precisamos provar que
¯ ¯ i−1 n
¯λ + ω − 1¯ X ω X
¯ ¯>ω |b | + |cij |
¯ λ ¯ ij
|λ| j=i+1
j=1

se 0 < ω 6 1 e |λ| > 1. Provaremos que


¯ ¯
¯λ + ω − 1¯
¯ ¯ > ω,
¯ λ ¯
¯ ¯
¯λ + ω − 1¯
¯ ¯> ω .
¯ λ ¯ |λ|

Para isso, observe que como |λ| > 1 basta provar a primeira desigualdade, a qual por sua vez é equivalente a

|λ + ω − 1| > |λ| ω.

É fácil ver que esta desigualdade é válida quando λ ∈ R, pois

|λ + ω − 1| = λ + ω − 1 > λω porque λ − 1 > λω − ω = ω (λ − 1) .


Rodney Josué Biezuner 68

Para o caso geral em que λ ∈ C, fazemos cair no caso real escrevendo


2 2 2 2
|λ + ω − 1| = |λ − (1 − ω)| = |λ| − 2 (Re λ) (1 − ω) + (1 − ω)
2 2 2
> |λ| − 2 |λ| (1 − ω) + (1 − ω) = [|λ| − (1 − ω)]
2 2
= [|λ| + ω − 1] > |λ| ω 2 .

O resultado acima continua valendo com desigualdade estrita nas linhas onde a desigualdade é estrita. A
Proposição 2.16 implica então que S é invertı́vel, contradizendo det S = 0. ¥

3.16 Teorema. Seja A uma matriz simétrica positiva definida. Então o método SOR converge se 0 < ω < 2.

Prova. Usaremos o Teorema 3.8. Escrevendo A = D − L − U , temos Lt = U porque A é simétrica e as


entradas diagonais de D positivas porque A é positiva definida. Para o método SOR temos
1 1−ω
B= D−L e C= D + U,
ω ω
logo
1 1−ω 2−ω
Bt + C = D − Lt + D+U = D
ω ω ω
é uma matriz simétrica positiva definida se 0 < ω < 2. ¥
Na verdade, se as entradas diagonais de uma matriz simétrica são positivas, a condição de ser definida
positiva é equivalente à convergência do método SOR para 0 < ω < 2, como o próximo resultado mostra.

3.17 Teorema. Seja A uma matriz simétrica com entradas diagonais positivas. Então o método SOR
converge se e somente se A é positiva definida e 0 < ω < 2.

Prova. Assuma que A é positiva definida e que 0 < ω < 2. Seja


¡ ¢−1 £ ¤
R = I − ωD−1 L (1 − ω) I + ωD−1 U

a matriz de iteração do método SOR. Se λ é um autovalor de R e x um autovetor associado, temos Rx = λx,


donde £ ¤ ¡ ¢
(1 − ω) I + ωD−1 U x = λ I − ωD−1 L x.
Fazendo o produto interno canônico (hermitiano) de Cn de ambos os lados com o vetor x, segue que
­ ® ¡ ­ ®¢
(1 − ω) hx, xi + ω x, D−1 U x = λ hx, xi − ω x, D−1 Lx

Isolando λ, ­ ®
(1 − ω) hx, xi + ω x, D−1 U x
λ= . (3.45)
hx, xi − ω hx, D−1 Lxi
Como A é simétrica, o produto de matrizes simétricas D−1 A = I − D−1 U − D−1 L também é; como
D−1 U, D−1 L são respectivamente a parte estritamente triangular superior e estritamente triangular infe-
rior de uma matriz simétrica, temos
¡ −1 ¢t
D U = D−1 L.
Logo
­ ® D¡ ¢t E ­¡ ¢ ®
x, D−1 U x = D−1 U x, x = D−1 L x, x = hx, (D−1 L) xi,

e definindo ­ ¡ −1 ¢ ®
x, D L x
z= ,
hx, xi
Rodney Josué Biezuner 69

podemos escrever
(1 − ω) + ωz
λ= . (3.46)
1 − ωz
Os argumentos acima assumem que o denominador é não-nulo. E, de fato, temos
í ¡ ¢ ® ­ ¡ −1 ¢ ® ! ­ ¡ ¢ ®
1 1 x, D−1 L x x, D U x 1 x, D−1 L + D−1 U x
Re z = (z + z) = + =
2 2 hx, xi hx, xi 2 hx, xi
­ ¡ ¢ ® Ã ­ ¡ ¢ ® !
1 x, I − D−1 A x 1 x, D−1 A x
= = 1− .
2 hx, xi 2 hx, xi

e como A é positiva definida, D−1 A também é, o que implica


­ ¡ −1 ¢ ®
x, D A x
>0
hx, xi
donde
1
Re z <
.
2
de modo que a parte real do denominador 1 − ωz de λ é não-nula para 0 < ω < 2. Segue que
2 2
2 [(1 − ω) + ωz] [(1 − ω) + ωz] (1 − ω) + 2ω (1 − ω) Re z + ω 2 |z|
|λ| = λλ = = 2
(1 − ωz) (1 − ωz) 1 − 2ω Re z + ω 2 |z|
2
ω 2 − 2ω 2 Re z − 2ω + 4ω Re z + 1 − 2ω Re z + ω 2 |z|
= 2
1 − 2ω Re z + ω 2 |z|
ω (2 − ω) (1 − 2 Re z)
=1− 2 .
1 − 2ω Re z + ω 2 |z|
1
Como 0 < ω < 2 e Re z < , temos
2
ω (2 − ω) (1 − 2 Re z) > 0,
e concluı́mos que
|λ| < 1
para todo autovalor λ de R, logo o método SOR converge. A demonstração da recı́proca (assim como uma
demonstração alternativa, variacional, deste teorema) pode ser vista em [Young]. ¥
Usando o Teorema 3.15, concluı́mos que o método SOR converge para as matrizes de discretização obtidas
através dos esquemas de diferenças finitas do Capı́tulo 1 se 0 < ω 6 1. Isso permite apenas subrelaxamento
do método de Gauss-Seidel, o que em geral reduz a velocidade de convergência. Por outro lado, usando o
Teorema 3.16 ou o Teorema 3.17, concluı́mos que o método SOR converge para as matrizes de discretização
obtidas a partir da fórmula de três pontos unidimensional e a partir da fórmula de cinco pontos bidimensional
se 0 < ω < 2, já que estas são matrizes simétricas, positivas definidas (já as matrizes de discretização obtidas
através de coordenadas polares ou pelo esquema de Shortley-Weller não são simétricas, em geral, como
vimos).
Em seguida fazemos uma análise da velocidade de convergência do método SOR para a matriz de dis-
cretização da fórmula de cinco pontos, bem como obtemos o melhor valor do fator de relaxamento ω para
este caso.
3.18 Lema. Seja A a matriz de discretização obtida a partir da fórmula de três pontos unidimensional ou
a partir da fórmula de cinco pontos bidimensional com ∆x = ∆y. Se λ 6= 0 é um autovalor de RSOR ,
então existe um autovalor λJ de RJ tal que
1−ω−λ
λJ = . (3.47)
λ1/2 ω 2
Rodney Josué Biezuner 70

Reciprocamente, se λJ é um autovalor de RJ e λ ∈ C satisfaz a equação acima, então λ é um autovalor


de RSOR .

Prova. Argumentamos como na demonstração do Teorema 3.12. Para obter o raio espectral da matriz de
iteração RSOR , queremos encontrar os autovalores λ de RSOR :
¡ ¢−1 £ ¤
RSOR u = I − ωD−1 L (1 − ω) I + ωD−1 U u = λu,

ou seja, £ ¤ ¡ ¢
(1 − ω) I + ωD−1 U u = λ I − ωD−1 L u
No caso da matriz de discretização da fórmula de cinco pontos, isso significa encontrar λ tal que
ω ω ³ ω ω ´
(1 − ω) ui,j + ui,j+1 + ui+1,j = λ ui,j − ui,j−1 − ui−1,j
4 4 4 4
ou
1−ω−λ 1
ui,j = (ui,j+1 + ui+1,j + λui,j−1 + λui−1,j ) . (3.48)
ω 4
Fazendo a substituição
i+j
ui,j = λ 2 vi,j
i+j+1
e dividindo por µ 2 , segue que
1−ω−λ
vi−1,j + vi+1,j + vi,j−1 + vi,j+1 = 4vi,j
λ1/2 ω
e daı́ o resultado. ¥ √ ¡p ¢2
Resolvendo a equação (3.47) como uma equação quadrática em λ, vemos que as duas raı́zes λ± = λ±
podem ser escritas na forma
· q ¸2
1
λ± = −ωλJ ± ω 2 λ2J − 4 (ω − 1) . (3.49)
4
Denotaremos
Λω,λJ = max (|λ+ | , |λ− |) (3.50)
e por λJ = ρ (RJ ) o maior autovalor do método de Jacobi.

3.19 Proposição. Seja A a matriz de discretização obtida a partir da fórmula de três pontos unidimensional
ou a partir da fórmula de cinco pontos bidimensional com ∆x = ∆y. Então

ρ (RSOR,ω ) = Λω,λJ (3.51)

Prova. Por definição,


ρ (RSOR,ω ) = max Λω,λJ .
λJ

De (3.49) segue que


¯ q ¯2
1 ¯¯ 2 ¯
Λω,λJ = ¯ωλJ + ω λJ − 4 (ω − 1)¯¯ .
2
4
2
Se 0 < ω 6 1, ω 2 λJ − 4 (ω − 1) > 0 e Λω,λJ é uma função crescente de λJ , logo o máximo é atingido em λJ .
Se ω > 1, defina r
4 (ω − 1)
λc = .
ω2
Rodney Josué Biezuner 71

2 2
Se λJ > λc , ω 2 λJ − 4 (ω − 1) > 0 e segue a conclusão como no caso anterior. Se λJ 6 λc , então ω 2 λJ −
4 (ω − 1) 6 0 e q q
2 2
ω 2 λJ − 4 (ω − 1) = 4 (ω − 1) − ω 2 λJ i,

onde i = −1, logo
¯ q ¯2 ¯¯r h
¯
i ¯2
¯ 2 ¯ ¯ 2 ¯
Λω,λJ = ¯¯ωλJ + ω 2 λJ − 4 (ω − 1)¯¯ = ¯ ω 2 λ2J + 4 (ω − 1) − ω 2 λJ ¯
¯ ¯
= ω − 1,

e novamente Λω,λJ é uma função crescente de λJ . ¥


Defina
2
ωótimo = q . (3.52)
2
1 + 1 − λJ
Note que 1 < ωótimo < 2. Mostraremos que ωótimo é de fato o melhor valor para o fator de relaxamento no
método SOR. Antes precisamos do seguinte resultado:

3.20 Proposição. Seja A a matriz de discretização obtida a partir da fórmula de três pontos unidimensional
ou a partir da fórmula de cinco pontos bidimensional com ∆x = ∆y. Então
 µ q ¶2
 1 2
2
ρ (RSOR,ω ) = ωλJ + ω λJ − 4 (ω − 1) se 0 < ω 6 ωótimo , (3.53)
 4
ω−1 se ωótimo 6 ω < 2.

2
Prova. Temos ω 2 λJ − 4 (ω − 1) > 0 para 0 < ω < 2 se e somente se ω 6 ωótimo . De fato, as raı́zes de
2
f (ω) = ω 2 λJ − 4ω + 4 são q
2 µ q ¶
4 ± 4 1 − λJ 2 2
ω± = 2 = 2 1 ± 1 − λ J
2λJ λJ
de modo que a raiz positiva de f é maior que 2, logo para que f (ω) > 0 se 0 < ω < 2, devemos ter
³ 2
´
µ q ¶ 1 − 1 − λ
2 2 2 J 2
ω 6 2 1 − 1 − λJ = 2 q = q .
λJ λJ 1 + 1 − λ2 1 + 1 − λ
2
J J

O resultado segue então como na demonstração da proposição anterior. ¥

3.21 Teorema. Seja A a matriz de discretização obtida a partir da fórmula de três pontos unidimensional
ou a partir da fórmula de cinco pontos bidimensional com ∆x = ∆y. Então o fator de relaxamento
ótimo para o método SOR é dado por
2
ωótimo = π (3.54)
1 + sen
n
é o fator de relaxamento ótimo para o método SOR.
2
Prova. Se 0 < ω 6 ωótimo , então ω 2 λJ − 4 (ω − 1) > 0 e
q
µ q ¶ 2 2
d 2 λJ ω 2 λJ − 4 (ω − 1) + ωλJ − 2
2
ωλJ + ω λJ − 4 (ω − 1) = q .
dω 2
ω 2 λJ − 4 (ω − 1)
Rodney Josué Biezuner 72

2
Temos ωλJ − 2 < 0, porque 0 < ω < 2 e λJ < 1, e
¯ ¯ q
¯ 2 ¯ 2
¯ωλJ − 2¯ > λJ ω 2 λJ − 4 (ω − 1),

pois
¯ ¯2
¯ 2 ¯ 4 2 4 2 2 4 2
¯ωλJ − 2¯ = ω 2 λJ − 4λJ ω + 4 > ω 2 λJ − 4λJ ω + 4λJ > ω 2 λJ − 4λJ (ω − 1)
· q ¸2
2
= λJ ω 2 λJ − 4 (ω − 1) .

Isso implica µ q ¶
d 2
2
ωλJ + ω λJ − 4 (ω − 1) < 0,

logo ρ (RSOR,ω ) é decrescente de 0 até ωótimo . Para ωótimo 6 ω < 2, ρ (RSOR,ω ) = ω − 1 é claramente
crescente. Portanto, ρ (RSOR,ω ) atinge o seu mı́nimo em ωótimo .
Pelo Teorema 3.10, temos
π
λJ = cos ,
n
logo
2 2 2
ωótimo = q = r = π.
2 π 1 + sen
1 + 1 − λJ 1 + 1 − cos 2
n
n
¥
Para o quadrado unitário temos
2
ωótimo =
1 + sen (π∆x)
e conseqüentemente
2 1 − sen (π∆x)
ρ (RSOR,ω ) = −1= .
1 + sen (π∆x) 1 + sen (π∆x)
e usando
1−x ¡ ¢
= 1 − 2x + O x2 ,
1+x
¡ ¢
sen x = x + O x3 ,
se ∆x é pequeno podemos aproximar
1 − sen (π∆x) ¡ ¢
≈ 1 − 2π∆x + O ∆x2 .
1 + sen (π∆x)
Portanto, usando o valor ótimo de ω no método SOR, temos ρ (R) → 1 linearmente quando ∆x → 0, um
resultado muito melhor que o obtido nos métodos de Jacobi e de Gauss-Seidel. Para uma comparação mais
precisa, usando ¡ ¢
log (1 + x) = x + O ∆x2
temos que ¡ ¢
R∞ (RSOR ) = 2π∆x + O ∆x2 . (3.55)
Segue que
R∞ (RSOR ) 2π∆x 2
≈ 2 2 = .
R∞ (RGauss-Seidel ) π ∆x π∆x
Em particular, se ∆x = 0.025, temos ωótimo = 1. 8545 e R∞ (RSOR ) /R∞ (RGauss-Seidel ) = 25.5, isto é, o
método SOR é 25 vezes mais rápido que o método de Gauss-Seidel. Quanto mais refinada a malha, maior é
a diferença na velocidade de convergência entre os dois métodos.
Rodney Josué Biezuner 73

3.3.4 Convergência do Método de Jacobi Amortecido


3.22 Teorema. Se o método de Jacobi converge, então o método de Jacobi amortecido converge para

0 < ω 6 1.

Prova. Vamos escrever a matriz de iteração RJ,ω do método de Jacobi amortecido em função da matriz de
iteração do método de Jacobi RJ . Temos

RJ = D−1 (D − A)

de modo que
µ ¶−1 µ ¶ µ ¶ µ ¶
1 1 1 1
RJ,ω = D D−A = ωD−1 D−D+D−A = ωD−1 D − D + ωD−1 (D − A)
ω ω ω ω

donde
RJ,ω = (1 − ω) I + ωRJ . (3.56)
Em particular,
RJ v = λv
se e somente se
[RJ,ω − (1 − ω) I] v = ωλv.
Portanto, λJ é um autovalor de RJ se e somente se

λJ,ω = ωλJ + 1 − ω (3.57)

é um autovalor de RJ,ω . Logo, se todo autovalor de RJ satisfaz |λJ | < 1 (isto é, ρ (RJ ) < 1 equivalente ao
método de Jacobi convergir) e ω < 1, então
2 ¡ ¢
|λJ,ω | = (ωλJ + 1 − ω) ωλJ + 1 − ω
2 2
= ω 2 |λJ | + 2 Re λJ ω (1 − ω) + (1 − ω)
2 2
6 ω 2 |λJ | + 2 |λJ | ω (1 − ω) + (1 − ω)
2
= (ω |λJ | + 1 − ω)
< 1.

¥
Segue do Teorema 3.8 que o método de Jacobi amortecido converge para as matrizes de discretização do
Capı́tulo 1 se 0 < ω 6 1.

3.23 Corolário.
ρ (RJ,ω ) = ω [ρ (RJ ) − 1] + 1. (3.58)

Para o quadrado unitário temos


ρ (RJ,ω ) = ω [cos (π∆x) − 1] + 1. (3.59)
Usando
1 ¡ ¢
cos x = 1 − x2 + O x4 ,
2 ¡ ¢
log (1 + x) = x + O ∆x2 ,
Rodney Josué Biezuner 74

se ∆x é pequeno podemos aproximar


π2 ¡ ¢
ρ (RJ,ω ) ≈ 1 − ω ∆x2 + O ∆x4 ,
2
π2
R∞ (RJ,ω ) ≈ ω ∆x2 .
2
Vemos que a velocidade de convergência do método de Jacobi amortecido é da mesma ordem que a do método
de Jacobi, um pouco pior para valores de ω próximos de 1 e muito pior para valores de ω próximos de 0.

3.3.5 Resumo

Método ρ (R) R∞ (R)


π2 ¡ ¢
Jacobi cos (π∆x) ∆x2 + O ∆x4
2
¡ ¢
Gauss-Seidel cos2 (π∆x) π 2 ∆x2 + O ∆x4
¡ ¢ ¡ ¢
SOR ótimo 1 − 2π∆x + O ∆x2 2π∆x + O ∆x2

π2 ¡ ¢ π2 ¡ ¢
Jacobi amortecido 1−ω ∆x2 + O ∆x4 ω ∆x2 + O ∆x4
2 2

3.4 Método do Gradiente Conjugado


Nesta seção, A será sempre uma matriz real simétrica, positiva definida. Neste caso, a resolução do sistema
Ax = b é equivalente à resolução de um problema de minimização de um funcional quadrático:
3.24 Teorema. (Método Variacional para a Resolução de Sistemas Lineares) Seja A ∈ Mn (R) uma matriz
simétrica positiva definida e b ∈ Rn . Então a solução do sistema
Ax = b
é o único ponto x que minimiza o funcional quadrático
1 t
f (y) = y Ay − y t b. (3.60)
2
Prova: Uma matriz simétrica positiva definida é invertı́vel, logo existe uma única solução x para o sistema
Ax = b. Para provar o teorema, começamos observando que, como y t Ax ∈ R é um escalar, temos
¡ ¢t
y t Ax = y t Ax = xt At y = xt Ay.
Daı́,
1 t 1
f (y) − f (x) = y Ay − y t b − xt Ax + xt b
2 2
1 t 1
= y Ay − y Ax − xt Ax + xt Ax
t
2 2
1 t 1
= y Ay − y Ax + xt Ax
t
2 2
1 t 1 t 1 1
= y Ay − y Ax − xt Ay + xt Ax
2 2 2 2
1 t 1
= y A (y − x) − xt A (y − x)
2 2
Rodney Josué Biezuner 75

ou
1 t
f (y) − f (x) = (y − x) A (y − x) . (3.61)
2
Como A é positiva definida, segue que
t
(y − x) A (y − x) = hA (y − x) , (y − x)i > 0

e
t
(y − x) A (y − x) = 0
se e somente se y = x. Portanto,
f (y) > f (x)
para todo y 6= x e o mı́nimo de f ocorre em x. ¥
Em muitos problemas, o funcional f tem significado fı́sico, correspondente a um funcional de energia que
quando é minimizado corresponde a um estado de equilı́brio do sistema. Observe que definindo um produto
interno a partir da matriz simétrica positiva definida A da maneira usual por hv, wiA = v t Aw e considerando
1/2
a norma induzida kvkA = hv, viA , o funcional f pode ser escrito na forma

1
f (y) = hy, Ayi − hy, Axi (3.62)
2
ou
1 2
f (y) =
kykA − hy, xiA . (3.63)
2
Outra maneira de enxergar o resultado do teorema anterior é observar que o gradiente do funcional f é

∇f (y) = Ay − b. (3.64)

Se x é um ponto de mı́nimo temos ∇f (x) = 0, ou seja,

Ax = b.

Este método variacional é a base dos métodos iterativos de descida em geral, e do método do gradiente
conjugado em particular. A idéia é usar as idéias do cálculo diferencial para encontrar o mı́nimo do funcional
quadrático f .

3.4.1 Métodos de Descida


A filosofia dos métodos de descida é começar com um chute inicial x0 e gerar uma seqüência de iterados
x1 , x2 , . . . , xk , . . . que satisfazem ¡ ¢ ¡ ¢
f xk+1 6 f xk
ou, melhor ainda, ¡ ¢ ¡ ¢
f xk+1 < f xk
de tal modo que xk convirja para o minimizador ¡ de
¢ f . Em outras palavras, em um método de descida
buscamos encontrar uma seqüência minimizante xk que convirja para a solução do sistema.
O passo de xk para xk+1 envolve dois ingredientes: (1) uma direção de busca e (2) um avanço de
comprimento especificado na direção de busca. Uma direção de busca significa a escolha de um vetor pk que
indicará a direção que avançaremos de xk para xk+1 . O comprimento do avanço é equivalente à escolha de
um escalar αk multiplicando o vetor pk . Assim,

xk+1 = xk + αk pk .
Rodney Josué Biezuner 76

A escolha de αk é também chamada uma busca na reta, já que queremos escolher um ponto na reta
© k ª
x + αpk : α ∈ R

tal que ¡ ¢ ¡ ¢
f xk + αpk 6 f xk .
Idealmente, gostarı́amos de escolher αk de tal modo que
¡ ¢ ¡ ¢ ¡ ¢
f xk+1 = f xk + αk pk = min f xk + αpk
α∈R

Esta é chamada uma busca na reta exata. Para funcionais quadráticos, a busca na reta exata é trivial e
obtemos uma fórmula para o valor de αk , como veremos a seguir. Denotaremos o resı́duo em cada iteração
por
rk = b − Axk . (3.65)

3.25 Proposição. Seja αk ∈ R tal que


¡ ¢ ¡ ¢
f xk + αk pk = min f xk + αpk .
α∈R

Então ¡ k ¢t k­ k k®
p r p ,r
αk = t = k . (3.66)
k
(p ) Apk hp , Apk i

Prova: Considere o funcional ¡ ¢


g (α) = f xk + αpk .
g é um polinômio quadrático em α, pois
1¡ k ¢t ¡ ¢ ¡ ¢t
g (α) = x + αpk A xk + αpk − xk + αpk b
2
1 ¡ k ¢t ¡ ¢t α ¡ k ¢t k α ¡ k ¢t α2 ¡ k ¢t k ¡ ¢t
= x Axk − xk b + x Ap + p Axk + p Ap − α pk b
2 · 2 2 ¸ 2
¡ k¢ 1 ¡ k ¢t k 1 ¡ k ¢t k
¡ k ¢t α 2 ¡ k ¢t k
=f x +α p Ax + p Ax − p b + p Ap
2 2 2
¡ ¢ ¡ ¢t α 2 ¡ k ¢t k
= f xk − α pk Ark + p Ap ,
2
portanto o mı́nimo de g é atingido no vértice −B/2A da parábola Y = AX 2 + BX + C. ¥
¡ ¢t
Observe que αk = 0 se e somente se pk rk = 0, isto é, a direção de busca é ortogonal ao resı́duo. Como
gostarı́amos sempre que possı́vel de ter xk+1 6= xk , devemos sempre escolher
¡ ¢a direção
¡ ¢de busca de forma a
não ser ortogonal a rk . Se esta escolha é feita, então teremos sempre f xk+1 < f xk .

Exemplo 1. (Método de Gauss-Seidel) Considere o método de descida em que as primeiras n direções de


busca p1 , . . . , pn são os vetores e1 , . . . , en da base canônica de Rn , e isso é repetido a cada n iterações,
de modo que pk+n = ek para todo k = 1, . . . , n, com uma busca na reta exata executada em cada
iteração. Então cada grupo de n iterações corresponde a uma iteração do método de Gauss-Seidel.
Exemplo 2. (Método SOR) Usando as mesmas direções de busca do exemplo anterior, mas com xk+1 =
xk + ωαk pk , ω 6= 1, obtemos um método de descida em que as buscas nas retas são inexatas. Cada
grupo de n iterações corresponde a uma iteração do método SOR.
Rodney Josué Biezuner 77

3.4.2 Método da Descida Mais Acentuada


Do Cálculo Diferencial, sabemos que a direção em que a função cresce a uma taxa mais rápida a partir de
um ponto é a direção do gradiente neste ponto. Esta observação é a base da escolha da direção de busca no
método da descida mais acentuada. Em outras palavras, escolhemos
¡ ¢
pk = −∇f xk = b − Axk

ou
pk = rk . (3.67)
Buscar na direção da descida mais acentuada é uma idéia natural, mas que na prática não funciona sem
modificações. De fato, em alguns casos o método é de velocidade comparável à do método de Jacobi, como
na matriz de discretização da fórmula de cinco pontos aplicada ao problema descrito na primeira seção deste
capı́tulo [Watkins]:

∆x = 0.1 ∆x = 0.05 ∆x = 0.025


Jacobi 299 1090 3908
Descida Mais Acentuada 304 1114 4010

De fato, como as iterações do método de descida mais acentuada são bem mais custosas que as do método
de Jacobi, o primeiro é muito pior que este último.
Para entender melhor o método da descida mais acentuada, porque ele pode ser lento e as modificações que
vamos fazer para torná-lo mais rápido levando ao método do gradiente conjugado, vamos entender o processo
do ponto de vista geométrico. Como vimos na demonstração do Teorema 3.24, o funcional quadrático f é
da forma
1 t
f (y) = (y − x) A (y − x) + c (3.68)
2
onde c = f (x) = 12 xt Ax − xt b é uma constante. Já que A é uma matriz simétrica, existe uma matriz
ortogonal P tal que P t AP é uma matriz diagonal D , cujos valores na diagonal principal são exatamente os
autovalores positivos de A. Nas coordenadas

z = P t (y − x) ,

o funcional f tem a forma


n
1 1X
f (z) = z t Dz + c = λi zi2 + c. (3.69)
2 2 i=1

As curvas de nı́vel do funcional f neste sistema de coordenadas são elipses (em R2 , elipsóides em R3 e
hiperelipsóides em Rn ) centradas na origem com eixos paralelos aos eixos coordenados e f (0) = c é nı́vel
mı́nimo de f ; elipses correspondentes a menores valores de f estão dentro de elipses correspondentes a
maiores valores de f . Como P é uma aplicação ortogonal, as curvas de nı́vel de f no sistema de coordenadas
original também são elipses, centradas em x, e uma reta de um ponto y até o ponto x corta elipses de nı́veis
cada vez menores até chegar ao mı́nimo da função f em x, centro de todas as elipses. O vetor gradiente é
perpendicular às curvas de nı́vel, logo é perpendicular às elipses. Seguir a direção de descida mais acentuada
equivale a cortar a elipse que contém xk ortogonalmente na direção do interior da elipse até encontrar um
ponto xk+1 situado em uma elipse que a reta tangencie, pois a partir daı́ a reta irá na direção de elipses com
nı́veis maiores, portanto este é o ponto da reta onde f atinge o seu mı́nimo. Em particular, vemos que a
próxima direção pk+1 é ortogonal à direção anterior pk , tangente a esta elipse. Em geral, a direção de descida
mais acentuada não é a direção de x (quando bastaria uma iteração para atingir a solução exata) a não ser
que A seja um múltiplo escalar da identidade, de modo que todos os autovalores de A são iguais e as elipses
são cı́rculos. Por outro lado, se os autovalores de A têm valores muito diferentes uns dos outros, com alguns
muito pequenos e alguns muito grandes, as elipses serão bastante excêntricas e, dependendo do chute inicial,
Rodney Josué Biezuner 78

a convergência pode ser muito lenta (matrizes com estas propriedades são chamadas mal-condicionadas; para
que o método de descida acentuada seja lento, a matriz A não precisa ser muito mal-condicionada).
Como vimos na seção anterior, os algoritmos de Gauss-Seidel e SOR podem ser encarados como algoritmos
de descida. A discussão no parágrafo anterior também pode ser usada para entender a relativa lentidão destes
algoritmos.

3.4.3 Método do Gradiente Conjugado


Todos os métodos iterativos que vimos neste capı́tulo são limitados pela sua falta de memória, no sentido de
que apenas informação sobre xk é usada para obter xk+1 . Toda a informação sobre as iterações anteriores é
deletada. O método do gradiente conjugado é uma variação simples do método da descida mais acentuada
que funciona melhor porque a informação obtida através das iterações anteriores é utilizada.
Para entender brevemente como isso funciona, observe que depois de j iterações xk+1 = xk + αk pk de
um método de descida temos
xj = x0 + α0 p0 + α1 p1 + . . . + αj−1 pj−1 ,
© ª
de modo que xj está no subespaço afim gerado pelo chute inicial x0 e pelos vetores p0 , p1 , . . . , pj−1 .
Enquanto o método da descida mais acentuada minimiza o funcional de energia ­ f apenas ao ®longo das j
retas xk + αk pk , cuja união constitui apenas um pequeno subconjunto­de x0 + p0 , p1 ,®. . . , pj−1 , o método
do gradiente conjugado minimiza f sobre todo o subespaço afim x0 + p0 , p1 , . . . , pj−1 .
Para definir as direções de busca do método do gradiente conjugado (que é, antes de mais nada, um
método de descida), lembramos que o funcional f foi escrito na forma
1 2
f (y) = kykA − hy, xiA .
2
Defina o erro
e = x − y. (3.70)
Pela regra do paralelogramo, temos
2 2 2 2
kx + ykA + kx − ykA = 2 kxkA + 2 kykA ,
donde
2 2 2 2 2
2 kykA = kx − ykA + kxkA + 2 hy, xiA + kykA − 2 kxkA
2 2 2
= kx − ykA + 2 hy, xiA − kxkA + kykA ,
ou
2 2 2
kykA − 2 hy, xiA = kx − ykA − kxkA .
Logo, podemos escrever
1 2 1 2
f (y) =
kekA − kxkA . (3.71)
2 2
Conseqüentemente, minimizar o funcional f é equivalente a minimizar a A-norma do erro.
Agora, em um método de descida, depois de j iterações temos:
¡ ¢
ej = x − xj = x − x0 − α0 p0 + α1 p1 + . . . + αj−1 pj−1
¡ ¢
= e0 − α0 p0 + α1 p1 + . . . + αj−1 pj−1 .
° °2
Logo, minimizar °ej °A é equivalente a minimizar
° 0 ¡ ¢°
°e − α0 p0 + α1 p1 + . . . + αj−1 pj−1 ° ,
A
­ ®
o que por sua vez é equivalente a encontrar a melhor aproximação do vetor e0 no subespaço Wj = p0 , p1 , . . . , pj−1 .
Esta é dada pelo lema da melhor aproximação:
Rodney Josué Biezuner 79

3.26 Proposição. Sejam A ∈ Mn (R) uma matriz simétrica positiva definida, v ∈ Rn e W um subsespaço
de Rn . Então existe um único w ∈ W tal que

kv − wkA = min kv − zkA .


z∈W

O vetor w é caracterizado pela condição v − w ⊥A W .


° °
Segue deste resultado que °ej °A é minimizado quando escolhemos p = α0 p0 + α1 p1 + . . . + αj−1 pj−1 ∈ Wj
tal que ej = e0 − p satisfaz
ej ⊥A pi para i = 1, . . . , j − 1. (3.72)

Definição. Dois vetores y, z que são ortogonais com respeito ao produto interno h·, ·iA , isto é, tais que

hy, ziA = 0

são chamados conjugados.

Nosso objetivo então é desenvolver um método em que o erro a cada passo é conjugado com todas as direções
de busca anteriores. O próximo resultado, que é basicamente uma reafirmação da Proposição 3.25, mostra
que em qualquer método de descida em que a busca na reta é exata satisfaz automaticamente ej ⊥A pj−1 ,
isto é, (3.72) é válido para a última iteração (o erro da iteração presente é A-ortogonal à direção de busca
da iteração anterior).

3.27 Proposição. Seja xk+1 = xk + αk pk obtido através de uma busca na reta exata. Então

rk+1 ⊥ pk

e
ek+1 ⊥A pk .

Prova: Temos
b − Axk+1 = b − Axk − αk Apk ,
de modo que a seqüência dos resı́duos é dada pela fórmula

rk+1 = rk − αk Apk . (3.73)

Logo, ­ k k®
­ k+1 k
® ­ ® ­ ® ­ ® p ,r ­ k k®
r ,p = rk+1 , pk − αk Apk , pk = rk , pk − k k
Ap , p = 0.
hp , Ap i
Além disso, como
Aek+1 = rk+1 ,
segue que ­ k+1 k ® ­ ® ­ ®
e , p A = Aek+1 , pk = rk+1 , pk = 0.
¥
O significado geométrico deste resultado é que o mı́nimo do funcional f na reta xk + αk pk ocorre quando a
derivada direcional de f na direção de busca é zero, ou seja,
∂f ¡ k+1 ¢ ­ ¡ ¢ ® ­ ®
0= x = ∇f xk+1 , pk = rk+1 , pk .
∂pk
De acordo com a Proposição 3.27, depois do primeiro passo temos e1 ⊥A p0 . Para manter os erros
subseqüentes conjugados a p0 , como

ek+1 = x − xk+1 = x − xk − αk pk
Rodney Josué Biezuner 80

ou
ek+1 = ek − αk pk , (3.74)
0 1 0
basta escolher as direções de busca subseqüentes conjugadas a p . Se escolhemos p conjugado a p , obtemos
x2 para o qual o erro satisfaz e2 ⊥A p1 ; como p1 ⊥A p0 , segue de (3.74) que e2 ⊥A p0 também. Para manter
os erros subseqüentes conjugados a p0 e p1 , basta escolher as direções de busca subseqüentes conjugadas a
p0 e p1 . Assim, vemos que para obter a condição (3.72) basta escolher as direções de busca de tal forma que

pi ⊥A pj para todos i 6= j.

Um método com estas caracterı́sticas é chamado um método de direções conjugadas. Estes resultados
são resumidos na proposição a seguir:

3.28 Teorema. Se um método emprega direções de busca conjugadas e performa buscas na reta exatas,
então
ej ⊥A pi para i = 1, . . . , j − 1,
para todo j. Conseqüentemente ° j° ° °
°e ° = min °e0 − p° ,
A p∈Wj A
­ ®
onde Wj = p0 , p1 , . . . , pj−1 .

Prova: A demonstração é por indução. Para j = 1, temos e1 ⊥A p0 pela Proposição 3.27 porque a busca
na reta é exata. Em seguida, assuma ej ⊥A pi para i = 1, . . . , j − 1; queremos mostrar que ej+1 ⊥A pi
para i = 1, . . . , j. Como
ej+1 = ej − αj pj ,
para i = 1, . . . , j − 1 temos
­ j+1 i ® ­ ® ­ ® ­ ®
e , p A = ej − αj pj , pi A = ej , pi A − αj pj , pi A = 0 − 0 = 0

porque as direções de busca são conjugadas. ej+1 ⊥A pj segue novamente da Proposição 3.27. ¥
Quando a direção inicial é dada pelo vetor gradiente de f , como na primeira iteração do método da descida
mais acentuada, obtemos o método do gradiente conjugado. As direções subseqüentes são escolhidas
através de A-ortogonalizar o resı́duo (ou vetor gradiente de f , que é a direção de busca em cada iteração
do método da descida mais acentuada) com todas as direções de busca anteriores, para isso utilizando o
algoritmo de Gram-Schmidt. Assim, dado um chute inicial p0 , a primeira direção é
¡ ¢
p0 = −∇f x0 = b − Ax0 = r0

ou seja, a direção inicial é o primeiro resı́duo:

p0 = r0 . (3.75)

Depois de k passos com direções de busca conjugadas p0 , . . . , pk , escolhemos


k
X
pk+1 = rk+1 − cki pi (3.76)
i=0

onde os cki são dados pelo algoritmo de Gram-Schmidt:


­ k+1 i ®
r ,p A
cki = . (3.77)
hp , pi iA
i

de forma que pk+1 ⊥A pi para todos i = 1, . . . , k. Felizmente, como veremos a seguir depois de algum trabalho
preliminar (Corolário 3.32), cki = 0 para todo i exceto i = k, o que torna necessário que apenas a direção
Rodney Josué Biezuner 81

de busca mais recente pk seja armazenada na memória do computador, o que garante que a implementação
do gradiente conjugado é eficiente:
­ k+1 k ® ­ k+1 ®
k+1 k+1
r ,p A k k+1 r , Apk k
p =r − p =r − p (3.78)
hpk , pk iA hpk , Apk i

ou, definindo ­ k+1 ®


r , Apk
βk = − , (3.79)
hpk , Apk i
temos que
pk+1 = rk+1 + βk pk . (3.80)
Esta é a modificação do método do gradiente conjugado em relação ao método da descida mais acentuada,
no qual tomamos pk+1 = rk+1 .
Podemos obter uma expressão mais simples para o escalar βk , em função apenas dos resı́duos. Com
efeito, temos ­ k+1 k+1 ® ­ k+1 k ® ­ ® ­ ®
r ,r = r , r − αk rk+1 , Apk = −αk rk+1 , Apk
porque os resı́duos obtidos através do método do gradiente conjugado são mutualmente ortogonais (veja
Corolário 3.31), logo ­ k+1 ® ­ k+1 k+1 ®
r , Apk r ,r
β=− = .
hpk , Apk i αk hpk , Apk i
Temos ­ k k® ­ k ® ­ k k®
p ,r r + βpk−1 , rk r ,r
αk = k = = k ,
hp , Apk i hpk , Apk i hp , Apk i
­ ®
porque pk−1 , rk = 0 pela Proposição 3.27, logo
­ k k®
r ,r
αk = k . (3.81)
hp , Apk i

Portanto ­ k+1 k+1 ®


r ,r
β= . (3.82)
hrk , rk i
Podemos obter um algoritmo ainda mais eficiente para o método do gradiente conjugado se observarmos que
para calcular o resı́duo rk+1 = b − Axk+1 em cada iteração não é necessário calcular Axk+1 explicitamente;
de fato, como vimos na demonstração da Proposição 3.27, temos rk+1 = rk − αk Apk . Assim, um algoritmo
Rodney Josué Biezuner 82

eficiente para o método do gradiente conjugado poderia ser escrito da seguinte forma:

initialize x;
set b;
r ← b − Ax;
rScalarR ← hr, ri ;
set M ; //maximumNumberOfIterations
numberOf Iterations = 0;
do
 until numberOf Iterations > M
Ap ← Ap;
 pScalarAp ← hp, Api ;

 α ← rScalarR/pScalarAp;

 x ← x + αp;

 r ← r − αAp;

 rN ewScalarRN ew ← hr, ri ;

 β ← rN ewScalarRN ew/rScalarR;

 p ← r + βp;

 rScalarR ← rN ewScalarRN ew;
numberOf Iterations + +;

3.5 Convergência do Método do Gradiente Conjugado


Vamos agora provar uma série de resultados com o objetivo principal de demonstrar o fato mencionado
acima que cki = 0 para todo i = 1, . . . , k − 1 e também que o método do gradiente conjugado converge em
aritmética exata em precisas n iterações para uma matriz de tamanho n.

Definição.
­ Dada uma ®matriz A ∈ Mn (C) e um vetor v ∈ Cn , o espaço de Krylov Kj (A, v) é o subespaço
v, Av, . . . , Aj−1 v .
3.29 Teorema. Depois de j iterações do algoritmo do gradiente conjugado (com rk 6= 0 em cada iteração),
temos ­ 0 1 ® ­ ® ¡ ¢
p , p , . . . , pj−1 = r0 , r1 , . . . , rj−1 = Kj A, r0 .

Prova: A demonstração é por indução. O resultado é trivial para j = 0, pois p0 = r0 . Assuma o resultado
válido para j − 1. Em primeiro lugar, mostraremos que
­ 0 1 ® ¡ ¢
r , r , . . . , rj ⊂ Kj+1 A, r0 . (3.83)
¡ ¢
Em vista da ¡ hipótese
¢ de indução,
¡ ¢ basta mostrar que rj ∈ Kj+1 A, r0 . Como rj = rj−1 −¡αj−1 Ap ¢
j−1
e
j−1 0 0 j−1 0
r ∈ Kj A, r ⊂ Kj+1 A, r por hipótese¡ de indução, ¢ basta provar que Ap ∈ K j+1 A, r . Mas,
também por hipótese de indução, pj−1 ∈ Kj+1 A, r0 , logo
¡ ¢ ­ ® ­ ® ¡ ¢
Apj−1 ∈ Kj A, Ar0 = Ar0 , A2 r0 , . . . , Aj r0 ⊂ r0 , Ar0 , A2 r0 , . . . , Aj r0 = Kj+1 A, r0 .

Em seguida, mostraremos que


­ 0 1 ® ­ ®
p , p , . . . , pj ⊂ r0 , r1 , . . . , rj . (3.84)
­ ®
Por hipótese de indução, basta provar que pj ∈ r0 , r1 , . . . , rj . Isso segue de (3.76) e da hipótese de indução.
Até aqui provamos que
­ 0 1 ® ­ ® ¡ ¢
p , p , . . . , pj ⊂ r0 , r1 , . . . , rj ⊂ Kj+1 A, r0 . (3.85)
Rodney Josué Biezuner 83

Para provar que eles são iguais, basta mostrar que eles têm a mesma dimensão. Isso decorre de
­ ®
dim r0 , r1 , . . . , rj 6 j + 1,
¡ ¢
dim Kj+1 A, r0 6 j + 1
e ­ ®
dim p0 , p1 , . . . , pj = j + 1,
o último porque os vetores p0 , p1 , . . . , pj são vetores não-nulos A-ortogonais. ¥
3.30 Corolário. Depois de j iterações do algoritmo do gradiente conjugado, temos
¡ ¢
ej ⊥A Kj A, r0
para todo j.
Prova: Segue imediatamente do teorema anterior e do Teorema 3.28. ¥
3.31 Corolário. Depois de j iterações do algoritmo do gradiente conjugado, temos
¡ ¢
rj ⊥ Kj A, r0
para todo j.
Prova: Em vista do Teorema 3.29, basta provar que rj ⊥ p0 , p1 , . . . , pj−1 para todo j. Como Aej+1 = rj+1 ,
­ j+1 i ® ­ j+1 i ® ­ j+1 i ®
r , p = Ae , p = e , p A = 0
para todo i = 1, . . . , j − 1, como vimos na demonstração do Teorema 3.28. ¥
3.32 Corolário. cki = 0 para todo i = 1, . . . , k − 1.
Prova: Temos que provar que ­ k+1 i ® ­ ®
r , p A = rk+1 , Api = 0
­ ® ­ ® ¡ ¢
para todos i = 1, . . . , k − 1. Pelo Teorema 3.29, pi ∈ p0 , p1 , . . . , pi = r0 , Ar0 , . . . , Ai r = Ki+1 A, r0 ,
logo ­ ® ¡ ¢ ¡ ¢
Api ∈ Ar0 , A2 r0 , . . . , Ai+1 r ⊂ Ki+2 A, r0 ⊂ Kk+1 A, r0
e o resultado segue do corolário anterior. ¥
3.33 Teorema. Seja A uma matriz simétrica positiva definida n×n. Então o método do gradiente conjugado
converge em n iterações.
Prova: Se fizemos n − 1 iterações em obter x, pelo Corolário 3.32 os vetores r0 , r1 , . . . , rn−1 formam uma
base ortogonal
­ para Rn . Depois ® den mais uma iteração, de acordo com este mesmo corolário o resı́duo rn
n 0 1 n−1 n
satisfaz r ⊥ r , r , . . . , r = R , logo r = 0. ¥
De fato, na maioria das aplicações o método do gradiente conjugado converge ainda mais rápido, se apenas
uma boa aproximação é requerida. Defina o número de condição de uma matriz simétrica positiva definida
por
max {λ : λ é um autovalor de A}
κ (A) = ; (3.86)
min {λ : λ é um autovalor de A}
assim, quanto maior o número de condição de uma matriz, ela é mais mal-condicionada e a convergência
de métodos de descida é mais vagarosa. Pode-se provar a seguinte estimativa de erro para o método do
gradiente conjugado (veja [Strikwerda]):
Ãp !k
° k° ° 0° κ (A) − 1
°e ° 6 2 °e ° p . (3.87)
A A
κ (A) + 1
Rodney Josué Biezuner 84

Esta estimativa é uma estimativa grosseira, mas mostra que o método do gradiente conjugado converge
mais rapidamente para matrizes bem-condicionadas (κ (A) ∼ 1). Uma comparação entre a velocidade de
convergência dos dois métodos para a matriz de discretização da fórmula de cinco pontos aplicada ao problema
descrito na primeira seção deste capı́tulo, desta vez com o tamanho das matrizes indicado na linha superior
da tabela, é dada a seguir [Watkins].

n = 81 n = 361 n = 1521
Descida Mais Acentuada 304 1114 4010
Gradiente Conjugado 29 60 118

No caso desta matriz de discretização no quadrado unitário temos

(n − 1) π
sen2 π π∆x 4
κ (A) = 2n = cot2 = cot2 ≈ 2 2
π 2n 2 π ∆x
sen2
2n
de modo que p
κ (A) − 1 1 − π∆x/2
p ≈ ≈ 1 − π∆x,
κ (A) + 1 1 + π∆x/2
o que dá uma velocidade de convergência para o método do gradiente conjugado duas vezes maior que a
do método SOR com o fator de relaxamento ótimo. No entanto, deve-se ter em mente que enquanto que a
taxa de covergência que obtivemos para o método SOR é precisa, a estimativa de erro (3.87) para o método
do gradiente conjugado é apenas um limitante superior grosseiro (veja [Watkins] para algumas estimativas
melhoradas).
Capı́tulo 4

Métodos Multigrid

Neste capı́tulo consideraremos o método multigrid, que é o método mais rápido para resolver equações
elı́pticas em geral. Embora o método possa ser empregado em malhas de elementos finitos e volumes fini-
tos também, neste capı́tulo consideraremos o seu emprego apenas em malhas de diferenças finitas para a
equação de Poisson no quadrado. A tabela a seguir (adaptada de [TOS]) compara o custo de processamento
em uma máquina serial de alguns dos métodos mais populares para resolver sistemas lineares que surgem na
discretização
¡ do
¢ problema de Poisson (à exceção do método de eliminação gaussiana cujo custo de armazena-
mento é O n2 , todos os demais métodos tem custo de armazenamento O (n)). Como estamos comparando
métodos diretos (eliminação gaussiana e transformada de Fourier rápida (FFT) ) com métodos iterativos
(todos os demais), assumimos um único critério de parada para os vários métodos iterativos; se o critério de
parada for escolhido da ordem do erro de discretização da malha, um fator O (log n) deve ser multiplicado
para todos os métodos iterativos, à exceção do multigrid completo.
2
Método número de operações
¡ 3 ¢ (2D; n = N )
Eliminação Gaussiana O ¡n ¢
Jacobi O ¡ n2 ¢
Gauss-Seidel O¡ n2 ¢
SOR O ¡n3/2 ¢
Gradiente Conjugado O n3/2
FFT O (n log n)
Multigrid iterativo O (n)
Multigrid completo O (n)

A idéia do método multigrid é baseada em dois princı́pios: suavização do erro e a sua correção em
um grid mais grosseiro (menos refinado). Estes princı́pios serão explicados em detalhes nas próximas
seções.
Em linhas gerais, a idéia básica é eliminar os componentes de alta freqüência do erro em uma malha
refinada. Para que isso ocorra, é necessário que estes componentes de alta freqüência correspondam aos
menores autovalores da matriz de iteração porque, como vimos na Seção 3.2.2, estes são eliminados rapi-
damente pelos métodos iterativos lineares (a velocidade de convergência de cada método é dada pelo raio
espectral da matriz de iteração, que corresponde ao valor absoluto do maior autovalor |λ1 | < 1, enquanto
que as componentes do erro correspondentes aos menores autovalores λj convergem para zero muito mais
rapidamente (|λj /λ1 | ¿ 1); isso significa que este método iterativo suaviza o erro, pois quanto maior a
influência das componentes de maior freqüência (maior oscilação), menos suave é a função. Aqui é útil fazer
uma analogia com a série de Fourier: é exatamente a presença de componentes de oscilação arbitrariamente
maior que permite que a série convirja para uma função não diferenciável, ou mesmo descontı́nua; se a série
for truncada a qualquer momento o resultado é sempre uma função suave, pois é a combinação linear finita
de autofunções suaves. Esta visualização também permanece verdade para funções discretizadas em mal-

85
Rodney Josué Biezuner 86

has de diferenças finitas escritas como uma combinação linear das autofunções da matriz de iteração nesta
malha: mesmo que o número de componentes da função seja finito, porque a malha é discreta a presença de
componentes de alta oscilação dão origem a um gráfico com um aspecto escarpado, não suave.
Assim, como o nosso objetivo é eliminar apenas as componentes de alta freqüência do erro, e não todo o
erro, poucas iterações do método iterativo são necessárias nesta malha refinada, onde o custo computacional é
alto (malhas muito refinadas significa que elas possuem muitos pontos, o que por sua vez implica em matrizes
de discretização muito grandes). Ocorre que algumas autofunções de freqüência baixa em uma malha mais
refinada correspondem a autofunções de freqüência alta em uma malha mais grosseira (como veremos). Uma
vez tendo eliminado as componentes de alta freqüência do erro na malha mais refinada, tendo deixado as
componentes de baixa freqüência praticamente intocadas, transferimos o problema para uma malha mais
grosseira, cujos componentes de alta freqüência do erro correspondem a alguns dos componentes de baixa
freqüência do erro na malha mais refinada anterior, que não puderam ser eliminados com as poucas iterações
do método iterativo permitidas na malha mais refinada. Com poucas iterações do método iterativo nesta
malha mais grosseira, estes erros também são rapidamente eliminados, a um custo computacional mais baixo
do que se tivéssemos tentado eliminá-los ainda na malha mais refinada. Este processo é a correção do erro
em uma malha mais grosseira. Ele é repetido em malhas cada vez mais grosseiras até que todo o erro é
eliminado, a um custo computacional muito mais baixo do que se tivéssemos trabalhado sempre na malha
mais refinada original.

4.1 A Malha de Multigrid


A discretização uniforme do problema de Poisson
½
−∆u = f em Ω,
u=0 sobre ∂Ω,
2
onde Ω = (0, 1) ⊂ R2 é o quadrado unitário, será denotada por
½
−∆h uh = fh em Ωh ,
(4.1)
uh = 0 sobre ∂Ωh ,

onde uh como usual denota a solução do problema discretizado (aproximação da solução exata), fh a dis-
cretização da função f em Ωh ,
1
h= , (4.2)
n
Ωh = {(x, y) ∈ Ω : (x, y) = (ih, jh) , 1 6 i, j 6 n − 1} ,
∂Ωh = {(x, y) ∈ ∂Ω : (x, y) = (ih, jh) , i = 0 ou i = n e 0 6 j 6 n; j = 0 ou j = n e 0 6 i 6 n}
e  
−1
1 
−∆h uh = 2 −1 4 −1  (4.3)
h
−1
ou, em outras palavras,

−uh (xi−1 , yj ) − uh (xi+1 , yj ) + 4uh (xi , yj ) − uh (xi , yj−1 ) − uh (xi , yj+1 )


−∆h uh = ,
h2
com (xi , yj ) = (ih, jh), é o operador de discretização dado pela fórmula dos cinco pontos. Denotaremos
usualmente a solução aproximada uh na iteração k (ou seja, uma aproximação da solução discretizada, de
acordo com o método iterativo utilizado) por
umh (4.4)
Rodney Josué Biezuner 87

de modo que o erro do método iterativo na iteração m é dado por

em m
h (xi , yj ) = uh (xi , yj ) − uh (xi , yj ) . (4.5)

Em geral, tomaremos n par, ou mesmo n = 2p para algum p. Assim, uma malha Ωh é mais refinada que
uma malha Ω2h (esta é mais grosseira que a primeira). Temos uma seqüência de malhas progressivamente
mais grosseiras:
Ωh ⊂ Ω2h ⊂ Ω4h ⊂ . . . ⊂ Ω2p h = Ω1 ,
onde Ω1 possui apenas uma célula.

4.2 Freqüências Altas e Baixas


Para analizar as propriedades de suavização de um método iterativo de maneira rigorosa, precisamos dis-
tingüir de maneira precisa entre as freqüências baixas e altas. Estas devem ser definidas de acordo com a
malha usada.
As autofunções dos métodos iterativos lineares considerados no capı́tulo anterior são exatamente as
autofunções do laplaciano discretizado −∆h na malha discretizada Ωh , dadas por

ϕkl
h (x, y) = sen kπx sen lπy, 1 6 k, l 6 n − 1 (4.6)

onde x, y denotam as variáveis discretizadas (isto é, x = ih e y = jh para 0 6 i, j 6 n). Assim, o erro na
m-ésima iteração pode ser escrito na forma
n−1
X n−1
X
em
h (x, y) =
m kl
αk,l ϕh (x, y) = m
αk,l sen kπx sen lπy. (4.7)
k,l=1 k,l=1
¯ ¯
¯ m¯
O erro ser suavizado significa que após algumas poucas iterações temos ¯αk,l ¯ muito pequeno para k, l grandes,
isto é, para
ϕkl
h (x, y) = sen kπx sen lπy de alta freqüência,
¯ ¯
¯ m¯
enquanto que o valor de ¯αk,l ¯ para k, l pequenos, isto é, para

ϕkl
h (x, y) = sen kπx sen lπy de baixa freqüência,

pode ter mudado muito pouco. Como o fato de k, l serem grandes ou pequenos é definido relativamente de
acordo com o valor de n (valores de k, l próximos de n são considerados grandes, enquanto que valores de k, l
distantes de n são considerados pequenos), segue que autofunções de baixa freqüência em uma malha mais
refinada (n maior) podem ser autofunções de alta freqüência em uma malha mais grosseira (n relativamente
pequeno). Para propósitos de análise, vamos dar uma definição precisa a este conceito:

Definição. Para 1 6 k, l 6 n − 1, dizemos que ϕkl


h é uma autofunção (ou componente) de
n
baixa freqüência se max (k, l) < ,
2
n
alta freqüência se 6 max (k, l) < n.
2
Além disso, se considerarmos especialmente a passagem da malha mais refinada Ωh para a malha mais
grosseira Ω2h com o dobro do espaçamento de malha, apenas as autofunções de freqüências mais baixas em
Ωh são visı́veis em Ω2h , pois todas as autofunções de freqüência alta em Ωh coincidem com as autofunções
de freqüência baixa em Ω2h ou desaparecem em Ω2h . De fato, como

ϕk,l n−k,l
h (x, y) = −ϕh (x, y) = −ϕk,n−l
h (x, y) = ϕn−k,n−l
h (x, y) para (x, y) ∈ Ω2h , (4.8)
Rodney Josué Biezuner 88

estas quatro autofunções não podem ser distingüidas umas das outras em Ω2h . Além disso, se k = n/2 ou
l = n/2, temos
ϕk,l
h (x, y) = 0 para (x, y) ∈ Ω2h . (4.9)
Para provar estas afirmações, escrevemos, por exemplo,
µ ¶ µ ¶ µ ¶ µ ¶
n−k,l 2i 2j 2i 2j
ϕh (i (2h) , j (2h)) = sen (n − k) π sen lπ = sen −kπ + 2iπ sen lπ
n n n n
µ ¶ µ ¶
2i 2j
= − sen kπ sen lπ = −ϕk,l
h (i (2h) , j (2h))
n n
e µ ¶ µ ¶ µ ¶
n/2,l n/2,l 2i 2j n 2i 2j 2jlπy
ϕh (i (2h) , j (2h)) = ϕh , = sen π sen lπ = sen iπ sen = 0.
n n 2 n n n
Assim, podemos decompor o erro em duas somas, uma representando os componentes de baixa freqüência
e a outras os componentes de alta freqüência:
n/2−1 n−1
X X
em
h (x, y) =
m kl
αk,l ϕh (x, y) + m kl
αk,l ϕh (x, y) (4.10)
k,l=1 max(k,l)> n
2
Xbaixa Xalta
m kl m kl
= αk,l ϕh (x, y) + αk,l ϕh (x, y) . (4.11)

4.3 Suavização do Erro


Os dois métodos iterativos clássicos, o método de Jacobi amortecido e o método de Gauss-Seidel (incluindo o
método SOR) são métodos iterativos lineares suavizadores de erro. Como já vimos acima, isso significa apenas
que o erro torna-se mais suave com poucas iterações, mesmo que não fique necessariamente menor (em outras
palavras, aqui a velocidade de convergência não é o fator principal). Componentes de alta freqüência do erro
são eliminadas rapidamente, em comparação com as componentes de baixa freqüência. As propriedades de
suavização de cada um dos métodos dependem da escolha correta dos parâmetros de suavização e, no caso do
método de Gauss-Seidel, também da ordenação dos pontos da malha. Apesar do método de Gauss-Seidel ser
um melhor suavizador que o método de Jacobi amortecido, analisaremos rigorosamente apenas este último
(sua análise é mais simples porque as autofunções da sua matriz de iteração são as mesmas do laplaciano
discretizado; veja [TOS] para uma análise completa do poder de suavização do método de Gauss-Seidel).
Uma comparação entre os poderes suavizadores dos métodos é dada na seguinte tabela (adaptada de [TOS]):

Método Fator suavizante Suavização


Jacobi amortecido, ω = 1 1 Nenhuma
Jacobi amortecido, ω = 0.5 0.75 Não satisfatória
Jacobi amortecido, ω = 0.8 0.6 Aceitável
Gauss-Seidel (ordem lexicográfica) 0.5 Boa
Gauss-Seidel (ordem vermelho-negra) 0.25 Muito boa

4.3.1 Método de Jacobi Amortecido


Embora no que se refere à velocidade de convergência, a escolha de ω = 1 no método de Jacobi amortecido
é a melhor possı́vel (ou seja, correspondendo ao método de Jacobi), isso não é verdade com respeito às
propriedades de suavização do erro, como veremos a seguir. A fórmula de iteração para o método de Jacobi
para o problema de Poisson discretizado é dada por

ukh (xi−1 , yj ) + ukh (xi+1 , yj ) + ukh (xi , yj−1 ) + ukh (xi , yj+1 ) + h2 fh (xi , yj )
uk+1
h (xi , yj ) = . (4.12)
4
Rodney Josué Biezuner 89

Em notação de operadores, esta fórmula pode ser escrita como


h2
uk+1
h = Rh ukh + fh , (4.13)
4
onde o operador de iteração Rh é dado por
h2
Rh = Ih − Lh , (4.14)
4
Ih sendo o operador identidade e Lh = −∆h . No método de Jacobi amortecido, introduzimos o parâmetro
de relaxamento 0 < ω 6 1:
uk+1
h (xi , yj ) = ukh (xi , yj )
µ k ¶
uh (xi−1 , yj ) + ukh (xi+1 , yj ) + ukh (xi , yj−1 ) + ukh (xi , yj+1 ) + h2 fh (xi , yj )
+ω − ukh (xi , yj ) .
4
Logo
µ ¶
h2
uk+1
h = I h uk
h + ω Sh u k
h + f h − I h uk
h
4
µ ¶
h2 h2
= Ih ukh + ω Ih ukh − Lh ukh + fh − Ih ukh
4 4
2 2
ωh ωh
= Ih ukh − Lh ukh + fh ,
4 4
ou
ωh2
uk+1
h = Rh (ω) ukh + fh , (4.15)
4
onde
ωh2
Rh (ω) = Ih −Lh . (4.16)
4
Em notação estêncil, o operador iteração para o método de Jacobi amortecido pode ser escrito na forma
   
2 −1
ωh 1
Rh (ω) =  1  −  −1 4 −1 
4 h2
−1
 1

4
= 1
4 1−ω 1
4

1
4

ou também  
1
 µ ¶ 
ω  1 4 1
Rh (ω) =  −1 1 
.
4  ω 
1
Em particular, de (4.16) segue que
ωh2
Rh (ω) = Ih + ∆h ,
4
logo os autovalores de Rh e −∆h estão relacionados da seguinte forma: λ é um autovalor de −∆h se e
somente se
ωh2
(Rh − Ih ) v = − λv,
4
Rodney Josué Biezuner 90

isto é, se e somente se


ωh2
λh (ω) = 1 − λ (4.17)
4
é um autovalor de Rh e as autofunções de Rh são as mesmas autofunções de −∆h . As autofunções de −∆h
são, como já vimos,
ϕkl
h (x, y) = sen kπx sen lπy, 1 6 k, l 6 n − 1,

enquanto que os correspondentes autovalores de −∆h são (veja o Teoremas 3.10)


2
λkl = (2 − cos kπh − cos lπh) .
h2
Logo, os correspondentes autovalores de Rh são
ω
λkl
h (ω) = 1 − (2 − cos kπh − cos lπh) . (4.18)
2
[O raio espectral de Rh , correspondente ao maior autovalor em módulo, é
¯ ¯ ¡ 2¢
¯ ¯
ρ (Rh ) = ¯λ1,1
h ¯ = |1 − ω (1 − cos πh)| = 1 − O ωh

para 0 < ω 6 1, de modo que ω = 1 (método de Jacobi) oferece a melhor velocidade de convergência,
enquanto que ρ (Rh ) > 1 para ω > 1 se h é suficientemente pequeno e o método não converge.]
Para analisar as propriedades suavizadoras do método de Jacobi amortecido quantitativamente, intro-
duzimos o fator suavizante de Rh :

Definição. O fator suavizante µh (ω) de Rh é definido por


n¯ ¯ n o
µh (ω) = max ¯λkl ¯
h (ω) : 6 max (k, l) 6 n − 1 .
2
Definimos também
µ∗ (ω) = sup µh (ω) ,
h∈H

onde H = {h = 1/n : n ∈ N e n > 4} denota o conjunto dos tamanhos de malha admissı́veis.

Observe que µh (ω) é o maior autovalor dentre as maiores freqüências e representa o pior fator pelo qual os
componentes de alta freqüência do erro são reduzidos por passo de iteração. Para entender isso, fixe um
tamanho de malha h e escreva os autovalores de Rh (como na Seção 3.2.2) na forma

λ1 > λ 2 > . . . > λ q ,


2
onde q = (n − 1) , com {ϕ1 , . . . , ϕq } sendo a correspondente base de autofunções. Escrevendo o erro inicial
na forma
q
X
e0h = α i ϕi ,
i=1

temos
q
X
ekh = Rhk e0h = αi λki ϕi .
i=1

Como
k
|λi | → 0,
Rodney Josué Biezuner 91

k k
se |λi | < 1, a taxa de eliminação para o componente ϕi do erro é determinada por |λi | e em cada iteração
este componente é reduzido por um fator exatamente igual a |λi |. Como
n¯ ω ¯ n o
¯ ¯
µh (ω) = max ¯1 − (2 − cos kπh − cos lπh)¯ : 6 max (k, l) 6 n − 1 ,
2 2


¯ ω ¯¯ o
µ (ω) = max ¯1 − ¯ , |1 − 2ω| ,
2
segue que para 0 < ω < 1 o fator suavizante é menor que 1 e permanece ¡ ¢ longe de 1 por um limitante
independente de h. Para ω = 1, o fator suavizante é da ordem de 1 − O h2 apenas; os menores autovalores
do método de Jacobi
1
λkl = (cos kπh + cos lπh)
2
estão associados às autofunções de freqüências médias, logo as autofunções de freqüências altas não são
rapidamente eliminadas e não há suavização. Por exemplo,
 
cos πh se ω = 1,


  1


se ω = 1,

 2 + cos πh 
 3
se ω = 0.5, se ω = 0.5,
µh (ω) = 4 µ∗ (ω) = 4

 


 1 + 2 cos πh 
 3
 se ω = 0.8,  se ω = 0.8,
5 5
A escolha de ω = 0.8 é ótima no sentido de que

inf µ∗ (ω) = µ∗ (0.8) = 3/5, (4.19)


0<ω61

enquanto que µ ¶
4 3 cos πh 3 ¯ ¡ ¢¯
inf µh (ω) = µh = = − ¯O h 2 ¯ . (4.20)
0<ω61 4 + cos πh 4 + cos πh 5
Isso significa que um passo do método de Jacobi amortecido com ω = 0.8 reduz todos os componentes do
erro de alta freqüência por um fator de pelo menos 3/5, independente do tamanho h da malha.

4.4 O Ciclo de Duas Malhas


O segundo princı́pio básico do método multigrid é a de que um termo de erro suave pode ser bem aproximado
em uma malha grosseira. Uma malha grosseira, por conter menos pontos, necessita de menos operações para
executar esta aproximação (ela é muito mais barata que uma malha refinada). Introduzimos o ciclo de duas
malhas, que é a base para qualquer algoritmo de multigrid.
Enquanto que o erro na iteração m é dado por

em m
h = uh − uh ,

o resı́duo (ou defeito) é definido por


rhm = fh − Lh um
h . (4.21)
A equação discretizada original Lh uh = fh é equivalente à equação do resı́duo

Lh e m m
h = rh . (4.22)

Para transferir funções definidas em uma malha mais refinada Ωh para funções definidas em uma malha mais
grosseira Ω2h e vice-versa, precisamos definir dois operadores lineares de transferência: um operador de
restrição
Ih2h : G (Ωh ) −→ G (Ω2h ) (4.23)
Rodney Josué Biezuner 92

e um operador de interpolação (ou de prolongamento)


h
I2h : G (Ω2h ) −→ G (Ωh ) . (4.24)

O operador de restrição será usado para restringir o resı́duo rhm obtido na malha mais refinada Ωh para a
malha mais grosseira Ω2h onde ele será corrigido:
m
r2h = Ih2h rhm . (4.25)

O operador de interpolação será usado para estender a correção em


2h obtida na malha mais grosseira Ω2h até
a malha mais refinada Ωh :
em h m
h = I2h e2h . (4.26)

4.1 Exemplo. Um operador de restrição particularmente simples de implementar computacionalmente é o


operador de injeção, definido por
¡ 2h ¢
Ih vh (x, y) = vh (x, y) para todo (x, y) ∈ Ω2h . (4.27)

Outro operador freqüentemente usado é o operador peso total, que em notação estêncil é dado por
 
1 2 1
1 
2 4 2 ,
16
1 2 1
ou seja,
¡ 2h ¢ 1
Ih vh (x, y) = [4vh (x, y) + 2vh (x, y − h) + 2vh (x − h, y) + 2vh (x + h, y) + 2vh (x, y + h)
16
+vh (x − h, y − h) + vh (x + h, y − h) + vh (x − h, y + h) + vh (x + h, y + h)] .

Um terceiro operador de restrição é o operador metade peso:


 
0 1 0
1
1 4 1 .
8
0 1 0
¤
4.2 Exemplo. Um dos operadores de interpolação mais simples de implementar é o operador de interpolação
bilinear :


 v2h (x, y) se (x, y) = (2kh, 2lh) ,



 1

 (v2h (x, y − h) + v2h (x, y + h)) se (x, y) = (2kh, (2l − 1) h) ,

 2


¡ h ¢
I2h v2h (x, y) = 1
 (v2h (x − h, y) + v2h (x, y + h)) se (x, y) = ((2k − 1) h, 2lh) ,

 2



 1

 [vh (x − h, y − h) + vh (x + h, y − h)

 se (x, y) = ((2k − 1) h, (2l − 1) h) .
 4
+ vh (x − h, y + h) + vh (x + h, y + h)]
para 1 6 k, l 6 n. Em notação estêncil, ele é denotado por
 
1 2 1
1
2 4 2 
4
1 2 1
¤
Rodney Josué Biezuner 93

Cada passo de iteração (ciclo) de um método de duas malhas pode ser resumido no algoritmo seguinte
(adaptado de [TOS]):

Ciclo de 2 Malhas

1. Pré-suavização

a) Calcule um m
h através de n1 passos de um suavizador aplicado a uh :

um
h = SUAVIZE
n1
(um
h , Lh , fh ).

2. Correção na malha grosseira

a) Calcule o resı́duo rm m
h = fh − Lh uh .

b) Restrinja o resı́duo à malha mais grosseira: rm 2h m


2h = Ih r h .

c) Calcule o erro na malha mais grosseira: L2h em m


2h = r 2h .

d) Interpole a correção para a malha mais refinada: em h m


h = I2h e2h .

m m
em
e) Calcule a aproximação corrigida: uh = uh + eh .

3. Pós-suavização

a) Calcule um+1
h em
através de n2 passos de um suavizador aplicado a uh :

um+1
h = SUAVIZEn2 (e
um
h , Lh , fh ).

A necessidade da pós-suavização deve-se ao fato que as freqüências mais baixas na malha mais grosseira
correspondem não somente às freqüências mais baixas na malha mais refinada, como também às freqüências
mais altas, como vimos em (4.8) (em outras palavras, freqüências baixas em Ω2h são mapeadas para a mesma
freqüência baixa em Ωh e para três outras freqüências altas em Ωh ); para evitar que estas componentes
do erro reapareçam, fazemos uma segunda suavização. Observe que vários componentes individuais do
ciclo de duas malhas devem ser especificados, e sua escolha pode ter uma forte influência na eficiência do
algoritmo: o procedimento suavizador SUAVIZE (um h , Lh , fh ); os números n1 e n2 de passos de suavização,
a malha grosseira (aqui escolhemos Ω2h , mas outras escolhas são possı́veis) e os operadores de restrição e de
interpolação.

4.5 O Ciclo Multigrid: Ciclos V


O ciclo de duas malhas per si é obviamente de pouco significado prático, já que o custo computacional na
malha Ω2h ainda é relativamente alto. A idéia de um ciclo multigrid é não resolver a equação de correção
do resı́duo L2h em m
2h = r 2h exatamente, mas suavizá-la e transferir o problema para uma malha ainda mais
grosseira Ω4h , onde o custo computacional é ainda menor. Esta idéia é repetida até que podemos em princı́pio
chegar na malha Ω1 , onde a correção do resı́duo pode então ser calculada exatamente. Daı́, voltamos para
a malha mais refinada original, formando um ciclo no formato da letra “V”.
Capı́tulo 5

Método dos Volumes Finitos

A discretização do domı́nio no métodos dos volumes finitos difere da do método de diferenças finitas em que
nesta o domı́nio é substituı́do por um conjunto de pontos, enquanto que na primeira o domı́nio é subdividido
em volumes de controle ou células. Os pontos nodais ou simplesmente nós, são os centros das células.
No método dos volumes finitos, ao invés de aproximarmos diretamente a equação diferencial como no método
de diferenças finitas, ela é antes integrada sobre cada volume de controle. As integrais obtidas são então
aproximadas. As equações integrais estão na forma de leis de conservação, o que assegura a conservação
das grandezas fı́sicas tratadas em cada volume de controle (conservação no nı́vel discreto) e portanto este
método é bastante adequado para tratar de fenômenos fı́sicos que envolvem leis de conservação. Muitas
vezes pode-se trabalhar diretamente com as equações integrais, sem passar pelas equações diferenciais, o que
torna o método particularmente útil para tratar de fenômenos descontı́nuos melhor modelados por equações
integrais, tais como fenômenos que envolvem ondas de choque.

5.1 Leis de Conservação


Muitas das equações diferenciais parciais fundamentais são obtidas através de leis de conservação.
Leis de conservação são essencialmente leis de balanceamento, expressando o fato de que alguma substância
é balanceada. Aqui, o termo substância pode indicar uma substância realmente material, ou até mesmo um
conceito abstrato, tal como energia ou uma população de animais. Por exemplo, a primeira lei da ter-
modinâmica é a lei de conservação da energia: a variação de energia interna de um sistema é igual ao calor
total adicionado ao sistema mais o trabalho realizado sobre o sistema. Como outro exemplo, considere um
fluido escoando em alguma região do espaço, consistindo de substâncias sofrendo reações quı́micas: para
cada substância quı́mica individual, a taxa de variação da quantidade total da substância na região é igual
à taxa com que a substância flui para dentro da região, menos a taxa com que ela flui para fora da região,
mais a taxa com que ela é criada, ou consumida, pelas reações quı́micas. Como último exemplo, a taxa de
variação de uma dada população de animais em uma região é igual à taxa de nascimentos, menos a taxa de
mortes, mais a taxa de migração para dentro ou fora da região.
Matematicamente, leis de conservação traduzem-se em equações integrais, de onde podem ser deduzidas
equações diferenciais, na maior parte dos casos. Estas equações descrevem como o processo evolui com o
tempo. Por este motivo, elas são também chamadas de equações de evolução. Vamos examinar primeiro
o caso unidimensional.

5.1.1 Lei de Conservação Unidimensional


Seja u = u(x, t) a densidade ou concentração de alguma substância, por unidade de volume, que depende
apenas de uma variável espacial x ∈ R e do tempo t > 0. Novamente enfatizamos que a substância cuja
densidade estamos medindo pode ser massa, momento, energia, população, ou qualquer outra coisa, material

94
Rodney Josué Biezuner 95

ou abstrata. Por exemplo, no caso da equação do calor, a temperatura u é uma medida da densidade de
energia térmica. De fato, se e(x, t) denota a densidade de energia térmica, isto é, a quantidade de energia
térmica por unidade de volume, então a densidade de energia térmica e a temperatura estão relacionadas
através da equação
e(x, t) = c(x)ρ(x)u(x, t),
cujo significado é: a energia térmica por unidade de volume é igual à energia térmica por unidade de massa
por unidade de temperatura (i.e., o calor especı́fico), vezes a temperatura, vezes a densidade volumétrica de
massa.
Imaginamos que a substância está distribuı́da em um tubo uniforme com seção transversal de área
constante A. Por hipótese, u é constante em cada seção transversal do tubo, variando apenas na direção x.
Considere um segmento arbitrário do tubo, entre as seções transversais localizadas em x = a e em x = b.
Chamamos este segmento de volume de controle. A quantidade total da substância dentro do volume de
controle no instante de tempo t é
Z b
Quantidade total da substância
= u(x, t)A dx.
dentro do volume de controle a

Assuma agora que existe movimento da substância através do tubo na direção axial. Definimos o fluxo
φ(x, t) da substância no tempo t como sendo a quantidade da substância fluindo através da seção transversal
em x no tempo t por unidade de área, por unidade de tempo. Assim as dimensões de φ são [φ] = quantidade
da substância / (área × tempo). Por convenção, φ será positivo se a substância estiver se movendo na direção
positiva do eixo x, e negativo se ela estiver se movendo na direção negativa do eixo x. Portanto, no tempo t,
a quantidade lı́quida de substância permanecendo no volume de controle será a diferença entre a quantidade
da substância entrando em x = a e a quantidade da substância saindo em x = b:

Taxa de transferência lı́quida da substância


= φ(a, t)A − φ(b, t)A.
para dentro do volume de controle

A substância pode ser criada ou destruı́da dentro do volume de controle por uma fonte interna ou externa.
A taxa de criação ou destruição da substância, que chamaremos de termo fonte e denotaremos por f (x, t, u),
tem dimensões [f ] = quantidade da substância / (volume × tempo), tendo sinal positivo se a substância é
criada dentro do volume de controle e negativa se a substância for destruı́da dentro do volume de controle.
Observe que ela pode depender da própria quantidade da substância disponı́vel, medida pela densidade u.
A taxa de criação ou destruição da substância dentro do volume de controle é então dada por
Z b
Taxa de criação da substância
= f (x, t, u)A dx.
dentro do volume de controle a

A lei de conservação para a substância pode ser formulada da seguinte forma:

Taxa de variação Taxa de transferência lı́quida de substância


Taxa de criação da substância
da quantidade de substância = para dentro do volume de controle +
dentro do volume de controle
dentro do volume de controle através de sua fronteira

ou, em termos matemáticos, após cancelar o termo comum A,


Z b Z b
d
u(x, t) dx = φ(a, t) − φ(b, t) + f (x, t, u) dx. (5.1)
dt a a

Esta é a lei de conservação na forma integral, valendo mesmo se u, φ ou f não forem funções diferenciáveis
(o que pode ocorrer em certos fenômenos fı́sicos, como por exemplo naqueles que envolvem ondas de choque
Rodney Josué Biezuner 96

ou outros tipos de descontinuidade). Se estas funções forem continuamente diferenciáveis, podemos derivar
sob o sinal de integração na primeira integral
Z Z b
d b
u(x, t) dx = ut (x, t) dx,
dt a a

e usar o Teorema Fundamental do Cálculo para escrever


Z b
φ(a, t) − φ(b, t) = − φx (x, t) dx,
a

obtendo a equação diferencial parcial


ut + φx = f (x, t, u) (5.2)

que é a lei de conservação na forma diferencial.

5.1.2 Lei de Conservação em Várias Dimensões


Vamos formular a lei de conservação nas formas integral e diferencial para os espaços Rn , n = 2 ou n = 3
(na verdade, tudo o que deduzirmos aqui, vale para qualquer n > 2). Considere um volume de controle V em
Rn , em que a densidade ou concentração u = u(x, t) de alguma substância por unidade de volume depende
de n variáveis espaciais x = (x1 , . . . , xn ) e do tempo t > 0. Temos
Z
Quantidade total da substância
= u(x, t) dV
dentro do volume de controle V

e, se f (x, t, u) denota o termo fonte,


Z
Taxa de criação da substância
= f (x, t, u) dV.
dentro do volume de controle V

Em n dimensões, o fluxo pode ser em qualquer direção, logo ele é uma grandeza vetorial que denotaremos
por φ(x, t). Se η(x) denota o vetor unitário normal apontando para fora da região V , a taxa de transferência
lı́quida da substância para fora do volume de controle através de sua fronteira ∂V é dada por
Z
Taxa de transferência lı́quida da substância
= φ(x, t) · η(x) dS.
para fora do volume de controle ∂V

A lei de conservação é, portanto,


Z Z Z
d
u(x, t) dV = − φ(x, t) · η(x) dS + f (x, t, u) dV. (5.3)
dt V ∂V V

Se u, φ e f forem todas de classe C 1 (assim como a região V ), podemos derivar sob o sinal de integração e
usar o Teorema da Divergência
Z Z
φ(x, t) · η(x) dS = div φ(x, t) dV,
∂V V

para obter a lei de conservação em forma diferencial

ut + div φ = f (x, t, u). (5.4)


Rodney Josué Biezuner 97

5.1.3 Relações Constitutivas


A lei de conservação na forma diferencial é uma equação diferencial parcial em duas incógnitas, u e φ.
Precisamos, portanto, de uma segunda equação para obter um sistema bem determinado. A equação adicional
é freqüentemente baseada nas propriedades fı́sicas do meio, as quais freqüentemente decorrem de observações
empı́ricas. Tais equações são chamadas de relações constitutivas ou equações de estado.

4.1 Exemplo. (Equação do Calor) No caso da equação do calor, a relação constitutiva é a lei de Fourier:

φ(x, t) = −k (x) ux (x, t)

onde a constante de condutividade térmica k = k (x) depende do material e muitas vezes pode ser
considerada constante.
Em dimensões mais altas, a lei de Fourier assume a forma

φ(x, t) = −k (x) ∇u(x, t).

De fato, para materiais isotrópicos (isto é, materiais em que não existem direções preferenciais) verifica-
se experimentalmente que o calor flui de pontos quentes para pontos frios na direção em que a diferença
de temperatura é a maior. O fluxo de calor é proporcional à taxa de variação da temperatura nesta
direção, com a constante de proporcionalidade k sendo por definição a condutividade térmica, como
no caso unidimensional. Como sabemos, a direção onde uma função cresce mais rápido é exatamente
aquela dada pelo vetor gradiente da função, e o módulo do gradiente fornece a magnitude da taxa
de variação da função nesta direção. O sinal negativo ocorre, como no caso unidimensional, porque o
vetor gradiente aponta na direção de crescimento da temperatura, enquanto que o fluxo do calor se dá
na direção oposta (da temperatura maior para a temperatura menor). O fluxo do calor em uma região
bi ou tridimensional pode ser facilmente visualizado quando se lembra que o gradiente de uma função é
perpendicular às superfı́cies de nı́vel da função. No caso em que a função é a temperatura, as superfı́cies
de nı́vel são chamadas superfı́cies isotérmicas ou, simplesmente, isotermas. Assim, o calor flui das
isotermas mais quentes para as isotermas mais frias, e em cada ponto da isoterma perpendicularmente
à isoterma. Em outras palavras, as linhas de corrente do fluxo de calor correspondem às linhas de fluxo
do campo gradiente da temperatura.
Substituindo a relação constitutiva na lei de conservação, obtemos a equação do calor: na forma
divergente,
ut = div (k∇u) + f (x, t, u),
ou, quando k é constante, na forma usual envolvendo o laplaciano,

ut = k∆u + f (x, t, u).

¤
4.2 Exemplo. (Equação da Difusão) Em muitos outros processos fı́sicos observa-se que a substância flui
a uma taxa diretamente proporcional ao gradiente de densidade, de regiões de maior densidade para
regiões de menor densidade. Esta relação geral é chamada de lei de Fick :

φ(x, t) = −D (x) ∇u(x, t),

onde D = D (x) é a constante de difusão. Assumindo D constante, se o termo fonte independe de u,


obtemos a equação da difusão
ut = D∆u + f (x, t),
caso contrário a equação diferencial parcial obtida é chamada equação da difusão-reação

ut = D∆u + f (x, t, u),


Rodney Josué Biezuner 98

que aparece na teoria de combustão e em biologia. Se D não é constante, obtemos as respectivas


equações na forma divergente. O nome difusão vem do fato de que a substância difunde-se para regiões
adjacentes por causa de gradientes (i.e., diferenças) de concentração, e não porque é transportada pela
corrente (i.e., não através de convecção). Por este motivo, o termo D∆u é chamado de termo difusivo.
Além do calor, exemplos de outras substâncias que se comportam assim são substâncias quı́micas
dissolvidas em algum fluido (neste caso, u representa a concentração quı́mica) e até mesmo populações
de insetos. Além de ser confirmada através de observações empı́ricas, a lei de Fick que governa estes
e vários outros fenômenos fı́sicos e biológicos pode ser justificada teoricamente através de argumentos
baseados em modelos probabilı́sticos e caminhos aleatórios. ¤

Neste texto sobre equações elı́pticas, obviamente estamos interessados na equação de estado estacionário
resultante da equação da difusão ou de difusão-reação, isto é, no caso em que ut = 0:

−∆u = f (x, t, u), (5.5)

ou, na forma divergente,


− div (A (x) ∇u) = f (x, t, u), (5.6)
onde no caso mais geral A é uma matriz n × n. Em termos da lei de conservação, isto se escreve na forma
Z Z
− A (x) ∇u(x, t) · η(x) dS = f (x, t, u) dV. (5.7)
∂V V

5.2 O Caso Unidimensional


Consideramos a seguinte equação elı́ptica na forma divergente com condição de Dirichlet:
 µ ¶
 d du
− a (x) = f (x, u) em [0, L] ,
dx dx (5.8)

u (0) = u0 , u (L) = uL .

O primeiro passo é gerar a malha de volumes finitos no intervalo [0, L], isto é, discretizar o domı́nio
em volumes de controle. Para isso, inserimos um número n de pontos nodais ou nós P1 , . . . , Pn entre
os pontos 0 e L da fronteira do domı́nio. Os n volumes de controle V1 , . . . , Vn serão centrados nestes nós.
As faces (fronteiras) dos volumes de controle serão posicionadas no ponto médio entre dois nós. Em geral,
posiciona-se os volumes de controle de modo que as fronteiras do domı́nio coincidem com faces dos volumes
de controle, isto é, o ponto 0 está na face esquerda do primeiro volume de controle e o ponto L está na face
direita do último volume de controle. Para simplificar a apresentação, assumiremos que os pontos nodais
foram posicionados de modo a estarem igualmente espaçados, de modo que todos os volumes de controle
têm mesma largura igual a ∆x.
Estabelecemos a seguinte notação (esta convenção é freqüentemente utilizada em dinâmica dos fluidos
computacional, onde o método dos volumes finitos é bastante popular): um ponto nodal arbitrário será
designado simplesmente por P e os seus pontos nodais vizinhos serão designados por W (oeste, isto é, o
ponto nodal vizinho à esquerda) e E (leste, correspondendo ao vizinho à direita). A face esquerda (à oeste)
do volume de controle será designada por w e a face direita (à leste) por e. Assim, a distância entre dois nós
vizinhos, assim como a distância entre as duas faces de um volume de controle é igual a ∆x.
Uma vez discretizado o domı́nio com a geração da malha de volumes de controle, integrando a equação
diferencial parcial em cada volume de controle para colocá-la na forma integral (reobtendo a lei de con-
servação; é claro que podemos desde o inı́cio trabalhar diretamente com esta, se estiver disponı́vel):
Z · µ ¶¸ Z
d du
− a (x) dx = f (x, u) dx.
Vp dx dx Vp
Rodney Josué Biezuner 99

Segue pelo teorema fundamental do cálculo que


du du
a (xw ) (xw ) − a (xe ) (xe ) = f V ∆x (5.9)
dx dx
onde f V denota o valor médio de f sobre o volume de controle, isto é,
Z
1
f VP = f (x, u) dx.
∆x Vp

Observe que a equação integral obtida é uma equação exata, ainda não discretizada. Na linguagem de leis
de conservação, ela diz simplesmente que o fluxo de u deixando a face direita do volume de controle menos
o fluxo deixando a face esquerda do mesmo (respeitando a nossa convenção de sinal para fluxos) é igual à
quantidade de u gerada pela fonte dentro do volume de controle:

φw − φe = f VP ∆x.

Agora procedemos à discretização da equação integral. Valores nas faces devem ser dados em funções de
valores nos pontos nodais. Consideremos primeiro os volumes de controle interiores V2 , . . . , Vn−1 . Usando
interpolação linear, podemos obter valores aproximados para a (xe ) , a (xw ), calculados nas faces dos volumes
de controle, em termos dos valores de a nos pontos nodais dos volumes de controle:
aW + aP
aw := a (xw ) = , (5.10)
2
aP + aE
ae := a (xe ) = . (5.11)
2
As derivadas primeiras, ou seja, os fluxos, podem ser aproximadas através de diferenças finitas apropriadas,
por exemplo diferenças finitas centradas:
¯
du ¯¯ du uP − uW
:= (xw ) = , (5.12)
dx ¯w dx ∆x
¯
du ¯¯ du uE − uP
:= (xe ) = . (5.13)
dx ¯e dx ∆x
O termo fonte, que pode expressar uma dependência não linear do valor de u, pode ser linearizado e assumido
constante ao longo do volume de controle, produzindo
Z Z
1 ¡ 0 ¢ f 0 + fP1 up
f VP = fP + fP1 up dx = P dx = fP0 + fP1 up . (5.14)
∆x Vp ∆x Vp

(Como queremos obter um sistema linear no final, não é possı́vel aproximar o termo fonte por uma aprox-
imação de ordem maior que 1. A linearização do termo linear será discutida em maiores detalhes na seção
4 deste capı́tulo) Daı́,
uP − uW uE − uP ¡ ¢
aw − ae = fP0 + fP1 up ∆x,
∆x ∆x
ou
ap uP + aW uW + aE uE = bp , (5.15)
onde
aw ae
ap = 2
+ − fP1 , (5.16)
∆x ∆x2
aw ae
aW = − , aE = − , (5.17)
∆x2 ∆x2
bp = fP0 . (5.18)
Rodney Josué Biezuner 100

O tratamento dos volumes de controle adjacentes à fronteira é ligeiramente diferente. Para o volume de
controle V1 adjacente à fronteira esquerda (oeste) do domı́nio, temos

aw = a0 , (5.19)

e ¯
du ¯¯ uP − u0
¯ = , (5.20)
dx w ∆x/2
porque a distância entre P e 0 é apenas ∆x/2; neste caso somos forçados a utilizar uma diferença finita
progressiva para aproximar a derivada primeira em w. Assim, a equação discretizada correspondente a este
volume de controle é
uP − u0 uE − uP ¡ ¢
2a0 − ae = fP0 + fP1 up ∆x,
∆x ∆x
ou
ap uP + aE uE = bp , (5.21)
onde
2a0 ae
ap = 2
+ − fP1 , (5.22)
∆x ∆x2
ae
aE = − , (5.23)
∆x2
2a0
bp = fP0 + u0 . (5.24)
∆x2
Para o volume de controle Vn adjacente à fronteira direita temos

ae = aL ,
¯
du ¯¯ uL − uP
= ,
dx ¯e ∆x/2
utilizando uma diferença finita regressiva para aproximar a derivada primeira em e, de modo que a equação
discretizada correspondente a este volume de controle é
uP − uW uL − uP ¡ ¢
aw − 2ae = fP0 + fP1 up ∆x,
∆x ∆x
ou
ap uP + aE uE = bp , (5.25)
onde
aw 2aL
ap = + − fP1 , (5.26)
∆x2 ∆x2
aw
aW = − , (5.27)
∆x2
2aL
bp = fP0 + uL . (5.28)
∆x2
Ordenando os volumes de controle (geralmente da esquerda para a direita), obtemos um sistema linear cuja
solução será uma solução aproximada para a equação com as condições de fronteira dadas.

4.3 Exemplo. (Equação de Poisson) Vamos aplicar o método de volumes finitos à equação de Poisson com
condição de fronteira de Dirichlet
½
−u00 = f (x) em [0, L] ,
(5.29)
u (0) = u0 , u (L) = uL .
Rodney Josué Biezuner 101

Aqui a (x) ≡ 1 e f (x, u) = f (x), de modo que fP1 = 0. Se decidimos aproximar o valor médio de f no
volume de controle pelo valor de f em P , segue que
2 1 1
ap = 2
, aW = − 2
, aE = − , b p = fP
∆x ∆x ∆x2
para os volumes de controle interiores V2 , . . . , Vn−1 . Para os volumes de controle adjacentes à fronteira,
para o primeiro volume de controle V1 temos
3 1 2
ap = 2
, aE = − 2
, bp = fP + u0 ,
∆x ∆x ∆x2
enquanto que para o último volume de controle Vn temos
3 1 2
ap = , aW = − , bp = fP + uL .
∆x2 ∆x2 ∆x2
O sistema discretizado é, portanto:
 
   2
3 −1 u1  f1 + ∆x2 u0 
 −1 2 −1   u2   f2 
    


 .. ..   ..   .. 
1  −1 . .   .   . 
 = .
∆x2  .. ..   .   . 
. . −1   ..   .. 
    
 −1 2 −1   un−1   fn−1 
 2 
−1 3 un fn + u L
∆x2
Compare com o correspondente sistema discretizado obtido pelo método de diferenças finitas; a única
diferença está na primeira e última linhas dos sistemas. ¤
4.4 Exemplo. (Equação Elı́ptica Linear) Consideremos agora o seguinte problema linear elı́ptico com
condição de fronteira de Dirichlet
½
−u00 = Au + B em [0, L] ,
(5.30)
u (0) = u0 , u (L) = uL .
Novamente a (x) ≡ 1, mas desta vez f (x, u) = f (u) = Au + B, de modo que fP0 = B e fP1 = A. Segue
que
2 1 1
ap = 2
− A, aW = − 2
, aE = − , bp = B
∆x ∆x ∆x2
para os volumes de controle interiores V2 , . . . , Vn−1 . Para os volumes de controle adjacentes à fronteira,
para o primeiro volume de controle V1 temos
3 1 2
ap = − A, aE = − , bp = B + u0 ,
∆x2 ∆x2 ∆x2
enquanto que para o último volume de controle Vn temos
3 1 2
ap = 2
− A, aW = − 2
, bp = B + uL .
∆x ∆x ∆x2
O sistema discretizado é, portanto:
 
   2
3−A −1 u1  B + u0 
∆x2
 −1 2 − A −1   u2    B 

    
 . .. . ..   .   . 
1  −1   ..   .. 
  = .
∆x2 
 . . .
. . .
 .  
.
 .   .
. 
 −1    . 
 
−1 2 − A −1   un−1   B 
 2 
−1 3 − A un B+ uL
∆x 2
Rodney Josué Biezuner 102

Como é sabido, podemos assegurar que o problema linear elı́ptico possui solução única se A 6 0,
utilizando o princı́pio do máximo. Isso se traduz do ponto de vista numérico, no fato de que a matriz
discretizada permanece diagonalmente dominante. No caso em que A > 0 é preciso ter cuidado, pois
pode haver infinitas soluções exatas e não existir solução numérica e vice-versa, pois os autovalores
do problema exato não são iguais aos autovalores da matriz de discretização (na maioria dos casos
estes últimos não são nem boas aproximações para os primeiros: usualmente as aproximações são
razoavelmente boas apenas para os primeiros autovalores e em malhas bastante refinadas, com um
número enorme de pontos ou células). Para evitar este tipo de problema, é possı́vel modificar a
linearização; veja a seção 4 deste capı́tulo. ¤

5.3 O Caso Bidimensional


Considere agora a seguinte equação elı́ptica na forma divergente com condição de Dirichlet em um domı́nio
retangular: ½
− div [A (x, y) ∇u] = f (x, y, u) em Ω = [0, 1] × [0, 1] ,
(5.31)
u (x, y) = g (x, y) . sobre ∂Ω,
onde A (x, y) é uma matriz 2 × 2. Vamos considerar o caso mais simples em que A (x, y) = a (x, y) I.
No caso bidimensional, os quatro pontos nodais vizinhos de um ponto nodal arbitrário P serão designados
por W (oeste), E (leste), S (sul ) e N (norte), e as faces correspondentes do volume de controle por w, e,
s e n. A distância horizontal entre dois nós vizinhos (que é a largura de um volume de controle) será igual
a ∆x, enquanto que a distância vertical entre dois nós vizinhos (altura do volume de controle) será igual a
∆y.
Integrando a equação diferencial parcial em cada volume de controle, como
µ ¶ µ ¶
∂ ∂u ∂ ∂u
div [a (x, y) ∇u] = a (x, y) + a (x, y) ,
∂x ∂x ∂y ∂y

obtemos agora
Z · µ ¶¸ Z · µ ¶¸ Z
∂ ∂u ∂ ∂u
− a (x, y) dxdy − a (x, y) dxdy = f (x, y, u) dxdy,
Vp ∂x ∂x Vp ∂y ∂y Vp

ou
Z n µZ e · µ ¶¸ ¶ Z e µZ n · µ ¶¸ ¶ Z
∂ ∂u ∂ ∂u
− a (x, y) dx dy − a (x, y) dy dx = f (x, y, u) dxdy.
s w ∂x ∂x w s ∂y ∂y Vp

Através do teorema fundamental do cálculo obtemos a equação exata


Z n· ¸ Z e· ¸
∂u ∂u ∂u ∂u
− a (xe , y) (xe , y) − a (xw , y) (xw , y) dy − a (x, yn ) (x, yn ) − a (x, ys ) (x, ys ) dx
∂x ∂x ∂y ∂y
Zs w

= f (x, y, u) dxdy.
Vp

Para continuar o processo de integração, precisamos aproximar as integrais. Escolhemos a aproximação do


integrando pelo ponto médio do intervalo:
Z n· ¸ · ¸
∂u ∂u ∂u ∂u
a (xe , y) (xe , y) − a (xw , y) (xw , y) dy ≈ a (xe , yp ) (xe , yp ) − a (xw , yp ) (xw , yp ) ∆y,
s ∂x ∂x ∂x ∂x
Z e· ¸ · ¸
∂u ∂u ∂u ∂u
a (x, yn ) (x, yn ) − a (x, ys ) (x, ys ) dx ≈ a (xp , yn ) (xp , yn ) − a (xp , ys ) (xp , ys ) ∆x
w ∂y ∂y ∂y ∂y
Rodney Josué Biezuner 103

Obtemos, portanto, a seguinte equação parcialmente discretizada (diferente do caso unidimensional, esta
equação não é exata):
∂u ∂u ∂u ∂u
a (xw , yp ) (xw , yp ) ∆y − a (xe , yp ) (xe , yp ) ∆y + a (xp , ys ) (xp , ys ) ∆x − a (xp , yn ) (xp , yn ) ∆x
∂x ∂x ∂y ∂y
= f V ∆x∆y,
onde Z
1
f VP = f (x, u) dxdy.
∆x∆y Vp
Em termos de fluxos discretizados,
φw − φe + φs − φn = f VP ∆x∆y.
Usando interpolação linear como antes, obtemos valores aproximados para a (xw ) , a (xe ) , a (xs ) , a (xn ), cal-
culados nas faces dos volumes de controle, em termos dos valores de a nos pontos nodais dos volumes de
controle:
aW + aP
aw := a (xw , yp ) = , (5.32)
2
aP + aE
ae := a (xe , yp ) = , (5.33)
2
aS + aP
as := a (xp , xs ) = , (5.34)
2
aP + aN
an := a (xp , xn ) = . (5.35)
2
Os fluxos são aproximadas através de diferenças finitas centradas:
¯
∂u ¯¯ ∂u uP − uW
:= (xw , yp ) = , (5.36)
∂x ¯w ∂x ∆x
¯
∂u ¯¯ ∂u uE − uP
:= (xe , yp ) = , (5.37)
∂x ¯e ∂x ∆x
¯
∂u ¯¯ ∂u uP − uS
:= (xp , ys ) = , (5.38)
∂y ¯s ∂y ∆y
¯
∂u ¯¯ ∂u uN − uP
¯ := (xp , yn ) = . (5.39)
∂y n ∂y ∆y
O termo fonte é linearizado
Z Z
1 ¡ 0 ¢ f 0 + fP1 up
f VP = fP + fP1 up dxdy = P dxdy = fP0 + fP1 up . (5.40)
∆x∆y Vp ∆x∆y Vp

Daı́,
uP − uW uE − uP uP − uS uN − uP ¡ ¢
aw ∆y − ae ∆y + as ∆x − an ∆x = fP0 + fP1 up ∆x∆y,
∆x ∆x ∆y ∆y
ou
ap uP + aW uW + aE uE + aS uS + aN uN = bp . (5.41)
com
aw ae as an
ap = 2
+ 2
+ 2
+ − fP1 , (5.42)
∆x ∆x ∆y ∆y 2
aw ae as an
aW = − 2
, aE = − 2
, aS = − 2 , aN = − 2 , (5.43)
∆x ∆x ∆y ∆y
bp = fP0 . (5.44)
Rodney Josué Biezuner 104

O tratamento dos volumes de controle adjacentes à fronteira é diferente. Por exemplo, para volumes de
controle adjacentes à fronteira esquerda (oeste), que não sejam os dois volumes de controle dos cantos, temos
aw = a (0, yp ) , (5.45)
e ¯
∂u ¯¯ uP − u (0, yp )
= , (5.46)
∂x ¯w ∆x/2
porque a distância horizontal entre P e 0 é ∆x/2. Assim, a equação discretizada correspondente a este
volume de controle é
uP − u (0, yp ) uE − uP uP − uS uN − uP ¡ ¢
2a (0, yp ) ∆y − ae ∆y + as ∆x − an ∆x = fP0 + fP1 up ∆x∆y,
∆x ∆x ∆y ∆y
ou
ap uP + aE uE + aS uS + aN uN = bp , (5.47)
com
2a (0, yp ) ae as an
ap = 2
+ 2
+ 2
+ − fP1 , (5.48)
∆x ∆x ∆y ∆y 2
ae as an
aE = − 2
, aS = − 2 , a N = − 2 , (5.49)
∆x ∆y ∆y
2a (0, yp )
bp = fP0 + g (0, yp ) . (5.50)
∆x2
Fórmulas semelhantes são obtidas para volumes de controle adjacentes às demais fronteiras que não estejam
em um dos quatro cantos do domı́nio retangular. Para os volumes de controle nos cantos do retângulo,
precisamos fazer mais uma modificação. Por exemplo, para o volume de controle no canto superior esquerdo
temos
aw = a (0, yp ) , (5.51)
an = a (xp , 1) , (5.52)
e
¯
∂u ¯¯ uP − u (0, yp )
= , (5.53)
∂x ¯w ∆x/2
¯
∂u ¯¯ u (xp , 1) − uP
= , (5.54)
∂y ¯n ∆y/2
e a equação discretizada correspondente a este volume de controle é
uP − u (0, yp ) uE − uP uP − uS u (xp , 1) − uP ¡ ¢
2a (0, yp ) ∆y−ae ∆y+as ∆x−2a (xp , 1) ∆x = fP0 + fP1 up ∆x∆y,
∆x ∆x ∆y ∆y
ou
ap uP + aE uE + aS uS = bp , (5.55)
com
2a (0, yp ) ae as 2a (xp , 1)
ap = 2
+ 2
+ 2
+ − fP1 , (5.56)
∆x ∆x ∆y ∆y 2
ae as
aE = − 2
, aS = − 2 , (5.57)
∆x ∆y
2a (0, yp ) 2a (xp , 1)
bp = fP0 + g (0, yp ) + g (xp , 1) . (5.58)
∆x2 ∆x2
Ordenando os volumes de controle (por exemplo, usando a ordem lexicográfica), obtemos um sistema linear
cuja solução será uma solução aproximada para a equação com as condições de fronteira dadas.
Rodney Josué Biezuner 105

4.5 Exemplo. (Equação de Poisson) Vamos aplicar o método de volumes finitos à equação de Poisson com
condição de fronteira de Dirichlet
½ 2
−∆u = f (x, y) em [0, 1] ,
2 (5.59)
u = g (x, y) sobre ∂ [0, 1] .

Temos a (x) ≡ 1, fP1 = 0, fP0 = fP , e optamos por discretizar a malha por volumes de controle
quadrados, isto é, satisfazendo ∆x = ∆y. Segue que a linha do sistema discretizado corresponde a um
volume de controle interior tem a forma (multiplicamos todas as linhas do sistema por ∆x2 )

elemento na diagonal: ap = 4,
elementos fora da diagonal: a∗ = −1 (4 elementos),
elemento constante: bP = fP ∆x2 .

Para volumes de controle adjacentes à fronteira, não localizados nos cantos, a linha correspondente no
sistema discretizado é

elemento na diagonal: ap = 5,
elementos fora da diagonal: a∗ = −1 (3 elementos),
elemento constante: bP = fP ∆x2 + 2g (∗) .

Finalmente, para volumes de controle localizados nos cantos, temos

elemento na diagonal: ap = 6,
elementos fora da diagonal: a∗ = −1 (2 elementos),
elemento constante: bP = fP ∆x2 + 2g (∗) + 2g (∗∗) .

Compare com o correspondente sistema discretizado obtido pelo método de diferenças finitas; como no
caso unidimensional, as diferenças surgem apenas para as linhas correspondentes a células e pontos na
fronteira do domı́nio. ¤

5.4 Linearização do Termo Fonte


Ao linearizar o termo fonte
f (u) = fP0 + fP1 up
devemos ter cuidado para esolher a linearização de tal forma a obter

fP1 6 0. (5.60)

A necessidade matemática desta escolha já foi discutida no Exemplo 4.4. Fisicamente, esta exigência também
faz sentido: a maioria dos termos fontes em fenômenos transientes que tendem a um estado estacionário em
geral têm derivada primeira negativa, caso contrário o sistema não tenderia a um regime permanente. Por
exemplo, na difusão do calor, a existência de um termo linear com derivada positiva implicaria na acumulação
de energia térmica dentro do domı́nio, a não ser que o calor pudesse ser rapidamente dissipado através da
fronteira, o que geral não ocorre, pois mesmo o calor perdido por um objeto quente através da sua imersão
em um recipiente cheio de lı́quido frio é transferido para o lı́quido a uma taxa linear. Isso tende a gerar
uma situação instável que eventualmente leva ao colapso térmico do sistema (explosão ou derretimento do
objeto).
Rodney Josué Biezuner 106

5.4.1 Termo Fonte do Tipo f (u) = Au + B com A < 0


A linearização óbvia neste caso é tomar
fP0 = B, fP1 = A, (5.61)
o que aumentará a dominância diagonal da matriz, como já vimos no Exemplo 4.4. Outra possibilidade é
usar um processo iterativo, definindo

fP0 = Auk−1
P +B e fP1 = 0, (5.62)

usando o valor Auk−1


P +B obtido na iteração anterior no lado direito do sistema a ser resolvido nesta iteração.
Como o termo fonte neste caso é linear, a primeira sugestão é mais aconselhada neste caso.

5.4.2 Termo Fonte do Tipo f (u) = Au + B com A > 0


Neste caso, como já mencionado várias vezes, não é aconselhável tomar a linearização óbvia (especialmente
se existirem outras não-linearidades, e um processo não-iterativo se fazer necessário para resolver o sistema,
isso pode levar o processo iterativo a divergir). A segunda sugestão da subseção anterior é a mais adequada
neste caso, isto é, tomar
fP0 = Auk−1
P + B e fP1 = 0, (5.63)
e usar um processo iterativo.

5.4.3 Termo Fonte do Tipo f (u) com f 0 (u) < 0


A maneira mais simples de lidar com um termo fonte não-linear é usar um processo iterativo simples,
definindo ¡ ¢
fP0 = f uk−1
P e fP1 = 0. (5.64)
A desvantagem deste método é que ele não toma conhecimento da dependência de f em u na iteração
corrente. Uma linearização que leva isto em conta é a seguinte: escrevendo
¡ ¢ ¡ ¢ df ¡ k−1 ¢ ¡ k ¢
f ukP = f uk−1
P + uP uP − uk−1
P , (5.65)
du
tomamos
¡ ¢ df ¡ k−1 ¢ k−1 df ¡ k−1 ¢
fP0 = f uk−1
P − u uP e fP1 = u . (5.66)
du P du P
Por exemplo, se f (u) = 4 − 5u3 , terı́amos
¡ ¢ ¡ ¢3 ¡ ¢2 ¡ k ¢
f ukP = 4 − 5 uk−1
P − 15 uk−1
P uP − uk−1
P
¡ ¢3 ¡ ¢2 k
= 4 + 10 uk−1
P − 15 uk−1
P uP .
Referências Bibliográficas

[Asmar] Nakhlé ASMAR, Partial Differential Equations and Boundary Value Problems, Pren-
tice Hall, 2000.
[Biezuner] Rodney Josué BIEZUNER, Notas de Aula: Equações Diferenciais Parciais, UFMG,
2005.
[BHM] William L. BRIGGS, Van Emden HENSON e Steve F. McCORMICK, A Multigrid
Tutorial, SIAM, 2000.
[Demmel] James W. DEMMEL, Applied Numerical Linear Algebra, SIAM, 1997.
[Hackbusch] W. HACKBUSCH, Elliptic Differential Equations: Theory and Numerical Treatment,
Springer Series in Computational Mathematics 18, Springer, 1992.
[Heuveline] Vincent HEUVELINE, On the computation of a very large number of eigenvalues for
selfadjoint elliptic operators by means of multigrid methods, Journal of Computational
Physics 184 (2003), 321–337.

[Horn-Johnson] Roger A. HORN e Charles R. JOHNSON, Matrix Analysis, Cambridge University


Press, 1985.

[Maliska] CLOVIS R. MALISKA, Transferência de Calor e Mecânica dos Fluidos Computa-


cional, 2a. Edição, LTC, 2004.

[Patankar] S. V. PATANKAR, Numerical Heat Transfer and Fluid Flow, Hemisphere, 1980.
[Rosser1] J. Barkley ROSSER, Nine point difference solutions for Poisson’s equation, Comp.
Math. Appl. 1 (1975), 351–360.
[Rosser2] J. Barkley ROSSER, Finite-difference solution of Poisson’s equation in rectangles of
arbitrary proportions, Zeitschrift für Angewandte Mathematik und Physik (ZAMP)
28 (1977), no.2, 185–196.
[Strang] Gilbert STRANG, Linear Algebra and its Applications, 3rd Ed., Harcourt Brace Jo-
vanovich, 1988.
[Strikwerda] John C. STRIKWERDA, Finite Difference Schemes and Partial Differential Equa-
tions, 2nd Ed., SIAM, 2004.
[Thomas1] J. W. THOMAS, Numerical Partial Differential Equations: Finite Difference Meth-
ods, Texts in Applied Mathematics 22, Springer, 1995.
[Thomas2] J. W. THOMAS, Numerical Partial Differential Equations: Conservation Laws and
Elliptic Equations, Texts in Applied Mathematics 33, Springer, 1999.

107
Rodney Josué Biezuner 108

[TOS] Ulrich TROTTENBERG, Cornelis OOSTERLEE e Anton SCHÜLLER, Multigrid,


Elsevier, 2001.

[Versteeg-Malalasekera] H. K. VERSTEEG e W. MALALASEKERA, An introduction to computational fluid


dynamics: The finite volume method, Prentice Hall, 1995.

[Watkins] David S. WATKINS, Fundamentals of Matrix Computations, 2nd Ed., John Wiley &
Sons, 2002.
[Young] David M. YOUNG, Iterative Solutions of Large Linear Systems, Academic Press,
1971.

S-ar putea să vă placă și