Vous êtes sur la page 1sur 123

Notas de Aula Algebra Linear Numrica e

Rodney Josu Biezuner e


1

Departamento de Matemtica a Instituto de Cincias Exatas (ICEx) e Universidade Federal de Minas Gerais (UFMG)

Notas de aula da disciplina Algebra Linear Numrica do Curso de Graduaao e c em Matemtica Computacional, ministrado durante o segundo semestre do ano de 2009. a

30 de novembro de 2009

E-mail: rodney@mat.ufmg.br; homepage: http://www.mat.ufmg.br/rodney.

Sumrio a
0 Introduo: Representao de N meros ca ca u 0.1 Ponto Flutuante . . . . . . . . . . . . . 0.2 Erros de Arredondamento . . . . . . . . 0.3 O Padro de Ponto Flutuante IEEE 754 a 0.3.1 Nmeros normalizados . . . . . . u 0.3.2 Nmeros denormalizados . . . . u 0.3.3 Outros valores numricos . . . . e Reais . . . . . . . . . . . . . . . . . . . . . . . . no . . . . . . . . . . . . Computador . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 3 5 5 5 6 6 7 7 7 8 10 11 13 13 18 19 22 27 29 31 32 32 33 33 34 35 36 37 40 42 44 44 50 52 59 61

1 Matrizes Esparsas 1.1 Problema Modelo . . . . . . . . . . . . . . . . . . . . 1.1.1 Problema de Poisson Unidimensional . . . . . 1.1.2 Problema de Poisson Bidimensional . . . . . 1.2 Matrizes Esparsas . . . . . . . . . . . . . . . . . . . 1.3 Implementao Computacional de Matrizes Esparsas ca 2 Invertibilidade de Matrizes Esparsas 2.1 Normas Matriciais . . . . . . . . . . 2.2 Matrizes Diagonalmente Dominantes 2.3 Teorema dos Discos de Gershgorin . 2.4 Propriedade FC . . . . . . . . . . . 2.5 Matrizes Irredut veis . . . . . . . . . 2.6 Exerc cios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

3 Mtodos Iterativos Lineares e 3.1 Mtodo Iterativos Bsicos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . e a 3.1.1 Mtodo de Jacobi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . e 3.1.2 Mtodo de Gauss-Seidel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . e 3.1.3 Mtodo SOR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . e 3.1.4 Comparao da Velocidade de Convergncia dos Trs Mtodos no Problema ca e e e 3.1.5 Mtodo de Jacobi Amortecido . . . . . . . . . . . . . . . . . . . . . . . . . . e 3.2 Anlise de Convergncia dos Mtodos Iterativos Lineares . . . . . . . . . . . . . . . a e e 3.2.1 Convergncia dos Mtodos Iterativos Lineares . . . . . . . . . . . . . . . . . e e 3.2.2 Velocidade de Convergncia dos Mtodos Iterativos Lineares . . . . . . . . e e 3.2.3 Convergncia para Matrizes Simtricas Positivas Denidas . . . . . . . . . . e e 3.3 Convergncia dos Mtodos Iterativos Lineares para Matrizes de Discretizao . . . e e ca 3.3.1 Convergncia do Mtodo de Jacobi . . . . . . . . . . . . . . . . . . . . . . . e e 3.3.2 Convergncia do Mtodo de Gauss-Seidel . . . . . . . . . . . . . . . . . . . e e 3.3.3 Convergncia do Mtodo SOR . . . . . . . . . . . . . . . . . . . . . . . . . e e 3.3.4 Convergncia do Mtodo de Jacobi Amortecido . . . . . . . . . . . . . . . . e e 3.3.5 Resumo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1

. . . . . . . . . . . . . . . . . . . . Modelo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Rodney Josu Biezuner e 3.4 Exerc cios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

2 61 62 62 63 64 66 67 67 68 72

4 Mtodos de Projeo e ca 4.1 Teoria Geral . . . . . . . . . . . . . . . . . . . . . . . 4.1.1 Representao Matricial . . . . . . . . . . . . ca 4.1.2 Minimizao de Funcionais . . . . . . . . . . ca 4.1.3 Estimativa do Erro em Mtodos de Projeo e ca 4.2 Caso Unidimensional: Mtodos de Descida . . . . . . e 4.2.1 Mtodos de Descida . . . . . . . . . . . . . . e 4.2.2 Mtodo da Descida Mais Acentuada . . . . . e 4.3 Exerc cios . . . . . . . . . . . . . . . . . . . . . . . .

5 Mtodos de Subespaos de Krylov e c 5.1 Motivao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ca 5.2 Subespaos de Krylov . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . c 5.3 Algoritmo de Arnoldi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.4 Implementao Prtica: Mtodos de Ortogonalizao Estveis . . . . . . . . . . ca a e ca a 5.4.1 Mtodo de Gram-Schmidt Modicado (MGS) . . . . . . . . . . . . . . . e 5.4.2 Mtodo de Gram-Schmidt Modicado com Reortogonalizao (MGSR) . e ca 5.5 Mtodo de Arnoldi para Sistemas Lineares . . . . . . . . . . . . . . . . . . . . . e 5.6 Decomposio QR via MGS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ca 5.7 Algoritmo de Lanczos e Mtodo do Gradiente Conjugado . . . . . . . . . . . . e 5.8 Mtodo do Gradiente Conjugado como um Mtodo de Descida . . . . . . . . . e e 5.8.1 Convergncia do Mtodo do Gradiente Conjugado em Aritmtica Exata e e e 5.9 Velocidade de Convergncia do Mtodo do Gradiente Conjugado . . . . . . . . e e 5.9.1 Polinmios de Chebyshev . . . . . . . . . . . . . . . . . . . . . . . . . . o 5.9.2 Velocidade de Convergncia do CG . . . . . . . . . . . . . . . . . . . . . e 5.10 Exerc cios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

74 . 74 . 75 . 76 . 79 . 79 . 82 . 83 . 85 . 87 . 91 . 94 . 96 . 96 . 99 . 101 102 102 105 107 107 109 110 111 114 116 116 118 119 119 120 121

6 O Problema do Autovalor 6.1 Caracterizao Variacional dos Autovalores de uma Matriz Simtrica: Quociente de Rayleigh ca e 6.2 Mtodo das Potncias . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . e e 6.2.1 Mtodo das Potncias Inverso . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . e e 6.2.2 Mtodo das Potncias com Deslocamento . . . . . . . . . . . . . . . . . . . . . . . . . e e 6.2.3 Iterao do Quociente de Rayleigh . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ca 6.3 Algoritmo QR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6.3.1 Reduo de uma matriz a sua forma de Hessenberg . . . . . . . . . . . . . . . . . . . . ca 6.3.2 Acelerao do algoritmo QR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ca 6.3.3 Implementaao prtica do algoritmo QR . . . . . . . . . . . . . . . . . . . . . . . . . . c a 6.4 Iterao de subespaos e iterao simultnea . . . . . . . . . . . . . . . . . . . . . . . . . . . ca c ca a 6.4.1 Equivalncia entre o Algoritmo QR e Iterao Simultnea . . . . . . . . . . . . . . . . e ca a 6.4.2 Convergncia do Algoritmo QR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . e 6.5 Mtodo de Arnoldi e Algoritmo de Lanczos . . . . . . . . . . . . . . . . . . . . . . . . . . . . e 6.6 O Problema de Autovalor Simtrico . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . e 6.7 Exerc cios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Cap tulo 0

Introduo: Representao de ca ca N meros Reais no Computador u


Computadores digitais usam um nmero nito de bits para representar um nmero real, portanto eles u u podem representar apenas um subconjunto nito dos nmeros reais, o que leva a dois tipos diferentes de u limitaes: (1) nmeros representados no podem ser arbitrariamente grandes ou arbitrariamente pequenos; co u a (2) existem lacunas entre os numros representados. Estas limitaes f e co sicas levam respectivamente aos erros de overf low e underf low e aos erros de arredondamento. Para discutir estes erros de maneira inteligente, introduzimos alguma terminologia. ca 0.1 Denio. Denimos o erro absoluto causado por uma computao por ca Erro absoluto = |(valor calculado) (valor exato)| . O erro relativo causado por uma computao denido por ca e Erro relativo = erro absoluto . valor exato

O erro relativo permite comparar entre os erros cometidos de maneira signicativa. Por exemplo, o erro absoluto entre 1 (valor exato) e 2 (valor calculado) e o erro absoluto entre 1.000.000 (valor exato) e 1.000.001 (valor calculado) so os mesmos. No entanto, o erro relativo no primeiro caso 1, enquanto que o erro a e relativo no segundo caso 106 , expressando o fato intuitivo que o erro cometido no primeiro caso muito e e ` maior que o erro cometido no segundo caso. As vezes o erro relativo expresso como uma porcentagem: e Erro percentual = [(erro relativo) 100] %. Assim, o erro percentual no primeiro caso 100%, enquanto que o erro percentual no segundo caso e e 104 = 0, 0001%.

0.1

Ponto Flutuante

Na Matemtica Pura, os nmeros reais so innitos, innitamente grandes e innitamente pequenos. No a u a a existe um nmero maior ou um nmero menor. Alm disso, eles tambm so continuamente distribu u u e e a dos: no existem espaos entre nmeros reais, pois entre quaisquer dois nmeros reais sempre existe outro nmero a c u u u real. Mais que isso, eles so distribu a dos uniformemente na reta real. Um nmero real innitamente preciso: u e

Rodney Josu Biezuner e

os nmeros depois do ponto decimal so innitos (incluindo o 0). Em outras palavras, usando a base 10, u a nmeros reais correspondem a sries da forma u e a = a0 + an 10n n=1

onde a0 Z e an {0, 1, 2, 3, 4, 5, 6, 7, 8, 9}. O padro para representar nmeros reais em Matemtica Computacional o nmero de ponto utua u a e u ante. Nmeros de ponto utuante no so innitos: existe um nmero de ponto utuante mximo e um u a a u a nmero de ponto utuante m u nimo. Existe um nmero xado de pontos utuantes, logo existem espaos u c entre eles. Nmeros de ponto utuante de preciso simples (tipo float) tem aproximadamente 8 d u a gitos decimais signicantes, enquanto que nmeros de ponto utuante de preciso dupla (tipo double) tem aproxu a imadamente 17 d gitos decimais signicantes. O qualicativo aproximadamente se refere ao fato que os nmeros de ponto utuante so armazenados no computador na base binria, logo a converso da base u a a a binria para a base decimal introduz alguma impreciso. a a Um nmero de ponto utuante armazenado internamente em duas partes: um signicando e um u e expoente, semelhante ` notao cient a ca ca. Esta escolha de representao garante que a distribuio dos valores representados em ponto utuante ca ca no ser uniforme. Para entender isso, vamos assumir que o signicando limitado a um unico d a a e gito decimal e que o expoente restrito aos valores 1, 0, 1. A tabela abaixo registra todos os nmeros reais positivos e u que podemos representar: 1 0 1 2 3 4 5 6 7 8 9 1 101 = 0, 1 2 101 = 0, 2 3 101 = 0, 3 4 101 = 0, 4 5 101 = 0, 5 6 101 = 0, 6 7 101 = 0, 7 8 101 = 0, 8 9 101 = 0, 9 0 0 1 100 2 100 3 100 4 100 5 100 6 100 7 100 8 100 9 100 1 =1 =2 =3 =4 =5 =6 =7 =8 =9 1 101 2 101 3 101 4 101 5 101 6 101 7 101 8 101 9 101 = 10 = 20 = 30 = 40 = 50 = 60 = 70 = 80 = 90

O fato do espao entre os valores em ponto utuante aumentar em proporo ao tamanho dos nmeros c ca u e que justica o nome ponto utuante. Uma representao em que os espaos entre os valores representados ca c tem um tamanho xo chamada uma representao em ponto xo. e ca 0.2 Denio. Denimos a preciso de um ponto utuante como sendo o nmero de d ca a u gitos signicativos que ele possui em seu signicando. A exatido de um ponto utuante a sua aproximao do valor a e ca exato. Quanto mais d gitos signicativos um ponto utuante possui, mais preciso ele : o double 0.3333333333333333 e uma representao mais precisa do nmero real 1/3 do que o float 0.3333333. Por outro lado, o float e ca u 0.3333333 uma representao mais exata de 1/3 do que o double 0.3444444444444444, apesar deste ser e ca um ponto utuante mais preciso, porque a maioria dos seus d gitos signicativos esto errados. Os erros a computacionais tais como os erros de cancelamento e arredondamento afetam a exatido de um valor em a ponto utuante. Aumentar a preciso de float para double tem o potencial de aumentar a exatido, mas a a no a garante. a

Rodney Josu Biezuner e

0.2

Erros de Arredondamento

Quando um valor computado est entre dois valores representveis, ele ser substitu pelo valor represena a a do tado mais prximo. Esta a origem dos erros de arredondamento. o e 0.3 Denio. Denimos o erro de arredondamento por ca Erro de arredondamento = |(valor representado) (valor exato)| . 0.4 Denio. Um erro de cancelamento um erro de arredondamento que ocorre quando a maioria ca e dos d gitos signicativos so perdidos durante a subtrao de dois valores aproximadamente iguais. a ca

0.3

O Padro de Ponto Flutuante IEEE 754 a

Antes do padro IEEE 754 ser publicado em 1985, existiam muitos formatos de ponto utuante implementaa dos em hardware e software, o que dicultava a portabilidade dos programas. Os resultados obtidos variavam de uma mquina para outra. Atualmente, a maioria dos fabricadores aderem ao padro IEEE 754, fruto de a a uma cooperao histrica entre cientistas de computao e desenhistas de chips de microprocessadores. A ca o ca sigla IEEE signica Institute of Electrical and Electronics Engineers. Os formatos de preciso aritmtica simples float e dupla double so armazenados em 32 bits e 64 bits, a e a respectivamente. Cada formato divide um nmero em trs partes: sinal (um bit), expoente e frao. Os dois u e ca formatos diferem quanto ao nmero de bits alocados para o expoente e para a frao. No formato float 8 u ca bits so alocados para o expoente e 23 para a frao, enquanto que no formato double 11 bits so alocados a ca a para o expoente e 52 para a frao. O bit de sinal representa o sinal do nmero: 0 para positivo e 1 para ca u negativo. O expoente no possui sinal: para representar expoentes negativos, o padro adiciona um vis a a e positivo; para obter o valor verdadeiro do expoente (sem vis), necessrio subtrair o vis. No formato de e e a e preciso simples, o expoente com 8 bits pode armazenar valores (com vis) entre 0 e 255, mas 0 e 255 so a e a reservados; o vis 127, de modo que os valores verdadeiros (sem vis) do expoente variam entre 126 e e e e +127. No formato de preciso dupla, o expoente com 11 bits pode armazenar valores (com vis) entre 0 e a e 2047, com 0 e 2047 so reservados; o vis 1023, de modo que os valores verdadeiros (sem vis) do expoente a e e e variam entre 1022 e +1023.

0.3.1

N meros normalizados u

Representemos por s o sinal, e o expoente e f a frao. Quando e no um valor reservado (isto , 1 e 254 ca a e e no formato float e 1 e 2047 no formato double) existe um algarismo 1 e um ponto binrio . impl a citos a ` esquerda do primeiro bit de f , de modo que o nmero representado por s, e, f o nmero u e u n = (1) (1.f ) 2E onde E = e 127 (float) ou E = e 1023 (double), chamado um nmero normalizado. O algarismo 1 e u o ponto binrio impl a citos, juntamente com a parte fracionria f , constituem o signicando do nmero, de a u modo que um nmero de preciso simples possui 24 bits no seu signicando, enquanto que um nmero de u a u preciso dupla possui 53 bits no seu signicando. a Assim, o maior valor poss em mdulo para float corresponde a vel o s = 1, e = 254 e f = 11111111111111111111111, ou seja,
23 i=0 s

1 2127 3, 4028 1038 , 2i

Rodney Josu Biezuner e enquanto que o maior valor poss em mdulo para double corresponde a vel o s = 0, e = 2047 e f = 1111111111111111111111111111111111111111111111111111, ou seja,
52 i=0

1 21023 1, 7977 10308 . 2i

0.3.2

N meros denormalizados u

Se e = 0 (um dos valores reservados) e f = 0, ns temos o que se chama um nmero denormalizado (ou o u subnormal ). Existe um algarismo 0 e um ponto binrio . impl a citos ` esquerda do primeiro bit de f , de modo a que o nmero representado por s, e, f o nmero u e u n = (1) (0.f ) 2E onde E = 126 (float) ou E = 1022 (double). Assim, o menor valor poss em mdulo para float corresponde a vel o s = 0, e = 0 e f = 00000000000000000000001, ou seja, 1 2126 1, 4013 1045 , 223 um pouco menor do que o menor valor poss 1 2126 = 1, 1755 1038 para um float normalizado, vel correspondente a s = 0, e = 1 e f = 00000000000000000000000. O menor valor poss em mdulo para double corresponde a vel o s = 0, e = 0 e f = 0000000000000000000000000000000000000000000000000001, ou seja, 1 21022 4, 9407 10324 252 um pouco menor do que o menor valor poss 1 21022 2, 2251 10308 para um double normalizado, vel correspondente a s = 0, e = 1 e f = 0000000000000000000000000000000000000000000000000000. A existncia dos nmeros denormalizados permitem uma convergncia para zero menos abrupta. Quando e u e os valores computados vo se tornando menores e menores, atingindo o menor valor poss para um float a vel ou double normalizado, ao invs de ca e rem abruptamente para zero na prxima iterao, eles so convertidos o ca a em nmeros denormalizados. u No entanto, o espao entre nmeros representados no intervalo [1, 2] igual a 252 2.22 1016 ; em c u e geral, no intervalo 2j , 2j+1 o espao 2j 252 , de modo que o espao relativo nunca excede 252 . c e c
s

0.3.3

Outros valores numricos e

Se e = f = 0, o valor numrico 0 ou +0, dependendo de s. Se f = 0 e e = 255 para float ou se e = 2047 e e para double, ento o valor numrico Infinity ou +Infinity. Se f = 0 e e = 255 para float ou se a e e e = 2047 para double, ento independentemente do valor de 0 ns temos NaN (Not a Number ). Por exemplo, a o dividindo 0 por 0 resulta em NaN. Em geral, no padro IEEE 754 uma operao invlida produz NaN, diviso por zero produz Infinity, a ca a a overow produz o maior nmero normalizado poss u vel ou Infinity e underow produz 0, o menor nmero normalizado poss ou um nmero denormalizado. u vel u

Cap tulo 1

Matrizes Esparsas
Matrizes esparsas so matrizes onde a imensa maioria das entradas so nulas. Esta uma denio a a e ca vaga. No existe um limite inferior para o nmero de zeros em uma matriz, em relao ao tamanho desta, a u ca a partir do qual podemos declarar uma matriz com sendo esparsa. Isto , no existe um limite preciso a e a partir do qual uma matriz deixa de ser esparsa e se torna uma matriz densa (isto , uma matriz em que e o nmero de zeros irrelevante). Em geral, matrizes esparsas so denidas operacionalmente, no sentido u e a de que uma matriz pode ser chamada esparsa, sempre que tcnicas especiais podem ser usadas para tirar e vantagem do grande nmero de zeros e sua localizao. Equaes diferenciais parciais so a maior fonte de u ca co a problemas de lgebra linear numrica envolvendo matrizes esparsas. Engenheiros eltricos lidando com redes a e e eltricas nos anos 1960s foram os primeiros a explorar a esparcidade das matrizes de coecientes associadas e aos problemas tratados para resolver sistemas lineares. Como os computadores tinham pouca capacidade de armazenamento e poder de processamento, e os problemas envolviam um nmero enorme de variveis, u a mtodos de soluo direta que tiram vantagem da existncia de um nmero muito grande de zeros tiveram e ca e u que ser desenvolvidos.

1.1

Problema Modelo

Como fonte de matrizes esparsas, consideraremos o problema de resolver a equao de Poisson com condio ca ca de Dirichlet discretizada atravs de diferenas nitas em uma e duas dimenses, que fornece uma matriz e c o esparsa simtrica. e

1.1.1

Problema de Poisson Unidimensional


u = f (x) u (0) = a, u (1) = b. se 0 < x < 1,

Considere o problema de Dirichlet para a equao de Poisson no intervalo unitrio I = (0, 1): ca a (1.1)

Seja h > 0. As expanses de Taylor para uma funo u ` direita e ` esquerda de um ponto x0 so dadas o ca a a a respectivamente por u(x0 + h) = u(x0 ) + u (x0 )h + e u(x0 h) = u(x0 ) u (x0 )h + Se somarmos estas duas equaes, obtemos co u (x0 ) = 2 2 u(x0 h) 2u(x0 ) + u(x0 + h) u(4) (x0 )h2 u(6) (x0 )h4 . . . , h2 4! 5! 7 1 1 u (x0 )h2 + u (x0 )h3 + . . . , 2! 3! 1 1 u (x0 )h2 u (x0 )h3 + . . . 2! 3!

Rodney Josu Biezuner e o que fornece uma aproximao para a derivada segunda u (x0 ) de u em x0 : ca u (x0 ) com erro u(x0 h) 2u(x0 ) + u(x0 + h) h2

1 (4) u ()h2 = O(h2 ), 12 onde x0 h x0 + h. Esta aproximao chamada uma diferena centrada para a derivada segunda. ca e c Divida o intervalo [0, 1] em n subintervalos de comprimento h = 1/n atravs de n 1 pontos interiores e uniformemente espaados: c = x0 = 0, x1 = h, x2 = 2h, . . . , xn1 = (n 1) h, xn = nh = 1, de modo que [0, 1] = [x0 , x1 ] [x1 , x2 ] . . . [xn1 , xn ]. Introduzimos a notao: ca ui = u(xi ), fi = f (xi ) . Esta uma discretizao uniforme do intervalo [0, 1]. Uma vez discretizado o dom e ca nio da equao diferencial ca parcial, procedemos ` discretizao desta ultima. Usando diferenas centradas para cada ponto interior xi , a ca c 1 i n 1, temos ui1 + 2ui ui+1 = fi . (1.2) h2 Esta discretizao em diferenas nitas para a equao de Poisson chamada frmula dos trs pontos. ca c ca e o e Portanto, para encontrar a soluo discretizada temos que resolver o sistema linear com n 1 equaes a ca co n 1 incgnitas: o 2 = f1 + ah2 h (2u1 u2 ) 2 h (u1 + 2u2 u3 ) = f2 . . , . 2 h (un3 + 2un2 un1 ) = fn2 2 h (un2 + 2un1 ) = fn1 + bh2 ou seja, 2 1 1 h2 1 2 1 1 .. . .. . .. .. 1 2 u1 u2 . . . . . . un2 un1 f1 + ah2 f2 . . . . . . fn2 fn1 + bh2 .

. 1 1 2 1

Esta uma matriz tridiagonal, simtrica e esparsa. e e

1.1.2

Problema de Poisson Bidimensional

Considere o problema de Dirichlet homogneo para a equao de Poisson no quadrado unitrio = (0, 1) e ca a (0, 1) u = f (x, y) em , (1.3) u=0 sobre . Discretizamos o quadrado atravs dos pontos e (xi , yj ) = (ih, jh) , 0 i, j n,

Rodney Josu Biezuner e onde h= produzindo a malha (ou gride) uniforme d = (x, y) : x = ix, y = jy, 0 A malha dos pontos interiores dada por e d = {(x, y) : x = ix, y = jy, 1 enquanto que a fronteira discretizada o conjunto e d = {(x, y) : x = ix, y = jy, 0 A equao de Poisson ca 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 diferena centrada, obtendo c uxx uyy ui1,j + 2ui,j ui+1,j , x2 ui,j1 + 2ui,j ui,j+1 . y 2 i n, 0 j m} . i, j n 1} , i, j n .

1 , n

Portanto, a equao de Poisson discretizada toma a forma ca ui1,j ui,j1 + 4ui,j ui+1,j ui,j+1 = fi,j . h2 (1.4)

Como a funo u calculada em cinco pontos, esta discretizao em diferenas nitas para a equao de ca e ca c ca Poisson chamada a frmula dos cinco pontos. e o 2 Para cada ponto interior da malha obtemos uma equao, logo temos um sistema linear de (n 1) ca equaes com o mesmo nmero de incgnitas. Diferente do caso unidimensional, no entanto, no existe uma co u o a maneira natural de ordenar os pontos da malha, logo no podemos obter imediatamente uma representao a ca matricial para o problema discretizado. Precisamos antes escolher uma ordenao para os pontos da malha, ca e como existem vrias ordenaes poss a co veis, existem vrias matrizes associadas. a Talvez a mais simples ordenao a ordem lexicogrca. Nesta ordem, os pontos da malha so percorridos ca e a a linha por linha, da esquerda para a direita, de baixo para cima: u1,1 , u2,1 , . . . , un1,1 , u1,2 , u2,2 , . . . , un1,2 , . . . . . . , u1,m1 , u2,m1 , . . . , un1,m1 . Neste caso, a matriz associada ao sistema linear uma matriz (n 1) (n 1) que pode ser escrita como e 2 uma matriz de (n 1) blocos de dimenso (n 1) (n 1) na forma a B I I B I .. .. . . 1 I A= 2 .. .. h . . I I B I I B (n1)(n1)
2 2

Rodney Josu Biezuner e onde I a matriz identidade (n 1) (n 1) e B e 4 1 1 4 1 .. . 1 B= .. . a matriz (n 1) (n 1) dada por e .. .. 1 4 (n1)(n1)

10

. 1 4 1

. 1

Observe que aii = 4 para todo 1 i (n 1) , enquanto que aij = 1 se o ponto j vizinho ` esquerda ou ` direita do ponto i, ou se o ponto j vizinho acima ou abaixo do ponto e a a e i. Por exemplo, se n = 4, temos 4 1 0 1 0 0 0 0 0 1 4 1 0 1 0 0 0 0 0 1 4 0 0 1 0 0 0 1 0 0 4 1 0 1 0 0 1 0 1 4 1 0 1 0 A = 2 0 1 h 0 1 0 1 4 0 0 1 0 0 0 0 1 0 0 4 1 0 0 0 0 0 1 0 1 4 1 0 0 0 0 0 1 0 1 4 Observe que a matriz A uma matriz simtrica, pentadiagonal e esparsa. e e
2

1.2

Matrizes Esparsas

Outros problemas de EDPs, especialmente aqueles envolvendo derivadas primeiras (tais como problemas de convecao-difuso), em geral levam a matrizes no-simtricas. Discretizaes de outros tipos, tais como as c a a e co encontradas em elementos nitos, levam a matrizes esparsas com outro tipo de estrutura. De qualquer modo, todos possuem em comum o fato de a matriz de discretizao ser uma matriz esparsa. ca Existem essencialmente dois tipos de matrizes esparsas: estruturadas e no-estruturadas. Uma a matriz estruturada uma em que as entradas no-nulas formam um padro regular, frequentemente ao e a a longo de um nmero pequeno de diagonais (tais como as matrizes que vimos no problema modelo na seo u ca anterior). Os elementos no-nulos podem tambm estar organizados em blocos (submatrizes densas) de a e mesmo tamanho, organizadas ao longo de um nmero pequeno de blocos diagonais. Discretizaes atravs de u co e diferenas nitas tipicamente do origem a matrizes esparsas com estruturas regulares. Uma matriz esparsa c a em que as entradas no-nulas so irregularmente localizadas uma matriz esparsa irregularmente estruturada. a a e Os mtodos de volumes nitos ou elementos nitos aplicados a dom e nios com geometria complexa em geral levam matrizes irregularmente estruturadas. Esta distino no afeta em geral mtodos de soluo direta mas muito importante para os mtodos de ca a e ca e e soluo iterativos. Neste ultimos, uma das operaes bsicas essenciais a do produto de uma matriz por ca co a e um vetor.

Rodney Josu Biezuner e

11

1.3

Implementao Computacional de Matrizes Esparsas ca

Para tirar vantagem do grande nmero de elementos nulos, esquemas especiais so necessrios para armazenar u a a matrizes esparsas na memria do computador. O principal objetivo representar apenas os elementos noo e a nulos. O esquema mais simples de armazenamento o chamado formato de coordenadas. A estrutura de dados e consiste de trs vetores (arrays): um vetor real contendo os valores e dois vetores inteiros, um deles contendo e os ndices das linhas, enquanto que o outro contm os e ndices das colunas. 1.1 Exemplo. A matriz A= pode ser representada por valueArray = 2 rowIndexArray = 3 columnIndexArray = 3 9 4 4 1 1 1 4 3 4 3 3 1 4 5 5 2 2 5 5 2 1 3 1 4 6 4 3 7 , 2 , 2 . 1 5 3 0 0 0 7 0 0 0 0 0 2 6 0 3 0 4 9 0 0 2 0 0 4

Cada vetor tem comprimento igual ao nmero de elementos no-nulos da matriz. Observe que os u a elementos so listados em ordem arbitrria. a a Provavelmente, o formato mais popular para armazenar matrizes esparsas gerais o formato compressed e row storage (CRS). Neste esquema, as linhas da matriz so armazenadas uma a uma em um vetor real, da a primeira at a ultima, preservando a ordem. Um segundo vetor inteiro contendo os e ndices das colunas e usado. Um terceiro vetor inteiro contm a posio no vetor de valores reais ou no vetor de e ca ndices de coluna onde cada linha comea, mais um elemento para indicar a primeira posio vazia dos dois vetores. c ca 1.2 Exemplo. A matriz A= pode ser representada no formato CSR por valueArray = 1 columIndexArray = 1 rowPointerArray = 1 3 4 3 5 1 6 7 2 9 2 5 11 3 1 12 2 3 . 4 4 6 3 9 4 4 5 , , 1 5 3 0 0 0 7 0 0 0 0 0 2 6 0 3 0 4 9 0 0 2 0 0 4

Enquanto o comprimento dos dois primeiros vetores igual ao nmero de elementos no-nulos da e u a matriz., o comprimento do terceiro vetor igual ao nmero de linhas da matriz mais um. Dentro e u de cada linha os elementos ainda podem ser armazenados em ordem arbitrria, o que pode ser muito a conveniente. Este esquema o preferido pois o mais util para realizar as computaes t e e co picas, tais como multiplicao ca da matriz por vetores. Em CRS, a multiplicao matriz-vetor pode ser implementada da seguinte forma (em ca

Rodney Josu Biezuner e C/C++ ou Java): for( int i = 0; i < n; i++ ) { lowerIndex = rowPointerArray[i]; upperIndex = rowPointerArray[i+1]; //loop over row i for( int j = lowerIndex; j < upperIndex; j++ ) Av[i] += valueArray[j]* v[columArray[j]]; }

12

Um esquema correspondente, armazenando colunas ao invs de linhas o compressed column storage (CCS), e e usado no Octave. Os esquemas considerados acima so chamados estticos. Esquemas dinmicos, envolvendo listas ena a a cadeadas, em geral economizam ainda mais memria e tem acesso ainda mais rpido ` memria. Cada linha o a a o da matriz pode ser representada por uma lista encadeada. A matriz toda representada por uma lista de e listas encadeadas, seguindo a ordem de linhas da matriz. Desta forma, o in de cada linha no precisa ser cio a representado. O ndice da coluna de cada elemento da linha ainda precisa ser representado, claro, e isso e pode ser feito atravs de um ponteiro espec e co. Outras esquemas podem ser utilizados, tirando vantagem da estrutura da matriz esparsa. Por exemplo, em matrizes diagonais as diagonais no-nulas podem ser armazenadas separadamente. Em matrizes a simtricas, necessrio armazenar apenas os elementos da diagonal principal e da parte triangular superior e e a (ou inferior) da matriz, mas isso em geral implica em algoritmos mais complicados para fazer operaes com co a matriz.

Cap tulo 2

Invertibilidade de Matrizes Esparsas


Neste cap tulo desenvolveremos mtodos gerais e fceis de aplicar para determinar a invertibilidade de mae a trizes esparsas, principalmente aquelas que surgem atravs da discretizao de equaes diferenciais parciais e ca co atravs de diferenas nitas. Em particular, isso implicar a existncia e unicidade de solues para sistemas e c a e co lineares envolvendo tais matrizes. Uma vez que isso esteja estabelecido, poderemos nos dedicar nos prximos o cap tulos a estudar mtodos iterativos para encontrar estas solues. e co

2.1

Normas Matriciais

Lembramos o conceito de norma vetorial: 2.1 Denio. Seja V um espao vetorial real ou complexo. Uma norma vetorial em V uma funo ca c e ca || : V R que satisfaz as seguintes propriedades: (i) |x| > 0 para todo x = 0 e |x| = 0 se x = 0; (ii) x = || x para todo x V e para todo R; (iii) (Desigualdade Triangular) x + y x + y para todos x, y V.

Denotaremos por Mn (R) o espao vetorial das matrizes complexas n n e por Mn (C) o espao vetorial c c das matrizes complexas n n. Quando estivermos nos referindo a qualquer um destes espaos (ou seja, c quando a armao que zermos valer para qualquer um deles), usaremos a notao Mn simplesmente. ca ca 2.2 Denio. Uma norma matricial no espao vetorial Mn uma norma vetorial : Mn R que ca c e satisfaz a propriedade submultiplicativa AB para todas as matrizes A, B Mn . A seguir, veremos alguns exemplos das normas matriciais mais importantes em Mn . A vericao de que ca as normas apresentadas constituem normas vetoriais deixada como exerc (Exerc 2.1). e cio cio 2.3 Exemplo. Norma l1 (norma da soma):
n

(2.1)

=
i,j=1

|aij | .

(2.2)

13

Rodney Josu Biezuner e De fato,


n n n n n n

14

AB

=
i,j=1 k=1

aik bkj
i,j,k=1

|aik bkj |
i,j,k,l=1

|aik blj | =
i,k=1

|aik |
j,l=1

|blj | = A

2.4 Exemplo. Norma l2 (norma euclidiana): A Com efeito,


n n 2 n i,j=1 n n 2 n

1/2 |aij |
2

=
i,j=1

(2.3)

|blj |
2

n i,k=1

2 |aik |

2 |blj | = A 2 2

AB

2 2

=
i,j=1 k=1

aik bkj
k=1

|aik |

2 l=1

2 2

j,l=1

A norma l2 tambm chamada mais raramente (e somente para matrizes) norma de Schur, norma de e e Frobenius ou norma de Hilbert-Schmidt. 2.5 Exemplo. Normas lp : De modo geral, dado p 1, denimos a norma matricial 1/p
n

=
i,j=1

p |aij |

(2.4)

a 2.6 Exemplo. Norma l modicada (norma do mximo modicada): A norma l (norma do mximo) a A

= max |aij |
1 i,j n

uma norma vetorial em Mn mas no uma norma matricial: por exemplo, se e a e A= ento a A2 = e portanto A2 1 1 1 1 2 2 2 2

=2>1= A

. (2.5)

