Académique Documents
Professionnel Documents
Culture Documents
1 Introdução
2 Métodos Directos
Método de Gauss
Método de decomposição LU
5 Métodos iterativos
Método iterativo geral
Método de Jacobi
Método de Gauss-Seidel
Método de Gauss
A(1) B (1)
a11 a12 ... a1n b1
0 a22 − a21 a12
... a2n − a21 a1n
b2 − aa2111b1
a11 a11
.. .. .. .. ..
. . . . .
0 an2 − an1 a12
a11
... ann − an1 a1n
a11
bn − an1a11
b1
| {z }
A(2) B (2)
−→
(2) (2) (2) (2)
a11 a12 ... a1n b1 (2)
(2) (2) (2) a
32 l
0 a22 ... a2n b2 l3 → l3 −
(2) 2
a
22
. . .. . .
. . . . .
. . . . . .
(2) (2) (2) .
0 an2 ... ann bn (2)
| {z } a
n1 l
ln → ln − (2) 2
A(2) B (2) a22
(2)
a11 a12 ... a1n b1
(2) (2) (2)
0 a22 ... a2n b2
. . . . .
. . . . .
. . . . .
(2) (2) (2) (2)
an2 a2n (2) an2 b2
0 0 ... ann − (2)
bn − (2)
a a
22 22
| {z }
Métodos Computacionais em Engenharia A(3) B (3) 5 / 46
Métodos Directos Método de Gauss
(k)
◮ Se num dado passo k do método o pivot akk for nulo é possı́vel encontrar
(k)
j > k tal que ajk 6= 0 e, por troca de linhas, considerar este elemento
como pivot.
Exemplo:
1 2 1 0 −→
1 2 1 0 1 2 1 0
1 2 0 2 0 0 −1 2 −→ 0 2 1 0
l2 → l2 − l1
1 4 2 0 l3 → l3 − l1 0 2 1 0 l2 ↔ l3 0 0 −1 2
(k)
◮ Mesmo quando o pivot akk for não nulo poderá ser vantajosa a troca
descrita anteriormente.
Exemplo: O sistema
−1.414214x1 + 2x2 = 1
x1 − 1.414214x2 + x3 = 1
2x2 − 1.414214x3 = 1
tem uma única solução dada por x1 = x2 = x3 = 1.70710805 . . . .
Métodos Computacionais em Engenharia 7 / 46
Métodos Directos Método de Gauss
2 U X = Y → determina-se X.
Métodos Computacionais em Engenharia 11 / 46
Métodos Directos Método de decomposição LU
Factorização LU
Factorização LU
Factorização LU
◮ Mais geralmente
A(i) = −M (i−1) −M (i−2) . . . −M (1) A (1)
|{z} .
A
Factorização LU
Exemplo 2
Considere o sistema de equações
1 0 2 x1 0
2 2 1 x2 = 2 .
0 1 1 x3 1
| {z } | {z } | {z }
A X B
Assim,
1 0 0 1 0 2
L= 2 1 0 e U = 0 2 −3 .
1 5
0 2 1 0 0 2
Norma de um vector
1. ∀X ∈ Rn , kXk ≥ 0 e kXk = 0 ⇔ X = 0;
2. ∀α ∈ R, ∀X ∈ Rn , kαXk = |α|kXk;
3. ∀X, Y ∈ Rn , kX + Y k ≤ kXk + kY k.
Convergência em Rn
Considere-se
(k)
uma sucessão de vectores de Rn : x(k) = x1 , . . . , x(k)
n ∈ Rn , k ∈ N,
z = (z1 , . . . , zn ) ∈ Rn .
Definição:
Uma sucessão x(k) converge para z se
lim kx(k) − zk = 0.
k→∞
Note-se que
(k)
x(k) −→k→∞ z ⇔ xi −→k→∞ zi , i = 1, 2, . . . , n.
Normas matriciais
◮Normasn matriciais
+
induzidas por normas vectoriais
Seja k.k : R −→ R0 uma norma vectorial. Defina-se a seguinte aplicação
kAXk
kAkI = sup .
X∈Rn \0 kXk
(máximo das somas por colunas dos valores absolutos dos elementos.)
2. A norma matricial induzida pela norma vectorial k.k∞ pode ser dada por
n
X
kAk∞ = max |aij |.
1≤i≤n
j=1
(máximo das somas por linhas dos valores absolutos dos elementos.)
3. A norma matricial induzida pela norma euclidiana k.k2 pode ser dada por
q
kAk2 = ρ(AT A),
1 1 0
Exemplo: Considere-se a matriz A = 0 1 1 . Tem-se:
0 −1 1
⊲kAk1 = max{1, 3, 2} = 3;
⊲kAk∞ = max{2, 2, 2} = 2;
q
√ √ √ √
⊲σ(AT A) = {2 − 2, 2, 2 + 2} ⇒ ρ(AT A) = 2 + 2 ⇒ kAk2 = 2 + 2.
Teorema:
Para qualquer norma matricial, k.k, induzida por uma norma vectorial e
para qualquer A ∈ Rn × Rn tem-se
ρ(A) ≤ kAk.
kAk ≤ ρ(A) + ε.
Teorema (Gershgorin):
Seja G(A) a reunião dos cı́rculos de Gershgorin de A.
Então,
n
[
σ(A) ⊆ G(A) = Gi .
i=1
Exemplo
1 1 0
Considere-se novamente a matriz A = 0 1 1 . Vamos aplicar o
0 −1 1
Teorema de Gershgorin para obter uma estimativa dos valores próprios de A.
G1 = G2 = G3 = {z ∈ C : |z − 1| ≤ 1},
S S
pelo G1 G2 G3 = G = G1 .
X (0) → aproximação inicial;
(3)
X (k) = GX (k−1) + H, k = 1, 2, . . . ,
Um método iterativo
X (k) = GX (k−1) + H, k = 1, 2, . . . ,
diz-se convergente se, para qualquer vector inicial X (0) a sucessão X (k)
convergir para um limite X ∗ , independente de X (0) .
⊲ Nestas condições o limite da sucessão X (k) , X ∗ , é a solução do sistema
de equações X = GX + H.
⊲ Se G e H são tais que os sistemas AX = B e X = GX + H são
equivalentes, então o limite da sucessão X (k) é também solução do
sistema AX = B.
Teorema:
O método iterativo
X (k) = GX (k−1) + H, k = 1, 2, . . . ,
◮ Atendendo a que ρ(G) < kGk, qualquer que seja a norma matricial
induzida por uma norma vectorial, temos o seguinte resultado suficiente
de convergência.
Corolário:
Se kGk < 1 para alguma norma induzida por uma norma vectorial, então o
método iterativo
X (k) = GX (k−1) + H, k = 1, 2, . . .
converge para um vector X e tem-se
kGkk
kX (k) − Xk ≤ kX (1) − X (0) k, (fórmula do erro a priori);
1 − kGk
kGk
kX (k) − Xk ≤ kX (k) − X (k−1) k, (fórmula do erro a posteriori).
1 − kGk
Observações:
Se o método converge em relação a uma norma vectorial então converge
em relação a qualquer norma vectorial.
Como
kX (k) − Xk ∼ (ρ(G))k kX (0) − Xk,
então deve-se escolher uma matriz de iteração G com o menor raio
espectral possı́vel.
Método de Jacobi
X = −D−1 (L + U )X + D−1 B.
AX = B ⇔ (L + D + U ) X = B ⇔ DX = − (L + U ) X + B
⇔D invertı́vel X = −D−1 (L + U ) X + D−1 B.
GJ = −D−1 (L + U ) e HJ = D−1 B
(0)
X → aproximação inicial;
X = −D−1 (L + U ) X (k−1) + D
(k) −1
| {z B}, k = 1, 2, . . . . (4)
| {z }
GJ HJ
Método de Jacobi
Os termos
da sucessão gerada
pelo método de Jacobi,
(k) (k) (k) (k)
X = x1 , x2 , . . . , xn podem ainda ser definidos da seguinte forma
n
X
b1 − aij xj
(k−1)
(k) j=1
x1 =
a11
..
.
n
X
(k−1)
bi − aij xj
, k = 1, 2, . . . .
(k) j=1
xi = aii
..
.
n
X
bn − aij xj
(k−1)
(k) j=1
xn = ann
Exemplo
Exemplo - Cont.
Ora, kGJ k∞ = max{2/3, 2/4, 2/4} = 2/3 < 1, pelo que atendendo ao
Corolário da pag.33 conclui-se que a sucessão definida por (6) converge
para a solução do sistema de equações AX = B, qualquer que seja a
iterada inicial X (0) que consideremos.
Considerando X (0) = [0 0 0]T , temos
0.6667 1 0.9653 1
(1) (2)
X = HJ , X = 1.125 , X (3) = 0.9479 , X (4) = 1.013 , X (5) = 0.9946
1.125 1.0521 1.013 1.0054
e
kGJ k∞
kX − X (5) k∞ ≤ kX (5) − X (4) k∞ = 2 × 0.0347 = 0.0694 < 0.07.
1 − kGJ k∞
Exemplo - Cont.
Método de Gauss-Seidel
AX = B ⇔ (L + D + U ) X = B ⇔ (L + D)X = −U X + B
−1 −1
⇔L+D invertı́vel X = − (L + D) U X + (L + D) B.
Método de Gauss-Seidel
Os termos
da sucessão gerada pelo método de Gauss-Seidel,
(k) (k)
X (k) = x1 , x2 , . . . , x(k)
n podem ainda ser definidos da seguinte forma
i−1
X n
X
(k) (k−1)
bi − aij xj − aij xj
(k) j=1 j=i+1
xi = , k = 1, 2, . . . , i = 1, 2, . . . , n.
aii
Exemplo
Exemplo - Cont.
Ora, kGGS k∞ = max{2/3, 3/12, 3/16} = 2/3 < 1, pelo que a sucessão
definida por (8) converge para a solução do sistema de equações
AX = B, qualquer que seja a iterada inicial que consideremos.
Por outro lado, o espectro da matriz GGS é
( √ √ )
5 23 5 23 1
σ(GGS ) = − i, + i, 0 ⇒ ρ(GGS ) = √ = 0.144338 .
48 48 48 48 4 3
Exemplo - Cont.
e
kGGS k∞
kX − X (5) k∞ ≤ kX (5) − X (4) k∞ = 2 × 0.0002 = 0.4 × 10−3 .
1 − kGGS k∞