Buscar

Iterações Numéricas

Prévia do material em texto

128 Cálculo Numérico
Solução. A matriz de iteração é dada por:
TJ := −D−1(L+ U) = −

1
3 0 0
0 −1
4 0
0 0 −1
5

︸ ︷︷ ︸
D−1

0 1 −1
−1 0 1
1 2 0

︸ ︷︷ ︸
(L+U)
=

0 −1
3
1
3
−1
4 0 1
4
1
5
2
5 0
 . (4.227)
O vetor da iteração de Jacobi é:
cJ := D−1b =

1
3 0 0
0 −1
4 0
0 0 −1
5

︸ ︷︷ ︸
D−1

2
−10
10

︸ ︷︷ ︸
b
=

2
3
5
2
−2
 . (4.228)
Em python, podemos computar TJ e cJ da seguinte forma:
>>> TJ = -np.linalg.inv(D).dot(L+U);
>>> cJ = np.linalg.inv(D).dot(b);
♦
Iteração de Gauss-Seidel
A forma matricial da iteração do método de Gauss-Seidel também pode ser
construída com base na decomposição A = L+D + U . Para tando, fazemos:
Ax = b ⇔ (L+D + U)x = b (4.229)
⇔ (L+D)x = −Ux+ b (4.230)
⇔ x = −(L+D)−1U︸ ︷︷ ︸
=:TG
x+ (L+D)−1b︸ ︷︷ ︸
=:cG
(4.231)
Ou seja, a iteração do método de Gauss-Seidel escrita na forma matricial é:
x(k+1) = TGx
(k) + cG, k ≥ 1, (4.232)
com x(1) uma aproximação inicial dada, sendo TG := −(L + D)−1U a matriz de
iteração e cJ = (L+D)−1b o vetor da iteração.
Exemplo 4.7.6. Construa a matriz de iteração TG e o vetor de iteração cG do
método de Gauss-Seidel para o sistema dado no Exemplo 4.7.4.
Licença CC-BY-SA-3.0. Contato: reamat@ufrgs.br
https://creativecommons.org/licenses/by-sa/3.0/
reamat@ufrgs.br
4.7. MÉTODOS ITERATIVOS PARA SISTEMAS LINEARES 129
Solução. A matriz de iteração é dada por:
TG = −(L+D)−1U = −

3 0 0
−1 −4 0
1 −2 −5

−1
︸ ︷︷ ︸
(L+D)−1

0 1 −1
0 0 1
0 0 0

︸ ︷︷ ︸
U
=

0 −1
3
1
3
0 1
12
1
6
0 − 1
10 0
 . (4.233)
O vetor da iteração de Gauss-Seidel é:
cG := (L+D)−1b =

3 0 0
−1 −4 0
1 −2 −5

−1
︸ ︷︷ ︸
(L+D)−1

2
−10
10

︸ ︷︷ ︸
b
=

2
3
7
3
−28
10
 . (4.234)
Em Python, podemos computar TG e cG da seguinte forma:
-->TG = -np.linalg.inv(L+D).dot(U);
-->cG = np.linalg.inv(L+D).dot(b);
♦
Condições de convergência
Aqui, vamos discutir condições necessárias e suficientes para a convergência de
métodos iterativos. Isto é, dado um sistema Ax = b e uma iteração:
x(k+1) = Tx(k) + c, k ≥ 1, (4.235)
x(1) dado, estabelecemos condições nas quais x(k) → x∗, onde x∗ é a solução do
sistema dado, isto é, x∗ = Tx∗ + c ou, equivalentemente, Ax∗ = b.
Lema 4.7.1. Seja T uma matriz real n×n. O limite lim
k→∞
∥∥∥T k∥∥∥
p
= 0, 1 ≤ p ≤ ∞,
se, e somente se, ρ(T ) < 1.
Demonstração. Aqui, fazemos apenas um esboço da demonstração. Para mais
detalhes, veja [8], Teorema 4, pág. 14.
Primeiramente, suponhamos que ‖T‖p < 1, 1 ≤ p ≤ ∞. Como (veja [8], lema
2, pág. 12):
ρ(T ) ≤ ‖T‖p , (4.236)
temos ρ(T ) < 1, o que mostra a implicação.
Licença CC-BY-SA-3.0. Contato: reamat@ufrgs.br
https://creativecommons.org/licenses/by-sa/3.0/
reamat@ufrgs.br

Continue navegando