No entanto, um mltiplo escalar desta norma vetorial uma norma matricial: u e A Com efeito,
n n n n

= n max |aij | .
1 i,j n

AB

= n max = n (n A

1 i,j n

aik bkj
k=1

n max

1 i,j n

|aik bkj |
k=1

n max
n

1 i,j n

A
k=1

=n A

n B

= AB

Rodney Josu Biezuner e 2.7 Exemplo. Norma do operador: Dada uma norma vetorial || em Rn ou Cn , ela induz uma norma matricial atravs da denio e ca A = max |Ax| = max |Ax| = sup
|x|=1 |x| 1 x=0

15

|Ax| . |x|

(2.6)

Aqui vemos A como um operador linear em Rn ou Cn , portanto cont nuo, de modo que o mximo de a A atingido na esfera e na bola fechada. Para ver que a primeira e a terceira denies coincidem (de e co modo que o sup na terceira denio de fato um mximo), use o fato que ca e a |Ax| = A |x| Agora observe que
|x|=1

x |x|

max |Ax|

|x| 1

max |Ax| ,

j que a bola fechada contm a esfera. Por outro lado, se |x| = < 1, segue que a e A x |x| = |Ax| |Ax| = > |Ax| , |x|

de modo que o mximo de |Ax| no atingido no interior da bola, logo a a e


|x|=1

max |Ax|

|x| 1

max |Ax|

e portanto a primeira e a segunda denies coincidem. Finalmente, para ver que a norma do operador co uma norma matricial, escreva e AB = max
x=0

|ABx| = max x=0 |x|

|ABx| |Bx| |Bx| |x|

Bx=0

max

|ABx| |Bx| max x=0 |x| |Bx|

max
y=0

|Ay| |Bx| max = A x=0 |x| |y|

B .

A norma do operador satisfaz a propriedade extremamente util |Ax| para todo vetor x Rn ou Cn . 2.8 Exemplo. Norma do mximo das somas das linhas: a
n

A |x|

(2.7)

= max

1 i n

|aij | .
j=1

(2.8)

Esta norma a norma do operador induzida pela norma vetorial l . De fato, se x = (x1 , . . . , xn ), e temos
n n n

|Ax| = max de modo que

1 i n

aij xj
j=1

1 i n

max

|aij xj |
j=1

1 i n

max

|aij | |x| = A
j=1

|x| ,

|x|=1

max |Ax|

Supondo que a i-sima linha de A no-nula, denimos o vetor y = (y1 , . . . , yn ) Cn por e e a aij se aij = 0, , yi = |aij | 1 se aij = 0.

Rodney Josu Biezuner e o que implica |y| = 1, aij yj = |aij | e


n |x| =1 n

16

max |Ax|

|Ay| = max

1 i n

aij yj = max
j=1

1 i n

|aij | = A
j=1

a 2.9 Exemplo. Norma do mximo das somas das colunas:


n

= max

1 j n

|aij | .
i=1

(2.9)

Esta norma a norma do operador induzida pela norma vetorial l1 . De fato, escrevendo A em termos e de suas colunas A = [A1 . . . An ] segue que A Se x = (x1 , . . . , xn ), segue que
n n n C

= max |Aj |1 .
1 j n

|Ax|1 = |x1 A1 + . . . + xn An |1
i=1 n

|xi Ai |1 =
i=1

|xi | |Ai |1
i=1

|xi | max |Aj |1


1 j n

= A donde

C i=1

|xi | = A

|x|1 ,

|x|1 =1

max |Ax|1

Agora, se escolhermos yj = ej , temos que |yj |1 = 1 e |Ay|1 = |Aj |1 para todo k, logo
|x|1 =1

max |Ax|1

1 j n

max |Ayj |1 = max |Aj |1 = A


1 j n

2.10 Exemplo. p-normas: Este o nome geral para as normas do operador induzidas pela norma vetorial lp em Rn ou Cn . Para e distingui-las das normas matriciais lp no prprio espao vetorial Mn , vamos denot-las por o c a |||A|||p = sup
x=0

|Ax|p |x|p

O caso especial da norma do operador induzida pela norma vetorial l2 (a norma vetorial euclidiana) e tambm chamada a norma espectral e satisfaz e |||A|||2 = max = max || : um autovalor de A A . e

Rodney Josu Biezuner e

17

De fato, A A uma matriz hermitiana logo todos os seus autovalores so no-negativos. Pela carace a a terizao variacional dos autovalores de uma matriz hermitiana temos ca max = max
x=0

A Ax, x |x|2
2

= max
x=0

|Ax|2 |x|2
2

Observe que a 2-norma diferente da norma matricial l2 (Exerc e cio 2.3). Note tambm que se A e e uma matriz hermitiana, ento A A = A2 e |||A|||2 portanto o mdulo do maior autovalor de A, isto a e o , a norma espectral de A o raio espectral de A, denido como sendo o maior valor absoluto dos e e autovalores 1 , . . . , n de A: (A) = max |i | ,
i=1,...,n

2.11 Exemplo. Norma induzida por uma matriz invert vel: Se uma norma matricial qualquer e se S uma matriz invert e e vel, ento a A dene uma norma matricial. Com efeito, AB
S S

= S 1 AS

(2.10)

= S 1 ABS = S 1 ASS 1 BS

S 1 AS

S 1 BS = A

Lembramos que todas as normas em um espao vetorial de dimenso nita so equivalentes, e isso vale em c a a particular para normas matriciais: 2.12 Teorema. Seja V um espao vetorial real ou complexo de dimenso nita. Ento todas as normas c a a vetoriais em V so equivalentes, isto , se 1 e 2 so duas normas vetoriais quaisquer em V , a e a ento existem constantes C1 , C2 > 0 tais que a x e x para todo x V . Prova: Para mostrar a equivalncia entre todas as normas de um espao vetorial, por transitividade basta e c xar uma norma 1 e mostrar que qualquer norma arbitrria 2 equivalente a 1 . Seja B = {e1 , . . . , en } a e uma base para V , de modo que todo vetor x V se escreve na forma
n 2 1

C1 x C2 x

x=
i=1

x i ei

e dena

como sendo a norma

em relao a esta base: ca


n

=
i=1

|xi | .

Rodney Josu Biezuner e Ento, se a


2

18

uma norma qualquer em V , segue da desigualdade triangular que e


n n

2 i=1

xi ei max

=
i=1

|xi | ei
n

i=1,...,n

ei

2 i=1

|xi |

= C2 x onde denotamos C2 = max


i=1,...,n

ei 2 .

Para provar a desigualdade reversa, considere a esfera unitria na norma da soma S = {x V : x 1 = 1}. a A desigualdade anterior garante que a funo x x 2 cont ca e nua na topologia denida pela norma 1 e portanto assume um valor m nimo m no conjunto fechado e limitado (compacto) S. Necessariamente m > 0: se existisse e =
n

um conjunto linearmente independente. Portanto, e x x 1

i=1

xi ei S tal que e

= 0, ter amos e =

i=1

xi ei = 0, contrariando o fato que {e1 , . . . , en }

m
2 1

para todo x V , x = 0. Tomando C1 = 1/m, segue que x

C1 x

para todo x V .

2.2

Matrizes Diagonalmente Dominantes


n

2.13 Denio. Dizemos que uma matriz Ann diagonalmente dominante se ca e |aii |
j=1 j=i

|aij |

para todo i = 1, . . . , n

e estritamente diagonalmente dominante se


n

|aii | >
j=1 j=i

|aij |

para todo i = 1, . . . , n.

2.14 Lema. Seja A Mn . Se existe alguma norma matricial tal que I A < 1, ento A invert a e vel. Prova. De fato, sob esta condio, armamos que a inversa dada explicitamente pela srie ca e e

A1 =
k=0

(I A) .

(2.11)

Para todo N N podemos escrever


N N N N +1

A
k=0

(I A) = [I (I A)]
k=0

(I A) =
k=0

(I A)
k=1

(I A) = I (I A)

N +1

Como uma norma matricial, temos que e (I A)


k

I A

Rodney Josu Biezuner e Logo, de I A < 1 segue que


N

19

lim (I A)

N +1

= 0.

Portanto, tomando o limite quando N , conclu mos (2.11). 2.15 Corolrio. Se A Mn uma matriz singular e uma norma matricial, ento I A a e e a particular, se uma norma matricial, ento I e a 1. Prova. Para provar a segunda armao do enunciado, basta tomar A = 0. ca 2.16 Proposio. Se A uma matriz estritamente diagonalmente dominante, ento A invert ca e a e vel. Prova. Denote por D a matriz diagonal cujas entradas diagonais so as entradas diagonais de A. Uma a matriz estritamente diagonalmente dominante possui, por denio, entradas diagonais no-nulas, logo D ca a e uma matriz invert vel. A matriz D1 A tem apenas 1s na diagonal principal e se mostramos que D1 A e invert vel, isto implicar que A invert a e vel. Para provar isso, considere a matriz I D1 A. Temos I D1 A
ij

1. Em

0 aij /aii

se i = j, se i = j. i
n

Usemos a norma do mximo das somas das linhas. Para cada 1 a


n n

n temos |aij | < 1,

I D1 A
j=1

ij

=
j=1 j=i

1 aij = aii |aii |

j=1 j=i

logo I D1 A < 1 e o resultado segue do Lema 2.14. ` As vezes, exigir dominncia diagonal estrita em todas as linhas pedir demais. Para certas matrizes, a e dominncia diagonal junto com dominncia diagonal estrita em apenas uma linha suciente para garantir a a e a sua invertibilidade. As matrizes de discretizao obtidas no cap ca tulo anterior satisfazem esta condio ca (nas linhas correspondentes ` pontos adjacentes ` fronteira), e nenhuma delas estritamente diagonalmente a a e dominante. Por outro lado, vale a pena ressaltar que esta condio no suciente para estabelecer a ca a e invertibilidade de uma matriz em geral, como o exemplo 4 2 1 0 1 1 0 1 1 demonstra.

2.3

Teorema dos Discos de Gershgorin

A primeira ferramenta terica o importante Teorema dos Discos de Gershgorin. Ele decorre da seguinte o e observaao: se A uma matriz complexa n n, podemos sempre escrever A = D + B, onde D = diag c e (a11 , . . . , ann ) a matriz diagonal formada pela diagonal principal de A e B consiste dos elementos restantes e de A, possuindo uma diagonal principal nula. Se denirmos A = D + B, ento A0 = D e A1 = A. Os a autovalores de D so a11 , . . . , ann , enquanto que os autovalores de A devem estar localizados em vizinhanas a c dos pontos a11 , . . . , ann , desde que seja sucientemente 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 so sucientemente grandes. O Teorema de Gershgorin d uma estimativa precisa e simples de a a calcular para os raios destes discos em funo das entradas restantes da matriz A. Denote o disco complexo ca fechado de centro em a e raio R por DR (a) = {z C : |z a| R} .

Rodney Josu Biezuner e 2.17 Teorema. (Teorema dos Discos de Gershgorin) Se A Mn (C) e
n

20

Ri (A) =
j=1 j=i

|aij |

(2.12)

denota a soma dos valores absolutos dos elementos da linha i de A excetuando o elemento da diagonal principal, ento todos os autovalores de A esto contidos na unio dos n discos de Gershgorin a a a
n

G (A) =
i=1

DRi (A) (aii ) .

(2.13)

Alm disso, se uma unio de k destes discos forma uma regio que disjunta dos nk discos restantes, e a a e ento existem exatamente k autovalores de A nesta regio. a a Prova. Seja um autovalor de A e x = (x1 , . . . , xn ) = 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 e e e Ax = x, temos
n

xk = (Ax)k =
j=1

akj xj

que equivalente a e xk ( akk ) =

akj xj .
j=1 j=k

Da , |xk | | akk |

|akj xj | =
j=1 j=k j=1 j=k

|akj | |xj |

|xk |
j=1 j=k

|akj | = |xk | Rk (A) ,

ou seja, | akk | Rk (A) . Isso prova o resultado principal do Teorema de Gershgorin (como no sabemos qual k apropriado para a e cada autovalor , e um mesmo k pode servir para vrios autovalores , tudo o que podemos armar que a e os autovalores esto na unio dos discos). a a Para provar a segunda armao, escreva A = D + B, onde D = diag (a11 , . . . , ann ) e dena ca At = D + tB para 0 t 1. Note que Ri (At ) = Ri (tB) = tRi (A) . Para simplicar a notao, assuma que a unio dos primeiros k discos de Gershgorin ca a
k

Gk (A) =
i=1

DRi (A) (aii )

satisfaz Gk (A) [G (A) \Gk (A)] = . Temos DRi (At ) (aii ) = {z C : |z aii | Ri (At )} = {z C : |z aii | tRi (A)} DRi (A) (aii ) ,

Rodney Josu Biezuner e logo, Gk (At ) Gk (A) e Gk (A) [G (At ) \Gk (At )] = para 0 t 1. Porque os autovalores so funes cont a co nuas das entradas de uma matriz, o caminho i (t) = i (At )

21

um caminho cont e nuo que liga i (A0 ) = i (D) = aii a i (A1 ) = i (A). Seja 1 i k. Como i (At ) Gk (At ) Gk (A), conclu mos que para cada 0 t 1 existem k autovalores de At em Gk (A); em particular, fazendo t = 1, obtemos que Gk (A) possui pelo menos k autovalores de A. Da mesma forma, no a pode haver mais que k autovalores de A em Gk (A), pois os n k autovalores restantes de A0 = D comeam c fora do conjunto Gk (A) e seguem caminhos cont nuos que permanecem fora de Gk (A). A unio G (A) dos discos de Gershgorin conhecida como a regio de Gershgorin. Observe que enquanto a e a no podemos em geral armar com certeza que cada disco de Gershgorin possui um autovalor, a segunda a armao do teorema permite-nos fazer tal concluso desde que os discos de Gershgorin sejam dois a dois ca a disjuntos. O Teorema dos Discos de Gershgorin permite entender o resultado da Proposio 2.16: se uma matriz A ca e estritamente diagonalmente dominante, ento os discos de Gershgorin DRi (A) (aii ) no interceptam a origem, a a logo 0 no pode ser um autovalor para a matriz A, o que implica que A invert a e vel. Alm disso, se todos e os elementos da diagonal principal de A so reais e positivos, ento os autovalores de A esto localizados no a a a semiplano direito de C, de modo que se A tambm simtrica, conclu e e e mos que todos os autovalores de A so positivos. a A aplicao mais bvia do Teorema dos Discos de Gershgorin na estimativa dos autovalores de uma ca o e matriz. Usos mais renados 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 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 esto a localizados na interseo destas duas regies: G (A) G (At ). Isso implica a seguinte estimativa simples para ca o o raio espectral de uma matriz complexa: 2.18 Corolrio. Se A Mn (C), ento a a (A) min max
i=1,...,n

|aij | = min ( A
L

|aij | , max
j=1

j=1,...,n

, A

C) .

i=1

Prova. O ponto no i-simo disco de Gershgorin que mais distante da origem tem mdulo e e o
n

|aii | + Ri (A) =
j=1

|aij |

e um resultado semelhante vale para as colunas de A. O resultado do Corolrio 2.18 no surpreendente em vista do raio espectral de uma matriz ser menor que a a e qualquer norma matricial (veja o prximo cap o tulo). Um resultado melhor pode ser obtido uma vez que se observa que A e S 1 AS tambm possuem os mesmos autovalores, qualquer que seja a matriz invert e vel S. Em particular, quando S = D = diag (p1 , . . . , pn ) uma matriz diagonal com todos os seus elementos e positivos, isto , pi > 0 para todo i, aplicando o Teorema de Gershgorin ` matriz e a D1 AD = pj aij pi

e ` sua transposta, obtemos o seguinte resultado que permite obter uma estimativa arbitrariamente boa dos a autovalores de A:

Rodney Josu Biezuner e

22

2.19 Corolrio. Se A Mn (C) e p1 , . . . , pn > 0, ento todos os autovalores de A esto contidos em a a a n n 1 1 t 1 G D AD G DA D = z C : |z aii | pj |aij | (2.14) pi j=1 i=1 j=i n n 1 z C : |z aii | pj |aij | . p i=1 i=1 i
i=j

Em particular, (A)
p1 ,...,pn >0

min

max

i=1,...,n

1 pi

1 |aij | . pi (2.15)

pj |aij | , max pj
j=1 j=1,...,n i=1

2.4

Propriedade FC

Na nossa busca por propriedades para matrizes diagonalmente dominantes que garantiro a sua invertibila idade, uma observao fundamental a de que se A uma matriz diagonalmente dominante, ento 0 no ca e e a a pode ser um ponto interior de nenhum disco de Gershgorin. De fato, se um autovalor de A interior a e algum disco de Gershgorin ento devemos ter desigualdade estrita a
n

| aii | < Ri (A) =


j=1 j=i

|aij |

para algum i. Se 0 um autovalor de A interior a algum disco de Gershgorin, ento e a


n

|aii | <
j=1 j=i

|aij |

para algum i e A no pode ser diagonalmente dominante na linha i. a Uma condio equivalente para que um autovalor de A no seja um ponto interior de nenhum disco de ca a Gershgorin que e
n

| aii |

Ri (A) =
j=1 j=i

|aij |

para todo i = 1, . . . , n.

Tais pontos na regio de Gershgorin G (A) (no necessariamente autovalores de A) constituem precisaa a mente a fronteira G (A) da regio de Gershgorin. Chamaremos a fronteira de um disco de Gershgorin a {z C : |z aii | = Ri (A)} um c rculo de Gershgorin. 2.20 Lema. Seja A Mn (C) e um autovalor de A que no um ponto interior de nenhum disco de a e Gershgorin. Seja x = (x1 , . . . , xn ) = 0 um autovetor associado a e k um ndice tal que |xk | Se i qualquer e ndice tal que |xi | = |xk | |xj | para j = 1, . . . , n.

Rodney Josu Biezuner e ento o i-simo c a e rculo de Gershgorin passa por . Se, alm disso, e aij = 0, ento a |xj | = |xk | e o j-simo c e rculo de Gershgorin tambm passa por . e Prova. Como na demonstrao do Teorema de Gershgorin, temos ca
n n n

23

|xi | | aii |
j=1 j=i

|aij xj | =
j=1 j=i

|aij | |xj |

|xk |
j=1 j=i

|aij | = |xk | Ri (A)

(2.16)

para todo ndice i. Logo, se |xi | = |xk |, temos | aii | Como por hiptese o | aii | para todo ndice i, segue que | aii | = Ri (A) . Em geral, |xi | = |xk | implica que as desigualdades em (2.16) so identidades; em particular, a
n n

Ri (A) . Ri (A)

|aij | |xj | = |xi |


j=1 j=i j=1 j=i

|aij |

donde

|aij | (|xi | |xj |) = 0.


j=1 j=i

Esta uma soma de termos no-negativos, pois |xi | e a |xj |, logo se aij = 0 necessariamente devemos ter |xj | = |xi | = |xk |. Este lema tcnico tem as seguintes conseqncias uteis: e ue 2.21 Teorema. Seja A Mn (C) uma matriz cujas entradas so todas no-nulas e seja um autovalor a a de A que no um ponto interior de nenhum disco de Gershgorin. Ento todo c a e a rculo de Gershgorin de A passa por (isto , est na interseao de todos os c e a c rculos de Gershgorin de A) e se x = (x1 , . . . , xn ) = 0 um autovetor associado a ento e a |xi | = |xj | Prova. Decorre diretamente do lema anterior. 2.22 Corolrio. Se A Mn (C) uma matriz cujas entradas so todas no-nulas e diagonalmente domia e a a nante tal que |aii | >
n j=1 j=i

para todos i, j = 1, . . . , n.

|aij | para pelo menos alguma linha i, ento A invert a e vel.

Rodney Josu Biezuner e

24

Prova. Pois, como A diagonalmente dominante, se 0 um autovalor de A ento 0 no pode ser um ponto e e a a 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 e rculo de Gershgorin centrado em aii e com raio Ri < |aii | no pode passar por 0. Conclu a mos que 0 no um autovalor de A, logo A invert a e e vel. As matrizes do Corolrio 2.22 so as ant a a teses das matrizes esparsas que nos interessam. Usando com maior cuidado a informao dada pelo Lema 2.20 podemos obter resultados que se aplicam a matrizes ca esparsas. 2.23 Denio. Dizemos que uma matriz A = (aij ) Mn (C) satisfaz a propriedade FC se para todo par ca de inteiros distintos i, j existe uma seqncia de inteiros distintos i1 = i, i2 , i3 , . . . , im1 , im = j, com ue 1 m n, tais que todas as entradas matriciais ai1 i2 , ai2 i3 , . . . , aim1 im so no-nulas. a a Por exemplo, a matriz diagonalmente dominante no-invert a vel 4 2 1 0 1 1 , 0 1 1 j vista anteriormente, no satisfaz a propriedade FC porque o par 2, 1 no admite tal seqncia (a unica a a a ue seqncia poss a23 , a31 ). J qualquer par de inteiros distintos i, j tal que aij = 0 admite a seqncia ue vel e a ue trivial no-nula aij , de modo que uma matriz cujas entradas no-diagonais so todas no-nulas satisfaz a a a a a propriedade FC. O signicado da abreviatura FC, ou fortemente conexo, car claro mais adiante. a 2.24 Teorema. Seja A Mn (C) uma matriz que satisfaz a propriedade FC e seja um autovalor de A que no um ponto interior de nenhum disco de Gershgorin. Ento todo c a e a rculo de Gershgorin de A passa por (isto , est na interseo de todos os c e a ca rculos de Gershgorin de A) e se x = (x1 , . . . , xn ) = 0 um autovetor associado a ento e a |xi | = |xj | para todos i, j = 1, . . . , n.

Prova. Seja x = (x1 , . . . , xn ) = 0 um autovetor associado a e i um ndice tal que |xi | Pelo Lema 2.20, | aii | = Ri (A) . Seja j = i qualquer outro ndice e i1 = i, i2 , i3 , . . . , im1 , im = j, com 1 entradas matriciais aii2 , ai2 i3 , . . . , aim1 j = 0. m n, ndices tais que todas as |xk | para k = 1, . . . , n.

Como aii2 = 0, segue da segunda armativa do Lema 2.20 que |xi2 | = |xi |. Mas ento ai2 i3 = 0 e portanto a |xi3 | = |xi2 | = |xi |. Prosseguindo desta forma, conclu mos que |xi | = |xi2 | = . . . xim1 = |xj | . Em particular, segue novamente do Lema 2.20 que o j-simo c e rculo de Gershgorin passa por . Como j e arbitrrio, isso prova o teorema. a e 2.25 Corolrio. Se A Mn (C) uma matriz que satisfaz a propriedade FC e diagonalmente dominante a tal que |aii | >
n j=1 j=i

|aij | para pelo menos alguma linha i, ento A invert a e vel.

Rodney Josu Biezuner e

25

Prova. Segue do teorema anterior da mesma forma que o Corolrio 2.22 segue do Teorema 2.21. a Vamos tentar entender melhor o signicado da propriedade FC. Note que ela se refere apenas ` localizao a ca dos elementos no-nulos de A fora da diagonal principal os elementos da diagonal principal e os valores a espec cos dos elementos fora da diagonal principal so irrelevantes. Isso motiva as seguintes denies: a co 2.26 Denio. Dada uma matriz A = (aij ) Mn (C) denimos o mdulo da matriz A como sendo a ca o matriz |A| = (|aij |) cujos elementos so os mdulos dos elementos da matriz A e a matriz indicadora de A como sendo a o a matriz M (A) = (ij ) , onde ij = 1 0 se aij = 0, se aij = 0.

O conceito de uma seqncia de entradas no-nulas da matriz A que aparece na denio da propriedade ue a ca FC pode ser visualizado em termos de caminhos em um grafo associado a A: 2.27 Denio. Dada uma matriz A Mn (C), o grafo direcionado de A o grafo direcionado (A) ca e com n nodos P1 , . . . , Pn tais que existe um arco direcionado em (A) de Pi a Pj se e somente se aij = 0. Um caminho direcionado em um grafo uma seqncia de arcos Pi1 Pi2 , Pi2 Pi3 , . . . em . O e ue comprimento de um caminho direcionado o nmero de arcos sucessivos no caminho direcionado. Um e u ciclo um caminho direcionado que comea e termina no mesmo n. e c o Dizemos que um grafo direcionado fortemente conexo se entre qualquer par de nodos distintos e Pi , Pj existir um caminho direcionado de comprimento nito que comea em Pi e termina em Pj . c Observe que quando um grafo direcionado com n nodos, se existe um caminho direcionado entre dois e nodos de , ento sempre existe um caminho direcionado entre estes dois nodos de comprimento menor que a ou igual a n 1 (Exerc 2.7). cio 2.28 Teorema. A Mn (C) satisfaz a propriedade FC se e somente se (A) fortemente conexo. e Agora estamos em condies de vericar a invertibilidade das matrizes esparsas oriundas da discretizao co ca de EDPs atravs de diferenas nitas: e c 2.29 Teorema. As matrizes de discretizao do problema modelo so invert ca a veis. a Prova. E fcil ver que as matrizes de discretizao obtidas no cap ca tulo anterior para o intervalo e para o quadrado so matrizes diagonalmente dominantes com dominncia diagonal estrita nas linhas correspona a dentes a pontos interiores adjacentes ` fronteira. Alm disso, elas satisfazem a propriedade FC. De fato, cada a e ndice i da matriz corresponde a um ponto interior Pi da malha e aij = 0 sempre que Pi e Pj so pontos a vizinhos naqueles esquemas. Ento, dados dois pontos distintos Pi , Pj fcil encontrar uma seqncia de a e a ue ndices i1 = i, i2 , i3 , . . . , im1 , im = j, com 1 m n, tais que todas as entradas matriciais ai1 i2 , ai2 i3 , . . . , aim1 im so no-nulas: no caso unidimensional, basta percorrer a malha diretamente de Pi at Pj (andando a partir a a e de Pi sempre para a direita ou sempre para a esquerda, conforme o caso, at encontrar Pj ), e no caso e bidimensional basta usar qualquer caminho interior de Pi at Pj (pode-se usar a ordem lexicogrca para e a percorrer a malha, ou a ordem lexicogrca inversa, dependendo das posies relativas de Pi e Pj ; no entanto, a co estes caminhos so mais longos que o necessrio). Em outras palavras, identicando as malhas de pontos a a internos com os grafos direcionados da matriz de discretizao, de modo que existe um arco direcionado entre ca

Rodney Josu Biezuner e

26

dois pontos da malha se e somente se eles so vizinhos, os esquemas de discretizao considerados garantem a ca que estes grafos so fortemente conexos. a Vericar a propriedade FC a partir do grafo direcionado de A pode ser impraticvel se o tamanho da a matriz for muito grande ou se a matriz no tiver origem na discretizao de um problema de EDPs. Existe a ca um mtodo computacional mais expl e cito para faz-lo: e 2.30 Teorema. Sejam A Mn (C) e Pi , Pj nodos de (A). Existe um caminho direcionado de comprimento m em (A) de Pi para Pj se e somente se (|A| )ij = 0 ou, equivalentemente, se e somente se [M (A) ]ij = 0. Prova. Provaremos o teorema por induo. Para m = 1 a armativa trivial. Para m = 2, temos ca e
n n m m

|A|
2 ij

2 ij

=
k=1

(|A|)ik (|A|)kj =
k=1

|aik | |akj | ,

de modo que |A|

= 0 se e somente se aik , akj so ambos no-nulos para algum a a ndice k. Mas isso e

equivalente a dizer que existe um caminho direcionado de comprimento 2 em (A) de Pi para Pj . Em geral, supondo a armativa provada para m, temos
n n

|A|
m

m+1 ij

=
k=1

(|A| )ik (|A|)kj =


k=1

(|A| )ik |akj | = 0

se e somente se (|A| )ik , akj so ambos no-nulos para algum a a ndice k. Por hiptese de induo, isso o ca e 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 e m + 1 em (A) de Pi para Pj . O mesmo argumento vale para M (A). 2.31 Denio. Seja A = (aij ) Mn (C). Dizemos que A ca A > 0 se aij > 0 para todos 1 i, j n. 0 se aij 0 para todos 1 i, j n e que

2.32 Corolrio. Seja A Mn (C). Existe um caminho direcionado de comprimento m em (A) de cada a nodo Pi para cada nodo Pj se e somente se |A| ou, equivalentemente, se e somente se
m

>0 > 0.

M (A)

2.33 Corolrio. Seja A Mn (C). A satisfaz a propriedade FC se e somente se a (I + |A|) ou, equivalentemente, se e somente se [I + M (A)]
n1 n1

>0

> 0.

Rodney Josu Biezuner e Prova. Temos (I + |A|)


n1

27

= I + (n 1) |A| +

n1 n1 n1 n1 2 |A| + . . . + |A| + |A| >0 2 n3


2 n1

se e somente se para cada par de ndices i, j com i = j pelo menos um dos termos |A| , |A| , . . . , |A| tem uma entrada positiva em (i, j). Pelo Teorema 2.30, isso ocorre se e somente se existe algum caminho direcionado em (A) de Pi para Pj com comprimento n1. Isto equivalente a A satisfazer a propriedade e FC. O mesmo argumento vale para M (A). Em geral, a maneira como uma matriz foi obtida (como as nossas matrizes de discretizao; veja a ultima ca seo do cap ca tulo) torna clara se elas so matrizes que satisfazem a propriedade FC ou no. Se isso a a no poss a e vel, e pretende-se vericar a propriedade FC atravs do Corolrio 2.33, prefer e a e vel calcular n1 [I + M (A)] , j que M (A) uma matriz composta apenas de 0s e 1s. a e

2.5

Matrizes Irredut veis

` As vezes, os resultados da seo anterior so formulados em termos de matrizes irredut ca a veis. Neste seo ca examinaremos esta formulao equivalente. ca Lembre-se que uma matriz de permutao P uma matriz quadrada cujas entradas so todas 0 ou 1 ca e a e, alm disso, em cada linha e em cada coluna de P existe exatamente um 1. Em particular, P uma matriz e e ortogonal, de modo que P 1 = P t , isto , a inversa de P tambm uma matriz de permutao. Um caso e e e ca especial de uma matriz de permutao uma matriz de transposio, que uma matriz de permutao T ca e ca e ca igual ` matriz identidade exceto em duas posies, isto , para algum par de a co e ndices xado k, l temos se (i, j) = (k, l) , (l, k) , (k, k) ou (l, l) , ij 1 e (i, j) = (k, l) ou se (i, j) = (l, k) , Tij = 0 se (i, j) = (k, k) ou se (i, j) = (l, l) . Matrizes de transposio so simtricas. O efeito de multiplicar uma matriz A por uma matriz de transposio ca a e ca a ` esquerda trocar a posio de duas linhas da matriz A (no caso acima, as linhas k e l), enquanto que a e ca multiplicao de A por uma matriz de transposio ` direita muda a posio de duas colunas de A (no caso ca ca a ca 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 a a22 a23 a24 0 0 1 0 a21 a23 a22 a24 AT = 21 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 permutao P o produto de matrizes de transposio P = T1 . . . Tm ; ca e ca em particular, P t = Tm . . . T1 . A matriz P t AP = Tm . . . T1 AT1 . . . Tm portanto obtida atravs da permutao de linhas e colunas de A, de modo que nenhum novo elemento e e ca e criado ou algum elemento existente de A destru do. 2.34 Denio. Dizemos que uma matriz A Mn (C) redut ca e vel se existe alguma matriz de permutao ca P e algum inteiro 1 m n 1 tal que P t AP = B 0 C D

Rodney Josu Biezuner e

28

onde B uma matriz m m, D uma matriz (n m) (n m), C uma matriz m (n m) e 0 e e e e a matriz nula (n m) m. Caso contrrio, dizemos que A irredut a e vel. Da denio vemos que se |A| > 0, ento A irredut ca a e vel, e para que A seja redut vel, ela precisa ter pelo menos n 1 zeros (caso m = 1). A motivao para este nome a seguinte. Suponha que queiramos resolver ca e o sistema Ax = b e que A seja redut vel. Ento, se escrevermos a A = P t AP = B 0 C 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 ento e a equivalente a resolver o sistema Ax = b. Escrevendo x= y z , b= b1 b2

onde y, b1 Cm e z, b2 Cnm , este sistema por sua vez equivalente ao sistema e By + Cz = b1 Dz = b2 Se resolvermos primeiro Dz = b2 e utilizarmos o valor de z encontrado na primeira equao resolvendo ca By = b1 Cz, teremos reduzido o problema original a dois problemas menores, mais fceis de resolver. a e vel 2.35 Teorema. Uma matriz A Mn (C) irredut se e somente se (I + |A|) ou, equivalentemente, se e somente se [I + M (A)]
n1 n1

>0

> 0.
n1

Prova. Para provar o resultado, mostraremos que A redut se e somente se (I + |A|) e vel possui pelo menos uma entrada nula. Assuma primeiramente que A redut e vel, de modo que para alguma matriz de permutao P tenhamos ca A=P Observe que B 0 C D P t =: P AP t .

|A| = P AP t = P A P t ,

j que o efeito de P apenas trocar linhas e colunas. Alm disso, note que a e e A = para alguma matriz Ck . Logo, como (I + |A|)
n1 k

Bk 0

Ck Dk

= I + P A Pt

n1

=P I+ A

n1

Pt

= P I + (n 1) |A| +

n1 n1 2 n1 n1 |A| + . . . + |A| + |A| Pt 2 n3

Rodney Josu Biezuner e

29

e todos os termos dentro dos colchetes so matrizes que tem um bloco (n m) m nulo no canto esquerdo a n1 inferior, segue que (I + |A|) redut e vel, logo possui entradas nulas e no pode ser positiva. a n1 Reciprocamente, suponha que (I + |A|) possui pelo menos uma entrada nula. Como
n1

(I + |A|)
n1

n1

=I+
m=1

n1 m |A| , m

(I + |A|) no possui entradas diagonais nulas, logo podemos assumir que para algum par i = j temos a n1 m (I + |A|) = 0, o que implica [|A| ]ij = 0 para todo 1 m n 1. Pelo Teorema 2.30 (e observao ca imediatamente posterior ` denio de grafo direcionado), no existe um caminho direcionado em (A) de a ca a comprimento nito entre Pi e Pj . Dena 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 denio destes conjuntos, no pode existir nenhum caminho de algum nodo de S2 para algum nodo de ca a m S1 , logo [|A| ]lk = 0 se Pl S2 e Pk S1 . E ambos os conjuntos so no-vazios, pois Pj S1 e Pi S2 . a a Renomeando os nodos de modo que S1 = P1 , . . . , Pm , S2 = Pm+1 , . . . , Pn , segue que existe uma matriz de permutao P tal que ca P t AP = B 0 C D .
ij

