sistemas de equa˘c~oes lineares -...

38
Sistemas de Equa¸c˜ oes Lineares An´ alise Num´ erica Artur M. C. Brito da Cruz Escola Superior de Tecnologia Instituto Polit´ ecnico de Set´ ubal 2015/2016 1 1 vers˜ ao 20 de Setembro de 2017

Upload: trinhdieu

Post on 17-Dec-2018

213 views

Category:

Documents


0 download

TRANSCRIPT

Sistemas de Equacoes Lineares

Analise Numerica

Artur M. C. Brito da Cruz

Escola Superior de TecnologiaInstituto Politecnico de Setubal

2015/2016 1

1 versao 20 de Setembro de 2017

Conteudo

1 Matrizes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 Operacoes com Matrizes . . . . . . . . . . . . . . . . . . . . . . . . . . . 43 Determinantes e Matriz Inversa . . . . . . . . . . . . . . . . . . . . . . . 74 Sistemas de Equacoes Lineares . . . . . . . . . . . . . . . . . . . . . . . . 115 Metodo de Eliminacao de Gauss . . . . . . . . . . . . . . . . . . . . . . . 126 Factorizacao LU . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147 Avaliacao do Esforco Computacional . . . . . . . . . . . . . . . . . . . . 178 Pesquisa de Redutor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 188.1 Pesquisa Parcial de Redutor . . . . . . . . . . . . . . . . . . . . . . . . . 198.2 Pesquisa Total de Redutor . . . . . . . . . . . . . . . . . . . . . . . . . . 219 Metodos Compactos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 219.1 Metodo de Doolittle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 219.2 Metodo de Cholesky . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2510 Metodos Iterativos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2810.1 Metodo de Jacobi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2910.2 Metodo de Gauss-Seidel . . . . . . . . . . . . . . . . . . . . . . . . . . . 3110.3 Convergencia dos Metodos Iterativos . . . . . . . . . . . . . . . . . . . . 32

10.3.1 Aplicacao ao Metodo de Jacobi . . . . . . . . . . . . . . . . . . . 3410.3.2 Aplicacao ao Metodo de Gauss-Seidel . . . . . . . . . . . . . . . . 35

DMAT 2 ESTSetubal/IPS

1 Matrizes

Uma matriz real A de tipo m× n (le-se m por n) e uma representacao de numero reaisem m linhas e n colunas

A =

a11 a12 · · · a1na21 a22 · · · a2n...

.... . .

...am1 am2 · · · amn

= [aij]m×n.

Por exemplo, a matriz [2 1 0

−2√3 −1

]e uma matriz de tipo 2× 3.

O conjunto de todas as matrizes reais de tipo m× n representa-se por Mm×n (R) .Uma matriz linha e uma matriz de tipo 1× n[

a11 a12 . . . a1n],

uma matriz coluna e uma matriz de tipo m× 1a11a21...

am1

e uma matriz quadrada, ou de ordem n, e uma matriz de tipo n× n

a11 a12 · · · a1na21 a22 · · · a2n...

.... . .

...an1 an2 · · · ann

.

Uma matriz diagonal e uma matriz quadrada A = [aij]i,j∈{1,...,n} em que

aij = 0 se i = j,

isto e

A =

a11 0 · · · 00 a22 · · · 0...

.... . .

...0 0 · · · ann

.

Um exemplo de uma matriz diagonal e a matriz identidade de ordem n

In =

1 0 · · · 00 1 · · · 0...

.... . .

...0 0 · · · 1

.

DMAT 3 ESTSetubal/IPS

Uma matriz triangular superior e uma matriz quadrada em que

aij = 0 para i > j,

isto e a11 a12 · · · a1n0 a22 · · · a2n...

.... . .

...0 0 · · · ann

e uma matriz triangular inferior e uma matriz quadrada em que

aij = 0 para i < j,

isto e a11 0 · · · 0a21 a22 · · · 0...

.... . .

...an1 an2 · · · ann

.

A matriz nula de tipo m× n e a matriz0 0 · · · 00 0 · · · 0...

.... . .

...0 0 · · · 0

m×n

= [0]m×n.

Uma matriz simetrica e uma matriz quadrada A = [ai,j]i,j∈{1,...,n} em que

aij = aji,

isto e

A =

a11 a12 · · · a1na12 a22 · · · a2n...

.... . .

...a1n a2n · · · ann

.

Duas matrizes A e B do mesmo tipo m× n sao iguais, e escreve-se A = B, se

aij = bij, para todo o i ∈ {1, . . . ,m} e para todo o j ∈ {1, . . . , n} .

2 Operacoes com Matrizes

Dadas duas matrizes A = [aij] e B = [bij] do mesmo tipo m × n, define-se soma de Acom B como sendo a matriz de tipo m× n

A+B = [aij + bij]

DMAT 4 ESTSetubal/IPS

para todo o i ∈ {1, . . . ,m} e para todo o j ∈ {1, . . . , n}. Por exemplo,[1 0 −11 3 2

]+

[3 5 0

1 3√2

]=

[4 5 −1

2 6 2 +√2

].

Analogamente define-se a subtraccao de matrizes.O produto escalar de k ∈ R por uma matriz A = [aij] de tipo m×n define-se como

sendo a matriz de tipo m× nkA = [kaij]

para todo o i ∈ {1, . . . ,m} e para todo o j ∈ {1, . . . , n}. Por exemplo,

2

[1 0 −11 3 2

]=

[2 0 −22 6 4

].

Teorema. Sejam A,B e C matrizes de tipo m× n, α,β numeros reais. Entao:

1. A+B = B + A;

2. (A+B) + C = A+ (B + C) ;

3. A+ [0]m×n = A;

4. α (A+B) = αA+ αB;

5. (α + β)A = αA+ βA;

6. (αβ)A = α (βA) ;

7. 1A = A e 0A = [0]m×n.

Duas matrizes A e B dizem-se encadeadas se o numero de colunas de A e igual aonumero de linhas de B. Por exemplo, as matrizes 1 0 1

2 −2 10 0 0

3×3

e

1 42 53 6

3×2

sao encadeadas mas as matrizes 1 42 53 6

3×2

e

1 0 12 −2 10 0 0

3×3

nao sao encadeadas.Sejam A uma matriz de tipo m × p e B uma matriz de tipo p × n, ou seja A e B

sao matrizes encadeadas. O produto das matrizes A e B e a matriz AB de tipo m× ndefinida por

(ab)ij =

p∑k=1

aikbkj

DMAT 5 ESTSetubal/IPS

ou seja, cada entrada i, j e obtida pela soma de todos os produtos dos elementos da linhai da matriz A pelos correspondentes elementos da coluna j da matriz B. Por exemplo,

1 0 12 −2 10 0 0−2 1 4

4×3

1 42 53 6

3×2

=

4 101 40 012 21

4×2

.

Teorema. Sejam A,B e C matrizes tais que as operacoes abaixo descritas estejam bemdefinidas e seja k ∈ R. Entao,

1. A (BC) = (AB)C;

2. A (B + C) = AB + AC;

3. (A+B)C = AC +BC;

4. k (AB) = (kA)B = A (kB) ;

5. [0]m×nAn×p = [0]m×p;

6. ImAm×n = Am×nIn = Am×n.

Note-se que o produto de matrizes nao e uma operacao comutativa pois, por exemplo,o produto de uma matriz A de tipo 2 × 3 por uma matriz B de tipo 3 × 4 esta bemdefinido mas nao faz sentido em falar do produto da matriz B pela matriz A.

Seja A uma matriz de tipo m× n. A matriz transposta de A e a matriz de ordemn×m, que se denota por AT , e e definida por

AT = [aji] .

Por exemplo, a matriz transposta de

A =

4 101 40 0

e a matriz

AT =

[4 1 010 4 0

].

Teorema. Sejam A e B matrizes tais que as operacoes abaixo descritas estejam bemdefinidas e seja k ∈ R. Entao,

1.(AT)T

= A;

2. (kA)T = kAT ;

3. (A+B)T = AT +BT ;

4. (AB)T = BTAT .

DMAT 6 ESTSetubal/IPS

3 Determinantes e Matriz Inversa

Dada uma matriz A quadrada de ordem n, representa-se por Aij a matriz que se obtemda matriz A eliminando a linha i e coluna j e que se denomina como matriz menor.Por exemplo, se

A =

1 2 34 5 67 8 9

entao

A23 =

[1 27 8

].

O determinante de uma matriz e uma funcao que associa a cada matrizA ∈ Mn×n (R) um numero real, que se representa por detA ou |A|, ou seja

