Buscar

Eliminação Gaussiana

Prévia do material em texto

96 Cálculo Numérico
#zera E[2,1]
E[2,:] = E[2,:] - (E[2,1]/E[1,1])*E[1,:]
print(E)
#sub. regressiva
x = np.zeros(3)
x[2] = E[2,3]/E[2,2];
x[1] = (E[1,3] - E[1,2]*x[2])/E[1,1];
x[0] = (E[0,3] - E[0,2]*x[2] - E[0,1]*x[1])/E[0,0]
print(x)
♦
A técnica de eliminação gaussiana com pivotamento parcial ajuda a evitar a
propagação dos erros de arredondamento. Vejamos o próximo exemplo.
Exemplo 4.1.4 (Problema com elementos com grande diferença de escala). Re-
solva o seguinte sistema usando eliminação gaussiana sem e com pivotamento par-
cial. Discuta, em cada caso, o resultado frente a aritmética de ponto flutuante
quando 0 < |ε| � 1. ε 2
1 ε

x
y
 =
4
3
 (4.19)
Solução. Vamos, primeiramente, executar a eliminação gaussiana sem pivota-
mento parcial para ε 6= 0 e |ε| � 1: ε 2 4
1 ε 3
 ∼
 ε 2 4
0 ε− 2
ε
3− 4
ε
 (4.20)
Temos
y = 3− 4/ε
ε− 2/ε (4.21)
e
x = 4− 2y
ε
(4.22)
Observe que a expressão obtida para y se aproximada de 2 quando ε é pequeno:
y = 3− 4/ε
ε− 2/ε = 3ε− 4
ε2 − 2 −→
−4
−2 = 2, quando ε→ 0. (4.23)
Licença CC-BY-SA-3.0. Contato: reamat@ufrgs.br
https://creativecommons.org/licenses/by-sa/3.0/
reamat@ufrgs.br
4.1. ELIMINAÇÃO GAUSSIANA 97
Já expressão obtida para x depende justamente da diferença 2− y:
x = 4− 2y
ε
= 2
ε
(2− y) (4.24)
Assim, quando ε é pequeno, a primeira expressão, implementada em um sis-
tema de ponto flutuante de acurácia finita, produz y = 2 e, consequentemente, a
expressão para x produz x = 0. Isto é, estamos diante um problema de cancela-
mento catastrófico.
Agora, quando usamos a eliminação gaussiana com pivotamento parcial, faze-
mos uma permutação de linhas de forma a escolher o maior pivô a cada passo: ε 2 4
1 ε 3
 ∼
 1 ε 3
ε 2 4
 ∼
 1 ε 3
0 2− ε2 4− 3ε
 (4.25)
Continuando o procedimento, temos:
y = 4− 4ε
2− ε2 (4.26)
e
x = 3− εy (4.27)
Observe que tais expressões são analiticamente idênticas às anteriores, no en-
tanto, são mais estáveis numericamente. Quando ε converge a zero, y converge
a 2, como no caso anterior. No entanto, mesmo que y = 2, a segunda expressão
produz x = 3− εy, isto é, a aproximação x ≈ 3 não depende mais de obter 2− y
com precisão. ♦
Exercícios resolvidos
ER 4.1.1. Resolva o seguinte sistema por eliminação gaussiana com pivotamento
parcial.
2y + 2z = 8
x+ 2y + z = 9
x+ y + z = 6
(4.28)
Solução. A forma matricial do sistema dado é
0 2 2
1 2 1
1 1 1


x
y
z
 =

8
9
6
 (4.29)
Licença CC-BY-SA-3.0. Contato: reamat@ufrgs.br
https://creativecommons.org/licenses/by-sa/3.0/
reamat@ufrgs.br

Continue navegando