De fato, P justamente a matriz de permutao que troca as colunas de tal forma que as variveis anteriores e ca a correspondentes aos nodos P1 , . . . , Pm no sistema Ax = b so as novas m primeiras variveis do sistema linear a a Ax = b; como no existe nenhum caminho direcionado entre nenhum dos nodos Pm+1 , . . . , Pn e qualquer um a dos nodos P1 , . . . , Pm , temos aij = 0 para m + 1 i n e 1 j m pelo Teorema 2.30. 2.36 Corolrio. Uma matriz A Mn (C) irredut se e somente se ela satisfaz a propriedade FC. a e vel 2.37 Proposio. Se A uma matriz irredut ca e vel, diagonalmente dominante tal que |aii | > pelo menos alguma linha i, ento A invert a e vel. Alm disso, se A hermitiana e todos os elementos da diagonal principal de A so positivos, ento e e a a todos os autovalores de A so positivos. a Prova. O resultado segue do Teorema 2.34, do Corolrio 2.25 e do Teorema dos Discos de Gershgorin (veja a comentrios aps o Teorema 2.18). a o ca a 2.38 Corolrio. Os autovalores das matrizes de discretizao do problema modelo so positivos. a
n j=1 j=i

|aij | para

2.6

Exerc cios

ca tulo (Exemplos 2.3 at 2.11) e 2.1 Mostre que as normas matriciais introduzidas na primeira seo deste cap so de fato normas vetoriais. a

Rodney Josu Biezuner e 2.2 Mostre que a norma lp (Exemplo 2.5) uma norma matricial. e 2.3 Mostre que a norma l2 diferente da 2-norma em Mn (veja Exemplo 2.10). e

30

2.4 Seja V um espao vetorial de dimenso nita e 1 , 2 normas vetoriais quaisquer. Prove que existe c a uma constante C > 0 tal que 1 x 1 x 2 C x 1 C para todo vetor x V . 2.5 Seja uma norma matricial. Prove diretamente das propriedades de uma norma matricial que I 1. 2.6 a) Seja uma norma vetorial. Prove que se > 0, ento tambm uma norma vetorial. a e e b) Seja uma norma matricial. Conclua do Lema 2.14 que se < 1, ento no uma norma a a e matricial. c) Seja uma norma matricial. Se > 1, podemos concluir que no uma norma matricial? a e 2.7 Mostre que se um grafo direcionado com n nodos, se existe um caminho direcionado entre dois e nodos de , ento sempre existe um caminho direcionado entre estes dois nodos de comprimento menor a que ou igual a n 1

Cap tulo 3

Mtodos Iterativos Lineares e


Neste cap tulo investigaremos os mtodos iterativos bsicos para a resoluo de sistemas lineares e a ca Ax = b. Embora a matriz A que temos em mente em geral uma matriz grande e esparsa, do tipo que aparece em e esquemas de diferenas nitas para equaes diferenciais parciais, os mtodos considerados aqui requerem c co e em princ pio apenas que A seja uma matriz invert com todas as entradas diagonais aii no-nulas (embora vel a a matriz A deva satisfazer critrios adicionais, de acordo com cada mtodo, para assegurar a convergncia e e e para a soluo exata). ca Mtodos iterativos requerem um chute inicial x0 , ou seja, um vetor inicial que aproxima a soluo exata e ca x (se no h nenhuma informao dispon sobre a soluo exata, de modo que no temos como construir a a ca vel ca a o chute inicial de forma inteligente, x0 pode ser uma aproximao muito ruim de x). Uma vez que x0 ca e dado, o mtodo iterativo gera a partir de x0 uma nova aproximao x1 , que esperamos deve aproximar e ca melhor a soluo exata. Em seguida, x1 usada para gerar uma nova melhor aproximao x2 e assim por ca e ca diante. Desta forma, gera-se uma seqncia de vetores xk que espera-se convergir para x. Como na prtica ue a no podemos iterar para sempre, algum critrio de parada deve ser estabelecido a priori. Uma vez que xk a e esteja sucientemente prximo da soluo exata quanto se precise, de acordo com uma margem de tolerncia o ca a previamente xada, pra-se o processo de iterao e aceita-se xk como a soluo aproximada adequada para a ca ca o problema. Por exemplo, o critrio de parada pode ser estabelecido atravs de uma cota de tolerncia : e e a quando b Axk < ou quando xk+1 xk <