det : Mn×n (R) −→ RA 7−→ detA.

O determinante de uma matriz de ordem 1

A =[a]

e definido pordetA = a.

O determinante de uma matriz A = [aij] de ordem n > 2 e definido para uma qualquerlinha i ∈ {1. . . . , n} por

detA =n∑

j=1

aij∆ij

= ai1∆i1 + ai2∆i2 + . . .+ ain∆in

em que∆ij = (−1)i+j detAij

se designa por complemento algebrico.Por exemplo, o determinante de uma matriz de ordem 2 pode ser calculado utilizando

a 1ª linha da matriz. Assim,

detA = det

[a bc d

]= a× (−1)1+1 × det

[d]+ b× (−1)1+2 × det

[c],

dondedetA = ad− bc.

DMAT 7 ESTSetubal/IPS

Calcule-se um determinante de uma matriz de ordem 3 pela primeira linha

detA =

∣∣∣∣∣∣1 2 34 5 67 0 9

∣∣∣∣∣∣= a11 (−1)1+1 detA11 + a12 (−1)1+2 detA12 + a13 (−1)1+3 detA13

=

∣∣∣∣ 5 60 9

∣∣∣∣− 2

∣∣∣∣ 4 67 9

∣∣∣∣+ 3

∣∣∣∣ 4 57 0

∣∣∣∣= (45− 0)− 2 (36− 42) + 3 (0− 35)

= −48.

Note-se que esta definicao esta bem definida e nao depende da escolha da linha i. Ocalculo do determinante desta forma denomina-se por desenvolvimento ao longo da linhai. De facto, esta definicao tambem pode ser introduzida pelo desenvolvimento ao longoda coluna j, ou seja,

detA =n∑

i=1

aij∆ij

= a1j∆1j + a2j∆2j + . . .+ anj∆nj.

Ao repetir-se o exercıcio anterior aplicado ao longo da coluna 2

detA =

∣∣∣∣∣∣1 2 34 5 67 0 9

∣∣∣∣∣∣= (−1)1+2 a12 detA11 + (−1)2+2 a22 detA12 + (−1)3+2 a13 detA32

= −2

∣∣∣∣ 4 67 9

∣∣∣∣+ 5

∣∣∣∣ 1 37 9

∣∣∣∣+ 0

= −2 (36− 42) + 5 (9− 21)

= −48.

Esta nao e unica forma de calcular um determinante e denomina-se de formula deLaplace.

Um outro metodo muito utilizado no calculo do determinante de uma matriz de ordem3 e a regra de Sarrus:

detA =

∣∣∣∣∣∣a11 a12 a13a21 a22 a23a31 a32 a33

∣∣∣∣∣∣= (a11a22a33 + a12a23a31 + a13a21a32)− (a13a22a31 + a12a21a33 + a11a23a32) .

Por exemplo,

DMAT 8 ESTSetubal/IPS

detA =

∣∣∣∣∣∣1 −1 20 1 3−1 4 1

∣∣∣∣∣∣= (1 + 3 + 0)− (−2 + 0 + 12)

= −6.

Teorema. Sejam A,B ∈ Mn×n (R). Entao

1. det (AB) = det (A) det (B) ;

2. det(AT)= det (A) ;

3. det In = 1;

4. O determinante de uma matriz diagonal e igual ao produto dos elementos da dia-gonal principal (o produto dos elementos aii com i ∈ {1, . . . , n});

5. O determinante de uma matriz triangular (superior ou inferior) e igual ao produtodos elementos da diagonal principal.

Note-se que, em geral, det(A + B) = detA + detB. Por exemplo, se A = B = I2,entao

det (A+B) =

∣∣∣∣ 2 00 2

∣∣∣∣ = 4

masdetA+ detB = 2.

Dada uma matriz A quadrada de ordem n, A diz-se uma matriz invertıvel se existeuma outra matriz de ordem n, que se representa por A−1, tal que

AA−1 = A−1A = In.

A matriz A−1 tem o nome de matriz inversa de A. Uma matriz que nao e invertıveldiz-se singular.

Por exemplo, a matriz A =

[1 21 0

]e invertıvel pois

[1 21 0

] [0 112

−12

]=

[1 00 1

]e [

0 112

−12

] [1 21 0

]=

[1 00 1

].

Logo

A−1 =

[0 112

−12

].

DMAT 9 ESTSetubal/IPS

Teorema.

1. Se uma matriz for invertıvel, a sua inversa e unica;

2. A e uma matriz invertıvel se e so se detA = 0.

Para calcular a matriz inversa poder-se-a recorrer a matriz adjunta.Seja A uma matriz de ordem n. Define-se a matriz adjunta de A como sendo a

matriz transposta dos complementos algebricos, ou seja

adj (A) =

∆11 ∆12 · · · ∆1n

∆21 ∆22 · · · ∆2n...

.... . .

...∆n1 ∆n2 · · · ∆nn

T

.

A matriz adjunta da matriz A =

1 0 −10 1 2−1 0 3

e dada por

adj (A) =

det

[1 20 3

]− det

[0 2−1 3

]det

[0 1−1 0

]− det

[0 −10 3

]det

[1 −1−1 3

]− det

[1 0−1 0

]det

[0 −11 2

]− det

[1 −10 2

]det

[1 00 1

]

T

=

3 −2 10 2 01 −2 1

T

=

3 0 1−2 2 −21 0 1

.

Teorema. Seja A uma matriz de ordem n tal que detA = 0. Entao,

A−1 =1

detAadj (A) .

Por exemplo, dada a matriz A =

1 0 −10 1 2−1 0 3

A−1 =1

detA

3 0 1−2 2 −21 0 1

=

32

0 12

−1 1 −112

0 12

pois detA = 2.

Teorema. Sejam A e B matrizes de ordem n invertıveis. Entao:

1. AB e invertıvel e (AB)−1 = B−1A−1;

2. (In)−1 = In;

DMAT 10 ESTSetubal/IPS

3. (A−1)−1

= A;

4.(AT)−1

= (A−1)T;

5. det (A−1) =1

detA.

4 Sistemas de Equacoes Lineares

Um sistema de n equacoes lineares e n incognitas x1, x2, . . . , xn, pode ser representadona forma

a11x1 + a12x2 + · · ·+ a1nxn = b1a21x1 + a22x2 + · · ·+ a2nxn = b2

...an1x1 + an2x2 + · · ·+ annxn = bn

onde aij e bi (i, j ∈ {1, . . . , n}) sao numeros reais conhecidos. O elemento aij e o coefici-ente da incognita xj na equacao de ordem i e bi e o termo independente da mesmaequacao.

Matricialmente, o sistema anterior pode representar-se por

AX = B,

em que

A =

a11 a12 · · · a1na21 a22 · · · a2n...

.... . .

...an1 an2 · · · ann

= [aij], X =

x1

x2...xn

= [xi] e B =

b1b2...bn

= [bi],

sao, respectivamente, a matriz dos coeficientes, a matriz das incognitas e a matrizdos termos independentes. Usar-se-a a notacao vectorial x = (x1, x2, . . . , xn) pararepresentar uma matriz coluna X com n elementos e define-se matriz ampliada dosistema como

A|B =

a11 a12 · · · a1n | b1a21 a22 · · · a2n | b2...

.... . .

... | ...an1 an2 · · · ann | bn

.

A partir daqui e ate ao final deste capıtulo considerar-se-a apenas a resolucao desistemas de equacoes lineares em que a matriz dos coeficientes e quadrada einvertıvel o que na pratica quer dizer que estes sistemas terao apenas uma unica solucao.

No ensino secundario ensina-se a resolver estes sistemas com recurso a tecnica desubstituicao. Por exemplo

2x1 − 6x2 + 4x3 = −2x1 − 2x2 + x3 = 52x1 − 4x2 + 6x3 = 6

x1 = −1 + 3x2 − 2x3

x1 − 2x2 + x3 = 52x1 − 4x2 + 6x3 = 6

DMAT 11 ESTSetubal/IPS

x1 = −1 + 3x2 − 2x3

(−1 + 3x2 − 2x3)− 2x2 + x3 = 52 (−1 + 3x2 − 2x3)− 4x2 + 6x3 = 6

x1 = −1 + 3x2 − 2x3

x2 − x3 = 62x2 + 2x3 = 8

x1 = −1 + 3x2 − 2x3

x2 = 6 + x3

2 (6 + x3) + 2x3 = 8

