Upload
trinhdieu
View
213
Download
0
Embed Size (px)
Citation preview
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