as iteraes so interrompidas e o ultimo valor aproximado obtido aceito como a melhor aproximao da co a e ca soluo dentro das circunstncias. ca a Os mtodos discutidos neste cap e tulo no necessitam de um bom chute inicial (embora, claro, quanto a e melhor o chute inicial, menor o nmero de iteraes necessrias para se chegar ` soluo aproximada com u co a a ca a exatido especicada). Embora os mtodos iterativos lineares so muitos lentos em relao a outros a e a ca mtodos iterativos desenvolvidos mais recentemente, sendo portanto raramente utilizados isoladamente, eles e so frequentemente usados hoje em dia como componentes de certos mtodos iterativos ultra-rpidos, tais a e a como o mtodo multigrid. e

31

Rodney Josu Biezuner e

32

3.1
3.1.1

Mtodo Iterativos Bsicos e a


Mtodo de Jacobi e

O mtodo iterativo linear mais simples (que j foi descrito tambm como o mais lento para convergir, embora e a e isso realmente depende da matriz A do sistema) o mtodo de Jacobi (1845) Escrevendo o sistema Ax = b e e na forma n a x = b1 j=1 1j j . . , . n anj xj = bn
j=1

se aii = 0 para todo i, cada xi pode ser isolado na i-sima equao e escrito na forma e ca xi =
n 1 bi aij xj . aii j=1 j=i

Isso sugere denir um mtodo iterativo da seguinte forma: suposto xk = xk , . . . , xk obtido no passo e n 1 anterior, obtemos xk+1 = xk+1 , . . . , xk+1 por n 1 xk+1 = i
n 1 bi aij xk . j aii j=1 j=i

(3.1)

No caso da frmula de cinco pontos para o problema de Poisson, como a equao para cada ponto (i, j) o ca dada por e ui,j1 ui,j+1 + 4ui,j ui1,j ui+1,j = h2 fi,j o mtodo de Jacobi e e 1 k k k 2 u + uk (3.2) i1,j + ui+1,j + ui,j+1 + h fi,j . 4 i,j1 No caso especial da equao de Laplace (f = 0) com condio de fronteira de Dirichlet no-nula, o mtodo ca ca a e de Jacobi simplesmente a propriedade do valor mdio discreta e e uk+1 = i,j uk+1 = i,j 1 k k k u + uk i1,j + ui+1,j + ui,j+1 . 4 i,j1 (3.3)

Em outras palavras, calculados os valores de u em todos os pontos da malha na iterao anterior, o novo ca valor de u em um ponto interior da malha nesta iterao calculado atravs da mdia dos seus quatro ca e e e pontos vizinhos. Os valores iniciais de u nos pontos interiores da malha para a primeira iterao (isto , o ca e chute inicial) podem ser atribuidos arbitrariamente ou atravs de algum argumento razovel; por exemplo, e a podemos utilizar uma mdia ponderada dos valores de fronteira para o valor inicial em cada ponto interior e da malha, de acordo com a posio do ponto em relao aos pontos das quatro fronteiras discretizadas. ca ca Em forma matricial, o algoritmo de Jacobi pode ser descrito da seguinte forma. Denotando por D = diag (a11 , . . . , ann ) a matriz diagonal cujas entradas so as entradas diagonais de A, temos que a xk+1 = D1 (D A) xk + b ou xk+1 = D1 Cxk + b (3.4) (3.5)

onde C = D A a matriz consistindo dos elementos restantes de A fora da diagonal principal. e

Rodney Josu Biezuner e

33

3.1.2

Mtodo de Gauss-Seidel e

Um mtodo iterativo que converge cerca de duas vezes mais rpido que o mtodo de Jacobi (na maioria e a e das aplicaoes) o mtodo de Gauss-Seidel (desenvolvido inicialmente por Gauss em 1819 para resolver c e e sistemas de equaes lineares que apareciam no seu mtodo de quadrados m co e nimos e obtendo sua forma nal em 1874 por Seidel), onde os valores de x so atualizados dentro de cada iterao, sem esperar pela prxima. a ca o Em outras palavras, obtido o valor de xk+1 este usado no lugar de xk no clculo seguinte de xk+1 . No e a i i+1 i sistema Ax = b em que aii = 0 para todo i, como antes isolamos cada xi na i-sima equao mas desta vez e ca escrevemos i1 n 1 xi = bi aij xj aij xj . aii j=1 j=i+1 Ento denimos a xk+1 i i1 n 1 = bi aij xk+1 aij xk j j aii j=1 j=i+1

(3.6)

pois os valores xk+1 , . . . , xk+1 j foram computados nesta iterao, enquanto que os valores xk , . . . , xk so ca n a i+1 1 i1 a fornecidos pela iterao anterior. ca Por exemplo, no caso da equao de Laplace, poder ca amos utilizar a frmula o uk+1 = i,j 1 k+1 k u + uk+1 + uk i+1,j + ui,j+1 i1,j 4 i,j1 (3.7)

assumindo que os pontos da malha so percorridos na ordem lexicogrca, de modo que quando vamos a a calcular o valor de u no ponto i, j na iterao k + 1, nesta mesma iterao j calculamos os valores de u em ca ca a k i 1, j e em i, j 1, e usamos estes valores para calcular uk+1 ao invs dos valores uk e i,j1 e ui1,j obtidos i,j na iterao anterior. ca Em forma matricial, o algoritmo de Gauss-Seidel pode ser descrito da seguinte forma. Dada uma matriz A, existe uma unica decomposio ca A=DLU (3.8) onde D uma matriz diagonal, L uma matriz estritamente triangular inferior e U uma matriz estritamente e e e triangular superior; de fato, D = diag (a11 , . . . , ann ) a parte diagonal de A, L a parte estritamente e e triangular inferior de A e U a parte estritamente triangular superior de A. Ento o algoritmo de Gausse a Seidel pode ser denido por xk+1 = D1 Lxk+1 + U xk + b (3.9) ou donde (D L) xk+1 = U xk + b, xk+1 = (D L)
1

U xk + b .

(3.10)

3.1 Exemplo. Existem matrizes para as quais o mtodo de Jacobi converge e o mtodo de Gauss-Seidel e e diverge, e vice-versa. Veja o Exerc 3.1. cio

3.1.3

Mtodo SOR e

O processo de corrigir uma equao atravs da modicao de uma varivel `s vezes chamado de relaxca e ca a e a amento. Antes da correo, a equao no verdadeira; como um conjunto de partes que no se ajustam, ca ca a e a ela est em estado de tenso. A correo de uma varivel relaxa a tenso. O mtodo de Gauss-Seidel efetua a a ca a a e relaxamento sucessivo, ou seja, passa de equao para equao, relaxando uma depois da outra. [Watkins] ca ca Por este motivo, os mtodos de Jacobi e de Gauss-Seidel so tambm chamados mtodos de relaxamento. e a e e Em muitos casos, a convergncia pode ser substancialmente acelerada atravs de sobrerelaxamento. Isso e e

Rodney Josu Biezuner e

34

signica que ao invs de fazer uma correo para a qual a equao satisfeita exatamente, ns fazemos e ca ca e o uma correo maior. No caso mais simples, escolhe-se um fator de relaxamento > 1 que sobrecorrige por ca aquele fator em cada passo (se mover um passo na direo de xk para xk+1 bom, mover naquela direo ca e ca > 1 passos melhor). Este o chamado mtodo de sobrerelaxamento sucessivo (SOR, successive e e e overrelaxation; desenvolvido em 1950 por Young): usando o mtodo de Gauss-Seidel obtemos e i1 n 1 xk+1 = bi aij xk+1 aij xk ; j i j aii j=1 j=i+1 da tomamos Isso pode ser resumido em xk+1 i i1 n 1 = xk + bi aij xk+1 aij xk xk . i j i j aii j=1 j=i+1 (3.11) xk+1 = xk + xk+1 xk . i i i i

Quando = 1, o mtodo SOR exatamente o mtodo de Gauss-Seidel. Um fator < 1 (subrelaxamento) e e e normalmente diminui a velocidade de convergncia. e Para a maioria dos problemas, o melhor valor para o fator de relaxamento desconhecido. Para a matriz e de discretizao obtida a partir da frmula de cinco pontos, sabido que o valor timo de , como veremos ca o e o e na prxima seo, o ca 2 = . (3.12) 1 + sen (h) Em forma matricial, o mtodo SOR pode ser descrito da seguinte forma. Como antes, dada uma matriz e A escrevemos A=DLU (3.13) onde D uma matriz diagonal, L uma matriz estritamente triangular inferior e U uma matriz estritamente e e e triangular superior. Ento, escrevendo o algoritmo SOR na forma a
i1 n

aii xk+1 = aii xk + bi i i


j=1

aij xk+1 j
j=i

aij xk , j

temos ou

Dxk+1 = Dxk + Lxk+1 + (U D) xk + b 1 D L xk+1 = xk+1 = 1 DL


1

(3.14)

1 D+U 1 D+U

xk + b,

donde

xk + b .

(3.15)

3.1.4

Comparao da Velocidade de Convergncia dos Trs Mtodos no Probca e e e lema Modelo

A tabela a seguir foi extra de [Watkins], pgs. 533 e 542. Os mtodos introduzidos acima foram usados da a e para resolver o sistema linear Ax = b onde A a matriz de discretizao obtida a partir da frmula dos e ca o

Rodney Josu Biezuner e


2

35

cinco pontos do laplaciano no quadrado unitrio = (0, 1) e b estabelecido pela condio de fronteira de a e ca Dirichlet dada por 0 se x = 0, y se x = 1, g (x, y) = se y = 0, (x 1) sen x x (2 x) se y = 1, ou seja, para resolver o problema discretizado d ud = 0 ud = gd As iteraoes foram interrompidas quando c uk+1 uk |uk+1 |2
2

em d , sobre d .

< 108 .

O nmero de iteraes necessrias para convergir de acordo com esta margem de tolerncia, para trs renau co a a e mentos poss veis da malha (correspondentes a matrizes de dimenses n = 81, 361 e 1521, respectivamente), o de acordo com cada mtodo e para diferentes valores de no caso do mtodo SOR apresentado na tabela e e e abaixo. Jacobi SOR ( = 0.8) Gauss-Seidel SOR ( = 1.4) SOR ( = 1.6) SOR ( = 1.7) SOR ( = 1.8) SOR ( = 1.9) SOR ( = 2.0) h = 0.1 299 235 160 67 42 57 86 176 h = 0.05 1090 845 581 262 151 96 89 180 h = 0.025 3908 3018 2082 955 577 412 252 179

Vemos que o mtodo de Gauss-Seidel cerca de duas vezes mais rpido para convergir que o mtodo de e e a e Jacobi e que dependendo da escolha de , o mtodo SOR pode ser at dez vezes mais rpido que o mtodo e e a e de Gauss-Seidel para a malha mais renada. Subrelaxamento no ajuda e para = 2 o mtodo SOR a e e divergente.

3.1.5

Mtodo de Jacobi Amortecido e

O mtodo de Gauss-Seidel pode ser sobrerelaxado atravs de um parmetro > 1 para obter um mtodo e e a e que converge mais rpido. J o mtodo de Jacobi no pode em geral ser sobrerelaxado, porque o mtodo a a e a e obtido no converge. Ele pode no entanto ser subrelaxado atravs de um parmetro < 1 para obter um a e a mtodo convergente, se bem que mais vagaroso. A vantagem de se utilizar um tal mtodo que para certos e e e valores de ele um timo suavizador de erro (em um sentido que ser explicado mais tarde), enquanto e o a que o mtodo de Jacobi usual no possui esta propriedade. Assim, o mtodo de Jacobi amortecido pode ser e a e usado em mtodos multigrid, como veremos mais tarde. e Pelo mtodo de Jacobi usual obtemos e xk+1 = i
n 1 bi aij xk , j aii j=1 j=i

Rodney Josu Biezuner e e tomamos ou seja,

36

xk+1 = xk + xk+1 xk , i i i i
n

(3.16)

1 xk+1 = xk + aij xk xk . i j i i aii bi j=1


j=i

Este mtodo conhecido como mtodo de Jacobi amortecido, mtodo de Jacobi ponderado ou ainda e e e e mtodo de relaxamento simultneo (diferente do mtodo de relaxamento sucessivo, baseado no mtodo de e a e e Gauss-Seidel, em que cada varivel substitu sucessivamente dentro da mesma iterao ` medida que a e da ca a ela atualizada; no mtodo de Jacobi, as variveis so todas substitu e e a a das simultameamente na prxima o iterao). ca Em forma matricial, o mtodo de Jacobi amortecido pode ser descrito da seguinte forma. Denotando por e D a parte diagonal de A, temos
n

aii xk+1 = aii xk + bi i i


j=1

aij xk , j

temos ou

Dxk+1 = Dxk + b Axk 1 D xk+1 = xk+1 = 1 D


1

(3.17)

1 D A xk + b, 1 D A xk + b . (3.18)

donde

Em contraste com o mtodo SOR, que converge em geral para 0 < < 2, o mtodo de Jacobi amortecido e e converge para 0 < 1 (veja a prxima seo). o ca

3.2

Anlise de Convergncia dos Mtodos Iterativos Lineares a e e

Os mtodos iterativos bsicos so casos especiais de uma classe geral de mtodos chamados mtodos iterativos e a a e e lineares: 3.2 Denio. Um mtodo iterativo linear para resolver o sistema Ax = b um mtodo da forma ca e e e xk+1 = Rxk + N b onde R e N so matrizes dadas. A matriz R chamada a matriz de iterao do mtodo. a e ca e Em geral, um mtodo iterativo linear para resolver o sistema linear e Ax = b envolve a decomposio da matriz A na forma ca A = B C, (3.19)

onde B necessariamente uma matriz invert e vel, e em seguida a resoluo iterativa do sistema de equaes ca co Bxk+1 = Cxk + b (3.20)

Rodney Josu Biezuner e ou, mais explicitamente,

37

xk+1 = B 1 Cxk + b .

Na notao da denio, temos que a matriz de iterao ca ca ca e R = B 1 C = B 1 (B A) = I B 1 A e N = B 1 . (3.21) (3.22)

Se xk x, ento Bx = Cx + b, donde Ax = b. Do ponto de vista prtico, importante que a matriz B a a e seja fcil de resolver (mesmo que a inversa de B no seja efetivamente calculada), como nos exemplos da a a seo anterior: ca B Jacobi Jacobi amortecido Gauss-Seidel SOR D 1 D DL 1 DL C DA 1 DA U 1 D+U 1 D 1 DL
1

R D1 (D A) 1 DA
1

(D L)
1

1 D+U

Para obter uma convergncia rpida tambm gostar e a e amos que B A e C 0. Deste ponto de vista, o ideal seria B = A e C = 0 (convergncia em uma iterao), mas isso viola em geral o critrio que B seja fcil e ca e a de resolver. Um compromisso necessrio: B deve aproximar A o melhor poss e a vel sem se tornar muito complicada.

3.2.1

Convergncia dos Mtodos Iterativos Lineares e e


ek = x xk , (3.23)

3.3 Denio. Para mtodos iterativos em geral, o erro algbrico denido por ca e e e

enquanto que o erro residual dado por e rk = b Axk . (3.24)

O erro algbrico tem interesse puramente terico (para provar que determinado mtodo iterativo converge, e o e precisamos mostrar que o erro algbrico tende a zero), j que ele s pode ser calculado uma vez que se e a o conhece a soluo exata, e se este for o caso obviamente no h necessidade de resolver o sistema. J o erro ca a a a residual pode ser usado como critrio de parada para o mtodo iterativo. O erro algbrico e o erro residual e e e esto relacionados atravs da expresso: a e a Aek = rk , (3.25) pois Aek = Ax Axk = b Axk = rk . Para os mtodos iterativos lineares, como e Bek+1 = Bx Bxk+1 = Ax + Cx Cxk b = C x xk = Cek , segue que ek+1 = B 1 C ek

Rodney Josu Biezuner e ou

38

ek+1 = Rek .

(3.26)

Por este motivo, a matriz de iterao tambm chamada de matriz de propagao do erro. Segue de (3.26) ca e e ca que ek = R k e0 , (3.27) de modo que o erro converge para 0, independentemente do chute inicial x0 , se e somente se Rk 0. Isso ocorre se e somente se existe alguma norma matricial tal que R < 1. Obter uma norma matricial que satisfaz esta propriedade, no entanto, dif e cil. Vamos obter uma condio necessria e suciente para ca a Rk 0 em termos do raio espectral da matriz de iterao, que em geral um pouco mais fcil de calcular. ca e a Antes, para motivar o resultado, suponha que R seja uma matriz diagonalizvel com 1 , . . . , n os seus a autovalores e {v1 , . . . , vn } uma correspondente base de autovetores. Escrevendo o erro inicial como uma combinao linear dos autovetores, temos ca
n

e0 =
i=1

ai vi .
n

Logo, ek = Rk e0 =

ai k vi , i
i=1

de modo que ek

|ai | |i | |vi | .
i=1

Como |i | 0 se e somente se |i | < 1, conclu mos que ek 0 qualquer que seja o erro inicial (isto , e qualquer que seja o chute inicial), se e somente se (R) = max |i | < 1 .
1 i n

3.4 Lema. Se A Mn (C) e qualquer norma matricial, ento e a (A) A .

Prova. Seja um autovalor qualquer de A e x um autovetor no-nulo associado a , de modo que a Ax = x. Considere a matriz X Mn (C) cujas colunas so todas iguais ao vetor x. Temos tambm a e AX = X de modo que || X = AX donde || A para todo autovalor de A. Como existe um autovalor de A tal que (A) = ||, isso prova o resultado. 3.5 Lema. Seja A Mn (C) e > 0 dado. Ento existe uma norma matricial tal que a (A) A (A) + . (3.28) A X ,

Rodney Josu Biezuner e

39

Prova. Toda matriz complexa A triangularizvel atravs de uma matriz unitria U isto , isto , existe e a e a e e uma matriz triangular T e uma matriz U que satisfaz U U = U U = I (veja [Homan-Kunze]) tais que A = U T U ; T chamada a forma triangular ou forma normal de e 1 a12 2 T = Schur de A. Seja ento a a22 . . . a1n a23 . . . a2n 3 . . . a3n . .. . . . n a forma triangular de A. Para t R arbitrrio, considere a matriz diagonal a t t2 Dt = . .. . n t Temos = 1 a12 t1 2 a22 t2 a23 t1 3 ... ... ... .. . ... ... ... n1 a1n tn+1 a2n tn+2 a3n tn+3 . . . an1,n t1 n .

1 Dt T Dt

1 Logo, para t > 0 sucientemente grande, a matriz Dt T Dt tem a propriedade que a soma dos valores absolutos de elementos fora da diagonal principal menor que . Em particular, se L denota a norma do e mximo das somas das linhas, podemos garantir que a 1 Dt T Dt

(A) +

para t sucientemente grande. Portanto, xado um tal t, se denirmos uma norma por
1 A := Dt U AU Dt L

1 U Dt

1 AU Dt

teremos Pelo lema anterior, (A)

1 A = Dt U AU Dt

1 = Dt T Dt

(A) + .

A .

3.6 Lema. Seja A Mn (C). Se existe alguma norma matricial tal que A < 1, ento a Ak 0. Prova. Se A < 1, ento a Ak A
k

0.

Rodney Josu Biezuner e 3.7 Proposio. Seja A Mn (C). Ento ca a se e somente se (A) < 1. Prova. Se existe algum autovalor de A tal que ||

40

Ak 0

1 e x um autovetor no-nulo correspondente, ento e a a

Ak x = k x no converge para 0. Reciprocamente, se (A) < 1, ento pelo Lema 3.5 existe uma norma matricial tal a a que A < 1, logo Ak 0 pelo lema anterior. Finalmente obtemos uma condio necessria e suciente para um mtodo iterativo linear convergir: ca a e 3.8 Corolrio. Seja R a matriz de iterao de um mtodo iterativo linear. Ento a ca e a ek 0 se e somente se (R) < 1. Em outras palavras, um mtodo iterativo linear convergente independentemente da escolha do chute e e inicial se e somente se todos os autovalores da matriz de iterao tm valor absoluto menor que 1. ca e Portanto, a anlise da convergncia de um determinado mtodo iterativo linear passa pela anlise dos aua e e a tovalores de sua matriz de iterao R. Como esta ultima depende da matriz de coecientes A do sistema ca linear, a convergncia ou no de qualquer um dos mtodos iterativos lineares vai depender da matriz A. e a e

3.2.2

Velocidade de Convergncia dos Mtodos Iterativos Lineares e e

O raio espectral tambm d informao sobre a velocidade de convergncia. Se ns tivermos dois mtodos e a ca e o e iterativos lineares diferentes, isto , duas maneiras diferentes de decompor a matriz A: e A = B1 C1 = B2 C2 , ento o segundo mtodo convergir mais rpido se e somente se a e a a (R2 ) < (R1 ) . Em particular, a velocidade de convergncia relativa dos mtodos iterativos lineares tambm vai depender e e e da matriz A: para certas matrizes um determinado mtodo superior ao outro, enquanto que para outras e e matrizes o contrrio verdadeiro. a e Vamos analisar a velocidade de convergncia dos mtodos iterativos com maior preciso. Novamente ` e e a a t tulo de motivao, suponha que R uma matriz diagonalizvel com seu maior autovalor sendo um autovalor ca e a simples. Ordene os autovalores de R na forma |1 | > |2 | ... |n |

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


n

e0 =
i=1

ai vi ,

donde ek = Rk e0 =

ai k vi , i
i=1

Rodney Josu Biezuner e segue que ek = k a1 v1 + 1


i=2

41

ai
k

i 1

vi .

Como i 1
k

0,

a taxa de convergncia determinada por |1 | . Para k grande, temos e e e k k a 1 v 1 . 1 Portanto, ek+1 = |1 | = (R) . |ek |

(3.29)

Em outras palavras, a convergncia linear com taxa de convergncia igual ao raio espectral. Se a1 = e e e 0 a convergncia ser mais rpida, pois depender do mdulo do segundo autovalor, mas obviamente e a a a o e extremamente raro que o erro inicial satisfaa esta condio, isto , que ele no tenha nenhuma componente c ca e a na direo do primeiro autovetor. Para o caso geral, precisamos do seguinte resultado: ca 3.9 Proposio. Seja A Mn (C) e uma norma matricial. Ento ca a (A) = lim Ak
1/k

Prova. Como os autovalores da matriz Ak so as k-simas potncias dos autovalores de A (este resultado a e e pode ser mais facilmente visto a partir da forma triangular de A), temos que (A) = Ak donde (A) Por outro lado, dado > 0, a matriz B= Ak
k

Ak ,
1/k

1 A (A) +

tem raio espectral menor que 1, logo B k 0. Portanto, existe algum N = N (, A) tal que B k < 1, para todo k > N . Logo, donde para todo k > N . 3.10 Denio. A taxa mdia de convergncia de um mtodo iterativo linear com matriz de iterao ca e e e ca R denida como sendo e 1 1/k Rk (R) = log10 Rk (3.30) = log10 Rk k e a taxa assinttica de convergncia dada por o e e R (R) = lim Rk (R) .
k

Ak < ( (A) + ) , Ak
1/k

< (A) +

(3.31)

Rodney Josu Biezuner e

42

3.11 Corolrio. Seja R a matriz de iterao de um mtodo iterativo linear. Ento a taxa assinttica de a ca e a o convergncia do mtodo dada por e e e R (R) = log10 (R) . Prova. Pois R (R) = lim log10 Rk
k 1/k

(3.32)
1/k

= log10 lim

Rk

= log10 (R) .

A taxa assinttica de convergncia mede o aumento no nmero de casas decimais corretas na soluo por o e u ca iterao. De fato, usando a norma matricial do Lema 3.5 e medindo as normas dos vetores de acordo, temos ca Rk+1 e0 ek+1 = |ek | |Rk e0 | donde log10 ou Assim, se ek = O 10p , ek+1 = O 10q , teremos q p R (R) , isto , reduzimos R (R) q p casas decimais no erro. Visto de outra forma, como e ek+m Rk+m e0 = |ek | |Rk e0 | donde log10 ou m= Rm = (R) + O () ,
m

R = (R) + ,

ek+1 = log10 (R) + O () |ek | (3.33)

log10 ek log10 ek+1 = R (R) + O () .

ek+m m log10 (R) , |ek | log10 ek+m / ek log10 (R) (3.34)

o nmero de iteraes necessrias para diminuir o erro de um nmero prescrito de casas decimais. e u co a u

3.2.3

Convergncia para Matrizes Simtricas Positivas Denidas e e

Para matrizes reais simtricas positivas denidas mais fcil provar a convergncia dos mtodos iterativos e e a e e lineares. Temos o seguinte resultado bsico a seguir. Antes precisamos da seguinte denio: a ca 3.12 Denio. Introduzimos uma ordenao parcial em Mn denindo ca ca A se Ax, x para todo x C .
n

B Bx, x

Rodney Josu Biezuner e Em particular, se A uma matriz positiva denida, segue que A e A) e denotamos este fato por A > 0.

43 I para algum (o menor autovalor de

Lembramos que se A uma matriz simtrica positiva denida e P uma matriz invert e e e vel, ento B = P t AP a tambm uma matriz simtrica positiva denida, pois e e e B t = P t AP e
t

= P t At P t

= P t AP = B

Bx, x = P t AP x, x = AP x, P x .

3.13 Teorema. Seja A uma matriz simtrica positiva denida e seja A = B C com B invert e vel. Ento o a mtodo iterativo linear com matriz de iterao R = B 1 C converge se e somente se a matriz simtrica e ca e B t + C positiva denida. e Prova. Para ver que B t + C simtrica, escreva B t + C = B t + B A e note que e e Bt + C
t

= Bt + B A

= B + B t A = B t + B A = B t + C.

Medimos a norma do erro atravs da norma induzida por A e |x|A := Ax, x e consideraremos a norma matricial
A 1/2

induzida por esta norma. Se provarmos que R


A

< 1,

o mtodo convergir. Temos e a R


2 A

= B 1 C

2 A

= sup
x=0

B 1 Cx
2 |x|A

2 A

= sup
x=0

AB 1 Cx, B 1 Cx C t B t AB 1 Cx, x = sup . Ax, x Ax, x x=0

(3.35)

Observe que C t B t AB 1 C uma matriz simtrica positiva denida, pois e e C t B t AB 1 C = B t A B t AB 1 (B A) = I AB t A I B 1 A = I B 1 A A I B 1 A . Portanto, para provar que R
A t

< 1, basta mostrar que C t B t AB 1 C < A. (3.36)

Continuando o desenvolvimento da expresso em outra direo, temos a ca C t B t AB 1 C = 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 = A B 1 A


t

B t + C B 1 A.

de modo que (3.36) vale se e somente se B t + C positiva denida. e

Rodney Josu Biezuner e

44

3.3
3.3.1

Convergncia dos Mtodos Iterativos Lineares para Matrizes e e de Discretizao ca


Convergncia do Mtodo de Jacobi e e
n j=1 j=i

3.14 Teorema. Se A uma matriz irredut e vel, diagonalmente dominante tal que |aii | > menos alguma linha i, ento o mtodo de Jacobi converge. a e

|aij | para pelo

Prova. Seja D a parte diagonal da matriz A e R = D1 (D A) = I D1 A a matriz de iterao do ca mtodo de Jacobi para A. Suponha por absurdo que exista um autovalor de R tal que || e 1. Como det 1 R I = det (R I) = 0, temos det I 1 R = 0. Por outro lado, observe que I 1 R tambm irredut e e vel, pois Rij = I D1 A = 0 aij aii se i = j, se i = j, se i = j, se i = j,

ij

I 1 R

ij

1 aij 1 aii

de modo que, onde A se anula, I 1 R tambm se anula. Alm disso, I 1 R diagonalmente dominante e e e 1 e estritamente dominante nas linhas onde A , pois || e 1, I 1 R ii = 1 e
n

I 1 R
j=1 j=i

ij

|| |aii |

|aij |
j=1 j=i

1 |aii |

|aij | .
j=1 j=i

Mas, pela Proposio 2.36, isso implica que I 1 R invert ca e vel, uma contradio. ca O Teorema 3.14 mostra que o mtodo de Jacobi converge para as matrizes de discretizao obtidas atravs e ca e dos esquemas de diferenas nitas do Cap c tulo 1. Atravs do Teorema 3.14, fomos capazes de provar a convergncia do mtodo de Jacobi para as matrizes de e e e discretizao sem calcular explicitamente os seus raios espectrais. Para analizar a velocidade de convergncia ca e do mtodo de Jacobi, no entanto, necessrio obter os raios espectrais destas matrizes. Vamos fazer isso para e e a as matrizes de discretizao obtidas a partir da frmula de trs pontos unidimensional e a partir da frmula ca o e o de cinco pontos bidimensional. Para isso, precisaremos obter os autovalores destas matrizes de discretizao. ca No caso da frmula de trs pontos unidimensional, lembrando que as autofunes para o problema de o e co Dirichlet do laplaciano no intervalo [0, 1] so as funes trigonomtricas a co e Uj (x) = sen jx, isso sugere que os autovetores uj da matriz A sejam os vetores de coordenadas Uj (x1 ) , Uj (x2 ) , . . . , Uj (xn2 ) , Uj (xn1 ) = Uj (h) , Uj (2h) , . . . , Uj ((n 2) h) , Uj ((n 1) h) , ou seja, como h = 1/n, os vetores uj = sen 2j (n 2) j (n 1) j j , sen , . . . , sen , sen n n n n .

Usando identidades trigonomtricas, vamos vericar que isso de fato acontece: e

Rodney Josu Biezuner e

45

3.15 Lema. Os n 1 autovalores da matriz de discretizao A da frmula dos trs pontos unidimensional ca o e so a 2 j 4 j j = 2 1 cos = 2 sen2 (3.37) h n h 2n e os autovetores correspondentes so a uj = j = 1, . . . , n 1. Prova. Temos 2 1 1 2 1 1 .. . .. . (n 2) j 1 sen n 2 (n 1) j sen n j n 2j sen n . . . sen = j 2j 2 sen sen n n j 2j 3j + 2 sen sen sen n n n . . . (n 3) j (n 2) j (n 1) j + 2 sen sen sen n n n (n 2) j (n 1) j sen + 2 sen n n j sen n 2j sen n j . . 1 cos , . n (n 2) j sen n (n 1) j sen n sen j , n sen j 2j (n 2) j (n 1) j , sen , . . . , sen , sen n n n n (3.38)

.. ..

. 1 2 1

. 1

=2

pois 2 sen j 2j j j j j sen = 2 sen 2 sen cos = 2 1 cos n n n n n n

(n k 1) j (n k) j (n k + 1) j + 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 j (n k) j j (n k) j cos cos sen sen n n n n j (n k) j = 2 1 cos sen , n n sen

Rodney Josu Biezuner e e sen (n 2) j (n 1) j + 2 sen n n (n 1) j (n 1) j j + 2 sen = 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

46

onde na penltima identidade usamos o fato que u cos porque 0 = sen j = sen (n 1) j j (n 1) j j (n 1) j j + = sen cos + cos sen . n n n n n n (n 1) j j (n 1) j j sen = sen cos n n n n

No caso da frmula de cinco pontos bidimensional, lembrando que as autofunes de Dirichlet do laplao co ciano no quadrado unitrio [0, 1] [0, 1] so as funes a a co Ukl (x, y) = sen kx sen ly, isso sugere que os autovetores ukl da matriz A na ordem lexicogrca so os vetores de coordenadas a a Ukl (x1 , y1 ) , Ukl (x2 , y1 ) , . . . , Ukl (xn1 , y1 ) , Ukl (x1 , y2 ) , Ukl (x2 , y2 ) , . . . , Ukl (xn1 , y2 ) , . . . Ukl (x1 , yn1 ) , Ukl (x2 , yn1 ) , . . . , Ukl (xn1 , yn1 ) ou seja, Ukl (h, h) , Ukl (2h, h) , . . . , Ukl ((n 1) h, h) , Ukl (h, 2h) , Ukl (2h, 2h) , . . . , Ukl ((n 1) h, 2h) , . . . Ukl (h, (n 1) h) , Ukl (2h, (n 1) h) , . . . , Ukl ((n 1) h, (n 1) h) , ou seja, como h = 1/n, os vetores ukl = l 2k l (n 1) k l k sen , sen sen , . . . , sen sen , n m n n n n k 2l 2k 2l (n 1) k 2l sen sen , sen sen , . . . , sen sen , n n n n n n ..., sen sen k (n 1) l 2k (n 1) l (n 1) k (n 1) l sen , sen sen , . . . , sen sen n n n n n n .

Rodney Josu Biezuner e


2

47

3.16 Lema. Os (n 1) autovalores da matriz de discretizao A da frmula dos cinco pontos bidimensional ca o so a 2 k l 4 k l kl = 2 2 cos cos = 2 sen2 + sen2 (3.39) h n n h 2n 2n e os autovetores correspondentes so a ukl = k l 2k l (n 1) k l sen , sen sen , . . . , sen sen , n n n n n n 2l 2k 2l (n 1) k 2l k sen , sen sen , . . . , sen sen , sen n n n n n n ..., sen sen k (n 1) l 2k (n 1) l (n 1) k (n 1) l sen , sen sen , . . . , sen sen n n n n n n ,

(3.40)

k = 1, . . . , n 1, l = 1, . . . , m 1. Prova. Embora a demonstrao deste lema possa ser feita de maneira anloga ` do lema anterior, usando ca a a identidades trigonomtricas, daremos uma demonstrao diferente. Lembrando que as autofunes e os e ca co autovalores de Dirichlet do laplaciano no retngulo so facilmente obtidos atravs do mtodo de separao a a e e ca de variveis, encontraremos os autovalores da matriz A usando um mtodo de separao de variveis discreto a e ca a para achar os autovalores do laplaciano discreto dado pela frmula dos cinco pontos: o ui,j1 + ui1,j 4ui,j + ui+1,j + ui,j+1 = ui,j . h2 (3.41)

Em particular, este mtodo no depende da maneira como os pontos da malha so ordenados (no depende e a a a da matriz A usada para representar o laplaciano discreto). Como no mtodo de separao de variveis e ca a cont nuo, assumimos que as solues da equao discreta acima so produtos da forma co ca a ui,j = F (i) G (j) , (3.42)

onde F e G so funes de uma varivel inteira. Substituindo esta expresso na equao de Helmholtz a co a a ca discreta, obtemos F (i) G (j 1) + F (i 1) G (j) 4F (i) G (j) + F (i + 1) G (j) + F (i) G (j + 1) = h2 F (i) G (j) . Dividindo esta equao por F (i) G (j), segue que ca F (i 1) 2F (i) + F (i + 1) G (j 1) 2G (j) + G (j + 1) + = h2 . F (i) G (j) Separando as variveis, conclu a mos que cada um dos quocientes acima independente de i ou de j, isto , e e eles so constantes: a F (i 1) 2F (i) + F (i + 1) = A, F (i) G (j 1) 2G (j) + G (j + 1) = B, G (j) onde as constantes , esto relacionadas pela identidade a A + B = h2 . (3.45) (3.43) (3.44)

Rodney Josu Biezuner e

48

Estas equaes podem ser escritas como frmulas de recorrncia (anlogas `s equaes diferenciais ordinrias co o e a a co a obtidas no mtodo de separao de variveis cont e ca a 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 e e 2 = A + 2, 2 = B + 2. Desta forma, as equaes para F e G tornam-se co F (i 1) 2F (i) + F (i + 1) = 0, G (j 1) 2G (j) + G (j + 1) = 0. (3.46) (3.47)

Vamos resolver a equao para F , j que a equao para G idntica. Substituindo em (3.46) uma soluo ca a ca e e ca da forma F (i) = z i (3.48) obtemos z i1 2z i + z i+1 = 0,

donde, dividindo por z i1 extra mos a equao quadrtica (anloga ` equao indicial) ca a a a ca z 2 2z + 1 = 0. As duas ra zes so a z = 2 1, com z+ + z = 2 e z+ z = 1. Portanto, a soluo geral para a equao (3.46) ca ca e
i i F (i) = c1 z+ + c2 z

(3.49)

para algumas constantes c1 , c2 . Para determinarmos estas constantes e tambm , aplicamos as condies e co 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 .

(3.50)

Como a equao para F homognea, a constante c arbitrria. Aplicando a segunda, segue que ca e e e a
n n z+ = z ,

ou, como z+ z = 1,

2n z+ = 1

Conseqentemente, z+ uma 2n-sima raiz complexa de 1: u e e z+ = eij/n para algum inteiro 1 k 2n 1, onde i = 1. Como z = 1/z+ , podemos restringir 0 (3.50) produz todas as solues no-triviais F de (3.46). co a k (3.51) n1 e

Rodney Josu Biezuner e Portanto, = e, escolhendo c = 1/2, Fk (i) = eiki/n eiki/n = sen Analogamente, = cos e Segue que os autovalores so a kl = k l 2 2 cos cos h2 n n jl ik sen . n m l , n 0 l n 1, z+ + z eik/n + eik/n k = = cos , 2 2 n 0 ik . n k n 1,

49

Gl (j) = sen

jl . n

e as coordenadas das autofunes associadas so dadas por co a (ukl )i,j = Fk (i) Gl (j) = sen

3.17 Teorema. Seja A a matriz de discretizao obtida a partir da frmula de trs pontos unidimensional ca o e ou a partir da frmula de cinco pontos bidimensional. Seja R = D1 (D A) a matriz de iterao do o ca mtodo de Jacobi. Ento e a (R) = cos . (3.52) n Prova. Vamos provar para a frmula de cinco pontos bidimensional; o argumento para a frmula de trs o o e pontos unidimensional anlogo e ca deixado como exerc e a cio. Para o mtodo de Jacobi, a matriz de e discretizao xk+1 = Rxk + D1 b obtida atravs da frmula: ca e e o uk+1 = i,j J vimos no Lema 3.16 que a
2 ukl ukl + 4ukl ukl ukl ukl i1,j i+1,j i,j i,j1 i,j+1 = kl h i,j

1 k k k u + uk i,j+1 + ui1,j + ui+1,j . 4 i,j1

com kl = Da segue que Logo para

2 h2

2 cos

k l cos n n

2 ukl + ukl + ukl + ukl ukl i,j1 i,j+1 i1,j i+1,j = 4 kl h i,j

1 kl kl u + ukl + ukl + ukl i,j+1 i1,j i+1,j = lk ui,j 4 i,j1 1 1 lk = 1 kl h2 = 1 4 2 2 cos k l cos n n = 1 2 cos k l + cos n n .

Estes so os autovalores da matriz de iterao de Jacobi para a matriz de discretizao obtida a partir da a ca ca frmula de cinco pontos (observe que elas possuem os mesmos autovetores; no entanto R possui autovalores o nulos). Segue que o mximo autovalor ocorre quando k = l = 1, logo a (R) = cos . n

Rodney Josu Biezuner e

50

Para o quadrado unitrio temos a (R) = cos (h) . (3.53) Vemos em particular que (R) 1 quando h 0, de modo que a velocidade de convergncia do mtodo e e de Jacobi vai cando cada vez menor para malhas mais renadas. Podemos dizer mais usando a expanso a da funo cosseno em torno da origem ca 1 cos x = 1 x2 + O x4 ; 2 se h pequeno podemos aproximar e 2 2 h , 2 de modo que (R) 1 quadraticamente quando h 0. Em outras palavras, para uma malha duas vezes mais renada (isto , h reduzido pela metade), o mtodo de Jacobi cerca de quatro vezes mais vagaroso e e e em mdia (consulte novamente a tabela no nal da seo anterior). A tabela abaixo mostra os valores do e ca raio espectral para alguns valores de h: cos (h) 1 h (R) 0.1 0.9511 0.05 0.9877 0.025 0.9969

Para h = 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 m= iteraes. co log10 0.1 1 1 = = 742 log10 (R) log10 (R) 0.00135

3.3.2

Convergncia do Mtodo de Gauss-Seidel e e


n j=1 j=i

3.18 Teorema. Se A uma matriz irredut e vel, diagonalmente dominante tal que |aii | > menos alguma linha i, ento o mtodo de Gauss-Seidel converge. a e

|aij | para pelo

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 iterao do mtodo de Gauss-Seidel para A. ca e Escrevemos 1 1 R = (D L) U = D I D1 L U ou R = I D1 L
1

D1 U.

(3.54) 1; como na demonstrao do Teorema ca


1

Suponha por absurdo que exista um autovalor de R tal que || 3.9, temos det I 1 R = det I 1 I D1 L Agora, observando que det I D1 L = 1

D1 U

= 0.

Rodney Josu Biezuner e porque I D1 L uma matriz triangular inferior com apenas 1s na diagonal principal, escrevemos e 0 = det I 1 I D1 L
1

51

D1 U I D1 L I D1 L
1

= det I D1 L det I 1 = det I D1 L I 1

D1 U

D1 U

= det I D1 L 1 D1 U . Por outro lado, D1 A = I D1 L D1 U

irredut e vel, diagonalmente dominante e estritamente dominante nas linhas onde A porque e D1 A = 1 aij aii se i = j, se i = j.

ij

Logo, a matriz I D1 L 1 D1 U tambm satisfaz estas propriedades, pois I, D1 L e D1 U so e a respectivamente a parte diagonal, a parte triangular inferior estrita e a parte triangular superior estrita da matriz D1 A, e multiplicar a parte triangular inferior estrita pelo nmero 1 cujo mdulo menor que ou u o e igual a 1 no alterar a dominncia diagonal (na verdade s tende a melhor-la) nem acrescentar zeros ` a a a o a a a matriz. A Proposio 2.16 implica ento que I D1 L 1 D1 U invert ca a e vel, um absurdo. Usando o Teorema 3.18, conclu mos que o mtodo de Gauss-Seidel converge para as matrizes de discretizao e ca obtidas atravs dos esquemas de diferenas nitas do Cap e c tulo 1. Para analizar a velocidade de convergncia e do mtodo de Gauss-Seidel, vamos obter os raios espectrais para as matrizes de discretizao obtidas a partir e ca da frmula de trs pontos unidimensional e a partir da frmula de cinco pontos bidimensional. o e o ca o e 3.19 Teorema. Seja A a matriz de discretizao obtida a partir da frmula de trs pontos unidimensional 1 ou a partir da frmula de cinco pontos bidimensional. Seja R = (D L) U a matriz de iterao do o ca mtodo de Gauss-Seidel. Ento e a (R) = cos2 . (3.55) n Prova. Para obter o raio espectral da matriz de iterao R, queremos encontrar os autovalores de R: ca Ru = (D L) ou seja, U u = (D L) u (um problema de autovalor generalizado). No caso da matriz de discretizao da frmula de cinco pontos, ca o isso signica encontrar tal que ui,j+1 + ui+1,j = (4ui,j ui,j1 ui1,j ) . Para os autovalores no-nulos, podemos fazer a substituio a ca ui,j =
i+j 2

U u = u,

(3.56)

vi,j

(3.57)

para transformar a equao de autovalor naquela que aparece no mtodo de Jacobi. Temos ca e
i+j+1 2

vi,j +

i+j+1 2

vi+1,j = 4 = 4

i+j 2

vi,j

i+j1 2

vi,j1

i+j1 2

vi1,j

i+j+2 2

vi,j

i+j+1 2

vi,j1

i+j+1 2

vi1,j ,

Rodney Josu Biezuner e de modo que, dividindo por


i+j+1 2

52 , obtemos

vi1,j + vi+1,j + vi,j1 + vi,j+1 = 1/2 4vi,j . Portanto os autovalores da matriz de iterao de Gauss-Seidel para esta matriz so exatamente os quadrados ca a dos autovalores da matriz de iterao de Jacobi (e os autovetores so os mesmos): ca a lk = 1 4 cos k l + cos n n
2

Portanto, o mximo autovalor ocorre quando k = l = 1 e a (R) = cos2 . n

O argumento para a frmula de trs pontos anlogo. o e e a Para o quadrado unitrio temos a (R) = cos2 (h) , e usando 1 cos2 x = 1 x2 + O x4 2 se h pequeno podemos aproximar e
2

= 1 x2 + O x4 ,

cos2 (h) 1 2 h2 .

No mtodo de Gauss-Seidel ainda temos (R) 1 quadraticamente quando h 0, mas a sua velocidade e de convergncia para a matriz de discretizao de cinco pontos do quadrado unitrio duas vezes maior que e ca a e a do mtodo de Jacobi. Para ver isso, faa a expanso do logaritmo em torno do ponto x = 1: e c a log (1 + x) = x + O h2 . Segue que 2 2 h + O h4 , 2 R (RGauss-Seidel ) = 2 h2 + O h4 . R (RJacobi ) = (3.58) (3.59)

3.3.3

Convergncia do Mtodo SOR e e


0 < < 2.

3.20 Teorema. Se o mtodo SOR converge, ento e a

Prova. A matriz de iterao do mtodo SOR ca e e R= 1 1 D+U = D I D1 L 1 1 D1 = I D1 L D+U R = I D1 L


1

1 DL

1 D+U

ou

(1 ) I + D1 U .

(3.60)

Se 1 , . . . , n so os autovalores de R, ento a a det R = 1 . . . n .

Rodney Josu Biezuner e Mas, det R = det I D1 L


n 1

53

(1 ) I + D1 U

= det I D1 L = (1 ) ,

det (1 ) I + D1 U

j que I D1 L uma matriz triangular inferior com apenas 1 na diagonal principal e (1 ) I + D1 U a e uma matriz triangular superior com apenas 1 na diagonal principal. Logo e 1 . . . n = (1 ) . Em particular, pelo menos um dos autovalores j de R deve satisfazer |j | |1 | .
n

Mas, se o mtodo SOR converge, devemos ter tambm || < 1 para todo autovalor de R. Logo e e |1 | < 1, donde 0 < < 2.

3.21 Corolrio. Se R a matriz de iterao n n para o mtodo SOR, ento a e ca e a det R = (1 ) . Em particular, diferente das matrizes de iterao dos mtodos de Jacobi e de Gauss-Seidel (para a matriz de ca e discretizao de cinco pontos), zero no um autovalor para a matriz de iterao do mtodo SOR se = 1 ca a e ca e (para nenhuma matriz). 3.22 Teorema. Se A uma matriz irredut e vel, diagonalmente dominante tal que |aii | > menos alguma linha i, ento o mtodo SOR converge se 0 < a e 1.
n j=1 j=i n

|aij | para pelo

Prova. A demonstrao anloga ` do Teorema 3.18. A matriz de iterao do mtodo SOR ca e a a ca e e R = I D1 L


1

(1 ) I + D1 U . 1; temos = 0.

Suponha por absurdo que exista um autovalor de R tal que || det I 1 R = det I 1 Agora, observando que I D1 L
1

(1 ) I + D1 U

det I D1 L = 1
1

porque I D1 L uma matriz triangular inferior com apenas 1s na diagonal principal, escrevemos e 0 = det I 1 I D1 L (1 ) I + D1 U I D1 L I D1 L
1 1

= det I D1 L det I 1 = det = det I D1 L I 1

(1 ) I + D1 U

(1 ) I + D1 U

= det I D1 L 1 (1 ) I + D1 U 1 1 (1 ) I D1 L 1 D1 U .

Rodney Josu Biezuner e Por outro lado, como vimos na demonstrao do Teorema 3.18, a matriz ca D1 A = I D1 L D1 U irredut e vel, diagonalmente dominante e estritamente dominante nas linhas onde A , logo a matriz e S = 1 1 (1 ) I D1 L 1 D1 U

54

tambm satisfaz estas propriedades. De fato, S tem zeros nas mesmas posies que I D1 L D1 U , logo e co a sua irredutibilidade no afetada. Alm disso, pela dominncia diagonal de D1 A, sabemos que se a e e a bij = D1 L cij = D ento a 1
j=1 i1 1 ij ij

, .

U
n

|bij | +
j=i+1

|cij | .

Para provar a dominncia diagonal de S, observamos que os valores que S possui na diagonal principal so a a 1 1 (1 ) = 1 de modo que precisamos provar que +1 se 0 < 1 e || 1. Provaremos que +1 +1 Para isso, observe que como || , . ||
i1

1 +1 = ,

j=1

|bij | +

|cij | || j=i+1

1 basta provar a primeira desigualdade, a qual por sua vez equivalente a e | + 1| || .

a E fcil ver que esta desigualdade vlida quando R, pois e a | + 1| = + 1 porque 1 = ( 1) .

Para o caso geral em que C, fazemos cair no caso real escrevendo | + 1| = | (1 )| = || 2 (Re ) (1 ) + (1 ) || 2 || (1 ) + (1 ) = [|| (1 )] = [|| + 1]
2 2 2 2 2 2 2 2

|| 2 .

O resultado acima continua valendo com desigualdade estrita nas linhas onde a desigualdade estrita. A e Proposio 2.36 implica ento que S invert ca a e vel, contradizendo det S = 0. 3.23 Teorema. Seja A uma matriz simtrica positiva denida. Ento o mtodo SOR converge se 0 < < 2. e a e

Rodney Josu Biezuner e

55

Prova. Usaremos o Teorema 3.13. Escrevendo A = D L U , temos Lt = U porque A simtrica e as e e entradas diagonais de D positivas porque A positiva denida. Para o mtodo SOR temos e e B= logo 1 DL e C= 1 D + U,

1 1 2 D Lt + D+U = D uma matriz simtrica positiva denida se 0 < < 2. e e Na verdade, se as entradas diagonais de uma matriz simtrica so positivas, a condio de ser denida e a ca positiva equivalente ` convergncia do mtodo SOR para 0 < < 2, como o prximo resultado mostra. e a e e o Bt + C = e a e 3.24 Teorema. Seja A uma matriz simtrica com entradas diagonais positivas. Ento o mtodo SOR converge se e somente se A positiva denida e 0 < < 2. e Prova. Assuma que A positiva denida e que 0 < < 2. Seja e R = I D1 L
1

(1 ) I + D1 U

a matriz de iterao do mtodo SOR. Se um autovalor de R e x um autovetor associado, temos Rx = x, ca e e donde (1 ) I + D1 U x = I D1 L x. Fazendo o produto interno cannico (hermitiano) de Cn de ambos os lados com o vetor x, segue que o (1 ) x, x + x, D1 U x = Isolando , = x, x x, D1 Lx

(1 ) x, x + x, D1 U x . x, x x, D1 Lx

(3.61)

Como A simtrica, o produto de matrizes simtricas D1 A = I D1 U D1 L tambm ; como e e e e e D1 U, D1 L so respectivamente a parte estritamente triangular superior e estritamente triangular infea rior de uma matriz simtrica, temos e t D1 U = D1 L. Logo x, D1 U x = e denindo z= podemos escrever D1 U
t

x, x =

D1 L x, x = x, (D1 L) x ,

x, D1 L x , x, x (3.62)

(1 ) + z . 1 z Os argumentos acima assumem que o denominador no-nulo. E, de fato, temos e a = Re z = = 1 1 (z + z) = 2 2 x, D1 U x x, D1 L x + x, x x, x 1 x, D1 A x x, x . = 1 x, D1 L + D1 U x 2 x, x

1 1 x, I D1 A x = 2 x, x 2

Rodney Josu Biezuner e e como A positiva denida, D1 A tambm , o que implica e e e x, D1 A x >0 x, x donde 1 . 2 de modo que a parte real do denominador 1 z de no-nula para 0 < < 2. Segue que e a Re z < || = = =
2

56

[(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 2 Re z 2 + 4 Re z + 1 2 Re z + 2 |z|

1 2 Re z + 2 |z| (2 ) (1 2 Re z) =1 2 . 1 2 Re z + 2 |z| 1 , temos 2

Como 0 < < 2 e Re z < e conclu mos que

(2 ) (1 2 Re z) > 0, || < 1

para todo autovalor de R, logo o mtodo SOR converge. A demonstrao da rec e ca proca (assim como uma demonstrao alternativa, variacional, deste teorema) pode ser vista em [Young]. ca Usando o Teorema 3.22, conclu mos que o mtodo SOR converge para as matrizes de discretizao obtidas e ca atravs dos esquemas de diferenas nitas do Cap e c tulo 1 se 0 < 1. Isso permite apenas subrelaxamento do mtodo de Gauss-Seidel, o que em geral reduz a velocidade de convergncia. Por outro lado, usando o e e Teorema 3.23 ou o Teorema 3.24, conclu mos que o mtodo SOR converge para as matrizes de discretizao e ca obtidas a partir da frmula de trs pontos unidimensional e a partir da frmula de cinco pontos bidimensional o e o se 0 < < 2, j que estas so matrizes simtricas, positivas denidas (j as matrizes de discretizao obtidas a a e a ca atravs de coordenadas polares ou pelo esquema de Shortley-Weller no so simtricas, em geral, como e a a e vimos). Em seguida fazemos uma anlise da velocidade de convergncia do mtodo SOR para a matriz de disa e e cretizaao da frmula de cinco pontos, bem como obtemos o melhor valor do fator de relaxamento para c o este caso. 3.25 Lema. Seja A a matriz de discretizao obtida a partir da frmula de trs pontos unidimensional ou ca o e a partir da frmula de cinco pontos bidimensional. Se = 0 um autovalor de RSOR , ento existe o e a um autovalor J de RJ tal que 1 . (3.63) J = 1/2 2 Reciprocamente, se J um autovalor de RJ e C satisfaz a equao acima, ento um autovalor e ca a e de RSOR . Prova. Argumentamos como na demonstrao do Teorema 3.13. Para obter o raio espectral da matriz de ca iterao RSOR , queremos encontrar os autovalores de RSOR : ca RSOR u = I D1 L ou seja,
1

(1 ) I + D1 U u = u,

(1 ) I + D1 U u = I D1 L u

Rodney Josu Biezuner e No caso da matriz de discretizao da frmula de cinco pontos, isso signica encontrar tal que ca o (1 ) ui,j + ou Fazendo a substituio ca ui,j = e dividindo por
i+j+1 2

57

ui,j+1 + ui+1,j = ui,j ui,j1 ui1,j 4 4 4 4 (3.64)

1 1 ui,j = (ui,j+1 + ui+1,j + ui,j1 + ui1,j ) . 4


i+j 2

vi,j

, segue que vi1,j + vi+1,j + vi,j1 + vi,j+1 = 1 4vi,j 1/2


2

e da o resultado. Resolvendo a equao (3.63) como uma equao quadrtica em , vemos que as duas ra = ca ca a zes podem ser escritas na forma 2 1 = J 2 2 4 ( 1) . J 4 Denotaremos ,J = max (|+ | , | |) e por J = (RJ ) o maior autovalor do mtodo de Jacobi. e

(3.65) (3.66)

3.26 Proposio. Seja A a matriz de discretizao obtida a partir da frmula de trs pontos unidimensional ca ca o e ou a partir da frmula de cinco pontos bidimensional. Ento o a (RSOR, ) = ,J Prova. Por denio, ca (RSOR, ) = max ,J .
J

(3.67)

De (3.65) segue que ,J Se 0 < 1, 2 J 4 ( 1) Se > 1, dena


2

1 = J + 4

2 J

4 ( 1) .

0 e ,J uma funo crescente de J , logo o mximo atingido em J . e ca a e c = 4 ( 1) . 2 c , ento 2 J a


2

Se J > c , 2 J 4 ( 1) > 0 e segue a concluso como no caso anterior. Se J a 4 ( 1) 0 e 2 J 4 ( 1) = 1, logo ,J = J + = 1, e novamente ,J uma funo crescente de J . e ca 2
2 J 2 2 2

4 ( 1) 2 J i,

onde i =

4 ( 1)

2 2 J

+ 4 ( 1)

2 J

Rodney Josu Biezuner e Dena timo = o 1+

58

2 1 J
2

(3.68)

Note que 1 < timo < 2. Mostraremos que timo de fato o melhor valor para o fator de relaxamento no e o o mtodo SOR. Antes precisamos do seguinte resultado: e 3.27 Proposio. Seja A a matriz de discretizao obtida a partir da frmula de trs pontos unidimensional ca ca o e ou a partir da frmula de cinco pontos bidimensional. Ento o a 2 1 2 J + 2 J 4 ( 1) se 0 < timo , o (RSOR, ) = (3.69) 4 1 se timo < 2. o Prova. Temos 2 J 4 ( 1) 2 f () = 2 J 4 + 4 so a
2

0 para 0 < < 2 se e somente se 44 1 J


2 2J 2

timo . De fato, as ra zes de o

2
2 J

1 J 0 se 0 < < 2, devemos ter 2 1+ 1 J


2

de modo que a raiz positiva de f maior que 2, logo para que f () e 2


2 J

2 J

2 1 1 J
2 J

1+

1 J

O resultado segue ento como na demonstrao da proposio anterior. a ca ca 3.28 Teorema. Seja A a matriz de discretizao obtida a partir da frmula de trs pontos unidimensional ca o e ou a partir da frmula de cinco pontos bidimensional. Ento o fator de relaxamento timo para o o a o mtodo SOR dado por e e 2 timo = (3.70) o 1 + sen n o fator de relaxamento timo para o mtodo SOR. e o e Prova. Se 0 < otimo , ento 2 J 4 ( 1) a d d
2 2

0e = J 2 J 4 ( 1) + J 2 2 J 4 ( 1)
2 2 2

J +

2 J 4 ( 1)

Temos J 2 < 0, porque 0 < < 2 e J < 1, e J 2 > J pois J 2


2 2 2

2 J 4 ( 1),

= 2 J 4J + 4 > 2 J 4J + 4J > 2 J 4J ( 1) = J 2 J 4 ( 1)
2 2

Rodney Josu Biezuner e Isso implica d d J + 2 J 4 ( 1)


2

59

< 0,

logo (RSOR, ) decrescente de 0 at timo . Para timo e e o < 2, (RSOR, ) = 1 claramente e o crescente. Portanto, (RSOR, ) atinge o seu m nimo em timo . o Pelo Teorema 3.15, temos J = cos , n logo 2 2 2 = timo = = o . 2 1 + sen 1 + 1 J 1 + 1 cos2 n n Para o quadrado unitrio temos a timo = o e conseqentemente u (RSOR, ) = e usando 1x = 1 2x + O x2 , 1+x sen x = x + O x3 , se h pequeno podemos aproximar e 1 sen (h) 1 2h + O h2 . 1 + sen (h) Portanto, usando o valor timo de no mtodo SOR, temos (R) 1 linearmente quando h 0, um o e resultado muito melhor que o obtido nos mtodos de Jacobi e de Gauss-Seidel. Para uma comparao mais e ca precisa, usando log (1 + x) = x + O h2 temos que Segue que R (RSOR ) = 2h + O h2 . R (RSOR ) 2h 2 2 2 = . R (RGauss-Seidel ) h h (3.71)

2 1 + sen (h)

2 1 sen (h) 1= . 1 + sen (h) 1 + sen (h)

Em particular, se h = 0.025, temos timo = 1. 8545 e R (RSOR ) /R (RGauss-Seidel ) = 25.5, isto , o e o mtodo SOR 25 vezes mais rpido que o mtodo de Gauss-Seidel. Quanto mais renada a malha, maior e e a e e a diferena na velocidade de convergncia entre os dois mtodos. c e e

3.3.4

Convergncia do Mtodo de Jacobi Amortecido e e


0< 1.

e a e 3.29 Teorema. Se o mtodo de Jacobi converge, ento o mtodo de Jacobi amortecido converge para

Rodney Josu Biezuner e

60

Prova. Vamos escrever a matriz de iterao RJ, do mtodo de Jacobi amortecido em funo da matriz de ca e ca iterao do mtodo de Jacobi RJ . Temos ca e RJ = D1 (D A) de modo que RJ, = donde RJ, = (1 ) I + RJ . Em particular, RJ v = v se e somente se [RJ, (1 ) I] v = v. Portanto, J um autovalor de RJ se e somente se e J, = J + 1 (3.73) (3.72) 1 D
1

1 DA

= D1

1 DD+DA

= D1

1 D D + D1 (D A)

um autovalor de RJ, . Logo, se todo autovalor de RJ satisfaz |J | < 1 (isto , (RJ ) < 1 equivalente ao e e mtodo de Jacobi convergir) e < 1, ento e a |J, | = (J + 1 ) J + 1 = 2 |J | + 2 Re J (1 ) + (1 ) 2 |J | + 2 |J | (1 ) + (1 ) = ( |J | + 1 ) < 1.
2 2 2 2 2 2

Segue do Teorema 3.13 que o mtodo de Jacobi amortecido converge para as matrizes de discretizao do e ca Cap tulo 1 se 0 < 1. 3.30 Corolrio. a (RJ, ) = [ (RJ ) 1] + 1. Para o quadrado unitrio temos a (RJ, ) = [cos (h) 1] + 1. Usando 1 cos x = 1 x2 + O x4 , 2 log (1 + x) = x + O h2 , se h pequeno podemos aproximar e (RJ, ) 1 R (RJ, ) 2 2 h + O h4 , 2 (3.75) (3.74)

2 2 h . 2

Vemos que a velocidade de convergncia do mtodo de Jacobi amortecido da mesma ordem que a do mtodo e e e e de Jacobi, um pouco pior para valores de prximos de 1 e muito pior para valores de prximos de 0. o o

Rodney Josu Biezuner e

61

3.3.5

Resumo
Mtodo e Jacobi Gauss-Seidel SOR timo o Jacobi amortecido (R) cos (h) cos2 (h) 1 2h + O h2 1 2 2 h + O h4 2 R (R) 2 2 h + O h4 2 2 h2 + O h4 2h + O h2 2 2 h + O h4 2

3.4

Exerc cios

3.1 Os mtodos de Jacobi e Gauss-Seidel no so sempre comparveis: existem sistemas lineares para as e a a a quais o mtodo de Jacobi converge, enquanto que o mtodo de Gauss-Seidel no converge ou at mesmo e e a e diverge, e vice-versa. a) Verique no computador que o mtodo de Jacobi converge para o sistema linear e x+z =2 x + y = 0 x + 2y 3z = 0 enquanto que o mtodo de Gauss-Seidel no converge (observe que a soluo exata deste sistema e a ca e (1, 1, 1)). b) Verique no computador que o mtodo de Gauss-Seidel converge se e 2x + y + z = 4 x + 2y + z = 4 x + y + 2z = 4 enquanto que o mtodo de Jacobi no converge, usando o vetor (0, 0, 0) como chute inicial (observe e a que a soluo exata deste sistema (1, 1, 1)). ca e c) Justique matematicamente o resultado de cada um dos tens anteriores.

Cap tulo 4

Mtodos de Projeo e ca
A maioria dos mtodos iterativos prticos para a resoluo de sistemas lineares grandes usa um processo e a ca de projeo de uma forma ou outra. Um processo de projeo uma maneira cannica de obter uma ca ca e o aproximao para a soluo do sistema linear dentro de um subespao especicado. Neste cap ca ca c tulo veremos a tcnica descrita de maneira geral e uma aplicao detalhada para o caso unidimensional. e ca

4.1

Teoria Geral

A idia bsica de uma tcnica de projeo extrair uma soluo aproximada para a soluo do sistema Ax = b e a e ca e ca ca de um subespao especicado K Rn , chamado o subespao de busca. Se m = dim K, ento em geral c c a so necessrias m restries para obter esta aproximao. Uma maneira t a a co ca pica de descrever estas restries co impor m condies de ortogonalidade; um exemplo exigir que o vetor residual r = b Ax seja ortogonal e co e a m vetores linearmente independentes que geram um subespao L, chamado o subespao de restries. c c co Muitos mtodos matemticos so baseados neste tipo de descrio, conhecida como as condies de Petrove a a ca co Galerkin. Existem duas classes gerais de mtodos de projeo: os mtodos de projeo ortogonal, quando e ca e ca L = K (e neste caso as condies de Petrov-Galerkin so chamadas simplesmente condies de Galerkin), e co a co os mtodos de projeao obl e c qua, quando L = K. 4.1 Denio. Seja A Mn (C) uma matriz invert e K, L Rn dois subespaos vetoriais m-dimensionais. ca vel c Um mtodo de projeo sobre o subespao K ortogonal ao subespao L um processo que encontra e ca c c e uma soluo aproximada x em K para o sistema Ax = b tal que o vetor residual r = b Ax ortogonal ca e a L, ou seja, encontrar x K tal que r = b Ax L. (4.1) Se queremos explorar o conhecimento de um bom chute inicial x0 para a soluo, ento a aproximao ca a ca e buscada no espao am x0 + K. Neste caso, a tcnica redenida como c e e encontrar x x0 + K Denotando e o vetor res duo inicial tal que r = b Ax L. (4.2)

x = x0 + p r0 = b Ax0 , x = x0 + p, p K, r0 Ap, w = 0 para todo w L.

de modo que r = b Ax = b A x0 + p = r0 Ap, a soluo aproximada pode ser descrita como ca (4.3)

O vetor p que est no subespao de busca chamado o vetor de busca. a c e 62

Rodney Josu Biezuner e

63

4.1.1

Representao Matricial ca

Sejam BK = {v1 , . . . , vm } e BL = {w1 , . . . , wm } bases para K e L, respectivamente. Constru mos as matrizes nm V = [v1 vm ] , W = [w1 wm ] , que tem estes vetores como colunas. Ento a soluo aproximada pode ser escrita na forma a ca x = x0 + V y (4.5) (4.4)

para algum vetor y Rm , ou seja, p = V y. A condio de ortogonalidade r0 AV y, w = 0 para todo ca w L tambm pode ser representada matricialmente na forma e (W z) para todo z Rm , ou seja, ou
T

r0 AV y = z T W T r0 AV y = 0 W T r0 AV y = 0 W T AV y = W T r0 . (4.6)

A partir da se assumirmos que a matriz m m W T AV invert (o que no garantido mesmo quando , e vel a e A invert e vel; veja Exerc 4.1), obtemos a seguinte expresso matricial para a soluo aproximada: cio a ca x = x0 + V W T AV
1

W T r0 .

(4.7)

Desta forma, um algoritmo t pico para um mtodo de projeo tem a forma e ca Algoritmo para um Mtodo de Projeo e ca do until stop criterion Selecione um par de subespaos K e L c Escolha bases BK = {v1 , . . . , vn } e BL = {w1 , . . . , wn } para K e L r b Ax; y W T AV 1 W T r; x x + V y; end do Em muitos algoritmos, a matriz W T AV no precisa ser formada, e muito menos sua inversa calculada, da a mesma forma que a matriz de iterao no precisava ser explicitamente calculada nos mtodos iterativos ca a e lineares. A matriz W T AV invert se e somente se nenhum vetor do subespao AK ortogonal ao subespao e vel c e c L (Exerc 4.2). Duas condies independentes que garantem a invertibilidade de W T AV so dadas pela cio co a proposio seguinte: ca 4.2 Proposio. Se A Mn (C) e os subespaos K, L Rn satisfazem qualquer uma das duas condies a ca c co seguir (i) A positiva denida e L = K, ou e (ii) A invert e L = AK. e vel Ax = b ento a matriz W T AV invert quaisquer que sejam as bases V, W de K, L, respectivamente. a e vel

Rodney Josu Biezuner e

64

Prova: (i) Como L = K, podemos escrever W = V P para alguma matriz m m invert P (Exerc vel cio 4.3). Ento a W T AV = P T V T AV Como A positiva denida, segue que V T AV tambm (Exerc e e e cio 4.4); em particular, a matriz m m V T AV invert e vel. Logo, sendo o produto de duas matrizes invert veis, W T AV invert e vel. (ii) Neste caso, como L = AK, podemos escrever W = AV P para alguma matriz m m invert P . vel Da , T W T AV = P T (AV ) AV. Como A invert e vel, a matriz n m AV possui posto mximo, logo a matriz m m (AV ) AV invert a e vel (Exerc 4.5). Novamente, sendo o produto de duas matrizes invert cio veis, W T AV invert e vel. Em particular, se A uma matriz simtrica e um mtodo de projeo ortogonal utilizado, podemos tomar e e e ca e V = W e a matriz projetada V T AV tambm simtrica; da mesma forma, se alm disso A for positiva e e e e denida, V T AV tambm ser. e a
T

4.1.2

Minimizao de Funcionais ca

A soluo aproximada x do sistema Ax = b atravs de um mtodo de projeo pode ser obtida como o ponto ca e e ca de m nimo de um funcional quadrtico associado ` matriz A. Consideremos primeiro o caso em que A uma a a e matriz simtrica positiva denida. Neste caso, a prpria soluo do sistema Ax = b o minimizante de um e o ca e funcional quadrtico associado ` matriz A: a a 4.3 Teorema. (Mtodo Variacional para a Resoluo de Sistemas Lineares) Seja A Mn (R) uma matriz e ca simtrica positiva denida e b Rn . Ento a soluo do sistema Ax = b o unico ponto x que e a ca e minimiza o funcional quadrtico a 1 f (y) = Ay, y b, y . (4.8) 2 Prova: Uma matriz simtrica positiva denida em particular invert e e vel, logo existe uma unica soluo x ca para o sistema Ax = b. Temos f (y) f (x) = = = = = = Como A positiva denida, segue que e A (y x) , y x e A (y x) , y x = 0 se e somente se y = x. Portanto, f (y) > f (x) 0 1 2 1 2 1 2 1 2 1 2 1 2 1 Ax, x + b, x 2 1 Ay, y Ax, y Ax, x + Ax, x 2 1 Ay, y Ax, y + Ax, x 2 1 1 1 Ay, y Ax, y Ax, y + Ax, x 2 2 2 1 A (y x) , y A (y x) , x 2 Ay, y b, y A (y x) , y x .

Rodney Josu Biezuner e

65

para todo y = x e o m nimo de f ocorre em x. Em muitos problemas, o funcional f tem um signicado f sico, correspondendo a um funcional de energia; o minimizante deste funcional de energia corresponde a um estado de equil brio do sistema. Observe que, denindo um produto interno a partir da matriz simtrica positiva denida A da maneira e 1/2 usual por v, w A = Av, w e considerando a norma vetorial induzida v A = v, v A , chamada A-norma, o funcional f pode ser escrito na forma (substituindo b = Ax) f (y) = 1 y 2
2 A

x, y

(4.9)

O vetor de aproximao x de um mtodo de projeo ortogonal sobre K a partir de um vetor inicial x0 ca e ca e exatamente o minimizante da primeira parte deste funcional sobre o subespao am x0 + K: c 4.4 Proposio. Sejam A Mn (R) uma matriz simtrica positiva denida e L = K. Ento x o vetor de ca e a e aproximao de um mtodo de projeo ortogonal sobre K a partir de um vetor inicial x0 se e somente ca e ca se ele minimiza a A-norma do erro sobre x0 + K, isto , se e somente se e E (x) = min E (y) . 0
yx +K

Prova: Seja x a soluo exata do sistema Ax = b. Ento a A-norma do erro dada por ca a e E (y) = x y
A

Segue do lema da projeo ortogonal (ou lema da melhor aproximao) que x um minimizante de E (y) ca ca e sobre o subespao am x0 + K se e somente se x x A-ortogonal a K, ou seja, se e somente se c e A (x x) , v = 0 ou, equivalentemente, b Ax, v = 0 para todo v K. Esta a condio de Galerkin que dene o vetor de aproximao de um mtodo de projeo ortogonal (veja e ca ca e ca (4.2)). Vamos considerar agora o caso de um mtodo de projeo obl e ca qua em que L = AK. a e ca 4.5 Proposio. Sejam A Mn (C) uma matriz qualquer e L = AK. Ento x o vetor de aproximao ca de um mtodo de projeo obl e ca qua sobre K ortogonal a L a partir de um vetor inicial x0 se e somente se ele minimiza a 2-norma do res duo sobre x0 + K, isto , se e somente se e R (x) = min R (y) . 0
yx +K

para todo v K,

Prova: Considere o sistema Ax = b. Ento a 2-norma do res a duo dada por e R (y) = b Ay
2

Segue do lema da projeo ortogonal (ou lema da melhor aproximao) que x um minimizante de R (y) ca ca e sobre o subespao am x0 + K se e somente se b Ax ortogonal a AK = L, ou seja, se e somente se c e b Ax, w = 0 para todo w L.

Esta a condio de Petrov-Galerkin que dene o vetor de aproximao de um mtodo de projeo obl e ca ca e ca qua (veja (4.2)).

Rodney Josu Biezuner e

66

4.1.3

Estimativa do Erro em Mtodos de Projeo e ca

Se nenhum vetor do subespao K est prximo da soluo exata x, ento imposs encontrar uma boa c a o ca a e vel aproximao x para x em K. Por outro lado, se existir algum vetor em K que est a uma pequena distncia ca a a de x, ento podemos perguntar qual a melhor aproximao a x podemos encontrar em K. No que se segue a ca assumiremos x0 = 0; em particular, o subespao am x0 + K o subespao vetorial K. c e c Seja PK a projeo ortogonal sobre K, denida por ca PK x K, QL x K, K x PK x K, x QL x L. K (4.10)

ca qua sobre K e ortogonalmente a L, denida por e QL a projeo obl K (4.11) a ca (Observe que se K = L (isto , projeo ortogonal), temos QK = PK .) Ento o problema de aproximao da e ca K Denio 4.1 pode ser expresso na linguagem destes operadores como ca encontrar x K tal que QL (b Ax) = 0. K (4.12)

Equivalentemente, denindo o operator Am : K K por Am = QL APK , K ele pode ser expresso na forma encontrar x K tal que Am x = QL b, K (4.13)

de modo que um problema n-dimensional aproximado por um problema m-dimensional. e 4.6 Proposio. Assuma x0 = 0. Suponha que K invariante por A e que b K. Ento o vetor de ca e a aproximao x de um mtodo de projeo (ortogonal ou obl ca e ca qua) sobre K a partir do vetor inicial x0 a soluo exata x. e ca Prova: Temos QL (b Ax) = 0. Como por hiptese Ax, b K, segue que QL Ax = Ax e QL b = b, logo o K K K b Ax = 0 e portanto x = x. O mesmo resultado vale se x0 = 0 sob a hiptese adicional que o res o duo inicial r0 = b Ax0 K. A distncia da soluo exata x ao subespao K, que pode ser escrita como (I PK ) x , desempenha um a ca c papel fundamental na estimativa do erro da soluo aproximada x K, j que a distncia desta ` soluo ca a a a ca exata obviamente no pode ser menor que a distncia de x a K. O prximo resultado fornece uma estimativa a a o superior para a norma do res duo da soluo exata com respeito ao operador aproximado Am . ca 4.7 Teorema. Assuma x0 = 0 e b K. Denote = QL A (I PK ) . K Ento a soluo exata x satisfaz a estimativa a ca b Am x isto , e dist (Am x, b) Prova: Como b K, segue que b Am x = QL (b APK x) = QL A (x PK x) = QL A (I PK ) x. K K K Da j que I PK uma projeo e portanto satisfaz (I PK ) = (I PK ), podemos escrever , a e ca b Am x = QL A (I PK ) (I PK ) x K (I PK ) x .
2

(I PK ) x , dist (x, K) .

Rodney Josu Biezuner e

67

4.2

Caso Unidimensional: Mtodos de Descida e

Nesta seao, A ser sempre uma matriz real simtrica positiva denida. c a e Outra maneira de enxergar o resultado do Teorema 4.3 observar que o gradiente do funcional f e e f (y) = Ay b. Se x um ponto de m e nimo temos f (x) = 0, ou seja, Ax = b. O mtodo variacional sugerido pelo Teorema 4.3 a base dos mtodos iterativos de descida em geral, e do e e e mtodo do gradiente conjugado em particular. A idia usar as idias do clculo diferencial para encontrar e e e e a o m nimo do funcional quadrtico f . a (4.14)

4.2.1

Mtodos de Descida e

A losoa dos mtodos de descida comear com um chute inicial x0 e gerar uma seqncia de iterados e e c ue x1 , x2 , . . . , xk , . . . que satisfazem f xk+1 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 mtodo de descida e buscamos encontrar uma seqncia minimizante xk que convirja para a soluo do sistema. ue ca O passo de xk para xk+1 envolve dois ingredientes: (1) uma direo de busca e (2) um avano de ca c comprimento especicado na direo de busca. Uma direo de busca signica a escolha de um vetor pk que ca ca indicar a direo que avanaremos de xk para xk+1 . O comprimento do avano equivalente ` escolha de a ca c c e a um escalar k multiplicando o vetor pk . Assim, xk+1 = xk + k pk . A escolha de k tambm chamada uma busca na reta, j que queremos escolher um ponto na reta e e a xk + pk : R tal que f xk + pk 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 exata na reta. Para funcionais quadrticos, a busca exata na reta trivial e e a e obtemos uma frmula para o valor de k , como veremos a seguir. Denotaremos o res o duo em cada iterao ca por rk = b Axk . (4.15) 4.7 Proposio. Seja k R tal que ca f xk + k pk = min f xk + pk .
R

Ento a k =

pk , rk . pk , Apk

(4.16)

Rodney Josu Biezuner e Prova: Considere o funcional g um polinmio quadrtico em , pois e o a g () = 1 A xk + pk , xk + pk b, xk + pk 2 1 2 Axk , xk b, xk + Apk , xk + Axk , pk + Apk , pk b, pk = 2 2 2 2 2 = f xk + Axk , pk b, pk + Apk , pk 2 2 = f xk rk , pk + Apk , pk , 2

68

g () = f xk + pk .

portanto o m nimo de g atingido no vrtice B/2A da parbola Y = AX 2 + BX + C. e e a Observe que k = 0 se e somente se pk , rk = 0, isto , a direo de busca ortogonal ao res e ca e duo. Como gostar amos sempre que poss de ter xk+1 = xk , devemos sempre escolher a direo de busca de forma a vel ca no ser ortogonal a rk . Se esta escolha feita, ento teremos sempre f xk+1 < f xk . a e a 4.8 Exemplo. (Mtodo de Gauss-Seidel) Considere o mtodo de descida em que as primeiras n direes de e e co busca p1 , . . . , pn so os vetores e1 , . . . , en da base cannica de Rn , e isso repetido a cada n iteraes, a o e co de modo que pk+n = ek para todo k = 1, . . . , n, com uma busca na reta exata executada em cada iterao. Ento cada grupo de n iteraes corresponde a uma iterao do mtodo de Gauss-Seidel. ca a co ca e 4.9 Exemplo. (Mtodo SOR) Usando as mesmas direes de busca do exemplo anterior, mas com xk+1 = e co xk + k pk , = 1, obtemos um mtodo de descida em que as buscas nas retas so inexatas. Cada e a grupo de n iteraes corresponde a uma iterao do mtodo SOR. co ca e Observe que o mtodo de descida um mtodo de projeo em que L e K so subespaos unidimensionais, e e e ca a c com K = pk e L um subespao no ortogonal a K, em cada iterao k. Se o mtodo de descida ser um c a ca e a mtodo de projeo ortogonal ou obl e ca quo depender da escolha do vetor de direo de busca pk . a ca

4.2.2

Mtodo da Descida Mais Acentuada e

Do Clculo Diferencial, sabemos que a direo em que a funo cresce a uma taxa mais rpida a partir de a ca ca a um ponto a direo do gradiente neste ponto. Esta observao a base da escolha da direo de busca no e ca ca e ca mtodo da descida mais acentuada (tambm chamado mtodo do gradiente). Em outras palavras, escolhemos e e e pk = f xk = b Axk ou pk = rk . (4.17)

Como neste caso K = L = pk , o mtodo da descida mais acentuada ser um mtodo de projeo ortogonal. e a e ca Buscar na direo da descida mais acentuada uma idia natural, mas que na prtica no funciona sem ca e e a a modicaes. De fato, em alguns casos o mtodo de velocidade comparvel ` do mtodo de Jacobi, como co e e a a e na matriz de discretizao da frmula de cinco pontos aplicada ao problema descrito na primeira seo deste ca o ca cap tulo [Watkins]: Jacobi Descida Mais Acentuada x = 0.1 299 304 x = 0.05 1090 1114 x = 0.025 3908 4010

De fato, como as iteraes do mtodo de descida mais acentuada so bem mais custosas que as do mtodo co e a e de Jacobi, o primeiro muito pior que este ultimo. e

Rodney Josu Biezuner e

69

Para entender melhor o mtodo da descida mais acentuada, porque ele pode ser lento e as modicaes e co que vamos fazer para torn-lo mais rpido levando ao mtodo do gradiente conjugado a ser visto no prximo a a e o cap tulo, vamos entender o processo do ponto de vista geomtrico. Como vimos na demonstrao do Teorema e ca 4.3, o funcional quadrtico f da forma a e f (y) = 1 A (y x) , (y x) + c 2 (4.18)

onde c = f (x) uma constante. J que A uma matriz simtrica, existe uma matriz ortogonal P tal que e a e e P t AP uma matriz diagonal D , cujos valores na diagonal principal so exatamente os autovalores positivos e a de A. Nas coordenadas z = P t (y x) , o funcional f tem a forma f (z) = 1 1 Dz, z + c = 2 2
n 2 i zi + c. i=1

(4.19)

As curvas de n vel do funcional f neste sistema de coordenadas so elipses (em R2 , elipsides em R3 e a o hiperelipsides em Rn ) centradas na origem com eixos paralelos aos eixos coordenados e f (0) = c n o e vel m nimo de f ; elipses correspondentes a menores valores de f esto dentro de elipses correspondentes a maiores a valores de f . Como P uma aplicao ortogonal, as curvas de n de f no sistema de coordenadas original e ca vel tambm so elipses, centradas em x, e uma reta de um ponto y at o ponto x corta elipses de n e a e veis cada vez menores at chegar ao m e nimo da funo f em x, centro de todas as elipses. O vetor gradiente perpendicular ca e a `s curvas de n vel, logo perpendicular `s elipses. Seguir a direo de descida mais acentuada equivale a e a ca cortar a elipse que contm xk ortogonalmente na direo do interior da elipse at encontrar um ponto xk+1 e ca e situado em uma elipse que a reta tangencie, pois a partir da a reta ir na direo de elipses com n a ca veis maiores, portanto este o ponto da reta onde f atinge o seu m e nimo. Em particular, vemos que a prxima o direo pk+1 ortogonal ` direo anterior pk , tangente a esta elipse (veja tambm o Corolrio 4.12). Em ca e a ca e a geral, a direo de descida mais acentuada no a direo de x (quando bastaria uma iterao para atingir ca a e ca ca a soluo exata) a no ser que A seja um mltiplo escalar da identidade, de modo que todos os autovalores ca a u de A so iguais e as elipses so c a a rculos. Por outro lado, se os autovalores de A tm valores muito diferentes e uns dos outros, com alguns muito pequenos e alguns muito grandes, as elipses sero bastante excntricas a e e, dependendo do chute inicial, a convergncia pode ser muito lenta. Matrizes com estas propriedades so e a chamadas mal-condicionadas; para que o mtodo de descida acentuada seja lento, a matriz A no precisa e a ser muito mal-condicionada (veja a Denio 4.14 e a discusso que se segue). ca a Como vimos na seo anterior, os algoritmos de Gauss-Seidel e SOR podem ser encarados como algoritmos ca de descida. A discusso no pargrafo anterior tambm pode ser usada para entender a relativa lentido destes a a e a algoritmos. A seguir, provaremos a convergncia do mtodo da descida mais acentuada. e e e 4.10 Lema. (Desigualdade de Kantorovich) Sejam A Mn (R) uma matriz simtrica positiva denida e denote por max e min seu menor autovalor e seu maior autovalor, respectivamente. Ento a Ax, x A1 x, x x, x para todo x = 0. Prova: Denote os autovalores de A por 1 ... n , de modo que min = 1 e max = n . Como o quociente ` esquerda da desigualdade homogneo, basta provar a desigualdade para vetores x unitrios. a e e a Como A simtrica, existem uma matriz diagonal D e uma matriz ortogonal P tais que A = P T DP . Segue e e que Ax, x A1 x, x = P T DP x, x P T D1 P x, x = DP x, P x D1 P x, P x .
2

(min + max ) 4min max

Rodney Josu Biezuner e


2 Denote y = P x = (y1 , . . . , yn ) e i = yi . Ento y tambm um vetor unitrio e a e e a n

70

:= Dy, y =
i=1

i i

uma combinao convexa dos autovalores i de A, ao passo que e ca


n

:= D1 y, y =
i=1

i i

uma combinao convexa dos autovalores 1 de A1 . Consequentemente, e ca i 1 1 + . 1 n 1 n (4.20)

De fato, a funo (t) = 1/t convexa, logo o ponto (, ), que a combinao convexa de pontos localizados ca e e ca no grco de , est localizado na regio plana convexa limitada pelo grco de e o segmento de reta que a a a a une os pontos extremos do grco (1 , 1/1 ) e (n , 1/n ), ou seja, o segmento de reta a t 1 1 1 t+ + , 1 n 1 n 1 t n .

Em particular, o ponto (, ) est abaixo do ponto do segmento correspondente a t = . a Portanto, 1 1 Ax, x A1 x, x = + . 1 n 1 n O mximo da funo quadrtica a ca a t t atingido para t = (a + b) /2. Conclu e mos que Ax, x A1 x, x 1 + n 2 1 1 1 + n + 1 n 21 n = (1 + n ) . 41 n
2

1 1 t + a b ab

4.11 Lema. Seja xk+1 = xk + k pk obtido atravs de uma busca exata na reta. Ento e a rk+1 pk e Prova: Temos ek+1 A pk . b Axk+1 = b Axk k Apk ,

de modo que a seqncia dos res ue duos dada pela frmula e o rk+1 = rk k Apk . Logo, rk+1 , pk = rk+1 , pk k Apk , pk = rk , pk pk , rk pk , Apk (4.21)

Apk , pk = 0.

Rodney Josu Biezuner e

71

A segunda relao de A-ortogonalidade segue diretamente da primeira relao de ortogonalidade; de fato, ca ca lembrando que Aek+1 = rk+1 , temos ek+1 , pk
A

= Aek+1 , pk = rk+1 , pk = 0.

O signicado geomtrico deste resultado que o m e e nimo do funcional f na reta xk + k pk ocorre quando a derivada direcional de f na direo de busca zero, ou seja, ca e 0= f xk+1 = pk f xk+1 , pk = rk+1 , pk .

4.12 Corolrio. No mtodo da descida mais acentuada vale a e rk+1 rk e ek+1 A rk .

4.13 Teorema. Sejam A Mn (R) uma matriz simtrica positiva denida e denote por max e min seu e menor autovalor e seu maior autovalor, respectivamente. Ento o erro algbrico do mtodo da descida a e e mais acentuada satisfaz a estimativa ek+1 Em particular, ek
A A

max min k e max + min max min max + min


k

e0

e portanto o mtodo da descida mais acentuada converge qualquer que seja o chute inicial x0 . e Prova: Temos Logo, pelo Corolrio 4.12, a ek+1
2 A

ek+1 = x xk+1 = x xk + k rk = ek k rk . = ek+1 , ek+1 = ek+1 , ek k ek+1 , rk = ek+1 , ek

= ek+1 , Aek = ek+1 , rk . Da usando a desigualdade de Kantorovich, , ek+1


2 A

= ek k rk , rk = ek , rk k rk , rk = ek , r k = ek , Aek = ek ek = ek
2 A 2 A 2 A

rk , rk rk , Ark rk , rk rk , Ark

rk , rk ek , r k rk , rk A1 rk , rk

1 1 1

rk , rk rk , Ark

rk , rk rk , A1 rk
2

4min max (min + max )


2

max min max + min

Rodney Josu Biezuner e

72

Observamos que o fator de convergncia obtido no Teorema 4.13 timo (veja Exerc 4.6). e eo cio Introduzimos o nmero de condio de uma matriz, que uma medida do quo mal-comportada ela . u ca e a e 4.14 Denio. Seja A Mn (R) uma matriz simtrica positiva denida. O nmero de condio de A ca e u ca e denido por max (A) = . min Quanto menor o nmero de condio de A, isto , quanto mais prximo de 1, mais prximos a esferas u ca e o o so os elipsides de n do funcional f ; reciprocamente, quando maior o nmero de condio de A, mais a o vel u ca excntricos so estes. A constante do Teorema 4.13 pode ser mais convenientemente expressa em termos do e a nmero de condio da matriz: u ca 4.15 Corolrio. Sejam A Mn (R) uma matriz simtrica positiva denida e denote por max e min seu a e menor autovalor e seu maior autovalor, respectivamente. Ento o erro algbrico do mtodo da descida a e e mais acentuada satisfaz a estimativa ek+1
A

(A) 1 k e (A) + 1

Desta forma, vemos que quanto mais (A) prximo de 1 maior a velocidade de convergncia do mtodo e o e e e da descida acentuada; reciprocamente, quando maior (A), mais lento ele . e Reunindo as informaes obtidas, um algoritmo para o mtodo da descida mais acentuada pode ser co e apresentado da seguinte forma: initialize x; set b; r b Ax; do until stop criterion compute Ar; r, r / r, Ar ; x x + r; r r Ar;

4.3

Exerc cios
A= 0 I I I ,

4.1 Considere a matriz invert vel

onde I a matriz identidade m m, e seja V = W = {e1 , . . . , em }. Verique que W T AV singular. e e 4.2 Verique que a matriz W T AV invert se e somente se nenhum vetor do subespao AK ortogonal e vel c e ao subespao L. c 4.3 Sejam B1 = {v1 , . . . , vm } e B2 = {w1 , . . . , wm } duas bases para o subespao K Rn e considere as c matrizes n m V = [v1 vm ] e W = [w1 wm ]. Mostre que existe uma matriz m m invert P vel tal que V = W P . e e a 4.4 Mostre que se A uma matriz positiva denida n n e V uma matriz n m cujas colunas so linearmente independentes, ento a matriz m m V T AV tambm uma matriz positiva denida. a e e e a a 4.5 Mostre que se A uma matriz n m cujas colunas so linearmente independentes, ento a matriz m m B T B invert e vel.

Rodney Josu Biezuner e

73

4.6 Verique que a taxa de convergncia para o mtodo da descida mais acentuada obtida no Teorema 4.12 e e tima da seguinte maneira: se v1 e vn so os autovetores associados a min e max , respectivamente, eo a a mostre que se e0 = v1 + v2 , ento ek+1
A

max min k e max + min

4.7 O nmero de condio para uma matriz invert A Mn (C) qualquer denido por u ca vel e (A) = A
2

A1

a) Mostre que se A uma matriz simtrica positiva denida esta denio coincide com a Denio e e ca ca 4.14. b) Verique que (A) 1 para toda matriz A. c) Considere o sistema Ax = b. Se y uma aproximao de x com erro algbrico e = x y e erro e ca e residual r = b Ay, mostre que f 1 (A) x
2 2

(A)

f x

2 2

Esta desigualdade tima, no sentido de que a igualdade atingida para certos valores de y. Ela e o e mostra que para uma matriz mal-condicionada (isto , com um nmero de condio relativamente e u ca alto), o erro residual pode ser muito pequeno ao mesmo tempo em que o erro algbrico pode ser muito e grande e vice-versa.

Cap tulo 5

Mtodos de Subespaos de Krylov e c


Os mtodos de projeo deste cap e ca tulo esto entre os mais importantes e populares dispon a veis. Eles esto a baseados na projeo sobre subespaos de Krylov, que so subespaos gerados por vetores da forma p (A) v ca c a c onde p um polinmio. e o

5.1

Motivao ca

Como vimos ao estudar os mtodos iterativos lineares para a resoluo do sistema Ax = b, estes mtodos e ca e consistem em obter uma decomposio apropriada A = B C da matriz do sistema, onde B uma matriz ca e prxima da matriz original A mas fcil de resolver. Ento o mtodo iterativo pode ser descrito pela relao o a a e ca de recorrncia e xm+1 = I B 1 A xm + B 1 b, onde R = I B 1 A a matriz de iterao. A matriz mais fcil de resolver e ca a e B = I, exceto que esta matriz em geral est muito longe de A. Quando esta escolha feita, obtemos a chamada a e iterao de Richardson: ca xm+1 = (I A) xm + b = xm + b Axm ou, simplesmente, xm+1 = xm + rm . (5.1)

Assim, o mtodo da iterao de Richardson consiste simplesmente em somar o res e ca duo da aproximao ` ca a prpria aproximao para obter a prxima aproximao. Na verdade, o mtodo de iterao de Richardson o ca o ca e ca desempenha papel importante na teoria de convergncia dos mtodos iterativos: por exemplo, todo mtodo e e e iterativo linear com decomposio A = B C pode ser visto como a iterao de Richardson aplicada ao ca ca sistema equivalente (precondicionado) B 1 Ax = B 1 b. A partir de (5.1) obtemos sua correspondente equao residual: ca rm+1 = (I A) rm . Atravs da iterao para trs desta equao obtemos e ca a ca rm = (I A) r0 = pm (A) r , 74
0 m

(5.2)

(5.3) (5.4)

Rodney Josu Biezuner e ou seja, o m-simo res e duo da forma pm (A) r0 onde pm um polinmio de grau m. Alm disso, como e e o e
m

75

xm+1 = xm + rm = xm1 + rm1 + rm = . . . =


j=0 m

rj

=
j=0

(I A) r0 ,

segue que as aproximao tambm so da forma qm (A) r0 onde qm um polinmio de grau igual a m. ca e a e o Portanto, tanto os res duos r0 , . . . , rm como as aproximaes x0 , . . . , xm pertencem ao subespao co c Km+1 A, r0 = p (A) r0 : p um polinmio de grau menor que ou igual a m e o = r0 , Ar0 , . . . , Am r0 .

5.2

Subespaos de Krylov c
Km (A, v) = v, Av, . . . , Am1 v . (5.5)

5.1 Denio. Dada uma matriz A Mn (C) e um vetor v Cn , denimos o subespao de Krylov ca c

Em outras palavras, Km (A, v) o subespao de todos os vetores que podem ser escritos na forma w = p (A) v, e c onde p um polinmio de grau menor que ou igual a m1. Se no houver motivo para confuso denotaremos e o a a o subespao de Krylov Km (A, v) simplesmente por Km . c Como vimos no cap tulo anterior, um mtodo de projeo geral para resolver o sistema linear e ca Ax = b extrai uma soluo aproximada xm de um subespao am x0 + Km de dimenso m atravs da imposio da ca c a e ca condio de Petrov-Galerkin ca rm = b Axm Lm . Um mtodo de subespao de Krylov um mtodo de projeo para o qual o subespao Km o subespao e c e e ca c e c de Krylov Km A, r0 = r0 , Ar0 , . . . , Am1 r0 . (5.6) As diferentes verses de mtodos de subespao de Krylov decorrem principalmente das diferentes escolhas o e c de Lm . Lembramos alguns fatos de Algebra Linear. o nimo de um vetor v com respeito ` matriz A (tambm chamado o Aa e 5.2 Denio. O polinmio m ca anulador de v) o polinmio mnico de menor grau p que anula v, isto , tal que p (A) v = 0. O grau e o o e do polinmio m o nimo chamado o grau de v com respeito a A. e E uma consequncia do Teorema de Cayley-Hamilton que e grau v n. d.

a e 5.3 Proposio. Seja d = grau v. Ento Kd invariante por A e Kd = Km para todo m ca Alm disso, e dim Km = m se e somente se m d. Portanto, dim Km = min {m, d} .

Rodney Josu Biezuner e

76

Prova: Os vetores v, Av, . . . , Am1 v formam uma base para Km se e somente se o unico polinmio de grau o menor ou igual a m 1 que anula v o polinmio nulo. e o Apesar dos vetores v, Av, . . . , Am1 v formarem uma base para o subespao de Krylov Km (quando m c grau v), esta uma base mal-condicionada, no sentido que ` medida que k aumenta o vetor Ak v ca cada vez e a mais prximo do autovetor associado ao maior autovalor de A, como veremos em detalhe quando estudarmos o o mtodo de potncias para obter autovalores de matrizes. Assim, para m grande os vetores v, Av, . . . , Am1 v e e tornam-se aproximadamente linearmente dependentes, o que torna-se um problema em aritmtica de preciso e a nita. Para obter uma base bem condicionada para o subespao de Krylov necessrio usar um mtodo de c e a e ortogonalizao, como veremos a seguir. ca

5.3

Algoritmo de Arnoldi

O mtodo de Arnoldi um mtodo de projeo ortogonal em subespaos de Krylov, ou seja, Lm = Km = e e e ca c Km A, r0 , aplicvel para matrizes gerais, no necessariamente hermitianas. O procedimento foi introduzido a a pela primeira vez em 1951 como uma maneira de calcular a forma de Hessenberg de matrizes densas. Arnoldi sugeriu que os autovalores da forma de Hessenberg, obtida atravs de menos que n passos, eram boas e aproximaes para alguns dos autovalores da matriz original. Posteriormente, vericou-se que isso conduz co a uma tcnica eciente para a aproximao dos autovalores de matrizes esparsas grandes, como veremos e ca em detalhes quando formos estudar mtodos para a obteno de autovalores de matrizes. Posteriormente o e ca mtodo foi estendido para a soluo de sistemas lineares esparsos grandes. e ca O algoritmo de Arnoldi , propriamente dito, um procedimento para a construo de uma base ortonormal e ca para o subespao de Krylov Km , j que, como observado antes, a base natural v, Av, . . . , Am1 v no c a a e bem condicionada. Simplesmente ortogonalizar esta base mal-condicionada tambm no uma boa opo e a e ca numrica. No algoritmo de Arnoldi, o processo de ortogonalizao de Gram-Schmidt usado da seguinte e ca e maneira. Inicialmente obtm-se o primeiro vetor unitrio atravs da normalizao do vetor v: e a e ca v1 = v . v

Em seguida, calcula-se o vetor Av1 (ao invs de Av) e ortogonaliza-se este vetor com relao ao vetor v1 e ca atravs do mtodo de Gram-Schmidt: e e w1 = Av1 proj Av1 = Av1 Av1 , v1 v1 ,
v1

w1 v2 = . w1 Tendo sido obtido o vetor v2 , calcula-se Av2 (ao invs de A2 v = A (Av)) e ortogonaliza-se este vetor com e relao aos vetores v1 , v2 atravs do mtodo de Gram-Schmidt: ca e e w2 = Av2 proj Av2 = Av2 Av2 , v1 v1 Av2 , v2 v2 ,
v1 ,v2

w2 v3 = . w2 No passo geral, tendo sido obtido o vetor vj no passo anterior, calcula-se e ortogonaliza-se este vetor com relao aos vetores v1 , . . . , vj obtidos nos passos anteriores atravs do mtodo de Gram-Schmidt: ca e e
j

wj = Avj vj+1 = wj . wj

proj Avj = Avj


v1 ,...,vj i=1

Avj , vi vi ,

(5.7) (5.8)

Rodney Josu Biezuner e Podemos resumir este procedimento no seguinte algoritmo: Algoritmo de Arnoldi Atribua v; v1 v/ v 2 ; Para j = 1, . . . , m faa: c Calcule hij = Avj , vi para i = 1, . . . , j; j Calcule wj = Avj hij vi ; i=1 hj+1,j = wj ; 2 Se hj+1,j = 0 ento pare; a vj+1 wj /hj+1,j ; m do lao c O algoritmo sofre um colapso se o vetor wj nulo e o vetor vj+1 no pode mais ser calculado. e a

77

5.4 Proposio. Assuma que o algoritmo de Arnoldi no pra antes do m-simo passo. Ento os vetores ca a a e a v1 , . . . , vm formam uma base ortonormal para o subespao de Krylov c Km (A, v1 ) = v1 , Av1 , . . . , Am1 v1 Prova: Os vetores v1 , . . . , vm so ortonormais por construo, logo so linearmente independentes. Basta a ca a ento mostrar que v1 , . . . , vm Km (A, v1 ) para concluir que eles formam uma base para Km (A, v1 ). Para a isso, basta mostrar que cada vetor vj da forma qj1 (A) v1 para algum polinmio qj1 de grau j 1. Isso e o pode ser visto por induo. Se j = 1, temos q0 (t) 1. Assumindo o resultado verdadeiro para todos os ca inteiros at j, considere vj+1 . Temos e
j j

hj+1,j vj+1 = wj = Avj


i=1

hij vi = Aqj1 (A) v1


i=1 j

hij qi1 (A) v1 ,

de modo que vj+1 = qj (A) v1 para qj = (1/hj+1,j ) tqj1 (t) j.

i=1

hij qi1 (t) , que um polinmio de grau e o

O signicado do colapso do algoritmo de Arnoldi, quando o vetor vj+1 no pode ser mais calculado a e dado a seguir: 5.5 Proposio. O algoritmo de Arnoldi sofre um colapso no passo j, isto hj+1,j = 0, se e somente se ca e o polinmio m o nimo de v tem grau j. Alm disso, neste caso o subespao Kj invariante por A e e c e portanto a soluo obtida pelo mtodo de projeo associado exata. ca e ca e Prova: Se o grau de v j, ento hj+1,j = 0, caso contrrio vj+1 poderia ser denido e pela Proposio 5.4 e a a ca Kj+1 teria dimenso j + 1 maior que o grau de v, contrariando a Proposio 5.3. a ca Reciprocamente, assuma hj+1,j = 0. Ento pelas Proposies 5.3 e 5.4 o grau de v d j. Mas pela a co e primeira parte desta demonstrao, no podemos ter d < j, pois isso implicaria hd+1,d = 0 e o algoritmo j ca a a teria entrado em colapso no passo d. O restante do enunciado segue diretamente da Proposio 5.3 e da Proposio 4.6. ca ca Por isso, tais colapsos so chamados colapsos sortudos. Infelizmente eles raramente ocorrem na prtica, mas a a mesmo quando isso no ocorre as iteradas obtidas aproximam a soluo exata em um nmero relativamente a ca u pequeno de iteraes se comparado com os mtodos lineares bsicos. co e a Vamos agora representar o algoritmo de Arnoldi em uma forma matricial. e 5.6 Denio. Dizemos que A = (aij ) uma matriz de Hessenberg se aij = 0 para todo i > j + 1 ca (matriz de Hessenberg superior ) ou se aij = 0 para todo i < j 1 (matriz de Hessenberg inferior ).

Rodney Josu Biezuner e Assim, uma t pica matriz de Hessenberg h11 h12 h21 h22 0 h32 0 0 H= 0 0 . . . . . . . . . . . . 0 0 superior quadrada m m da forma e h13 h23 h33 h43 0 . . . . . . 0 h14 h24 h34 h44 .. . .. 0 . ... ... ... .. . .. .. .. . . .. .. .. . . .. .. . ... ... ... ... h1m h2m h3m h4m . . . . . . hm1,m hmm ,

78

(5.9)

. ...

. 0

. hm,m1

ou seja, uma matriz obtida a partir de uma matriz triangular superior em que a subdiagonal inferior e e preenchida. Similarmente, uma matriz de Hessenberg inferior quadrada uma matriz obtida a partir de uma e matriz triangular inferior em que a subdiagonal superior preenchida. Uma t e pica matriz de Hessenberg superior (m + 1) m da forma e 0 H= 0 . . . . . . 0 0 h11 h21 0 h12 h22 h32 0 0 . . . . . . 0 0 h13 h23 h33 h43 0 . . . . . . 0 0 h14 h24 h34 h44 .. . .. 0 0 . ... ... ... .. . .. .. .. . . .. .. .. . . .. .. . . ... ... ... ... h1m h2m h3m h4m . . . . . . hm1,m hmm hm+1,m .

(5.10)

. ... 0

. 0 0

hm,m1 0

A partir da em uma matriz de Hessenberg superior nm com n > m+1 todas as linhas i tais que i > m+1 , so nulas. a a 5.7 Proposio. Denote por Vm a matriz n m cujas colunas so os vetores v1 , . . . , vm , por Hm a matriz ca de Hessenberg (m + 1) m cujas entradas no-nulas so os elementos hij denidos pelo algoritmo de a a Arnoldi e por Hm a matriz m m obtida de atravs da eliminao da ultima linha de Hm . Ento e ca a valem as seguintes relaoes: c AVm = Vm Hm + wm eT = Vm+1 Hm , m
T Vm AVm

(5.11) (5.12)

= Hm .

Prova: Se M uma matriz, denotemos por (M )j a sua j-sima coluna. Do algoritmo de Arnoldi temos, e e para j = 1, . . . , m,
j j j+1

(AVm )j = Avj =
i=1

hij vi + wj =
i=1

hij vi + hj+1,j vj+1 =


i=1

hij vi .

(5.13)

Por outro lado,


m+1 j+1

Vm+1 Hm

kj

=
i=1

hij vi =
i=1

hij vi ,

Rodney Josu Biezuner e de modo que segue de (5.13) que


j+1

79

Vm+1 Hm

=
i=1

hij vi = (AVm )j ,

logo AVm = Vm+1 Hm . Da mesma forma, para j = 1, . . . , m 1,


j+1

(Vm Hm )j =
i=1

hij vi ,

wm eT m de modo que

= 0,
j+1

Vm Hm + wm eT m

=
i=1

hij vi = (AVm )j

para j = 1, . . . , m 1, enquanto que para j = m temos


m

(Vm Hm )m =
i=1

him vi ,

wm eT m de modo que

= wm = hj+1,j vm+1 ,
m+1

Vm Hm + wm eT m

=
i=1

hij vi = (AVm )m .

T ca Portanto, AVm = Vm Hm + wm eT . Finalmente, multiplicando ambos os lados desta ultima relao por Vm e m T usando o fato que os vetores v1 , . . . , vm so ortonormais e wm ortogonal a todos eles, segue que Vm Vm = I a e T T e Vm wm eT = Vm wm eT = 0, donde obtemos a ultima relao do enunciado desta proposio. ca ca m m

5.4

Implementao Prtica: Mtodos de Ortogonalizao Estveis ca a e ca a

O algoritmo de Gram-Schmidt numericamente instvel: pequenos erros de arredondamento podem dar e a origem a vetores muito longe de serem ortogonais (veja Exerc 5.1). Na implementao prtica do algocio ca a ritmo de Arnoldi necessrio considerar mtodos de ortogonalizao numericamente estveis. e a e ca a

5.4.1

Mtodo de Gram-Schmidt Modicado (MGS) e

O mtodo de Gram-Schmidt modicado (MGS) uma modicao pequena do mtodo de Grame e ca e Schmidt que produz um algoritmo de ortogonalizao estvel. Na ausncia de erros de arredondamento, ca a e eles produzem os mesmos vetores. No algoritmo de Gram-Schmidt clssico, dada uma base {u1 , . . . , um } de a um subespao vetorial, uma vez calculados os vetores ortonormais v1 , . . . , vj1 correspondentes, os escalares c hij = uj , vi , i = 1, . . . , j 1 so todos calculados simultaneamente para produzir o prximo vetor ortogonal a o unitrio vj a
j1

wj = uj vj = wj . wj
i=1

hij vi ,

(5.14) (5.15)

Rodney Josu Biezuner e

80

No mtodo modicado, assim que o primeiro vetor ortogonal v1 = u1 obtido, todos os vetores u2 , . . . , um e e so atualizados atravs do escalar h1i = ui , v1 : a e
1 vi = ui h1i v1 , i = 2, . . . , m. 1 1 1 1 Assim, os vetores v2 , . . . , vm j so ortogonais a v1 . Em particular, podemos tomar v2 = v2 / v2 a a 1 1 1 vez obtido v2 , todos os vetores v3 , . . . , vm so atualizados atravs dos escalares h2i = vi , v2 : a e 2 1 vi = vi h2i v2 , 2

. Uma

i = 3, . . . , m.

2 2 2 2 Assim, os vetores v3 , . . . , vm so ortogonais a v1 e v2 . Em particular, tomamos v3 = v3 / v3 e continuamos o a processo at o m. Em geral, no passo j, uma vez obtido o vetor unitrio vj , ortogonal aos vetores ortonormais e a j1 j1 v1 , . . . , vj1 , os vetores vj+1 , . . . , vm que j eram ortogonais aos vetores v1 , . . . , vj1 , so atualizados atravs a a e j1 dos escalares hji = vj , vj j j para produzir vetores vj+1 , . . . , vm ortogonais a v1 , . . . , vj1 , vj : j j1 vi = vi hji vj , i = j + 1, . . . , m,

(5.16)

e tomamos vj+1 = .

j vj+1 j vj+1

(5.17)

Em aritmtica exata, os algoritmos de Gram-Schmidt e de Gram-Schmidt modicado so equivalentes; e a alm disso, eles tm o mesmo custo computacional (2m2 n ops) e de armazenamento ((m + 1) n). Para e e entender porque o MGS mais estvel, observe que os dois mtodos so idnticos no clculo de v1 e v2 . A e a e a e a primeira diferena surge no clculo de v3 . No mtodo de Gram-Schmidt clssico (GS) temos c a e a
GS w3 = v3 h13 v1 h23 v2

com h13 = u3 , v1 e h23 = u3 , v2 . O termo h23 v2 a componente de u3 na direo de v2 . Quando este componente removido de u3 , obtemos e ca e um vetor ortogonal a v2 , desde que o escalar h23 seja calculado com exatido. No mtodo MGS primeiro a e calculamos 1 v3 = u3 h13 v1 e depois com Da ,
2 1 v3 = v3 h23 v2 , 1 h13 = u3 , v1 = h13 e h23 = v3 , v2 . MGS 2 w3 = v3 = u3 h13 v1 h23 v2 = u3 h13 v1 h23 v2

1 Em princ pio, u3 e v3 = u3 h13 v1 tm as mesmas componentes na direo de v2 , j que v1 ortogonal e ca a e a v2 , e no faria diferena usar h23 ou h23 . Na prtica, os vetores v1 e v2 no so exatamente ortogonais, a c a a a por causa de erros de arredondamento, portanto o termo h13 v1 tem uma pequena componente na direo de ca v2 . Alm disso, erros de arredondamento tambm ocorrem na subtrao de h13 v1 de u3 , portanto este vetor e e ca diferena tambm tem uma componente na direo de v2 . O mtodo de Gram-Schmidt clssico ignora estes c e ca e a 1 erros, enquanto que o mtodo modicado, trabalhando com o vetor v3 ao invs de u3 , leva estes erros em e e conta e os corrige no clculo de h23 . a

Rodney Josu Biezuner e

81

Para obter um algoritmo computacionalmente implementvel para o MGS, observe que enquanto que no a mtodo de Gram-Schmidt clssico, uma vez obtidos os vetores ortonormais v1 , . . . , vj1 obtemos o prximo e a o vetor ortogonal unitrio vj fazendo a
j

wj = uj vj = wj , wj
i=1

projvi uj ,

no mtodo de Gram-Schmidt modicado fazemos e


1 vj = uj projv1 uj , 2 1 1 vj = vj projv2 vj , 3 2 2 vj = vj projv3 vj , . . . j2 vj j1 vj

(5.18)
j3 vj , j2 vj ,

= =

vj =

j3 vj j2 vj j1 vj j1 vj

projvj2 projvj1 .

Usando o MGS, o algoritmo de Arnoldi tem o seguinte aspecto. Obtm-se o primeiro vetor unitrio e a atravs da normalizao do vetor v: e ca v v1 = . v Em seguida, calcula-se o vetor Av1 e ortogonaliza-se este vetor com relao ao vetor v1 : ca
1 v2 = Av1 projv1 Av1 = Av1 Av1 , v1 v1 ,

v2 =

1 v2 1 . v2

Como j observado anteriormente, at aqui o MGS idntico ao mtodo de Gram-Schmidt clssico. Tendo a e e e e a sido obtido o vetor v2 , calcula-se Av2 e ortogonaliza-se este vetor primeiro com relao ao vetor v1 e depois ca o vetor resultante ortogonalizado com relao ao vetor v2 : e ca
1 v3 = Av2 projv1 Av2 = Av2 Av2 , v1 v1 , 2 1 1 1 1 v3 = v3 projv2 v3 = v3 v3 , v2 v2 ,

v3 =

2 v3 2 . v3

No passo geral, tendo sido obtido o vetor vj no passo anterior, calcula-se Avj e ortogonaliza-se este vetor com relao ao primeiro vetor v1 ; em seguida o vetor resultante ortogonalizado com relao ao vetor v2 , e ca e ca

Rodney Josu Biezuner e

82

assim por diante, at que o vetor resultante do passo anterior seja ortogonalizado com relao ao vetor vj : e ca
1 vj = Avj projv1 Avj = Avj Avj , v1 v1 , 1 1 2 1 1 vj = vj projv2 vj = vj vj , v2 v2 , . . . j1 j2 j2 j2 j2 vj = vj projvj1 vj = vj vj , vj1 vj1 , j j1 j1 j1 j1 vj = vj projvj vj = vj vj , vj vj ,

(5.19)

vj+1 =

j vj j vj

Podemos resumir este procedimento no seguinte algoritmo: Algoritmo de Arnoldi MGS Atribua v; v1 v/ v 2 ; Para j = 1, . . . , m faa c Calcule wj = Avj ; Para i = 1, . . . , j faa c hij wj , vi ; wj wj hij vi m do lao c hj+1,j = wj ; 2 Se hj+1,j = 0 ento pare; a vj+1 wj /hj+1,j ; m do lao c Embora o MGS seja mais estvel, em situaes onde os erros de cancelamento podem ser muito severos a co nos passos de ortogonalizao necessrio considerar mtodos ainda mais estveis. ca e a e a

5.4.2

Mtodo de Gram-Schmidt Modicado com Reortogonalizao (MGSR) e ca


(j1)

Uma melhoria simples recorrer ` ortogonalizao dupla. Ou seja, no passo j obtemos o vetor vj e a ca que deve ser ortogonal aos vetores w1 , . . . , wj1 . Isso pode ser vericado diretamente, calculando os produtos internos vj , wi e vericando se eles so prximos de 0 dentro de uma margem de tolerncia pre-estabelecida. Se a o a temos que nos dar a este trabalho, melhor aproveitar os clculos destes produtos internos e fazer logo uma e a segunda ortogonalizao. Assim no primeiro loop do algoritmo MGS anterior acrescentamos um segundo ca loop: Calcule wj = Avj ; Para i = 1, . . . , j faa c hij wj , vi ; wj wj hij vi Para i = 1, . . . , j faa c wj , vi ; wj wj vi ; hij hij + ; m do lao c hj+1,j = wj ; 2 Se hj+1,j = 0 ento pare; a vj+1 wj /hj+1,j ;
(j1)

Rodney Josu Biezuner e

83

Ortogonalizaes adicionais so supruas: duas ortogonalizaes so sucientes para fazer o vetor wj orco a e co a togonal aos vetores w1 , . . . , wj1 na preciso de mquina (veja [Watkins], p. 233, ou [Saad], p. 156). a a Flops Armazenagem GS 2m2 n (m + 1) n MGS 2m2 n (m + 1) n MGSR 4m2 n (m + 1) n

5.5

Mtodo de Arnoldi para Sistemas Lineares e

Dado um chute inicial x0 para a soluo do sistema linear Ax = b, o mtodo de Arnoldi para sistemas ca e lineares um mtodo de projeo ortogonal em que e e ca K = L = Km A, r0 = r0 , Ar0 , A2 r0 , . . . , Am1 r0 em que r0 = b Ax0 . Portanto, o mtodo busca uma soluo aproximada xm x0 + Km impondo a condio e ca ca de Galerkin rm = b Axm Km . De acordo com o cap tulo anterior, se Vm = [v1 vm ] uma matriz cujas colunas formam uma base e ortonormal para Km , obtidas atravs do algoritmo de Arnoldi, temos e xm = x0 + Vm y m com
T y m = Vm AVm 1 T 1 T 1 T V m r 0 = Hm V m r 0 = Hm V m 1 T r0 v1 = r0 Hm Vm (v1 )

1 = r0 Hm (e1 ) .

Baseados nestas observaes, temos ento o seguinte mtodo de Arnoldi para sistemas lineares, chamado co a e mtodo da ortogonalizao completa (ou FOM de full orthogonalization method ): e ca Algoritmo de Arnoldi para Sistemas Lineares FOM Inicialize x0 ; Calcule r0 = b Ax0 ; Calcule = r0 2 ; v1 r0 /; Inicialize a matriz Hm = (hij )mm = 0; Para j = 1, . . . , m faa c Calcule wj = Avj ; Para i = 1, . . . , j faa c hij wj , vi ; wj wj hij vi m do lao c hj+1,j = wj ; 2 Se hj+1,j = 0 tome m := j e saia do lao; c vj+1 wj /hj+1,j ; m do lao c 1 1 Calcule y m = Hm (e1 ) ; //no necessrio encontrar Hm a e a Calcule xm = x0 + Vm y m . e Este algoritmo pode ser tambm obtido diretamente. A condio de Galerkin rm Km A, r0 equivalente e ca a T Vm (b Axm ) = 0

Rodney Josu Biezuner e ou

84

T T Vm Axm = Vm b

Escolhendo o chute inicial x0 = 0 para simplicar, temos que b = r0 = r0 v1 , donde


T T Vm Axm = r0 Vm v1 = r0 e1 .

Como xm Km A, r0 , podemos escrever xm = Vm y m para algum vetor y m Rm . Logo


T Vm AVm y m = r0 e1 ,

que pode ser interpretado como o sistema Ax = b projetado no subespao Km A, r0 . Usando o fato que c T Vm AVm = Hm , segue que H m y m = r 0 e1 . (5.20) Resolvendo este sistema obtemos y m e da a aproximao ca xm = Vm y m . (5.21)

Como em geral m n, este sistema bem mais fcil de resolver que o sistema original, possibilitando e a o uso de mtodos diretos. De fato, embora a matriz de Hessenberg seja uma matriz densa, como ela e e quase triangular uma decomposio QR passa a ser competitiva com a decomposio LU e indicada (para ca ca e matrizes gerais, o custo da decomposio LU a metade do custo da decomposio QR). Maiores detalhes ca e ca sero fornecidos na prxima seo. a o ca O algoritmo depende do parmetro m que em geral deve ser selecionado dinamicamente. Em geral, m a e progressivamente aumentado at que o res e duo rm menor que alguma tolerncia previamente estabelecida. e a Ao invs de calcular o res e duo diretamente, podemos obter a norma do res duo de maneira menos custosa atravs do seguinte resultado: e duo calculado atravs do mtodo de Arnoldi FOM satisfaz e e 5.8 Proposio. O res ca rm = hm+1,m em , y m v m+1 , logo rm = hm+1,m eT y m m (5.22)

Em particular, os res duos so ortogonais. a Prova: Temos, pela Proposio 5.7, ca rm = b Axm = b A x0 + Vm y m = r0 AVm y m = r0 v1 Vm Hm + wm eT y m m = r0 v1 Vm Hm y m wm eT y m m = r0 v1 Vm r0 e1 hm+1,m v m+1 eT y m m = hm+1,m em , y m v m+1 .

Rodney Josu Biezuner e

85

5.6

Decomposio QR via MGS ca


A = QR (5.23)

Lembramos que uma decomposio QR de uma matriz A uma fatorizao ca e ca

onde Q uma matriz ortogonal (no caso real, unitria no caso complexo) e R uma matriz triangular superior. e a e Usando esta decomposio, podemos resolver o sistema linear Ax = b da seguinte maneira. Multiplicando ca ambos os lados da equao por QT obtemos ca QT Ax = QT b, de modo que o sistema original equivalente ao sistema e Rx = QT b (5.24)

cuja matriz de coecientes uma matriz triangular superior, logo pode ser resolvido por substituio. e ca Para calcular a decomposio QR de uma matriz, um dos mtodos que podem ser usados o prprio ca e e o MGS. Outros mtodos sero vistos no cap e a tulo sobre autovalores. Para facilitar a compreenso, veremos a primeiro como fazer a decomposio QR usando o mtodo de Gram-Schmidt modicado. No que se segue ca e assumiremos que A uma matriz nm cujas m colunas so linearmente independentes. Escrevendo a matriz e a A em colunas A = A1 A2 Am , (5.25) aplicamos o mtodo de Gram-Schmidt `s colunas de A, obtendo e a
j1

wj = Aj vj = Resolvendo em termos de Aj , podemos escrever


j1

Aj , vi vi ,
i=1

(5.26) (5.27)

wj . wj

Aj =
i=1

rij vi + wj vj =
i=1

rij vi

(5.28)

com rij = Aj , vi , rjj = wj . Assim, tomando Q= e r11 0 0 v1 r12 r22 0 0 . . . 0 v2 r13 r23 r33 0 . . . 0 ... ... ... .. . . ... .. .. 0 . vm r1m r2m r3m . . . . . . rmm (5.31) (5.29) (5.30)

R= 0 . . . 0

(5.32)

Rodney Josu Biezuner e segue que 0 . . . 0 r11 0 0 r12 r22 0 0 . . . 0 r13 r23 r33 0 . . . 0 ... ... ... .. . . ... .. .. 0 . r1m r2m r3m . . . . . . rmm ,

86

A1

A2

Am

v1

v2

vm

(5.33)

ou seja, A = QR. Devido aos problemas da instabilidade do mtodo de Gram-Schmidt clssico, melhor usar o mtodo de e a e e Gram-Schmidt modicado para fazer a decomposio QR de uma matriz. Resolvendo o j-simo passo do ca e MGS
1 vj = Aj Aj , v1 v1 , 2 1 1 vj = vj vj , v2 v2 , 3 2 2 vj = vj vj , v3 v3 , . . . j2 j3 j3 vj = vj vj , vj2 vj2 , j1 j2 j2 vj = vj vj , vj1 vj1 ,

vj = em termos de Aj , denotando segue que

j1 vj j1 vj

0 vj = Aj ,

(5.34)

1 Aj = vj + Aj , v1 v1 2 1 = vj + vj , v2 v2 + Aj , v1 v1 3 2 1 = vj + vj , v3 v3 + vj , v2 v2 + Aj , v1 v1

...
j1 j1 = vj + i=1 j1 j1 = vj vj + i=1 j i1 vj , vi vi i1 vj , vi vi

(5.35)

=
i=1

rij vi ,

onde denimos
i1 rij = vj , vi

se i = 1, . . . , j 1,

(5.36) (5.37)

rjj =

j1 vj

Assim, se Q e R so denidas como em (5.31) e (5.32), novamente ns temos A = QR. a o

Rodney Josu Biezuner e

87

5.7

Algoritmo de Lanczos e Mtodo do Gradiente Conjugado e

O algoritmo de Lanczos pode ser visto como uma simplicao do mtodo de Arnoldi para matrizes simtricas. ca e e Quando a matriz A simtrica, a matriz de Hessenberg Hm torna-se uma matriz tridiagonal simtrica, pois e e e T Hm = Vm AVm e uma matriz de Hessenberg simtrica necessariamente tridiagonal. Isso leva a uma e e recorrncia de trs termos no processo de Arnoldi e a recorrncias curtas para algoritmos de soluo tais e e e ca como o FOM. A notao padro para descrever o algoritmo de Lanczos obtida tomando ca a e j = hjj , j = hj1,j de modo que a matriz de Hessenberg Hm resultante tem a forma 1 2 2 2 3 .. .. .. Tm = . . . m1 m1 m

m m

(na notao padro do algoritmo de Lanczos, a matriz de Hessenberg Hm denotada por Tm , para enfatizar ca a e a sua tridiagonalidade). Isto leva ` seguinte variao MGS do mtodo de Arnoldi (FOM): a ca e Algoritmo de Lanczos com MGS Inicialize x0 ; Calcule r0 = b Ax0 ; Calcule = r0 2 ; v1 r0 /; Inicialize 1 = 0, v0 0; Para j = 1, . . . , m faa c wj Avj j vj1 ; j wj , vi ; wj wj j vj ; j+1 wj ; Se j+1 = 0 ento pare; a vj+1 wj / j+1 ; m do lao c Atribua a matriz Tm = tridiag (i , i , i+1 ); Atribua a matriz Vm = [v1 vm ] ; 1 1 Calcule y m = Tm (e1 ) ; //no necessrio encontrar Tm a e a m 0 m Calcule x = x + Vm y . Este algoritmo pode ser consideravelmente simplicado, atravs da obteno de uma frmula de recorrncia e ca o e de trs termos, levando ao mtodo do gradiente conjugado. Primeiro, fazemos uma decomposio LU da e e ca matriz tridiagonal Tm = Lm Um sem pivs: o 1 2 1 2 3 2 1 .. 3 1 . 3 Tm = (5.38) .. .. .. . . . m m 1 m
Lm Um

Rodney Josu Biezuner e

88

onde os coecientes das matrizes bidiagonais Lm e Um podem ser obtidas atravs da seguinte frmula de e o recorrncia: e 1 = 1 ,
1 2 = 2 1 , 2 = 2 2 2 , 1 3 = 3 2 , . . . 1 m = m m1 , m = m m m ,

isto , e
1 j = j j1 ,

(5.39) (5.40)

j = j j j .

(Observe que j = 0 para todo j porque Tm simtrica, positiva denida.) A soluo aproximada dada e e ca e ento por a 1 xm = x0 + Vm Um L1 (e1 ) . (5.41) m Denindo
1 Pm = Vm Um ,

(5.42) (5.43) (5.44)

z segue que

L1 m

(e1 ) ,

xm = x0 + Pm z m .

Por causa da estrutura triangular superior bidiagonal de Um , Pm pode ser atualizada facilmente. De fato, escreva Pm em colunas: Pm = p1 p2 pm . Da relaao Pm Um = Vm segue que c m pm1 + m pm = vm , donde
1 pm = m (vm m pm1 ) .

(5.45)

Alm disso, por causa da estrutura triangular inferior bidiagonal com diagonal unitria de Um , da relao e a ca Lm z m = e1 segue que m m m zj1 + zj = 0 para j > 1, e portanto podemos escrever (lembrando que z m um vetor de Rm assim como y m ) e zm = com Assim, xm = x0 + Pm1 pm z m1 m z m1 m (5.46) (5.47)

m = m m1 .

= x0 + Pm1 z m1 + m pm ,

Rodney Josu Biezuner e donde

89

xm = xm1 + m pm .

(5.48)

Isso d a seguinte verso direta para o algoritmo de Lanczos para sistemas lineares: a a Algoritmo de Lanczos Direto Inicialize x0 ; Calcule r0 = b Ax0 ; Calcule 1 = = r0 2 ; v1 r0 /; Inicialize 1 = 1 0; Inicialize p0 0; Para m = 1, 2, . . . , at limite de tolerncia faa e a c w Avm m vm1 ; m w, vm ; Se m > 1 ento a m m /m1 ; m m m1 ; m m m m ; pm (vm m pm1 ) /m ; m x xm1 + m pm ; w w m vm ; m+1 w ; Se m+1 = 0 ento pare; a vm+1 w/ m+1 ; m do lao c Este algoritmo ainda pode ser consideravelmente simplicado. O resultado, uma frmula tripla de o recorrncia, extremamente simples e que no envolve o clculo da base ortonormal {v1 , . . . , vm }, o chamado e a a e mtodo do gradiente conjugado (CG). Para obt-lo, observamos primeiramente que os vetores pm so e e a A-conjugados (isto , A-ortogonais): e 5.9 Proposio. ca pi , pj para todos i = j. Prova: Para provar isso, basta mostrar que uma matriz diagonal. Isso segue de e
T T T 1 Pm APm = Um Vm AVm Um T 1 = Um Tm Um T = Um Lm T e do fato que Um Lm uma matriz triangular inferior (a inversa de uma matriz triangular superior uma e e matriz triangular superior e o produto de duas matrizes triangulares inferiores uma matriz triangular e inferior) que simtrica. e e Usando a notao padro do mtodo do gradiente conjugado (ou seja, agora os escalares m , m tero ca a e a um signicado completamente diferente do anterior), reescrevemos (5.48) na forma T Pm APm A

= Api , pj = 0

(5.49)

xm+1 = xm + m pm ,

(5.50)

Rodney Josu Biezuner e de modo que os res duos satisfazem

90

rm+1 = rm m Apm . rm , rm . Apm , rm

(5.51)

Como os res duos so ortogonais (Proposio 5.8), segue que rm m Apm , rm = 0, donde a ca m = Reescrevemos tambm (5.45) na forma e pm+1 = rm+1 + m pm ; (5.53) para isso usamos a Proposio 5.8 e fazemos uma mudana de escala nos vetores pm (isso no altera a ca c a validade de (5.50), em que assumimos os vetores pm tomados j com a mudana de escala; assim os vetores a c pm do algoritmo do gradiente conjugado considerado aqui tambm so diferentes dos vetores considerados e a acima no algoritmo de Lanczos, sendo mltiplos adequados destes). Da como u , rm+1 + m pm , Apm = pm+1 , Apm = 0, segue que m = Observe porm que e enquanto que de (5.51) temos Apm , rm+1 . Apm , pm (5.54) (5.52)

Apm , rm = Apm , pm m pm1 = Apm , pm ,


1 Apm = m rm+1 rm .

Portanto, usando a ortogonalidade dos res duos, podemos escrever m = Apm , rm+1 rm+1 , rm+1 = . Apm , rm rm , rm rm , rm . Apm , pm (5.55)

Alm disso, usando (5.54) tambm podemos reescrever (5.52) na forma e e m = (5.56)

Estas ultimas frmulas para m e m so muito mais convenientes para o algoritmo do gradiente conjugado: o a Algoritmo do Gradiente Conjugado Inicialize x0 ; Atribua b; r b Ax0 ; p r; current r, r r0 , r0 ; Atribua o limite de tolerncia e o nmero mximo de iteraes; a u a co N = 0; //nmero de iteraes. u co Faa at que o limite de tolerncia seja atingido c e a ou at o nmero mximo de iteraes e u a co Calcule Ap; current r, r / p, Ap ; x x + p; r r Ap; r, r /current r, r ; p r + p; current r, r r, r ; N + +; m do lao c

Rodney Josu Biezuner e

91

5.8

Mtodo do Gradiente Conjugado como um Mtodo de Descida e e

O mtodo do gradiente conjugado uma das mais conhecidas e usadas tcnicas iterativas para resolver sise e e temas lineares envolvendo matrizes simtricas esparsas, dada sua ecincia e simplicidade de implementao. e e ca Como vimos na seo anterior, ele matematicamente equivalente ao FOM. No que se segue, veremos uma ca e descrio alternativa do mtodo CG, em que ele visto como uma modicao do mtodo de descida mais ca e e ca e acentuada (mtodo do gradiente). e Os mtodos iterativos lineares bsicos e os mtodos de descida que vimos anteriormente so limitados e a e a pela sua falta de memria, no sentido de que apenas informao sobre xk usada para obter xk+1 . Toda a o ca e informao sobre as iteraes anteriores perdida. O mtodo do gradiente conjugado uma variao simples ca co e e e ca do mtodo da descida mais acentuada que funciona melhor porque a informao obtida atravs das iteraes e ca e co anteriores utilizada. e Para entender como isso funciona, observe que depois de m iteraes xk+1 = xk + k pk de um mtodo co e de descida temos xm = x0 + 0 p0 + 1 p1 + . . . + m1 pm1 , de modo que xm est no subespao am gerado pelo chute inicial x0 e pelos vetores p0 , p1 , . . . , pm1 . a c Enquanto o mtodo da descida mais acentuada minimiza o funcional quadrtico de energia f associado ao e a sistema Ax = b apenas ao longo das m retas xk + k pk , cuja unio constitui apenas um pequeno subconjunto a do subespao am m-dimensional x0 + p0 , p1 , . . . , pm1 , o mtodo do gradiente conjugado minimiza f sobre c e todo o subespao am x0 + p0 , p1 , . . . , pm1 . c Para denir as direes de busca do mtodo do gradiente conjugado (que , antes de mais nada, um mtodo co e e e de descida), comeamos dando uma prova mais simples da Proposio 4.4 que no utiliza a linguagem de c ca a mtodos de projeo: e ca 5.10 Teorema. Seja A Mn (R) uma matriz simtrica positiva denida e b Rn . Ento, o funcional e a quadrtico de energia associado ao sistema Ax = b pode ser escrito na forma a 1 1 2 2 e A x A. (5.57) 2 2 onde e = x y o erro algbrico. Em particular, minimizar o funcional quadrtico f equivalente a e e a e minimizar a A-norma do erro. f (y) = Prova: Pela regra do paralelogramo, temos x+y donde 2 y ou y Logo, f (y) =
2 A 2 A 2 A 2 A 2 A

+ xy
2 A 2 A 2 A

=2 x

+2 y
2 A 2 A 2 A

,
2 A

= xy = xy
2 A

+ x

+ 2 y, x
A

+ 2 y, x
A

A 2 A 2 A

+ y + y x
2 A

2 x , .
2 A

2 y, x
2 A

= xy =

1 y 2

y, x

1 e 2

1 x 2

(5.58)

Em um mtodo de descida, depois de m iteraes temos: e co em = x xm = x x0 0 p0 + 1 p1 + . . . + m1 pm1


m1

= e0
i=0

i pi .

Rodney Josu Biezuner e Minimizar em


A

92

portanto equivalente a minimizar e


m1

e0
i=0

i pi
A

o que por sua vez equivalente a encontrar a melhor aproximao do vetor e0 no subespao Wm = e ca c p0 , p1 , . . . , pm1 . Esta dada pelo lema da melhor aproximao, que enunciamos em detalhe por coe ca modidade: 5.11 Proposio. (Lema da Melhor Aproximao) Sejam A Mn (R) uma matriz simtrica positiva ca ca e denida, v Rn e W um subsespao de Rn . Ento existe um unico w W tal que c a vw
A

= min v z
zW

O vetor w caracterizado pela condio v w A W . e ca Segue deste resultado que em satisfaz


A

minimizado quando escolhemos p = e em A pi para i = 1, . . . , m 1.

m1 i=0

i pi Wm tal que em = e0 p (5.59)

Nosso objetivo ento desenvolver um mtodo em que o erro a cada passo conjugado com todas as direes a e e e co de busca anteriores. Como fazer isso? Pelo Lema 4.11, cujo enunciado repetimos a seguir como Proposio ca 5.12 para facilitar a consulta, sabemos que em qualquer mtodo de descida em que a busca na reta exata e e satisfaz automaticamente em A pm1 , isto , (5.59) vlido para a ultima iterao (o erro da iterao e e a ca ca presente A-ortogonal ` direo de busca da iterao anterior): e a ca ca 5.12 Proposio. Seja xm+1 = xm + m pm obtido atravs de uma busca na reta exata. Ento ca e a rm+1 pm e em+1 A pm .

Fazendo uma busca exata na reta x0 + tp0 obtemos o escalar 0 e x1 = x0 + 0 p0 Pela Proposio 5.12 segue que e1 A p0 . Como ca e2 = x x2 = x x1 1 p1 = e1 1 p1 , para que tenhamos e2 A p0 necessrio escolher p1 conjugado a p0 . Se isso foi feito, fazendo em seguida e a uma busca exata na reta x1 + tp1 obtemos o escalar 1 , x1 = x0 + 0 p0 e, pela Proposio 5.12, e2 A p1 . No m-simo passo, como ca e em = x xm = x xm1 m1 pm1 ou seja,
m

em = em1 m1 pm1 ,
0 m2 m

(5.60)

para que o erro e seja conjugado aos vetores p , . . . , p basta escolher a direo de busca p conjugada ca a p0 , . . . , pm1 ; para assegurar que em tambm seja conjugado ao vetor pm1 , basta fazer uma busca exata e

Rodney Josu Biezuner e

93

na reta xm1 + tpm1 . Assim, uma condio necessria para obter (5.59) escolher as direes de busca de ca a e co tal forma que (5.61) pi A pj para todos i = j. Um mtodo com estas caracter e sticas chamado um mtodo de direes conjugadas. Estes resultados e e co so resumidos na proposio a seguir: a ca 5.13 Teorema. Se um mtodo emprega direes de busca conjugadas e performa buscas na reta exatas, e co ento a em A pi para i = 1, . . . , m 1, para todo m. Conseqentemente u onde Wm = p0 , p1 , . . . , pm1 . Prova: A demonstrao por induo. Para m = 1, temos e1 A p0 pela Proposio 5.12 porque a busca ca e ca ca na reta exata. Em seguida, assuma em A pi para i = 1, . . . , m 1; queremos mostrar que em+1 A pi e para i = 1, . . . , m. Como em+1 = em m pm , para i = 1, . . . , m 1 temos em+1 , pi
A

em

= min

pWm

e0 p

= em m pm , pi

= em , pi

m pm , pi

=00=0

porque as direes de busca so conjugadas. em+1 A pm segue novamente da Proposio 5.12. co a ca Quando a direo inicial dada pelo vetor gradiente de f , como na primeira iterao do mtodo da descida ca e ca e mais acentuada, obtemos o mtodo do gradiente conjugado. As direes subseqentes so escolhidas atravs e co u a e de A-ortogonalizar o res duo (ou vetor gradiente de f , que a direo de busca em cada iterao do mtodo e ca ca e da descida mais acentuada) com todas as direes de busca anteriores, o que pode ser feito simplesmente co utilizando-se o algoritmo de Gram-Schmidt que no mtodo do gradiente conjugado produz o mesmo resultado e que um mtodo mais estvel como o MGS, como veremos. Dado um chute inicial p0 , a primeira direo e a ca e p0 = f x0 = b Ax0 = r0 ou seja, a direo inicial o primeiro res ca e duo: p0 = r0 . Depois de m passos com direes de busca conjugadas p0 , . . . , pm , escolhemos co
m

(5.62)

pm+1 = rm+1
i=0

cmi pi

(5.63)

onde os cmi so dados pelo algoritmo de Gram-Schmidt: a cmi = rm+1 , pi A . pi , pi A (5.64)

de forma que pm+1 A pi para todos i = 1, . . . , m. Felizmente, como veremos a seguir depois de algum trabalho preliminar (Corolrio 5.17), cmi = 0 para todo i exceto i = m, o que torna necessrio que apenas a a a direo de busca mais recente pm seja armazenada na memria do computador, o que garante que a ca o implementao do gradiente conjugado eciente: ca e pm+1 = rm+1 rm+1 , pm A m rm+1 , Apm m p = rm+1 p pm , pm A pm , Apm (5.65)

Rodney Josu Biezuner e ou, denindo m = temos que

94

rm+1 , Apm , pm , Apm

(5.66) (5.67)

pm+1 = rm+1 + m pm .

Esta a modicao do mtodo do gradiente conjugado em relao ao mtodo da descida mais acentuada, e ca e ca e no qual tomamos pm+1 = rm+1 . Podemos obter uma expresso mais simples para o escalar m , em funo apenas dos res a ca duos. Com efeito, temos rm+1 , rm+1 = rm+1 , rm m rm+1 , Apm = m rm+1 , Apm porque os res duos obtidos atravs do mtodo do gradiente conjugado so mutualmente ortogonais (veja e e a Corolrio 5.16), logo a rm+1 , Apm rm+1 , rm+1 = = . m , Apm p m pm , Apm Temos m = rm + pm1 , rm pm , rm rm , rm = = m , m , Apm m , Apm p p p , Apm

porque pm1 , rm = 0 pela Proposio 5.12, logo ca m = Portanto = rm , rm . pm , Apm (5.68)

rm+1 , rm+1 . rm , rm

(5.69)

Podemos obter um algoritmo ainda mais eciente para o mtodo do gradiente conjugado se observarmos que e para calcular o res duo rm+1 = b Axm+1 em cada iterao no necessrio calcular Axm+1 explicitamente; ca a e a de fato, como vimos na demonstrao da Proposio 5.12, temos rm+1 = rm m Apm . Desta forma, obtemos ca ca o mesmo algoritmo do gradiente conjugado obtido na seo anterior a partir do algoritmo de Lanczos. ca

5.8.1

Convergncia do Mtodo do Gradiente Conjugado em Aritmtica Exata e e e

Vamos agora provar uma srie de resultados com o objetivo principal de demonstrar o fato mencionado e acima que cmi = 0 para todo i = 1, . . . , m 1 e tambm que o mtodo do gradiente conjugado converge em e e aritmtica exata em precisas n iteraes se a matriz A tem tamanho n. e co 5.14 Teorema. Depois de j iteraes do algoritmo do gradiente conjugado (com rm = 0 em cada iterao), co ca temos p0 , p1 , . . . , pj1 = r0 , r1 , . . . , rj1 = Kj A, r0 . Prova: A demonstrao por induo. O resultado trivial para j = 0, pois p0 = r0 . Assuma o resultado ca e ca e vlido para j 1. Em primeiro lugar, mostraremos que a r0 , r1 , . . . , rj Kj+1 A, r0 . (5.70)

Em vista da hiptese de induo, basta mostrar que rj Kj+1 A, r0 . Como rj = rj1 j1 Apj1 e o ca o ca rj1 Kj A, r0 Kj+1 A, r0 por hiptese de induo, basta provar que Apj1 Kj+1 A, r0 . Mas, tambm por hiptese de induo, pj1 Kj+1 A, r0 , logo e o ca Apj1 Kj A, Ar0 = Ar0 , A2 r0 , . . . , Aj r0 r0 , Ar0 , A2 r0 , . . . , Aj r0 = Kj+1 A, r0 .

Rodney Josu Biezuner e Em seguida, mostraremos que p0 , p1 , . . . , pj r0 , r1 , . . . , rj .

95

(5.71)

Por hiptese de induo, basta provar que pj r0 , r1 , . . . , rj . Isso segue de (5.63) e da hiptese de induo. o ca o ca At aqui provamos que e p0 , p1 , . . . , pj r0 , r1 , . . . , rj Kj+1 A, r0 . Para provar que eles so iguais, basta mostrar que eles tm a mesma dimenso. Isso decorre de a e a dim r0 , r1 , . . . , rj dim Kj+1 A, r e
0

(5.72)

j + 1, j+1

dim p0 , p1 , . . . , pj = j + 1,

o ultimo porque os vetores p0 , p1 , . . . , pj so vetores no-nulos A-ortogonais. a a 5.15 Corolrio. Depois de j iteraes do algoritmo do gradiente conjugado, temos a co ej A Kj A, r0 para todo j. Prova: Segue imediatamente do teorema anterior e do Teorema 5.13. 5.16 Corolrio. Depois de j iteraes do algoritmo do gradiente conjugado, temos a co rj Kj A, r0 para todo j. Prova: Em vista do Teorema 5.14, basta provar que rj p0 , p1 , . . . , pj1 para todo j. Como Aej+1 = rj+1 , rj+1 , pi = Aej+1 , pi = ej+1 , pi
A

=0

para todo i = 1, . . . , j 1, como vimos na demonstrao do Teorema 5.13. ca 5.17 Corolrio. cmi = 0 para todo i = 1, . . . , m 1. a Prova: Temos que provar que rm+1 , pi = rm+1 , Api = 0

para todos i = 1, . . . , m 1. Pelo Teorema 5.14, pi p0 , p1 , . . . , pi = r0 , Ar0 , . . . , Ai r = Ki+1 A, r0 , logo Api Ar0 , A2 r0 , . . . , Ai+1 r Ki+2 A, r0 Km+1 A, r0 e o resultado segue do corolrio anterior. a 5.18 Teorema. Seja A Mn (R) uma matriz simtrica positiva denida. Ento o mtodo do gradiente e a e conjugado converge em n iteraes. co Prova: Se zemos n 1 iteraes para obter x, pelo Corolrio 5.16 os vetores r0 , r1 , . . . , rn1 formam uma co a base ortogonal para Rn . Depois de mais uma iterao, de acordo com este mesmo corolrio o res ca a duo rn n 0 1 n1 n n satisfaz r r , r , . . . , r = R , logo r = 0.

Rodney Josu Biezuner e

96

5.9

Velocidade de Convergncia do Mtodo do Gradiente Conjue e gado

Na maioria das aplicaes o mtodo do gradiente conjugado converge ainda mais rpido do que as n iteraes co e a co previstas pelo Teorema 5.18, se apenas uma boa aproximao requerida. Para obter uma estimativa da ca e velocidade de convergncia do mtodo do gradiente conjugado, precisamos desenvolver algumas ferramentas e e tericas antes. o

5.9.1

Polinmios de Chebyshev o

Polinmios de Chebyshev so provavelmente os mais uteis polinmios na Teoria de Aproximao, a rea o a o ca a que se ocupa em determinar como melhor aproximar funes atravs de funes mais simples (tais como co e co polinmios). Os polinmios de Chebyshev do primeiro tipo surgiram inicialmente como solues da equao o o co ca de Chebyshev: 1 x2 y xy + n2 y = 0 5.19 Denio. O polinmio de Chebyshev do primeiro tipo de grau k o polinmio de grau k Ck : ca o e o [1, 1] R denido por Ck (t) = cos k cos1 t . Que Ck de fato um polinmio de grau k pode ser visto atravs da seguinte frmula de recorrncia: e o e o e o e e o 5.20 Proposio. Vale a seguinte frmula de recorrncia de trs termos para os polinmios de Chebyshev ca C0 (t) = 1, C1 (t) = t, Ck+1 (t) = 2tCk (t) Ck1 (t) . (5.73)

Em particular, Ck (t) um polinmio real de grau k, Ck (t) uma funo par se k par e uma funo e o e ca e ca mpar se k e mpar. Prova: Usando a identidade trigonomtrica e cos [(k + 1) ] + cos [(k 1) ] = 2 cos cos k, segue que Ck+1 (t) + Ck1 (t) = cos [(k + 1) arccos t] + cos [(k 1) arccos t] = 2 cos (arccos t) cos [k arccos t] = 2tCk (t) . A frmula de recorrncia da Proposio 5.20 permite estender naturalmente o dom o e ca nio dos polinmios de o Chebyshev ` reta toda. Isso tambm pode ser feito estendendo a denio trigonomtrica: a e ca e Ck (t) = cosh k cosh1 t k (1) cosh k cosh1 |t| se t se t 1, 1. (5.74)

De fato, usando a identidade trigonomtrica hiperblica e o cosh [(k + 1) ] + cosh [(k 1) ] = 2 cosh cosh k,

Rodney Josu Biezuner e

97

vemos que vale a mesma frmula de recorrncia da Denio 5.19. O polinmio de Chebyshev Ck (t) possui o e ca o k ra zes simples, todas localizadas no intervalo [1, 1] dadas por tj = cos 2j 1 , j = 1, . . . , k, 2k

como pode ser vericado diretamente da denio. Em particular, os polinmios de Chebyshev no se anulam ca o a ` tulo de informao, eles formam fora deste intervalo. Observe tambm que |Ck (t)| 1 para t [1, 1]. A t e ca uma base ortogonal no espao de funes apropriado no sentido que c co se k = l, 0 1 dt se k = l = 0, = Ck (t) Cl (t) 1 t2 1 /2 se k = l = 0. 5.21 Proposio. Se |t| ca 1, vale Ck (t) = 1 2 t+ t2 1
k

+ t+

t2 1

Prova: Como resultado de (5.74), segue que Ck (t) = cosh k cosh1 t = = Por outro lado, e logo ecosh
1 1 1 k cosh1 t e + ek cosh t 2 1

1 2

ecosh

+ ecosh

ex = cosh x + sinh x cosh2 x sinh2 x = 1,


t

= cosh cosh1 t + sinh cosh1 t =t+ =t+ cosh2 cosh1 t 1 t2 1,

donde segue o resultado. Em particular, para valores grandes de k pode-se usar a aproximao ca Ck (t) 1 t+ 2 t2 1
k

para |t| 1. No que se segue denotaremos o subespao de todos os polinmios reais de grau menor ou igual c o a k por Pk [x]. O seguinte teorema um importante resultado em Teoria da Aproximao: e ca a / a nimo 5.22 Teorema. Seja [a, b] R um intervalo no vazio e c [a, b]. Ento o m k = min max |p (x)|
pPk [x] x[a,b] p(c)=1

atingido pelo polinmio e o Ck 1 + 2 Ck (x) := Ck xb ba . cb 1+2 ba

Rodney Josu Biezuner e Consequentemente, k =

98

1 Ck 1 + 2 cb ba

(5.75)

Prova: Denote por m := o ponto mdio do intervalo [a, b]. Ento e a 1+2

a+b 2

b a + 2x 2b 2x (a + b) xb = = ba ba ba xm =2 . ba 2 cm >1 ba

Assim, se c [a, b] ento / a

de modo que o denominador na expresso de Ck (x) nunca se anula. Por outro lado, se x [a, b] ento a a 2 Como
t[1,1]

xm ba

1.

max |Ck (t)| = 1,

segue (5.75). Portanto, para provar que o m nimo atingido pelo polinmio Ck , precisamos mostrar que se pk Pk [x] e o tal que p (c) = 1 e e max |p (x)| k ,
x[a,b]

ento pk = Ck . De fato, pela denio trigonomtrica dos polinmios de Chebyshev, Ck (t) atinge os valores a ca e o 1 alternadamente nos pontos j tj = cos , j = 0, 1, . . . , k. k Correspondentemente, Ck (x) atinge os valores k nos pontos xj = dentro do intervalo [a, b]. Como |pk (xj )| k = Ck (xj ) , conclu mos que o polinmio diferena rk = Ck pk de grau menor ou igual a k satisfaz o c rk (xj ) rk (xj ) 0 se j par, e 0 se j e mpar. 1 a + b + (b a) cos 2 j k , j = 0, 1, . . . , k

Pelo teorema do valor intermedirio, rk possui pelo menos uma raiz em cada subintervalo [xj , xj+1 ]. Mesmo a quando as ra zes de rk em [xj1 , xj ] e [xj , xj+1 ] coincidem, ou seja, xj uma raiz de rk , esta uma raiz de e e multiplicidade 2 (pois rk (xj ) = 0, isto , xj tambm uma raiz da derivada de rk ). Consequentemente, o e e e polinmio rk tem pelo menos k ra o zes em [a, b]. Mas, como rk (c) = Ck (c) pk (c) = 1 1 = 0, c [a, b] a (k + 1)-sima raiz de rk . Isso constitui uma contradio, a menos que rk 0, o que implica / e e ca pk = Ck .

Rodney Josu Biezuner e

99

5.9.2

Velocidade de Convergncia do CG e

5.23 Lema. Seja A Mn (R) uma matriz simtrica positiva denida. Ento o erro algbrico do mtodo do e a e e gradiente conjugado satisfaz ek A = min p (A) e0 A .
pPk [x] p(0)=1

Prova: Pelos Teoremas 5.13 e 5.14, o mtodo do gradiente conjugado minimiza a A-norma do erro no e subespao am e0 + Kk A, r0 . Mas Kk A, r0 o conjunto de todos os vetores da forma q (A) r0 onde c e q um polinmio de grau menor ou igual a k 1, enquanto que r0 = Ae0 . Portanto, o subespao am e o c e0 + Kk A, r0 consiste de todos os vetores da forma e0 + q (A) Ae0 , ou seja, de todos os vetores na forma p (A) e0 onde p um polinmio de grau menor ou igual a k tal que p (0) = 1. e o 5.24 Teorema. Seja A Mn (R) uma matriz simtrica positiva denida. Ento o erro algbrico do mtodo e a e e do gradiente conjugado satisfaz e Prova: Denote por 1 . . . correspondentes. Escrevendo
k A

(A) 1 (A) + 1

e0

(5.76)

n os autovalores de A e por v1 , . . . , vn uma base A-ortonormal de autovetores


n

e0 =
i=1

ai vi ,
n

segue que p (A) e0 =

ai p (i ) vi .
i=1

Assim, p (A) e0
2 A

=
i=1

a2 p (i ) i ek

1 i n

max p (i )

e0

2 A

x[1 ,n ]

max p (x)

e0

2 A

donde, pelo lema anterior,

pPk [x] x[1 ,n ] p(0)=1

min

max p (x) e0

Segue agora do Lema 5.22 que onde = Ck = Ck 1 n 12 n 1 1 , (A) + 1 (A) 1

ek

e0

= Ck

1 n + 1 n 1

= Ck

1 n + 1 n 1

(para obter a ultima igualdade usamos a simetria dos polinmios de Chebyshev, como visto na Proposio o ca 5.20, e a sua positividade no intervalo [1, +) que decorre diretamente da frmula da Proposio 5.21). Pela o ca Proposio 5.21 e o comentrio que se segue, temos ca a k 2 1 (A) + 1 (A) + 1 (A) + 1 + 1 , Ck (A) 1 2 (A) 1 (A) 1

Rodney Josu Biezuner e donde ek


A

100

(A) + 1 2 + (A) 1 = 2 (A) + 1 +

(A) + 1 (A) 1
2

k 1 e0
2 A

k e0
A

( (A) + 1) ( (A) 1) (A) 1

=2 = 2

(A) + 1 + 2 (A) (A) 1 (A) + 1 (A) + 1 (A) 1 (A) + 1


k 2

e0

k e0
A

(A) 1 e0 .

=2

Esta estimativa bem melhor que a estimativa do mtodo da descida mais acentuada (o nmero de condio e e u ca subtituido aqui pela sua raiz quadrada), mostrando que o mtodo do gradiente conjugado bem mais e e e rpido. Por outro lado, como naquele mtodo, a velocidade de convergncia do mtodo CG depender a e e e a fortemente da boa ou m condicionalidade da matriz A. a Uma comparao entre a velocidade de convergncia dos mtodos de gradiente para a matriz de disca e e cretizaao da frmula de cinco pontos aplicada ao mesmo problema do Cap c o tulo 3 (Seo 3.1.4) dada na ca e tabela a seguir [Watkins]. O tamanho das matrizes usadas indicado na linha superior da tabela e o nmero e u de iteraes necessrias para obter um erro algbrico menor normalizado menor que igual a 108 dado co a e e para cada mtodo. e Descida Mais Acentuada Gradiente Conjugado No caso desta matriz de discretizao temos ca sen2 (A) = de modo que (A) 1 (A) + 1 1 x/2 1 x, 1 + x/2 (n 1) x 4 2n = cot2 = cot2 2 2 2n 2 x sen2 2n n = 81 304 29 n = 361 1114 60 n = 1521 4010 118

o que d uma velocidade de convergncia para o mtodo do gradiente conjugado duas vezes maior que a a e e do mtodo SOR com o fator de relaxamento timo. No entanto, deve-se ter em mente que enquanto que a e o taxa de covergncia que obtivemos para o mtodo SOR precisa, a estimativa de erro (5.76) do Teorema e e e 5.24 para o mtodo do gradiente conjugado apenas um limitante superior grosseiro e pode ser melhorada e e (veja [Watkins] para algumas estimativas melhoradas). De fato, embora a taxa de convergncia assinttica e o (5.76) dependa apenas do nmero de condio, e portanto apenas dos autovalores extremais, a convergncia u ca e do mtodo do gradiente conjugado inuenciada pelo espectro inteiro, como o prximo resultado ilustra: e e o

Rodney Josu Biezuner e

101

5.25 Teorema. Seja A Mn (R) uma matriz simtrica positiva denida com apenas m autovalores distine tos. Ento o mtodo do gradiente conjugado converge em m iteraes. a e co Prova: Sejam 1 , . . . , m os m autovalores distintos de A. Seja p (x) = a (x 1 ) . . . (x m ) um polinmio de grau m onde a escolhido de tal forma a produzir p (0) = 1. Como p (i ) = 0 para todo i, o e pela demonstrao do Teorema 5.24 (e usando a mesma notao de l) segue que ca ca a
n

p (A) e0 =
i=1

ai p (i ) vi = 0.

Logo, pelo Lema 5.23, temos que em = 0. Mesmo se isso no ocorre, se os autovalores de A no esto distribu a a a dos uniformemente em [min , max ] mas se acumulam em subintervalos de [min , max ], pode-se obter melhores taxas de convergncia do que (5.76) e (veja [Hackbusch] e [Watkins]).

5.10

Exerc cios
1 v1 = , 0 0 1 0 v2 = 0 1 0 v3 = , 0

5.1 Considere os vetores

onde

1. Estes vetores so aproximadamente linearmente independentes. a

a) Use o mtodo de Gram-Schmidt clssico para ortogonalizar estes vetores, usando a aproximao e a ca 1 + 2 = 1 (um computador faria erros de arredondamento adicionais). Verique que w2 , w3 = 1/2 e portanto estes vetores esto muito longe de serem ortogonais. a b) Use o mtodo de Gram-Schmidt modicado para ortogonalizar estes vetores, tambm usando a e e aproximao 1 + 2 = 1. Verique que w2 , w3 = 0 e que w1 , w2 = / 2, w1 , w3 = / 6; ca portanto estes vetores esto muito prximos de serem ortogonais. a o 5.2 Mostre que os algoritmos de Gram-Schmidt clssico e modicado so matematicamente equivalentes a a em aritmtica exata, isto , produzem os mesmos vetores. e e 5.3 Prove que os vetores v1 , . . . , vm gerados pelo algoritmo de Arnoldi com MGS formam uma base ortonormal para o subespao de Krylov Km (A, v). c 5.4 Prove que o inversa de uma matriz triangular superior uma matriz triangular superior. Prove a e armativa equivalente para matrizes triangulares inferiores. 5.5 Prove que o produto de matrizes triangulares superiores uma matriz triangular superior. Prove a e armativa equivalente para matrizes triangulares inferiores.