x1 = −1 + 3x2 − 2x3

x2 = 6 + x3

4x3 = −4x1 = 16x2 = 5x3 = −1

Este sistema, possıvel e determinado, e representado na forma matricial

AX = B

e pode ser resolvido com recurso a matriz inversa, pois

AX = B ⇔ A−1AX = A−1B ⇔ InX = A−1B ⇔ X = A−1B.

Ou seja,

X =

−1 52

14

−12

12

14

0 −12

14

−256

⇔ X =

165−1

.

Note-se que a resolucao deste sistema por estes metodos e vagaroso e trabalhoso. Emanalise numerica pretende-se encontrar metodos eficientes para a resolucao de sistemas deequacoes lineares de qualquer dimensao e que possam ser implementados num computador(o Google para o PageRank usa matrizes de ordem de milhares de milhoes).

Tais metodos de resolucao podem ser classificados em metodos directos e metodositerativos.

Nos metodos directos a solucao e obtida apos a realizacao de um numero finito deoperacoes aritmeticas durantes as quais podem ocorrer erros (devido a arrendondamentos)que se propagam ao longo do algoritmo numerico usado.

Nos metodos iterativos, a partir de uma aproximacao inicial, vao-se calculando suces-sivamente novas aproximacoes da solucao exacta do sistema. Cada iteracao consiste emobter uma nova aproximacao (ou iterada) a partir das anteriores. Os metodos iterativosproduzem melhores solucoes como sera visto daqui em diante.

5 Metodo de Eliminacao de Gauss

O metodo de eliminacao de Gauss e um metodo directo baseado na transformacao deum sistema dado AX = B num sistema equivalente UX = Y, em que U e uma matriztriangular superior (tambem chamada matriz em escada). Se A|B e a matriz ampliada deAX = B, a transformacao pode ser efectuada atraves da execucao repetida de operacoeselementares sobre as linhas de A|B. As operacoes elementares sao:

DMAT 12 ESTSetubal/IPS

OE1 Troca entre si de 2 linhas da matriz.

OE2 Multiplicacao dos elementos de uma linha por uma constante diferente de zero.

OE3 Subtraccao a uma linha de outra linha multiplicada por uma constante.

Qualquer uma destas operacoes sobre A|B substitui o sistema inicial por outro equi-valente, isto e, com as mesmas solucoes. Ao realizar estas operacoes de forma sistematicae possıvel, a partir do sistema inicial, determinar um sistema equivalente UX = Y, comU uma matriz triangular superior, cuja solucao e facilmente obtida.

Use-se o metodo de eliminacao de Gauss para resolver o sistema de equacoes doexemplo anterior:

2x1 − 6x2 + 4x3 = −2x1 − 2x2 + x3 = 52x1 − 4x2 + 6x3 = 6

.

Tem-se entao que

A =

2 −6 41 −2 12 −4 6

, X =

x1

x2

x3

e B =

−256

.

A matriz ampliada deste sistema e dada por

A|B =

2 −6 4 | −21 −2 1 | 52 −4 6 | 6

.

Para transformar esta matriz efectuam-se, sucessivamente, as seguintes operacoes sobrelinhas:

1. Dado que a11 = 2 = 0, podemos usar este elemento para anular os restantes ele-mentos da 1a coluna (a21 = 1 e a31 = 2). Para tal, subtraımos aos elementos das 2a

e 3a linhas o produto da linha 1 pelos multiplicadores

m21 =a21a11

=1

2e m31 =

a31a11

= 1,

respectivamente. 2 −6 4 | −21 −2 1 | 52 −4 6 | 6

OE3−→L2 − 1

2L1

(m21 =

12

)L3 − L1 (m31 = 1)

2 −6 4 | −20 1 −1 | 60 2 2 | 8

O elemento a11 = 2, designa-se por redutor (ou pivot).

2. Continuando a designar por aij os elementos da matriz ampliada obtida, tomandoa22 = 1 = 0 como redutor, podemos anular o elemento abaixo (a32 = 2) utilizandode novo a operacao OE3. Ao efectuar a subtraccao entre a 3a linha e o produto da2a linha pelo multiplicador

m32 =a32a22

=2

1= 2,

DMAT 13 ESTSetubal/IPS

e obtem-se 2 −6 4 | −2

0 1 −1 | 60 2 2 | 8

OE3−→L3 − 2L2 (m32 = 2)

2 −6 4 | −20 1 −1 | 60 0 4 | −4

.

Designando a matriz ampliada obtida por U |Y , verifica-se que

U =

2 −6 40 1 −10 0 4

e uma matriz triangular superior, pelo que o sistema correspondente UX = Y , isto e,

2x1 − 6x2 + 4x3 = −2x2 − x3 = 64x3 = −4,

pode ser facilmente resolvido por retrosubstituicao. Comecando pela resolucao da 3a

equacao obtem-se a solucao do sistema utilizando substituicao de forma ascendentex3 = −4

4= −1

x2 = 6 + x3 = 5x1 =

12(−2 + 6x2 − 4x3) = 16.

Como

AX = B ⇔ UX = Y,

entao x1 = 16x2 = 5x3 = −1

e solucao do sistema inicial.

Observacao. O metodo de eliminacao de Gauss pode ser aplicado a qualquer sistema,nomeadamente a sistemas possıveis e inderteminados e impossıveis.

6 Factorizacao LU

Teorema. Se ao longo do processo de eliminacao de Gauss nao se efectuar troca delinhas, entao a matriz A admite a factorizacao

A = LU

em que L e uma matriz triangular inferior de diagonal unitaria e U e a matriz triangularsuperior obtida no final daquele processo.

DMAT 14 ESTSetubal/IPS

Repare-se que longo da resolucao de um sistema AX = B pelo metodo de eliminacaode Gauss sao calculados os multiplicadores mij. Ao construir-se uma matriz triangularinferior

L =

1 0 0 · · · 0

m21 1 0 · · · 0m31 m32 1 · · · 0...

......

. . ....

mn1 mn2 mn3 · · · 1

,

consegue-se obter a factorizacao A = LU descrita no teorema.No sistema do exemplo anterior tem-se,

L =

1 0 01/2 1 01 2 1

e U =

2 −6 40 1 −10 0 4

.

e verifica-se que

LU =

2 −6 41 −2 12 −4 6

= A.

O resultado deste teorema garante que

AX = B ⇔ (LU)X = B ⇔ L (UX) = B.

Considerando UX = Y, conclui-se que o metodo de eliminacao de Gauss equivale afactorizacao A = LU seguida da resolucao de dois sistemas:

1. LY = B para obter Y ;

2. UX = Y para obter X.

As solucoes Y e X calculam-se facilmente visto que L e U sao matrizes triangulares. Porisso, se houver a necessidade de determinar a solucao X do sistema AX = B′, em que B′

e diferente de B, bastara resolver LY = B′ e seguidamente UX = Y. Trata-se, com efeito,de uma vantagem significativa da factorizacao LU visto que, uma vez realizada, pode serempregue para resolver sistemas que tenham em comum a mesma matriz de coeficientes.

Outra vantagem proporcionada pela factorizacao LU e a possibilidade de calcular deuma forma muito simples o determinante de A. Se A = LU, resulta das propriedades dodeterminante que

detA = detL× detU.

Como o determinante de uma matriz triangular e o produto dos elementos da diagonalprincipal, tem-se detL = 1 e detU = u11u22 · · ·unn, pelo que

detA = detU = u11u22 · · ·unn.

Como hipotese necessaria a validade do teorema admitiu-se que, ao longo do metodode eliminacao de Gauss, nao se efectuou troca de linhas.

DMAT 15 ESTSetubal/IPS

Exemplo. Considere-se o sistema de equacoes lineares−x2 + 4x3 = −2x1 − 2x2 + x3 = 5x1 − 4x2 + 6x3 = 6.

Como o primeiro elemento da primeira linha da matriz dos coeficientes do sistema enulo, torna-se necessario efectuar uma troca de linhas para escolher o redutor da primeiracoluna da matriz. O sistema

x1 − 2x2 + x3 = 5−x2 + 4x3 = −2x1 − 4x2 + 6x3 = 6

e equivalente ao primeiro, ao qual ja se pode aplicar o metodo de Gauss e obter a facto-rizacao A = LU . 1 −2 1 | 5

0 −1 4 | −21 −4 6 | 6

OE3−→(m21 = 0)

L3 − L1(m31 = 1)

1 −2 1 | 50 −1 4 | −20 −2 5 | 1

OE3−→