Cap tulo 6

O Problema do Autovalor
Por causa do teorema de Abel com respeito ` inexistncia de uma frmula para calcular as ra a e o zes de um polinmio de grau maior ou igual a 5, no existem mtodos diretos para calcular autovalores. Todo mtodo o a e e para calcular autovalores necessariamente um mtodo iterativo. e e De fato, dado um polinmio mnico o o p (z) = z n + an1 z n1 + . . . + a1 z + a0 , seu determinante igual a (1) vezes o determinante da matriz e z a0 1 z a1 1 z a2 . . 1 z . .. .. . . an1 1 z an1 logo as ra zes de p so os autovalores da matriz a 0 1 0 1 0 1 .
n

0 .. .

a0 a1 a2 . . . .. 1 . an1 an1

Portanto, o problema de encontrar as ra zes de um polinmio equivalente ao problema de encontrar os o e autovalores de uma matriz.

6.1

Caracterizao Variacional dos Autovalores de uma Matriz ca Simtrica: Quociente de Rayleigh e

Os autovalores de uma matriz simtrica podem ser caracterizados variacionalmente. e e 6.1 Denio. Seja A Mn (R) uma matriz simtrica. Dado x Rn , o quociente ca r (x) = 102 Ax, x x
2

Rodney Josu Biezuner e

103

chamado o quociente de Rayleigh de x. A funo r : Rn R chamada o funcional de e ca e Rayleigh (ou tambm o quociente de Rayleigh). e 6.2 Teorema. (Princ pio de Rayleigh) Seja A Mn (R) uma matriz simtrica. Se x um ponto cr e e tico do funcional de Rayleigh, ento x um autovetor de A e r (x) o autovalor correspondente. a e e Prova: Escrevendo r (x) = Temos r (x) = xk de modo que r (x) = Portanto, r (x) = 0 se e somente se Ax = r (x) x. 2 x
i,j=1

aij xi xj x2 i

i,j=1 2 i=1

aik xi 2xk x
4

i,j=1

aij xi xj =

2 x
2

[(Ax)k r (x) xk ] ,

2 x
2

[Ax r (x) x] .

6.3 Corolrio. O quociente de Rayleigh uma aproximaao de segunda ordem para os autovalores de A, a e c ou seja, se v um autovetor de A, segue que e r (x) r (v) = O xv
2

quando x v

Prova: Segue da frmula de Taylor, j que r (v) = 0. o a Podemos obter uma descrio geomtrica mais precisa dos pontos cr ca e ticos do funcional de Rayleigh: 6.4 Teorema. (Princ pio de Rayleigh) Seja A Mn (R) uma matriz simtrica. Sejam 1 e ... n os autovalores de A, de modo que 1 o menor autovalor de A e n o maior autovalor de A. Ento e e a 1 = min
xR x=0

Ax, x x
2

(6.1)

e n = max
xRn x=0

Ax, x x
2

(6.2)

Prova: Seja B = {v1 , . . . , vn } uma base ortonormal de autovetores de A correspondentes aos autovalores 1 , . . . , n . Ento, para todo x = a
n n i=1

xi vi temos

1 x

=
i=1 n

1 x 2 i
n n

i x2 = i
i=1 n i,j=1 n

i x i x j v i , v j =
i,j=1 n

i xi vi , xj vj
n n n

=
i=1

i xi vi ,
j=1

xj vj

=
i=1

xi Avi ,
j=1

xj vj

A
i=1

xi vi

,
j=1

xj vj

= Ax, x .

Rodney Josu Biezuner e Portanto, para todo x Rn , x = 0, vale 1

104

Ax, x x
2

O m nimo atingido em x = v1 ou em qualquer outro autovetor de A associado a 1 . Da mesma forma, e obtemos


n n

n x

=
i=1

n x2 i
i=1

i x2 = Ax, x . i

Os outros autovalores de A, 2 , . . . , n1 , so pontos de sela e podem ser encontrado atravs de um a e princ pio de minimax: 6.5 Teorema. (Princ pio de Minimax para Autovalores) Seja A Mn (R) uma matriz simtrica. Sejam e 1 . . . n os autovalores de A. Ento a j =
W Rn subespao c dim W =j

min

max Ax, x .
xW x =1

(6.3)

Prova: Seja W Rn um subespao de dimenso j. Primeiro mostraremos que c a max Ax, x


xW x =1

j .

Seja B = {v1 , . . . , vn } uma base ortonormal de autovetores de A correspondentes aos autovalores 1 , . . . , n . Seja Z = v1 , . . . , vj1 . Como Z = vj , . . . , vn , temos n dim W + Z = dim W + dim Z dim W Z = j + n (j 1) dim W Z , dim W Z 1
n k=j n n n n n

de modo que

e existe um vetor x W Z tal que x = 1. Escrevendo x =

xk vk , temos x =

n k=j

|xk | = 1, donde

Ax, x =
k=j n

xk Avk ,
l=j

xl vl
n

=
k=j 2

xk k vk ,
l=j

x l vl

=
k,l=j

k xk xl vk , vl

=
k=j

k |xk |

j
k=j

|xk | = j .

Para completar a demonstrao, devemos encontrar um subespao W Rn de dimenso j tal que ca c a Ax, x j para todo x W com x = 1. Tomemos W = v1 , . . . , vj . Temos
j j j j j

Ax, x =
k=1 j

xk Avk ,
l=1 2

xl vl
j

=
k=1 2

xk k vk ,
l=1

xl vl

=
k,l=1

k xk xl vk , vl

=
k=1

k |xk |

j
k=1

|xk | = j .

O minimax atingido em vj . e

Rodney Josu Biezuner e

105

6.2

Mtodo das Potncias e e

O mtodo das potncias ou mtodo das iteraoes o algoritmo mais simples para o clculo de autovalores e e e c e a de matrizes, mas ele pode encontrar apenas o maior autovalor (em mdulo) de uma matriz A Mn (C), o chamado o autovalor dominante de A, desde que haja apenas um. Para simplicar a exposio, suponha ca que A uma matriz diagonalizvel cujo maior autovalor (em mdulo) um autovalor simples (isto , seu e a o e e autoespao associado tem dimenso 1). Ordene os autovalores de A na forma c a |1 | > |2 | ... |n |

e seja {v1 , . . . , vn } uma base correspondente de autovetores. Assim, 1 o autovalor dominante de A e e v1 um autovetor dominante. Quando A tem um autovalor dominante, este e um correspondente autovetor dominante podem ser encontrados atravs do mtodo das potncias, que consiste essencialmente em tomar e e e um vetor v0 arbitrrio e considerar as potncias a e v0 , Av0 , A2 v0 , . . . , Ak v0 , . . . (6.4)

E essencial que o vetor v0 possua uma componente na direo do autovetor dominante v1 . Este no a ca a e priori conhecido, mas se a escolha arbitrria h grande probabilidade que isso ocorra na prtica. De fato, e a a a para quase todas as escolhas de v0 devemos ter
n

v0 =
i=1

a i vi

com a1 = 0; raramente uma escolha aleatria de v0 produzir um vetor no subespao v2 , . . . , vn . Temos o a c ento a
n

Ak v0 =
i=1

ai vi ,
n k

donde escrevemos A v0 =
k

k 1

a1 v1 +
i=2

ai

i 1

vi .

Embora Ak v0 se 1 > 1 e Ak v0 0 se 1 < 1, como i 1


k

0,

para todo i = 2, . . . , n, segue que a sequncia reescalada e Ak v0 a1 v1 k 1 converge para um autovetor dominante. No entanto, como o autovalor 1 no conhecido a priori, a e e imposs trabalhar com esta sequncia. Portanto, trabalhamos ao invs com a sequncia normalizada vel e e e wk = Ak v0 Ak v0 (6.5)

onde uma norma qualquer (por exemplo, a norma do mximo), que converge para um autovetor e a dominante unitrio. a

Rodney Josu Biezuner e

106

6.6 Proposio. Seja A Mn (C) uma matriz diagonalizvel e assuma que o seu autovalor dominante 1 ca a simples. Dado um vetor arbitrrio v0 Cn que possui uma componente no-nula no autoespao e a a c e associado a 1 , dena a sequncia w0 = v0 , Awk wk+1 = . k onde k = Awk . Ento a wk v1 , k 1 , onde v1 um autovetor dominante unitrio. Alm disso, a taxa assinttica de convergncia e a e o e e O Se A uma matriz simtrica real e denirmos e e k = Awk , wk , ento a k 1 com taxa assinttica de convergncia o e O Prova: Temos wk = 2 1
2

2 1

Ak v0 , k
n

onde k = 1 . . . k simplesmente o escalar apropriado que normaliza o vetor Ak v0 , isto , k = Ak v0 . e e Escrevendo v0 =


i=1

a i vi ,
n k

segue que wk = Como a 1 v1 +


i=2

k 1 a1 v1 + ai k i=2
n

i 1

vi .

ai

i 1

vi a1 v1

e wk sendo uma sequncia unitria possui uma subsequncia convergente, conclu e a e mos que wk converge para um vetor unitrio na direo de v1 . a ca Como Awk = k wk , tomando o limite em ambos os lados conclu mos que Av1 = (lim k ) v1 ,

Rodney Josu Biezuner e logo lim k = 1 . Finalmente, a taxa assinttica de convergncia segue de o e
n

107

ai
i=2

i 1

vi
i=2

|ai |

i 1

vi
i=2

|ai | vi

2 1

C (v0 )

2 1

O caso A simtrico segue do Corolrio 6.3. e a Vemos que a velocidade de convergncia do mtodo das potncias pode ser muito lenta se a diferena entre e e e c o maior e o segundo maior autovalores no for muito grande, uma situao frequentemente encontrada na a ca prtica. O mtodo das potncias funciona mesmo quando o autovalor dominante no simples, desde que a e e a e no existam outros autovalores de A diferentes do autovalor dominante que tenham o mesmo valor em a mdulo, isto quando existe apenas um autovalor dominante (Exerc 6.1). E claro que o mtodo no vai o e cio e a produzir uma base para o autoespao dominante, apenas um autovetor deste autoespao, correspondente ao c c vetor unitrio na direo da componente do vetor inicial. Quando existem vrios autovalores dominantes, o a ca a mtodo no pode ser aplicado. Em particular, o mtodo no pode ser aplicado a matrizes reais que possuem e a e a um autovalor dominante complexo, j que neste caso o seu conjugado tambm um autovalor dominante. a e e Esta situaao ocorre tambm com matrizes ortogonais, j que todos os autovalores de uma matriz ortogonal c e a tem norma 1. Se A no diagonalizvel, o autovalor dominante de A ainda pode ser encontrado pelo mtodo das a e a e potncias (desde que no haja mais de um autovalor dominante, como observado no pargrafo anterior), e a a como discutido no Exerc 6.2. cio

6.2.1

Mtodo das Potncias Inverso e e

O mtodo das potncia permite apenas encontrar o autovalor dominante. Para obter o menor autovalor e e de A, podemos aplicar o mtodo das potncias ` matriz inversa A1 , pois se o menor autovalor de A, e e a e 1/ ser o maior autovalor de A1 . Este mtodo chamado mtodo das potncias inverso ou iteraao a e e e e c inversa (quando o mtodo das potncias chamado iterao direta). e e e ca