L3 − 2L2(m32 = 2)

1 −2 1 | 50 −1 4 | −20 0 −3 | 5

.

Conclui-se assim que

L =

1 0 00 1 01 2 1

e U =

1 −2 10 −1 40 0 −3

tais que A = LU .Se for necessario trocar linhas, bastara realizar essas trocas na matriz

A|B antes de iniciar o metodo de eliminacao de Gauss.

Exercıcio. Considere o seguinte sistema de equacoes:3x1 + 2x2 + 4x3 + x4 = 42x1 + x2 + x3 − x4 = 72x1 + x3 + 2x4 = −4x1 + 2x2 + 4x4 = −7

.

1. Utilize o metodo de eliminacao de Gauss para resolver o sistema;

2. Obtenha a factorizacao LU da matriz dos coeficientes do sistema e aproveite-apara calcular o determinante dessa matriz (Note que se trocarmos duas linhas numdeterminante, mudamos o sinal ao determinante);

3. Utilize a alınea anterior para resolver o sistema tomando para 2o membro o vector(0,−2,−3, 49).

DMAT 16 ESTSetubal/IPS

7 Avaliacao do Esforco Computacional

O esforco computacional realizado por um algoritmo e habitualmente medido pelo numerode operacoes aritmeticas elementares (adicoes, subtraccoes, multiplicacoes ou divisoes)efectuadas, ou seja o numero de ”flops”efectuados (o termo flops abrevia a expressaoinglesa floating point operations per second).

O objectivo que temos agora em vista e a contagem do numero de flops necessariospara resolver um sistema AX = B pelo metodo de eliminacao de Gauss. Vamos considerarseparadamente a criacao das matrizes L e U a partir de A, depois a transformacao de Bno vector Y e finalmente a resolucao de UX = Y utilizando a substituicao ascendente.

1. Calculo de L e U

No metodo de eliminacao de Gauss, para obter a matriz A(2), a matriz resultanteapos anulamento dos termos ai1 para i ∈ {2, . . . , n}, sao necessarias n− 1 divisoes

para calcular os multiplicadores mi1, i = 2, . . . , n. A obtencao dos elementos a(2)ij re-

quer, por outro lado, a realizacao de (n− 1)2 multiplicacoes e (n− 1)2 subtraccoes.Utilizando o mesmo raciocınio podemos proceder a contagem das operacoes reali-zadas na obtencao de cada matriz A(i), i = 1, . . . , n; a tabela seguinte resume estascontagens.

Obtencao de A(i) Adicoes/Subtraccoes Multiplicacoes Divisoes

A(2) (n− 1)2 (n− 1)2 n− 1

A(3) (n− 2)2 (n− 2)2 n− 2...

......

...A(n) = U 1 1 1

Total n(n−1)(2n−1)6

n(n−1)(2n−1)6

n(n−1)2

O valor total em cada coluna foi obtido usando as igualdades

p∑j=1

j =p(p− 1)

2e

p∑j=1

j2 =p(p+ 1)(2p+ 1)

6, p ≥ 1.

Estas igualdades irao ser provadas na Unidade Curricular de Matematica Discreta.Para a factorizacao LU, temos assim que o numero total de flops e

n(n− 1)(2n− 1)

6+

n(n− 1)(2n− 1)

6+

n(n− 1)

2=

2n3

3− n2

2− n

6

2. Transformacao de B no vector Y

Neste caso temos o seguinte quadro:

Obtencao de B(i) Adicoes/Subtraccoes Multiplicacoes

B(2) n− 1 n− 1B(3) n− 2 n− 2...

......

B(n) = Y 1 1

Total n(n−1)2

n(n−1)2

DMAT 17 ESTSetubal/IPS

O numero total de flops e

n(n− 1)

2+

n(n− 1)

2= n2 − n.

3. Resolucao de UX = Y

Neste caso tem-se

Obtencao de xi Adicoes/Subtraccoes Multiplicacoes Divisoesxn 0 0 1xn−1 1 1 1...

......

...x1 n− 1 n− 1 1

Total n(n−1)2

n(n−1)2

n

Assim, o numero total de flops e

n(n− 1)

2+

n(n− 1)

2+ n = n2.

Dos pontos 1., 2. e 3. conclui-se que o numero total de flops necessarios para resolverAX = B e (

2n3

3− n2

2− n

6

)+(n2 − n

)+ n2 =

2

3n3 +

3

2n2 − 7

6n ≈ 2

3n3.

A estimativa de 2n3/3 apontada para o numero total de flops e valida para grandes valoresde n. De notar que a potencia n3 so aparece no calculo do numero de flops da factorizacaoLU . Deste modo, o calculo de L e U constitui o maior esforco computacional do processode eliminacao de Gauss. Uma vez obtidas estas matrizes, sao somente necessarios 2n2 −n ≈ 2n2 flops para resolver AX = B. Conclui-se, portanto, que e relativamente economicoresolver outros sistemas com a mesma matriz dos coeficientes, desde que a factorizacaoLU tenha sido guardada.

8 Pesquisa de Redutor