6.2.2

Mtodo das Potncias com Deslocamento e e

Teoricamente, o mtodo das potncias poderia ser aplicado diretamente para encontrar todos os autovalores e e de A. Por exemplo, para encontrar 2 e um autovetor associado, uma vez encontrado o autovetor associado ao primeiro autovalor, bastaria tomar um novo vetor inicial que no tivesse componentes na direo do a ca autovetor dominante (ou autoespao dominante; veja Exerc 6.1), mas apenas na direo de v2 . Isso seria c cio ca fcil de conseguir se os autovetores de A fosse ortogonais (por exemplo, se A simtrica): bastaria tomar a e e um vetor inicial aleatrio v0 , com componentes na direo de todos os autovetores de A, e subtrair dele a o ca sua componente ortogonal na direo do autovetor dominante. Na notao da seo anterior, bastaria tomar ca ca ca
n

v0 = v0 a1 v1 =
i=2

ai vi ,

e proceder desta maneira at encontrar todos os autovalores de A (desde que no haja autovalores distine a tos mas iguais em mdulo). Na prtica isso no funciona, porque erros de arredondamento apareceriam o a a imediatamente:
n

Av0 = 1 v1 +
i=2

ai i vi ;

ao invs de obter 2 e um autovetor associado, voltar e amos a obter 1 e um autovetor dominante. Para encontrar os demais autovalores da matriz A, observe que se A tem autovalores 1 , . . . , n , ento a A I tem autovalores 1 , . . . , n . O escalar chamado um deslocamento. Podemos ento aplicar e a