Note-se que os redutores utilizados no metodo de eliminacao de Gauss sao nao nulos. Noentanto, as operacoes em ponto flutuante podem tornar nao nulo um redutor que serianulo caso os calculos fossem realizados em aritmetica exacta e, deste modo, poder-se-aintroduzir erros grosseiros na solucao final do sistema. Por exemplo, o sistema{

0.003x+ 59.140y = 59.1705.291x− 6.130y = 46.780

tem solucao exacta [xy

]=

[101

].

DMAT 18 ESTSetubal/IPS

No entanto, se resolvermos este sistema pelo metodo de eliminacao de Gauss emFP (10, 4,−99, 99, A), tem-se que[

0.003 59.14 | 59.175.291 −6.13 | 46.78

]OE3−→

L2 −m21L1

[0.003 59.14 | 59.17

0 −104300 | −104400

]onde m21 =

5.2910.003

= 1764 e a solucao aproximada que se obtem e[xy

]=

[−101.001

].

O erro tao grande obtido deve-se ao facto de se ter escolhido um redutor com um valorabsoluto muito proximo de zero. Pode-se evitar este problema com recurso aos metodosde pesquisa parcial de redutor e de pesquisa total de redutor.

8.1 Pesquisa Parcial de Redutor

Seja

A(k)|B(k) =

a(k)11 a

(k)12 · · · a

(k)1k · · · a

(k)1n | b

(k)1

0 a(k)22 · · · a

(k)2k · · · a

(k)2n | b

(k)2

......

. . ....

...... | ...

0 0 · · · a(k)kk · · · a

(k)kn | ...

......

...... · · · ... | ...

0 0 · · · a(k)nk · · · a

(k)nn | b

(1)n

a matriz ampliada no inıcio do passo k ∈ {1, . . . , n − 1} do metodo de eliminacao deGauss. Considere-se

ck = maxk6i6n

|a(k)ik |,

isto e, o maior dos valores absolutos dos elementos a(k)kk , . . . , a

(k)nk da coluna k a partir da

diagonal principal de A(k). Se este maximo e atingido no elemento a(k)rk que se encontra

na linha r ∈ {k, . . . , n}, isto e, ck = |a(k)rk |, entao trocam-se as linhas r e k da matrizA(k)|B(k) e prossegue-se com o passo k do processo de eliminacao de Gauss. Note-seque este procedimento garante que os multiplicadores mik, i = k + 1, . . . n, verificam|mik| 6 1 o que evita uma grande variacao dos elementos de A(k)|B(k) e, possivelmente,erros propagados de grande magnitude.[

0.003 59.14 | 59.175.291 −6.13 | 46.78

]L1 ↔ L2

[5.291 −6.13 | 46.780.003 59.14 | 59.17

]OE3−→

L2 −m21L1

[5.291 −6.13 | 46.78

0 59.14 | 59.14

],

onde m21 =0.0035.291

= 0.000567 e a solucao aproximada e[xy

]=

[101

]que coincide com a solucao exacta.

DMAT 19 ESTSetubal/IPS

Exemplo. Arredonde-se os resultados dos calculos para 4 dıgitos, e resolva-se o sistema{0.005x+ 0.81y = 0.78422.333x+ 1.52y = 1.225

sem pesquisa de redutor e com pesquisa parcial de redutor. A solucao do sistema com 4algarismos exactos e

x = −0.1061 e y = 0.9688.

1. Resolucao sem pesquisa de redutor

A transformacao da matriz ampliada numa matriz triangular representa-se por[0.005 0.81 | 0.78422.333 1.52 | 1.225

]OE3−→

L2 −m21L1

[0.005 0.81 | 0.78420 −376.4 | −364.7

],

onde m21 =2.3330.005

= 466.6. Logo, a solucao obtida por substituicao ascendente e{y = −364.7

−376.6= 0.9689

x = 0.7842−0.81×0.96890.005

= −0.1218

2. Resolucao com pesquisa de redutor

Neste caso teremos de comecar por trocar as 1a e 2a linhas da matriz ampliada vistoque

c1 = max {|0.005| , |2.333|} = 2.333.

A transformacao da matriz ampliada numa matriz triangular representa-se por[0.005 0.81 | 0.78422.333 1.52 | 1.225

]L1 ↔ L2

[2.333 1.52 | 1.2250.005 0.81 | 0.7842

]OE3−→

L2 −m21L1

[2.333 1.52 | 1.2250 0.8067 | 0.7816

],

onde m21 = 0.0052.333

= 0.002143. Logo, a solucao obtida por retrosubstituicao ascen-dente e

y = 0.78160.8067

= 0.9689

x = 1.225−1.52×0.96892.333

= −0.1062

Ve-se assim que sem a escolha parcial do redutor a percentagem de erro de y e decerca de 0.01% mas a percentagem de erro de x e de cerca de 14.8%. Por outro lado coma escolha parcial do redutor foi obtida uma solucao do sistema com percentagem de errototal de 0.01%. Isto ilustra o efeito positivo da pesquisa parcial de redutor no metodo deeliminacao de Gauss.

DMAT 20 ESTSetubal/IPS

8.2 Pesquisa Total de Redutor

Este procedimento consiste em calcular, no passo k da eliminacao de Gauss, o elemento

ck = max16i,j6n

|a(k)ij |.

Trata-se do maior dos valores absolutos dos elementos da submatriz que se obtem elimi-nando as primeiras n− k linhas e colunas de A(k): a

(k)kk · · · a

(k)kn

... · · · ...

a(k)nk · · · a

(k)nn

.

Uma vez calculado ck procede-se a troca das linhas de A(k)|B(k) e das colunas de A(k) demodo a trazer para a posicao do redutor o elemento para o qual se obteve o valor de ck. Denotar que a troca de colunas deve levar a que se troquem igualmente as correspondentesvariaveis na matriz das incognitas.

A pesquisa total do redutor e o procedimento que melhor permite minorar os efeitosdecorrentes da propagacao dos erros de arredondamento. No entato, o numero de flopsque requer e muito superior ao numero exigido pela pesquisa parcial de redutor. Acresceainda que, na generalidade dos casos, a precisao permitida pela pesquisa parcial de redutore muito proxima da fornecida pela pesquisa total. Por estes motivos, a pesquisa parcial deredutor e o procedimento mais utilizado no metodo de eliminacao de Gauss para controlaros erros de arredondamento.

9 Metodos Compactos

O metodo de eliminacao de Gauss permite obter a factorizacao LU da matriz dos coefi-cientes dum sistema AX = B. E, tal como aı foi referido, uma vez obtidas as matrizesL e U , a solucao do sistema AX = B pode ser determinada resolvendo sucessivamenteos sistemas triangulares LY = B e UX = Y . Acontece que as matrizes L e U podem sercalculadas directamente, sem recorrer ao metodo de eliminacao de Gauss, utilizando oschamados metodos compactos. Esta designacao deve-se ao facto dos elementos de Le U serem calculados de uma so vez atraves de formulas explıcitas, ao contrario do queacontece na eliminacao de Gauss onde aqueles elementos sao obtidos por etapas a medidaque o processo avanca. Apresenta-se em seguida o metodo de Doolittleque procede afactorizacao LU da matriz A de uma forma compacta. Finaliza-se esta seccao com umoutro metodo compacto, o metodo de Cholesky, que se baseia numa factorizacao damatriz A distinta da factorizacao LU .

9.1 Metodo de Doolittle

Utiliza-se o metodo de Doolittle para factorizar uma matriz A em LU em que a diagonalda matriz L so tem 1’s.

DMAT 21 ESTSetubal/IPS

Por exemplo, a factorizacao LU da matriz A

A =

2 −6 41 −2 12 −4 6

pode ser obtida da seguinte forma

A = [aij] = LU ⇔

2 −6 41 −2 12 −4 6

=

1 0 0m21 1 0m31 m32 1

u11 u12 u13

0 u22 u23

0 0 u33

.

Multiplicando as matrizes que se encontram a direita da ultima igualdade obtem-se 2 −6 41 −2 12 −4 6

=

u11 u12 u13

m21u11 u22 +m21u12 u23 +m21u13

m31u11 m31u12 +m32u22 u33 +m31u13 +m32u23

.

Ao igualar os elementos homologos da 1a coluna, conclui-se que

1a coluna →

u11 = a11 = 2m21u11 = a21 = 1 ⇒ m21 =

12

m31u11 = a31 = 2 ⇒ m31 =22= 1

De seguida, iguala-se os elementos homologos das colunas seguintes e obtem-se

2a coluna →

u12 = a12 = −6u22 +m21u12 = a22 = −2 ⇒ u22 = −2− 1

2(−6) = 1

m31u12 +m32u22 = a32 = −4 ⇒ m32 =−4−1(−6)

1= 2

3a coluna →

u13 = a13 = 4u23 +m21u13 = a23 = 1 ⇒ u23 = 1− 1

2· 4 = −1

u33 +m31u13 +m32u23 = a33 = 6 ⇒ u33 = 6− 1 · 4− 2(−1) = 4.

A factorizacao A = LU e dada por 2 −6 41 −2 12 −4 6

=

1 0 01/2 1 01 2 1

2 −6 40 1 −10 0 4

.

Para resolver o sistema AX = B com

B =

−256

resolve-se primeiro o sistema LY = B, 1 0 0

1/2 1 01 2 1

y1y2y3

=

−256

y1y2y3

=

−26

−4

DMAT 22 ESTSetubal/IPS

e, finalmente, determina-se a solucao de UX = Y , 2 −6 40 1 −10 0 4

x1

x2

x3

=

−26

−4

x1

x2

x3

=

165

−1

.

Na determinacao das matrizes L e U no exemplo anterior, calculou-se os elementosda matriz

L+ U − I3 =

u11 u12 u13

m21 u22 u23

m31 m32 u33

e em que os elementos foram calculados por ordem crescente das colunas e em cadacoluna, por ordem crescente das linhas.

Este procedimento pode ser generalizado a qualquer matriz A nao singular de ordemn e o calculo dos elementos mij e uij da matriz L + U − In pode fazer-se mediante asseguintes formulas:

u1j = a1j j = 1, . . . , n

uij = aij −i−1∑s=1

misusj j = i, . . . , n; i ≥ 2

mi1 =ai1u11

i = 2, . . . , n

mij =1

ujj

(aij −

j−1∑s=1

misusj

)i = j + 1, . . . , n; j ≥ 2

.

Apresenta-se a ordem pela qual os elementos de L + U − In podem ser calculados noesquema seguinte:

Note-se que os elementos ujj tem de ser nao nulos, o que pode sempre ser conseguidopor troca de linhas.

Tem-se, portanto, que a aplicacao do metodo de Doolittle a resolucao de um sis-tema AX = B consiste na factorizacao de A, seguida da determinacao das solucoes dossistemas triangulares LY = B e UX = Y por substituicao descendente e ascendente,respectivamente.

Exemplo. Resolva-se pelo metodo de Doolittle o sistema2x1 + x2 + 3x3 = 13x1 + 2x2 + 4x3 = 22x1 + 2x2 + x3 = 3

.

A matriz dos coeficientes do sistema e dada por:

DMAT 23 ESTSetubal/IPS

A =

2 1 33 2 42 2 1

.

Tem-se que

1 →

u11 = a11 = 2m21 =

a21u11

= 32

m31 =a31u11

= 22= 1

2 →

u12 = a12 = 1

u22 = a22 −1∑

s=1

m2sus2 = a22 −m21u12 = 2− 32· 1 = 1

2

m32 =1

u22

(a32 −

1∑s=1

m3sus2

)= a32−m31u12

u22= 2−1·1

1/2= 2

3 →

u13 = a13 = 3

u23 = a23 −1∑

s=1

m2sus3 = a23 −m21u13 = 4− 32· 3 = −1

2

u33 = a33 −2∑

s=1

m3sus3 = a33 −m31u13 −m32u23 = 1− 3 + 1 = −1.

Assim,

L =

1 0 03/2 1 01 2 1

e U =

2 1 30 1/2 −1/20 0 −1

.

Resolve-se agora LY = B, em que B e o 2o membro do sistema dado, isto e, 1 0 03/2 1 01 2 1

y1y2y3

=

123

,

pelo que y1 = 1y2 = 2− 3

2y1 = 2− 3

2= 1

2

y3 = 3− y1 − 2y2 = 3− 1− 1 = 1.

Finalmente, determina-se a solucao de UX = Y , isto e, 2 1 30 1/2 −1/20 0 −1

x1

x2

x3

=

11/21

,

donde sai que x3 = −112x2 =

12+ 1

2x3 ⇒ x2 = 1 + x3 = 0

2x1 = 1− x2 − 3x3 ⇒ 2x1 = 1 + 3 ⇒ x1 = 2.

Portanto, a solucao do sistema inicial e x1 = 2, x2 = 0 e x3 = −1.

DMAT 24 ESTSetubal/IPS

9.2 Metodo de Cholesky

O metodo de Cholesky aplica-se a sistemas cuja matriz dos coeficientes e simetrica edefinida positiva. Uma matriz A = [aij] de ordem n diz-se definida positiva se

XTAX =n∑

i=1

n∑j=1

aijxixj > 0,

para toda a matriz coluna nao nula X = [xi] com n elementos.

Teorema. Seja A uma matriz de ordem n simetrica. Entao A e definida positiva se e sose todas as submatrizes Ai formadas pelos elementos das primeiras i linhas e i colunasde A tem determinante positivo, isto e, detAi > 0, para i = 1, . . . , n.

Exemplo. A matriz simetrica A =

2 0 20 1 22 2 10

e definida positiva pois

detA1 = det [2] = 2 > 0

detA2 =

[2 00 1

]= 2 > 0 e

detA3 = detA = det

2 0 20 1 22 2 10

= 8 > 0.

Na resolucao de sistemas AX = B pelo metodo de Cholesky, qualquer matriz Asimetrica e definida positiva e factorizada nas matrizes L = [lij] (triangular inferior) eLT = [lji] tais que lii > 0 e A = LLT . Assim, o sistema original AX = B pode escrever-sena forma

(LLT

)X = B, ou seja, L

(LTX

)= B. Portanto, a semelhanca do que foi visto

para a decomposicao LU , a solucao de AX = B obtem-se resolvendo sucessivamente ossistemas

LY = B e LTX = Y .

Em geral uma matriz A de ordem n, simetrica e definida positiva, factoriza-se naforma LLT = A, isto e,

l11 0 · · · 0l21 l22 · · · 0...

.... . .

...ln1 ln2 · · · lnn

l11 l21 · · · ln10 l22 · · · ln2...

.... . .

...0 0 · · · lnn

=

a11 a12 · · · a1na12 a22 · · · a2n...

.... . .

...a1n a2n · · · ann

.

Efectuando o produto da 1a linha de L pela 1a coluna de LT obtem-se

l211 = a11 ⇒ l11 =√a11.

Multiplicando seguidamente a 2a linha de L pelas 1a e 2a colunas de LT obtem-se,respectivamente,

l21l11 = a12 e l221 + l222 = a22,

DMAT 25 ESTSetubal/IPS

pelo que

l21 =a12l11

e l22 =√

a22 − l221.

Efectuando sucessivamente o procedimento anterior chegarıamos a etapa final queconsiste em multiplicar a ultima linha de L por todas as colunas de LT . Obter-se-iaentao

ln1l11 = a1n, ln1l21 + ln2l22 = a2n, . . . , l2n1 + l2n2 + · · ·+ l2nn = ann,

pelo que

ln1 =a1nl11

, ln2 =1

l22

(a2n −

1∑k=1

lnkl2k

), . . . , lnn =

√√√√ann −n−1∑k=1

l2nk.

As formulas anteriores sugerem que os elementos lij da matriz triagular inferior Lpodem ser obtidos, para cada i = 1, 2, . . . , n, mediante as igualdades

lij =1ljj

(aij −

j−1∑k=1

likljk

)j = 1, . . . , i− 1

lii =

√aii −

i−1∑k=1

l2ik

onde se usa a convencao∑0

k=1 ak = 0.Apresenta-se ordem pela qual os elementos de L = [lij] podem ser calculados no

esquema seguinte:

Exemplo. Resolva-se pelo metodo de Cholesky o sistema de equacoes lineares AX = B,onde

A =

2 0 20 1 22 2 10

e B =

61442

.

DMAT 26 ESTSetubal/IPS

Ja foi visto que a matriz A e definida positiva. Entao

l11 =√a11 =

√2,

l21 =a21l11

=0√2= 0,

l31 =a31l11

=2√2=

√2,

l22 =

√√√√a22 −1∑

k=1

l22k =√

a22 − l221 =√1− 0 = 1,

l32 =

a32 −1∑

k=1

l3kl2k

l22=

a32 − l31l21l22

=2−

√2× 0

1= 2

l33 =

√√√√(a33 − 2∑k=1

l23k

)=√

a33 − l231 − l232 =√10− 2− 4 = 2.

A factorizacao A = LLT e entao 2 0 20 1 22 2 10

=

√2 0 00 1 0√2 2 2

√2 0

√2

0 1 20 0 2

.

A partir daqui resolve-se LY = B, √2 0 00 1 0√2 2 2

y1y2y3

=

61442

cuja solucao e y1

y2y3

=

3√2

144

.

Finalmente, resolve-se LTX = Y , √2 0

√2

0 1 20 0 2

x1

x2

x3

=

3√2

144

cuja solucao e x1

x2

x3

=

1102

.

Refira-se que o metodo de Cholesky e estavel mesmo sem escolha de redutor e exigemetade das operacoes que sao necessarias no metodo de Doolittle.

DMAT 27 ESTSetubal/IPS

10 Metodos Iterativos

A solucao de um sistema obtida por um qualquer metodo directo nao e em geral exacta,devido a erros de arredondamento que se propagam nas operacoes efectuadas. No entanto,e possıvel melhorar a solucao atraves de um metodo iterativo. Um metodo iterativo e umum conjunto de procedimentos que permite obter uma solucao aproximada e melhoradado sistema a partir de outra solucao aproximada.

Ao aplicar um metodo directo para resolver um sistema de equacoes lineares o uti-lizador conhece com antecedencia o esforco computacional que vai ser dispendido. Pelocontrario, num metodo iterativo, nao se consegue prever o numero de solucoes aproxi-madas que devem ser calculadas para se obter uma dada precisao, visto que esse numeropode variar de sistema de equacoes para sistema de equacoes. Porque entao usar metodositerativos? De facto, em muitas situacoes reais e necessario resolver sistemas de grandedimensao (isto e, com 1000 ou mais equacoes e variaveis) cuja matriz dos coeficientes eesparsa (isto e, o numero de elementos nao nulos e relativamente pequeno). Torna-seentao impraticavel utilizar um metodo directo para resolver estes sistemas, atendendoao espaco de memoria necessario para guardar todos os coeficientes nulos. Por isso, autilizacao de metodos iterativos nestes casos tem sentido, sendo mesmo em muitos delesa unica possibilidade que existe para obter uma solucao do sistema.

Para resolver iterativamente AX = B, comeca-se por decompor a matriz A (naosingular) na soma de duas matrizes M e N , isto e,

A = M +N.

O sistema original escreve-se entao na forma

(M +N)X = B

ou, equivalentemente,MX = B −NX.

Esta igualdade sugere o processo iterativo

MX(k+1) = B −N X(k), k = 0, 1, . . . ,

em que X(k) = (x(k)1 , x

(k)2 , . . . , x

(k)n ) designa a solucao aproximada da solucao do sistema

AX = B obtida ao fim de k iteracoes. Escolhendo para M uma matriz invertıvel, aigualdade anterior escreve-se na forma

X(k+1) = M−1B −M−1N X(k), k = 0, 1, . . . .

Assim, a partir de uma solucao aproximada inicial X(0), e gerada a sucessao de solucoesiteradas

X(1) = M−1B −M−1N X(0)

X(2) = M−1B −M−1N X(1)

...

X(k+1) = M−1B −M−1N X(k)

...

DMAT 28 ESTSetubal/IPS

que desejavelmente deve convergir para a solucao de AX = B. Ver-se-a adiante condicoesque garantem a convergencia desta sucessao. Antes, porem, ir-se-a descrever os metodosde Jacobi e Gauss-Seidel que correspondem precisamente a duas diferentes escolhas damatriz M .

10.1 Metodo de Jacobi

Decomponha-se a matriz A = [aij] (i, j ∈ {1, . . . , n}) do sistema AX = B em

A = L+D + U, (1)

onde

L =

0 0 · · · · · · 0a21 0 · · · · · · 0...

.... . .

......

a(n−1)1 · · · a(n−1)(n−2) 0an1 · · · · · · an(n−1) 0

D =

a11 0 · · · · · · 00 a22 · · · · · · 0...

.... . .

......

0 0 · · · a(n−1)(n−1) 00 0 · · · 0 ann

e

U =

0 a12 · · · · · · a1n0 0 a23 · · · a2n...

.... . .

......

......

... 0 a(n−1)n

0 0 · · · 0 0

sao, respectivamente, as matrizes diagonal inferior, diagonal e diagonal superior em quepodemos decompor a matriz A.

O metodo de Jacobi baseia-se na seguinte escolha das matrizes M e N da decom-posicao A = M +N :

M = D e N = L+ U

e o processo iterativo assume entao a forma

DX(k+1) = B − (L+ U) X(k), k = 0, 1, . . . .

Admitindo que todos os aii = 0 (o que e sempre possıvel por meio de trocas de linhas ecolunas desde que a matriz A seja nao singular), esta igualdade e equivalente a

X(k+1) = D−1B −D−1 (L+ U) X(k), k = 0, 1, . . .

ou ainda a

x(k+1)i =

1

aii

(bi −

n∑j=1,j =i

aijx(k)j

), i = 1, 2, . . . , n; k = 0, 1, . . . ,

considerando X(k) = (x(k)1 , x

(k)2 , . . . , x

(k)n ).

DMAT 29 ESTSetubal/IPS

Exemplo. Considere-se o sistema AX = B, com

A =

5 1 13 10 21 −1 3

, X =

x1

x2

x3

e B =

012

.

Tome-se X(0) = (0, 0, 0) e calculem-se tres solucoes aproximadas obtidas por iteracao poraplicacao do metodo de Jacobi.

Uma vez que

M = D =

5 0 00 10 00 0 3

, N = L+ U =

0 1 13 0 21 −1 0

e

M−1 = D−1 =

15

0 00 1

100

0 0 13

,

vem

X(k+1) = D−1B −D−1(L+ U)X(k)

=

01/102/3

0 1/5 1/53/10 0 1/51/3 −1/3 0

X(k), k = 0, 1, . . . .

Para X(0) = (0, 0, 0), obtem-se

X(1) =

01/102/3

0 1/5 1/53/10 0 1/51/3 −1/3 0

000

=

011023

X(2) =

01/102/3

0 1/5 1/53/10 0 1/51/3 −1/3 0

011023

=

− 23150

− 130710

e

X(3) =

01/102/3

0 1/5 1/53/10 0 1/51/3 −1/3 0

− 23150

− 130710

=

− 2153

5005375

isto e,

X(3) ≈

−0.13330.0060.7067

.

Note-se que a solucao do sistema com quatro algarismos significativos e

X = (−0.1429, 0, 0.7143) .

DMAT 30 ESTSetubal/IPS

10.2 Metodo de Gauss-Seidel

O metodo de Gauss-Seidel baseia-se na seguinte escolha

M = L+D e N = U

o processo iterativo escreve-se na forma

(L+D)X(k+1) = B − U X(k), k = 0, 1, . . . ,

e admitindo que M = L+D e invertıvel (condicao equivalente a aii = 0, ∀i),

X(k+1) = (L+D)−1 B − (L+D)−1 U X(k), k = 0, 1, . . . .

Exemplo. Aplique-se o metodo de Gauss-Seidel a resolucao do sistema anterior AX =B, com

A =

5 1 13 10 21 −1 3

, X =

x1

x2

x3

e B =

012

.

Uma vez que

M = L+D =

5 0 03 10 01 −1 3

, N = U =

0 1 10 0 20 0 0

e

M−1 = (L+D)−1 =

15

0 0− 3

50110

0− 13

150130

13

,

vem

X(k+1) = (L+D)−1B − (L+D)−1 U X(k)

=

0110710

0 15

15

0 − 350

750

0 − 13150

− 150

X(k), k = 0, 1, . . . .

Tome-se X(0) = (0, 0, 0),

X(1) =

0110710

0 15

15

0 − 350

750

0 − 13150

− 150

000

=

0110710

X(2) =

0110710

0 15

15

0 − 350

750

0 − 13150

− 150

0110710

=

− 4251

125271375

e

X(3) =

0110710

0 15

15

0 − 350

750

0 − 13150

− 150

− 4251

125271375

=

− 2741875

− 1318 750

13 40918 750

,

ou seja,

X(3) ≈

−0.1461−0.00070.7152

.

DMAT 31 ESTSetubal/IPS

Verifica-se que X(3) = (−0.1461,−0.0007, 0.7152) esta mais proxima da solucao do sis-temaX = (−0.1429, 0, 0.7143) do que a solucao aproximadaX(3) = (−0.1333, 0.006, 0.7067)obtida pelo metodo de Jacobi.

O processo de Gauss-Seidel resulta da seguinte decomposicao

(L+D)X(k+1) = B − U X(k), k = 0, 1, . . . ,

ou sejaDX(k+1) = B − LX(k+1) − U X(k), k = 0, 1, . . . .

Supondo que aii = 0, para todo o i ∈ {1, . . . , n}, deduz-se que a formula iterativa dometodo de Gauss-Seidel pode ser escrita na forma

X(k+1) = D−1(B − LX(k+1) − U X(k)), k = 0, 1, . . . .

Uma vez que X(k) = (x(k)1 , x

(k)2 , . . . , x

(k)n ), tem-se que

x(k+1)i =

1

aii

(bi −

i−1∑j=1

aijx(k+1)j −

n∑j=i+1

aijx(k)j

), i = 1, 2, . . . , n; k = 0, 1, . . . ,

a qual evidencia uma importante caracterıstica do metodo de Gauss-Seidel: cada compo-nente x

(k+1)i da solucao aproximada X(k+1) e calculada recorrendo as componentes

x(k+1)1 , x

(k+1)2 , . . . , x

(k+1)i−1 obtidas anteriormente na mesma iteracao. Este facto nao ocorre

no metodo de Jacobi em que o calculo da componentes de X(k+1) e feito unicamente combase nas componentes de X(k). Por esta razao o metodo de Jacobi e por vezes designadopor metodo das substituicoes simultaneas enquanto o metodo de Gauss-Seidel e conhecidopor metodo das substituicoes sucessivas.

O aproveitamento imediato da ultima componente calculada de X(k+1) no calculo dacomponente seguinte, propicia, como ilustra o exemplo anterior, uma convergencia maisrapida do metodo de Gauss-Seidel quando comparado com o metodo de Jacobi.

10.3 Convergencia dos Metodos Iterativos

Definicao. Uma norma de Rn e uma aplicacao que a cada vector x ∈ Rn faz corresponderum numero real ||x|| que verifica os seguintes axiomas:

1. ||x|| > 0 se x = 0 e ||0|| = 0. (Positividade)

2. ||x+ y|| 6 ||x||+ ||y|| , para x, y ∈ Rn. (Desigualdade triangular)

3. ||λx|| = |λ| ||x|| , para x ∈ Rn e λ ∈ R. (Homogeneidade)

Apresentam-se alguns exemplos de normas. A norma euclidiana em Rn e definidapor

||x||2 =√

x21 + x2

2 + · · ·+ x2n.

Para x = (x1, x2) ∈ R2 ou x = (x1, x2, x3) ∈ R3 tem-se

||x||2 =√x21 + x2

2 ou ||x||2 =√x21 + x2

2 + x23.

DMAT 32 ESTSetubal/IPS

Seja A = [aij] uma matriz de ordem n. A norma do maximo das somas por colunae dada por

||A||1 = max16j6n

n∑i=1

|aij|

e a norma do maximo das somas por linha define-se por

||A||∞ = max16i6n

n∑j=1

|aij| .

Calcule-se as normas ||A||1 e ||A||∞ da matriz

A =

−2 −1 2 −21 2 1 −22 −1 2 10 2 0 1

.

Tem-se

||A||1 = max (2 + 1 + 2 + 0, 1 + 2 + 1 + 2, 2 + 1 + 2 + 0, 2 + 2 + 1 + 1)

= max (5, 6, 5, 6) = 6

e

||A||∞ = max (2 + 1 + 2 + 2, 1 + 2 + 1 + 2, 2 + 1 + 2 + 1, 0 + 2 + 0 + 1)

= max(7, 6, 6, 3) = 7.

A norma no estudo de matrizes e sistemas de equacoes lineares serve para medir aproximidade das solucoes aproximadas e os respectivos erros obtidos por um qualquermetodo iterativo.

Recorde-se que a forma geral dos metodos iterativos e dada por

MX(k+1) = B −N X(k), k = 0, 1, . . . ,

ou seja,X(k+1) = M−1B −M−1N X(k), k = 0, 1, . . . ,

supondo a invertibilidade de M. Assim, considerando G = −M−1N e C = M−1B, oprocesso iterativo anterior pode escrever-se na forma

X(k+1) = GX(k) + C, k = 0, 1, . . . .

A matriz G designa-se por matriz de iteracao.Uma matriz A = [aij] tem diagonal estritamente dominante por linhas (SSD -

strictly diagonally dominant) se

n∑j=1,j =i

|aij| < |aii| , ∀i ∈ {1, . . . , n} .

DMAT 33 ESTSetubal/IPS

Teorema. Se a matrix A do sistema AX = B tem diagonal estritamente dominantepor linhas, os metodos iterativos de Jacobi e de Gauss-Seidel sao convergentes para asolucao X, independentemente da aproximacao inicial X(0) escolhida. Alem disso, parak = 0, 1, . . . e ||G|| < 1 e valida a seguinte estimativa da norma do erro da solucaoaproximada X(k+1) : ∣∣∣∣X −X(k+1)

∣∣∣∣ 6 ||G||1− ||G||

∣∣∣∣X(k+1) −X(k)∣∣∣∣ .

Repare-se que neste teorema pode ser utilizada qualquer norma de matrizes. Emgeral, utiliza-se as normas do maximo das somas por linha ou por coluna.

10.3.1 Aplicacao ao Metodo de Jacobi

No metodo de Jacobi, tem-se que

X(k+1) = D−1B −D−1 (L+ U) X(k), k = 0, 1, . . .

pelo que a matriz de iteracao (designada por GJ) e dada por

GJ = D−1(L+ U).

Verifica-se que a matriz

A =

5 1 13 10 21 −1 3

tem diagonal estritamente dominante por linhas. De facto,

Para i = 1,3∑

j=1,j =1

|a1j| = |1|+ |1| = 2 < 5 = |a11| ,

para i = 2,3∑

j=1,j =2

|a2j| = |3|+ |2| = 5 < 10 = |a22| e

para i = 3,3∑

j=1,j =3

|a3j| = |1|+ |−1| = 2 < 3 = |a33| .

Assim, pelo Teorema anterior, o metodo de Jacobi converge para a solucao do sistema.Alem disso,

GJ =

0 1/5 1/53/10 0 1/51/3 −1/3 0

,

pelo que

||GJ ||∞ = max

(2

5,1

2,2

3

)=

2

3< 1.

DMAT 34 ESTSetubal/IPS

Assim, tem-se a seguinte estimativa da norma do erro da solucao aproximada X(3):∣∣∣∣X −X(3)∣∣∣∣

∞ 6 ||GJ ||∞1− ||GJ ||∞

∣∣∣∣X(3) −X(2)∣∣∣∣

=2/3

1− 2/3

∥∥∥∥∥∥ 1

5059

15001

150

∥∥∥∥∥∥∞

= 2× 59

1500≈ 0.0787.

10.3.2 Aplicacao ao Metodo de Gauss-Seidel

No metodo de Gauss-Seidel tem-se que

X(k+1) = (L+D)−1 B − (L+D)−1 U X(k), k = 0, 1, . . . .

pelo que a matriz de iteracao (designada por GGS) e dada por

GGS = − (L+D)−1 U.

Ja se viu que

A =

5 1 13 10 21 −1 3

tem diagonal estritamente dominante por linhas.Alem disso,

GGS =

0 −15

−15

0 350

− 750

0 13150

150

,

pelo que

||GGS||∞ = max

(2

5,1

5,8

75

)=

2

5< 1.

Assim, tem-se a seguinte estimativa da norma do erro da solucao aproximada X(3)

pelo metodo de Gauss-Seidel:

∣∣∣∣X −X(3)∣∣∣∣

∞ 6 ||GGS||∞1− ||GGS||∞

∣∣∣∣X(3) −X(2)∣∣∣∣

=2/5

1− 2/5

∥∥∥∥∥∥ 26

1875

− 16318750

− 14118750

∥∥∥∥∥∥∞

=2

3max

(26

1875,

163

18750,

141

18750

)=

2

3× 26

1875≈ 0.0092.

DMAT 35 ESTSetubal/IPS

Verifica-se assim que a estimativa da norma do erro obtida pelo metodo de Gauss-Seidele muito inferior a estimativa homologa calculada no metodo de Jacobi. Isto ilustra amaior velocidade de convergencia que, em geral, o metodo de Gauss-Seidel revela quandocomparado com o metodo de Jacobi.

Exemplo. Considere o sistema de equacoes lineares AX = B com

A =

1 1/2 1/31/2 a 1/41/3 1/4 a

X =

x1

x2

x3

e B =

101

,

em que a e um parametro real.

1. Enuncie, justificando, uma condicao sobre os elementos de A que garanta que ometodo de Gauss-Seidel converge;

2. Para a = 1 determine duas solucoes aproximadas tomando X(0) = M−1B paraaproximacao inicial. Indique uma estimativa da norma do erro da ultima solucaoobtida.

1. Para assegurar a convergencia dos metodos iterativos indicados e necessario que amatriz A tenha diagonal estritamente dominante por linhas, isto e,

3∑j=1,j =i

|aij| < |aii| , i ∈ {1, 2, 3}.

Ora, para primeira linha,

3∑j=1,j =1

|a1j| =∣∣∣∣12∣∣∣∣+ ∣∣∣∣13

∣∣∣∣ = 5

6< |a11| .

Resta garantir que

|a22| = |a| > 1

2+

1

4=

3

4e |a33| = |a| > 1

3+

1

4=

7

12.

Assim, basta que

|a| > 3

4

para que A tenha diagonal estritamente dominante por linha e, consequentemente, que ometodo de Gauss seja convergente.

2. Pelo metodo de Gauss-Seidel,

A =

1 1/2 1/31/2 1 1/41/3 1/4 1

= M +N

tal que

DMAT 36 ESTSetubal/IPS

M = L+D =

1 0 01/2 1 01/3 1/4 1

, N = U =

0 1/2 1/30 0 1/40 0 0

e

M−1 =

1 0 0−1/2 1 0−5/24 −1/4 1

.

Assim,

GGS = −M−1U =

0 −1/2 −1/30 1/4 −1/120 5/48 19/144

,

donde

||GGS||∞ = max

(1

2+

1

3,1

4+

1

12,5

48+

19

144

)=

5

6< 1.

As respectivas solucoes aproximadas sao dadas por

X(k+1) = M−1B −M−1U X(k)

=

1 0 0−1/2 1 0−5/24 −1/4 1

101

1 0 0−1/2 1 0−5/24 −1/4 1

0 1/2 1/30 0 1/40 0 0

X(k)

=

1−1/219/24

0 1/2 1/30 −1/4 1/120 −5/48 −19/144

X(k).

Tome-se X(0) = M−1B =

1−1/219/24

. Entao,X(1) =

1−1/219/24

0 1/2 1/30 −1/4 1/120 −5/48 −19/144

1−1/219/24

=

71/72−199/2882917/3456

e

X(2) =

1−1/219/24

0 1/2 1/30 −1/4 1/120 −5/48 −19/144

71/72−199/2882917/3456

=

11 03310 368

−30 81741 472

413 587497 664

,

DMAT 37 ESTSetubal/IPS

ou seja, X(2) ≈ (1.0641,−0.7431, 0.8311) .Logo, tem-se a seguinte estimativa da norma do erro da solucao aproximada X(2):

∣∣∣∣X −X(2)∣∣∣∣

∞ 6 ||GGS||∞1− ||GGS||∞

∣∣∣∣X(2) −X(1)∣∣∣∣

=5/6

1− 5/6

∥∥∥∥∥∥ 809

10368

− 216141472

− 6461497664

∥∥∥∥∥∥∞

= 5×max

(809

10368,2161

41472,

6461

497664

)= 5× 809

10368≈ 0.39.

DMAT 38 ESTSetubal/IPS