Rodney Josu Biezuner e o mtodo das potncias ` matriz (A I) e e a


1

108 , pois os autovalores de A so a

1 1 ,..., , 1 n de modo que o autovalor dominante de (A I)


1

e (6.6)

1 i

onde i o autovalor de A mais prximo de . Assim, podemos encontrar todos os autovalores de A e o variando o deslocamento . Este mtodo chamado mtodo das potncias com deslocamento ou e e e e iterao com deslocamento. Ele particularmente eciente quando possu ca e mos boas estimativas para os autovalores de A (estimativas grosseiras podem ser obtidas atravs do teorema dos discos de Gershgorin). e Como j observado anteriormente, a convergncia do mtodo das potncias direto ser lenta quando 1 e a e e e a 2 forem muito prximos. No caso do mtodo das potncias com deslocamento, uma escolha cuidadosa do o e e deslocamento pode aumentar substancialmente a velocidade de convergncia. Com efeito, observe que e neste caso temos (para simplicar a compreenso, novamente supomos A diagonalizvel e, adicionalmente, a a que todos os autovalores so simples): a (A I)
1 k

v0 =

1 i

ai vi +

ai
j=1 j=i

i j

vj

donde (A I)
1 k

v0

1 i

a i vi
j=1 j=i

|ai |

i j

|vj |

i |ai | |vj | e i j=1


j=i

de modo que a taxa assinttica de convergncia dada por o e e i e i onde e o autovalor mais prximo a i . Tomando o deslocamento signicantemente mais prximo de i o o i e do que de e, podemos obter i i 1, e i acelerando a convergncia do mtodo. e e E importante observar que tanto na iterao inversa, quanto na iterao com deslocamento, em nenhum ca ca momento necessrio calcular a inversa A1 explicitamente, o que consumiria muito tempo e recursos. e a Embora as iteradas satisfazem 1 1 (A I) wk , wk+1 = k+1 basta resolver o sistema (A I) wk+1 = wk

Rodney Josu Biezuner e e ento tomar a wk+1 =

109

1 k+1

wk+1 .

Alm disso, apesar de A I ser uma matriz singular quando um autovalor de A, e portanto tomar um e e deslocamento muito prximo a produz uma matriz A I muito mal condicionada, isso no atrapalha o a a ecncia da iterao com deslocamento em nada (veja [Parlett]). e ca Finalmente, notamos que se os autovalores de uma matriz j so conhecidos, o mtodo padro para a a e a encontrar os autovetores de A o mtodo das potncias com deslocamento, j que os deslocamentos podem e e e a ser escolhido arbitrariamente prximos dos autovalores, tornando a convergncia muito rpida. o e a

6.2.3

Iterao do Quociente de Rayleigh ca

Quando a matriz A simtrica, combinando a iterao inversa e o quociente de Rayleigh poss obter e e ca e vel um mtodo extremamente rpido, de tal forma que depois de 2 ou 3 passos o nmero de d e a u gitos corretos no autovalor triplica a cada iterao. A idia no manter o valor de deslocamento constante, mas atualiz-lo ca e e a a a cada iterao com uma aproximao melhor do autovalor dada pelo quociente de Rayleigh. O algoritmo ca ca para a iterao do quociente de Rayleigh o seguinte: ca e Iterao do Quociente de Rayleigh ca Atribua v 0 ; v0 v0 / v0 ; 0 = Av0 , v0 ; Para k = 0, 1, 2, . . ., at limite de tolerncia e a Resolva A k I w = v k ; v k+1 w/ w ; k+1 Av k+1 , v k+1 ; m do lao c Vamos vericar que a convergncia da iterao de Rayleigh cbica: e ca e u 6.7 Proposio. Seja A Mn (R) uma matriz simtrica e assuma que o autovalor i simples. Dado um ca e e vetor arbitrrio v 0 Rn que possui uma componente no-nula no autoespao associado a i , tome a a c 0 = Av 0 , v 0 e dena a sequncia e v k+1 = A k I (A k I)
1 1

vk vk

k+1 = Av k+1 , v k+1 . Ento v k converge para um autovetor unitrio vi associado a i e k i com uma taxa de cona a vergncia que satisfaz e 3 v k+1 vi = O v k (vi ) e k+1 i = O k i
2 3

Prova: Pelo Corolrio 6.3, a k i = O v k vi

Pelas estimativas para a iterao inversa com deslocamento obtidas na subseo anterior, temos ca ca v k+1 vi C i k e k i v k vi .

Rodney Josu Biezuner e Como k est prximo de i , podemos substituir e k por e i no denominador, de modo que a o i i v k+1 vi = O k i v k vi =O v k+1 vi
3

110

As constantes impl citas no s mbolo O so uniformes para vizinhanas sucientemente pequenas de i e vi . a c Para obter a taxa de convergncia para os autovalores, use o resultado obtido e o Corolrio 6.3 duas vezes e a escrevendo 2 6 3 = O v k vi = O k i . k+1 i = O v k+1 vi Este resultado vale mesmo quando o autovalor no simples (Exerc 6.3). a e cio No caso em que A no simtrica, a iterao do quociente de Rayleigh ainda pode ser usada, mas a e e ca a convergncia apenas quadrtica (veja [Watkins]). Para uma anlise mais rigorosa da convergncia do e e a a e mtodo das potncias e todas as suas variaes, inclusive a iterao do quociente de Rayleigh, veja [Parlett]. e e co ca

6.3

Algoritmo QR

O algoritmo QR (no confundir com a decomposio QR) o algoritmo preferido para encontrar todos os a ca e autovalores de uma matriz no-simtrica densa. O algoritmo bsico QR pode ser descrito da seguinte forma. a e a Seja A Mn (C) uma matriz cujos autovalores queremos calcular. Comeando com c A0 = A, (6.7)

denimos iterativamente uma sequncia de matrizes A1 , A2 , . . ., recursivamente da seguinte maneira. Primeiro e fazemos a decomposio QR da matriz obtida no passo anterior: ca Ak1 = Qk Rk . Em seguida denimos Ak = Rk Qk . Observe que, como Ak = Q Ak1 Qk , k (6.9) (6.10) (6.8)

todas as matrizes da sequncia, que denominaremos sequncia QR, possuem os mesmos autovalores. Veremos e e mais tarde que o algortimo QR simplesmente uma implementao de um procedimento conhecido como e ca iterao simultnea, o qual uma extenso natural do mtodo das potncias. Consequentemente, pode ser ca a e a e e mostrado que a sequncia QR converge, sob certas condies, para uma matriz triangular superior na forma e co 1 . .. . . 2 . .. . n onde os autovalores da diagonal principal aparecem em ordem descrescente de magnitude. Em particular, como as matrizes da sequncia QR so semelhantes, se A hermitiana ento a sequncia converge para uma e a e a e matriz diagonal. O algoritmo bsico QR ineciente para uso prtico. Cada decomposio QR custa 4 n3 ops e cada a e a ca 3 multiplicao matricial custa O n3 ops. Alm disso, a convergncia para a forma triangular muito ca e e e vagarosa, de forma que um nmero muito grande de passos necessrio antes que se atinja um limite de u e a tolerncia razovel. No que se segue, veremos procedimentos para diminuir os custos das decomposies a a co QR e aumentar a velocidade de convergncia do mtodo. O primeiro procedimento, reduzir a matriz ` sua e e a

Rodney Josu Biezuner e

111

forma de Hessenberg, reduz cada passo no algoritmo QR a um custo de O n2 ops para uma matriz geral e O (n) para uma matriz hermitiana. O segundo procedimento, deao e deslocamento usando o quociente ca de Rayleigh, reduz o nmero de iteraes necessrias para produzir convergncia na preciso da mquina a u co a e a a O (n) iteraes. Assim o custo total do algoritmo QR na sua implementao mais eciente ser O n3 ops co ca a para matrizes gerais e O n2 ops para matrizes hermitianas.

6.3.1

Reduo de uma matriz a sua forma de Hessenberg ca

O custo das decomposies QR reduzido drasticamente se reduzirmos a matriz A ` sua forma de Hessenberg co e a antes de comear as iteraes QR, j que o custo de uma decomposio QR para matrizes de Hessenberg c co a ca O n2 ; se alm disso a matriz for Hermitiana, ou seja, tridiagonal, o custo apenas O (n). Tambm o e e e e custo da multiplicao, de uma matriz de Hessenberg superior por uma matriz triangular, reduzido para ca e O n2 . Essa reduo funciona porque o algoritmo QR preserva a forma de Hessenberg, de modo que todas ca as matrizes da sequncia QR so de Hessenberg assim como os fatores Q: e a 6.8 Proposio. Seja H Mn (C) uma matriz de Hessenberg superior. Ento toda matriz da sequncia ca a e QR tambm uma matriz de Hessenberg superior. Alm disso, os fatores Qk da decomposio Ak1 = e e e ca Qk Rk tambm so Hessenberg superiores. e a Prova: Assuma A invert vel, de modo que todas as matrizes da sequncia QR so invert e a veis; em particular, os fatores Qk , Rk tambm so invert e a veis. Suponha por induo que Ak1 uma matriz de Hessenberg ca e superior. Seja Ak1 = Qk Rk uma decomposio QR de Ak1 . Armamos que ca
1 Qk = Ak1 Rk

uma matriz de Hessenberg superior. De fato, como a inversa de uma matriz triangular superior uma e e matriz triangular superior, Qk o produto de uma matriz de Hessenberg superior e de uma matriz triangular e superior, logo tambm uma matriz de Hessenberg superior. Segue que Ak = Rk Qk o produto de uma e e e matriz triangular superior e uma matriz de Hessenberg superior, logo tambm uma matriz de Hessenberg e e superior. O caso geral, em que A singular, um pouco mais dif e e cil. De fato, no verdade que toda decomposio a e ca QR de uma matriz de Hessenberg superior vai produzir um fator Q Hessenberg superior. Mas poss e vel provar que sempre poss escolher a decomposio QR de tal forma que o fator Q produzido Hessenberg e vel ca e superior (veja [Watkins]). Antes de descrever o algoritmo que transforma uma matriz geral em uma matriz de Hessenberg superior (o custo da transformao ser de 10 n3 ops) vamos introduzir o conceito de reetores de Householder que ca a 3 so usados para introduzir zeros abaixo da subdiagonal inferior. a No que se segue assumiremos sempre a norma vetorial como sendo a norma euclidiana. a a 6.9 Denio. Seja u Rn um vetor unitrio. Ento o operador Q : Rn Rn denido por ca Q = I 2uuT chamado um reetor de Householder (ou simplesmente um reetor ). e A proposio a seguir resume as propriedades que caracterizam uma reexo: ca a 6.10 Proposio. Sejam u Rn um vetor unitrio e Q = I 2uuT um reetor. Ento ca a a (i) Qu = u. (ii) Qv = v para todo v u. (iii) Q = QT ( Q simtrico). e e (6.11)

Rodney Josu Biezuner e (iv) QT = Q1 ( Q ortogonal). e (v) Q1 = Q ( Q uma involuo). e ca Prova: (i) Usando o fato que uT u = u, u = 1, temos Qu = u 2 uuT u = u 2u uT u = u 2u = u (ii) Usando o fato que uT v = u, v = 0, temos Qv = v 2 uuT v = u 2u uT v = u 0 = u. (iii) QT = I 2uuT (iv),(v) Usando (iii) segue que QQT = QQ = I 2uuT I 2uuT = I 4uuT + 4uuT uuT
T

112

= I 2 uT

uT = I 2uuT = Q.

= I 4uuT + 4u uT u uT = I 4uuT + 4uuT = I. Em outras palavras Q = I 2uuT leva cada vetor x Rn em sua reexo com relao ao hiperplano a ca H = {v : u, v = 0} ortogonal a u. A possibilidade do uso de reetores para criar zeros em matrizes segue do seguinte resultado: 6.11 Teorema. Sejam x, y Rn tais que x = y mas x = y . Ento existe um unico reetor tal que a Qx = y. Prova: (Existncia) Para encontrar um vetor u tal que I 2uuT x = y, primeiro notamos que o hiperplano e de reexo bisecta o ngulo entre x e y, de modo que o vetor x y deve ser perpendicular a este plano. a a Portanto, nosso candidato e xy u= . (6.12) xy De fato, de (i) e (ii) da proposio anterior, temos ca Q (x y) = y x, Q (x + y) = x + y, pois x y, x + y = x, x + x, y y, x y, y = x Logo, Qx =
2

= 0.

1 1 [Q (x y) + Q (x + y)] = [y x + x + y] = y. 2 2

6.12 Corolrio. Seja x Rn um vetor no nulo. Ento existe um reetor Q tal que a a a x1 x2 0 Q . = . . . . . . xn 0

Rodney Josu Biezuner e

113

Prova: Escolha y = ( x , 0, . . . , 0) no teorema anterior, com o sinal escolhido de tal forma a garantir que x = y. No caso complexo, basta tomar Q = I 2uu (6.13) e temos resultados anlogos, bastando substituir simtrico ortogonal por hermitiano unitrio. a e a Vamos agora descrever o algoritmo para reduzir uma matriz geral A ` forma de Hessenberg. Cada passo a introduz os zeros nas posies desejadas de cada coluna, da primeira at a ultima, em um total de n2 passos co e (j que evidentemente no h necessidade de transformar as ultimas 2 colunas da matriz para coloc-la na a a a a forma de Hessenberg). Primeiro faa uma partio por blocos de A na forma c ca A= a11 b cT A

Seja Q1 : Fn1 Fn1 um reetor (onde F = R ou C) tal que 1 0 Q1 b = . . . 0 onde |1 | = b e 1 b1 < 0. Dena o reetor Q1 : Fn Fn Q1 = e tome 1 0T 0 Q1 A1/2 = Q1 A = a11 1 0 . . . 0 Ento a A1 = Q1 AQ1 1 = Q1 AQ1 = A1/2 Q1 = a11 1 0 . . . 0 cT Q1 Q1 AQ1 = a11 1 0 . . . 0 A1 . cT

Q1 A

Este o m do primeiro passo: a matriz A1 , semelhante ` matriz A atravs de uma matriz ortogonal, tem e a e zeros na primeira coluna abaixo do primeiro elemento da subdiagonal. O segundo passo cria zeros na segunda coluna de A1 , isto , na primeira coluna de A1 , nas posies e co desejadas. Assim, usamos um reetor Q2 : Fn2 Fn2 exatamente como no primeiro passo, exceto que usamos A1 ao invs de A, e denimos e 0 0 1 0 0 1 0 0 0 0 Q2 = . . Q2 . . . . 0 0

Rodney Josu Biezuner e e A3/2 = Q2 A1 = .

114

a11 1 0 . . . 0

2 . . . 0

Q2 A1

Da ,

A2 =

Q2 A1 Q1 2

= Q2 A1 Q2 = A3/2 Q2 =

a11 1 0 . . . 0

2 . . . 0

Q2 A1 Q2

Procedemos desta forma em n 2 passos at encontrar uma matriz de Hessenberg An2 semelhante ` matriz e a original A atravs de uma matriz ortogonal Q = Qn2 . . . Q2 Q1 . e

6.3.2

Acelerao do algoritmo QR ca
|1 | |2 | ... |n | .

Ordene os autovalores de A na forma

Considere uma sequncia (Ak ) de iteradas do algoritmo QR tal que cada matriz Ak de Hessenberg superior. e e Denote k ... ak a11 ak ak ak . . . 1n 14 13 12 k k k k a21 a22 a23 a24 . . . ... ak 2n 0 ak ak ak . . . ... ak 3n 34 33 32 .. k k k 0 . ... a4n 0 a43 a44 . . .. .. .. Ak = . 0 . . . 0 0 . . . . . .. .. .. .. . . . . . . . . . . . . . . . .. .. .. . . k . . . . . . . a 0 0 0 0 ... 0 ak n,n1
n1,n ak nn

No algoritmo QR as entradas subdiagonais (ou a maioria delas) convergem para 0 quando n . Mais precisamente, como veremos mais tarde, se |i | > |i+1 | , ento a ak i+1,i 0 com taxa de convergncia e i+1 , i = 1, . . . , n 1. i

Portanto, uma maneira de acelerar a convergncia do algoritmo decrescer os quocientes |i+1 /i |. Um modo e e de fazer isso atravs do uso de um deslocamento, como no mtodo das potncias. A matriz deslocada AI e e e e tem autovalores |1 | |2 | . . . |n | e as taxas de convergncia associadas so e a i+1 , i i = 1, . . . , n 1.

Rodney Josu Biezuner e

115

Assim, se escolhermos sucientemente prximo de um autovalor arbitrrio que chamaremos n aps reo a o ordenar os ndices (e assumindo n1 = n ), aplicando o algoritmo QR a A I observaremos que a k k (A I)n,n1 converge para 0 rapidamente. Uma vez que (A I)n,n1 seja sucientemente pequeno, esta entrada pode ser considerado 0 na prtica e, adicionando I ` iterada (A I)k do algoritmo QR, obtemos a a 0 . . Ak . Ak = . 0 0 0 ak nn ca a com ak uma boa aproximao para n . Os autovalores restantes de Ak so os autovalores de Ak . Podemos nn ento aplicar o algoritmo QR ` matriz Ak , que tem ordem um a menos que a ordem de A. Continuando a a desta forma, usaremos o algoritmo QR em matrizes cada vez menores at obter todos os autovalores de A. e Este processo, em que o tamanho da matriz reduzido cada vez que um autovalor encontrado, chamado e e e deao. ca O prprio algoritmo QR pode ser usado para obter os valores para os deslocamentos , j que depois o a de algumas iteraes a matriz est prxima da forma triangular e os valores na diagonal principal esto co a o a prximos aos autovalores de A. De fato, as entradas na diagonal principal so quocientes de Rayleigh, j o a a que ak = eT Ak ei = Ak ei , ei . i ii Assim, o deslocamento pode ser modicado em cada iterao, como no mtodo da iterao do quociente de ca e ca Rayleigh, usando-se k = ak nn de modo que i+1 k 0 i k quando k

e obtemos uma taxa de convergncia melhor que linear. De fato, veremos que, como no mtodo da iterao e e ca do quociente de Rayleigh, este algoritmo QR com deslocamento dado pelo quociente de Rayleigh possui convergncia quadrtica em geral e cbica para matrizes hermitianas. e a u e Na prtica, depois de apenas uma iterao QR j seguro usar 1 = a1 . O unico efeito dessa escolha a ca ae nn que a ordem dos autovalores obtidos no processo no necessariamente crescente. a e O deslocamento dado pelo quociente de Rayleigh pode falhar `s vezes, por exemplo quando o deslocamento a obtido est a mesma distncia de dois autovalores distintos, fazendo com que o mtodo tenha diculdade a a e de decidir qual autovalor aproximar. Para evitar esta situao, prefer ca e vel usar o deslocamento de Wilkinson, que denido como sendo o autovalor da submatriz 2 2 e ak n1,n1 ak n,n1 ak n1,n ak nn

que est mais prximo de ak . Ele fcil de calcular porque a raiz de um polinmio do segundo grau. E a o e a e o nn poss provar para matrizes simtricas tridiagonais o algoritmo QR com deslocamento de Wilkinson sempre vel e converge. Alm disso, como estamos usando maior informao para obter o deslocamento, a taxa convergncia e ca e no m nimo igual ` do algoritmo QR usando o deslocamento dado pelo quociente de Rayleigh e muitas vezes a melhor. Em geral, existem apenas casos muito especiais de matrizes para as quais o deslocamento de Wilkinson falha. A experincia tem mostrado que so necessrias apenas 5 ou 9 iteraes do algoritmo e a a co QR para obter uma aproximao satisfatria para o primeiro autovalor e de 3 a 5 iteraes em mdia para ca o co e os autovalores restantes (`s vezes menos); para matrizes hermitianas, 2 ou 3 iteraes em mdia bastam. a co e O deslocamento de Wilkinson tem a vantagem inicial de que pode ser usado para aproximar autovalores complexos de matrizes reais, j que ele pode ser um nmero complexo, enquanto que o quociente de Rayleigh a u

Rodney Josu Biezuner e

116

de uma matriz real sempre um valor real. Para maiores detalhes sobre as informaes contidas este pargrafo e co a veja [Watkins]. Por m, `s vezes ocorre durante as iteraes do algoritmo QR que um elemento da subdiagonal inferior a co localizado prximo ao meio da matriz sucientemente prximo de 0. Neste caso a matriz Ak tem a forma o e o em blocos B11 B12 0 B22 e o problema pode ser quebrado em dois, aplicando o algoritmo QR aos blocos B11 e B22 separadamente. Como o custo de uma iterao QR de Hessenberg O n2 , dividindo o tamanho da matriz pela metade ca e implica numa diminuio do custo por um fator de 4. ca

6.3.3

Implementao prtica do algoritmo QR ca a

Veja [Watkins].

6.4

Iterao de subespaos e iterao simultnea ca c ca a

No mtodo das potncias ou iterao direta, ao invs de iterarmos apenas um vetor, podemos considerar a e e ca e iterao de um subespao inteiro: se S Fn (onde F = R ou C), consideramos as iteradas ca c S, AS, A2 S, . . . Cada iterada Ak S um subespao de Fn que pode ser caracterizado por e c Ak S = Ak x : x S . Como no mtodo da iterao direta as iteradas convergem para o autovetor dominante, esperamos que estes e ca subespaos iterados convirjam para um autoespao. Para vericar isso, precisamos denir uma noo de c c ca distncia entre subespaos vetoriais. a c 6.13 Denio. Dados dois subespaos S, T Fn , a distncia entre eles denida por ca c a e dist (S, T ) = sen onde o maior ngulo principal entre S e T . Dizemos que uma sequncia de subespaos {Sk } e a e c converge para S se dist (Sk , S) 0 e denotamos este fato por Sk S. 6.14 Teorema. Seja A Mn (F) diagonalizvel com autovalores a |1 | |2 | ... |n |

e uma correspondente base de autovetores {v1 , . . . , vn }. Suponha que |m | > |m+1 | para algum m. Sejam Tm = v1 , . . . , vm , Um = vm+1 , . . . , vn . Seja S um subespao vetorial de dimenso m tal que S Um = {0}. Ento existe uma constante C c a a tal que m+1 dist Ak S, Tm C m Em particular, Ak S Tm linearmente com taxa de convergncia |m+1 /m |. e

Rodney Josu Biezuner e

117

Prova: Uma demonstrao rigorosa deste teorema est alm dos propsitos deste curso. Daremos apenas ca a e o algumas idias para justicar o resultado. e Em primeiro lugar, observe que dim Ak S = m para todo k. De fato, temos ker Ak Um . Isso pode ser facilmente visto escrevendo os vetores em coordenadas: dado um vetor v =
n n i=1

(6.14) ai vi , temos

Ak v =
i=1

ai k vi , i

de modo que Ak v = 0 implica a1 = . . . = am = 0 pois v1 , . . . , vn so linearmente independentes e 1 , . . . , m a so no nulos, j que |1 | . . . |m | > |m+1 | 0. Da (6.14) juntamente com dim S = m e S Um = {0} a a a , implicam imediatamente que dim Ak S = m para todo k. Agora, seja v S um vetor no nulo. Escrevendo a
n

v=
i=1

ai vi

segue de SUm = {0} que pelo menos um dos escalares a1 , . . . , am no nulo (assim, a condio SUm = {0} e a ca equivalente a exigir no mtodo das potncias que o vetor inicial tenha uma componente na direo do e e e ca autovetor dominante; aqui exigimos que cada vetor do subespao tenha uma componente no autoespao c c dominante). Temos m n k k Ak v i i = ai vi + ai vi . k m m m i=1 i=m+1 As componentes do vetor normalizado Ak v/k no subespao Um tendem a zero quando k aumenta com c m taxa de convergncia |m+1 /m | ou melhor (dependendo dos valores de am+1 , . . . , an ), consequentemente o e vetor limite est no subespao Tm . Como cada subsespao Ak S tem dimenso m, o limite dos subespaos a c c a c no pode ser um subespao prprio de Tm . a c o Observe que a condio S Um = {0} ocorre quase sempre para uma escolha aleatria do subespao mca o c dimensional S (por exemplo, no caso de R3 a escolha aleatria de uma reta e um plano quase sempre resultar o a que o unico ponto em que eles se interceptam a origem). e Para fazer a iterao de subespaos na prtica, deve-se escolher uma base para S e iterar todos os ca c a vetores desta base simultaneamente. No processo de iterar o subespao, devemos obviamente ortonormalizar c a base do subespao Ak S em cada passo da iterao, usando um algoritmo robusto tal como o MGS com c ca reortogonalizao. Este processo todo chamado iterao simultnea. ca e ca a Em notao matricial, a iterao simultnea pode ser descrita da seguinte maneira. Seja S um subespao ca ca a c de dimenso m com base v1 , . . . , vm . Utilizando um algoritmo robusto, encontramos uma base ortonormal a q1 , . . . , qm . Formamos ento uma matriz inicial n m com colunas ortonormais: a Q0 = Em cada passo k da iterao, calculamos ca Bk = AQk e fazemos a decomposio QR de Bk para obter uma base ortonormal para o subespao Ak S: se ca c Bk = Qk+1 Rk+1 , ento as colunas ortonormais de Qk+1 formam uma base ortonormal para Ak S. No limite, teremos que as a colunas das matrizes Qk convergem para os m autovetores dominantes (nas condies do teorema anterior). co
0 q1

0 qm

Rodney Josu Biezuner e

118

6.4.1

Equivalncia entre o Algoritmo QR e Iterao Simultnea e ca a

O algoritmo QR puro equivalente ` iterao simultnea aplicada ` matriz identidade, isto , tomando e a ca a a e Q0 = I. Ou seja, se na iterao simultnea ca a Q0 = I, Bk1 = AQk1 , (6.15) Bk1 = Qk Rk , denirmos Ak = Qk AQk , Rk = Rk R1 e, reciprocamente, no algoritmo QR A0 = A, Ak1 = Qk Rk , Ak = Rk Qk , denirmos Qk = Q1 Qk , Rk = Rk R1 segue que Ak = Ak , Qk = Qk , Rk = Rk . (6.21) (6.22) (6.23) (6.19) (6.20)

(6.16) (6.17)

(6.18)

De fato, armamos que as matrizes Qk , Rk e as matrizes Qk , Rk so ambas caracterizadas como sendo a a decomposio QR (portanto unica) da matriz Ak , a k-sima potncia de A: ca e e Ak = Qk Rk = Qk Rk . (6.24)

A vericao de todos estes fatos segue por induo. O caso k = 0 imediato, j que B0 = A. Como ca ca e a hiptese de induo, assumimos o ca Ak1 = Ak1 , Ak1 = Qk1 Rk1 = Qk1 Rk1 , donde Qk1 = Qk1 , Rk1 = Rk1 . Da no caso da iterao simultnea temos , ca a Ak = AAk1 = AQk1 Rk1 = Qk Rk Rk1 = Qk Rk , enquanto que no algoritmo QR temos Ak = AAk1 = AQk1 Rk1 = Qk1 Ak1 Rk1 = Qk1 Qk Rk Rk1 = Qk Rk .

Rodney Josu Biezuner e Portanto, Ak = Qk Rk = Qk Rk donde Qk = Qk , Rk = Rk . Finalmente, pelo algoritmo QR podemos escrever (como em (6.10)) Ak = Q Ak1 Qk , k donde, pela hiptese de induo, o ca Ak = Q Ak1 Qk = Q Qk1 AQk1 Qk = Q Q AQk1 Qk k k k k1 = Q Q Q AQ1 Qk1 Qk = Q AQk k k1 1 k = Ak .

119

6.4.2

Convergncia do Algoritmo QR e
Ak = Qk Rk = (Q1 Qk ) (Rk R1 )

Por simplicidade considere A simtrica. A relao e ca

explica porque o algoritmo QR encontra os autovetores de A: ele constri bases ortonormais para o espao o c coluna das potncias sucessivas Ak (e as colunas de Ak so Ak e1 , . . . , Ak en ). A relao e a ca Ak = Qt AQk k explica porque o algoritmo QR encontra os autovalores de A: os elementos da diagonal de Ak so os quocientes a de Rayleigh correspondentes `s colunas de Qk , isto , aos autovetores de A. Como os autovetores de A so a e a ortogonais e A-ortogonais, os elementos fora da diagonal principal tambm convergem para 0. e

6.5

Mtodo de Arnoldi e Algoritmo de Lanczos e

Para matrizes esparsas, no simtricas, o mtodo de Arnoldi o mtodo mais usado para encontrar os a e e e e autovalores e autovetores, e para matrizes simtricas esparsas o mtodo escolhido o algoritmo de Lanczos. e e e Na Proposio 5.7 vimos que no mtodo de Arnoldi obtemos ca e AQm = Qm+1 Hm onde Qm = Qm+1 = q1 q1 ... ... qm qm , qm+1 , (6.25)

so matrizes com colunas ortonormais e Hm uma matriz de Hessenberg superior (m + 1) m (na notao a e ca daquela proposio, a matriz Qm denotada por Vm ). Como naquela proposio, denote por Hm a matriz ca e ca de Hessenberg superior quadrada obtida atravs de Hm quando suprimimos a ultima linha desta. Segue que e AQm = Qm Hm + qm+1 0 ... 0 hm+1,m

Rodney Josu Biezuner e ou

120

AQm = Qm Hm + qm+1 hm+1,m et . m


m

(6.26)

Como vimos no cap tulo anterior, se q, Aq, . . . , A q so linearmente independentes, ento hm+1,m = 0. Se a a eles so linearmente dependentes, ento hm+1,m = 0 e a a AQm = Qm Hm . (6.27)

6.15 Proposio. Sejam A Mn (F) e q1 , . . . , qm Fn linearmente independentes. Sejam S = q1 , . . . , qm ca e considere a matriz n m Q = q1 . . . qm . Ento S invariante sob A se e somente se existe algum B Mm (F) tal que a e AQ = QB. Alm disso, todo autovalor de B um autovalor de A com autovetor correspondente em S. e e Prova. Se existe tal B, ento a Aqj =
i=1 m

qi bij S.

Reciprocamente, se S invariante sob A, ento para cada e a ndice j = 1, . . . , m existem escalares bij tais que
m

Aqj =
i=1

bij qi .

Dena B = (bij ). Se w um autovetor de B com autovalor , ento v = Qw S um autovetor de A com e a e autovalor . Portanto, os autovalores da matriz de Hessenberg Hm so tambm autovalores de A. Se m no muito a e a e grande, podemos ento usar o algoritmo QR para encontrar os autovalores de Hm . Na prtica, dicilmente a a obteremos hm+1,m = 0 exatamente, mas se hm+1,m prximo de zero podemos esperar que estamos prximos e o o de um subespao invariante e, portanto, que os autovalores de Hm esto prximos aos autovalores de A: c a o 6.16 Teorema. Sejam Qm , Hm e hm+1,m gerados pelo mtodo de Arnoldi. Seja um autovalor de Hm e com autovetor unitrio x. Seja v = Qm x. Ento a a Av v = |hm+1,m | |xm | onde xm denota a ultima componente de x. O mtodo de Arnoldi em geral obtm os autovalores perifricos. Os autovalores interiores podem ser encone e e tradas atravs da estratgia do deslocamento. e e Quando A simtrica, como vimos no cap e e tulo anterior Hm uma matriz tridiagonal Tm que pode ser e obtida atravs de uma frmula de recorrncia. e o e Veja [Watkins] para detalhes sobre implementaes ecientes do mtodo de Arnoldi e algoritmo de Lanczos co e para encontrar autovalores e autovetores de matrizes esparsas.

6.6

O Problema de Autovalor Simtrico e


Veja [Parlett],

Para matrizes simtricas, existem algoritmos bem mais eciente que o algoritmo QR. e [Trefethen-Bau], entre outros.

Rodney Josu Biezuner e

121

6.7

Exerc cios

6.1 Suponha que A Mn (C) uma matriz diagonalizvel tal que nenhum autovalor de A diferente do e a autovalor dominante 1 tem mdulo igual a A. Em outras palavras, se r a dimenso do autoespao o e a c associado a 1 , ou autovalores de A satisfazem |1 | = . . . = |r | > |2 | com 1 = . . . = r . Mostre que o mtodo das potncias pode ser aplicado a A para encontrar 1 e um autovetor unitrio e e a no autoespao associado a 1 . c 6.2 Usando a forma cannica de Jordan, mostre que a hiptese de A ser diagonalizvel pode ser removida o o a da hiptese do exerc anterior decompondo o vetor inicial v0 como a soma de um vetor na direo o cio ca do autovetor dominante v1 e de vetores principais nos subespaos de Jordan da matriz. c 6.3 Prove a Proposio 6.7 sem assumir que o autovalor simples. ca e 6.4 Prove que o produto de uma matriz triangular superior e uma matriz de Hessenberg superior uma e matriz de Hessenberg superior. O que se pode dizer sobre o produto de duas matrizes de Hessenberg superiores? 6.5 Prove a unicidade do reetor na Proposio 6.11. ca ... |n |

Referncias Bibliogrcas e a
[BHM] [Demmel] [Hackbusch] [Homan-Kunze] [Horn-Johnson] [Komzsik] [Kreyszig] [Mak] [Meurant] [Parlett] [Saad] [Stoer-Bulirsch] [Strang] [Trefethen-Bau] [van der Vorst] [Watkins] [Young] William L. BRIGGS, Van Emden HENSON e Steve F. McCORMICK, A Multigrid Tutorial, 2nd. Ed., SIAM, 2000. James W. DEMMEL, Applied Numerical Linear Algebra, SIAM, 1997. W. HACKBUSCH, Iterative Solutions of Large Sparse Systems of Equations, Applied Mathematical Sciences 95, Springer-Verlag, 1994. K. HOFFMAN e R. KUNZE, Linear Algebra, 2nd. Ed., Prentice Hall, 1971. Roger A. HORN e Charles R. JOHNSON, Matrix Analysis, Cambridge University Press, 1985. Louis KOMZSIK, The Lanczos Method: evolution and application, SIAM, 2003. KREYSZIG, E., Introductory Functional Analysis with Applications, John Wiley & Sons, 1978. Ronald MAK, Java Number Cruncher: the Java Programmers Guide to Numerical Computing, Prentice Hall, 2003. Grard MEURANT, The Lanczos and Conjugate Gradient Algorithms: from theory e to nite precision computations, SIAM, 2006. Beresford N. PARLETT, The Symmetric Eigenvalue Problem, SIAM, 1998. Yousef SAAD, Iterative Methods for Sparse Linear Systems, 2nd Ed., SIAM, 2003. Josef STOER e Roland BULIRSCH, Introduction to Numerical Analysis, 3rd Ed., Springer, 2002. Gilbert STRANG, Linear Algebra and its Applications, 3rd Ed., Harcourt Brace Jovanovich, 1988. Lloyd N. TREFETHEN e David BAU, Numerical Linear Algebra, SIAM, 1997. Henk A. van der VORST, Iterative Krylov Methods for Large Linear Systems, Cambridge University Press, 2003. David S. WATKINS, Fundamentals of Matrix Computations, 2nd Ed., John Wiley & Sons, 2002. David M. YOUNG, Iterative Solutions of Large Linear Systems, Academic Press, 1971.

122

Vous aimerez peut-être aussi