Métodos para Resolver Sistemas Lineares
Métodos para Resolver Sistemas Lineares
▶ Introdução
▶ Conceitos fundamentais
▶ Métodos diretos
▶ Sistemas triangulares
▶ Eliminação de Gauss
▶ Estratégias de Pivotamento
▶ Decomposição LU
▶ Decomposição Cholesky e LDLT
▶ Usos da decomposição
▶ Métodos iterativos
▶ Introdução
▶ Métodos Iterativos Estacionários
▶ Método de Jacobi
▶ Método de Gauss-Seidel
▶ Análise de Convergência
▶ Método SOR
2 / 168
Introdução
onde
aij ∈ R, bi ∈ R, xj ∈ R, i = 1, . . . , m, j = 1, . . . , n
3 / 168
Introdução
4 / 168
Introdução
5 / 168
Introdução
Modelagem do problema:
▶ Lei de Kirchhoff: a soma das correntes que passam em cada nó do
circuito é nula.
▶ Lei de Ohm: a corrente do nó j para o nó k é dada pela equação
Vj −Vk
Ijk = Rjk
5 / 168
Introdução
Nó 1: IA1 + I21 + I31 + I41 = 0
6 / 168
Introdução
Nó 1: IA1 + I21 + I31 + I41 =0
0−V1
1 + V2 −V1
1 + V3 −V
2
1
+ V4 −V
2
1
=0
6 / 168
Introdução
Nó 1: IA1 + I21 + I31 + I41 =0
0−V1
1 + 1 + V3 −V
V2 −V1
2
1
+ V4 −V
2
1
=0
− 2V1 + V2 − V1 + V23 − V21 + V24 − V21 =0
6 / 168
Introdução
Nó 1: IA1 + I21 + I31 + I41 =0
0−V1
1 + 1 + V3 −V
V2 −V1
2
1
+ V4 −V
2
1
=0
− 2V1 + V2 − V1 + V23 − V21 + V24 − V21 =0
− 4V1 + 2V2 + V3 − 2V1 + 2V4 = 0
−6V1 + 2V2 + V3 + V4 = 0
6 / 168
Introdução
Nó 1: IA1 + I21 + I31 + I41 =0
0−V1
1 + 1 + V3 −V
V2 −V1
2
1
+ V4 −V
2
1
=0
− 2V1 + V2 − V1 + V23 − V21 + V24 − V21 =0
− 4V1 + 2V2 + V3 − 2V1 + 2V4 = 0
−6V1 + 2V2 + V3 + V4 = 0
Nó 2:
3V1 − 4V2 + V3 = 0
Nó 3:
3V1 + 2V2 − 13V2 + 6V4 = −254
Nó 4:
V1 + 2V3 − 3V4 = 0
6 / 168
Introdução
Nó 1: IA1 + I21 + I31 + I41 =0
0−V1
1 + 1 + V3 −V
V2 −V1
2
1
+ V4 −V
2
1
=0
− 2V1 + V2 − V1 + V23 − V21 + V24 − V21 =0
− 4V1 + 2V2 + V3 − 2V1 + 2V4 = 0
−6V1 + 2V2 + V3 + V4 = 0
Nó 2:
3V1 − 4V2 + V3 = 0
Nó 3:
−6 2 1 1 V1
3 −4 1 0 V2 3V1 + 2V2 − 13V2 + 6V4 = −254
3 2 −13 6 V3
1 0 2 −3 V4 Nó 4:
V1 + 2V3 − 3V4 = 0
6 / 168
Introdução
−6 2 1 1 V1 0
3 −4 1 0 V2 0
=
3 2 −13 6 V3 −254
1 0 2 −3 V4 0
41.6
7 / 168
Introdução
Junção 2:
X
Fx = −αf1 + f4 + αf5 = 0
X
Fy = −αf1 − f3 − αf5 = 0
Procedendo de forma análoga para todas as junções obtem-se um sistema
linear de 17 equações e 17 variáveis (f1 , . . . , f17 ).
8 / 168
Conceitos fundamentais
9 / 168
Conceitos fundamentais
9 / 168
Conceitos fundamentais
eij = 1, ∀i = j
eij = 0, ∀i ̸= j
10 / 168
Conceitos fundamentais
11 / 168
Conceitos fundamentais
11 / 168
Conceitos fundamentais
▶ Matriz simétrica:
mij = mji , ∀ i, j
11 / 168
Conceitos fundamentais
Transposição
A transposta de uma matriz A, denotada por AT , é uma matriz obtida
trocando-se as suas linhas pelas colunas.
Exemplo:
1 2 3
4 5 6 1 5 7 10
A=
7 8 9 ,
AT = 2 5 8 11
3 6 9 12
10 11 12
12 / 168
Conceitos fundamentais
Transposição
A transposta de uma matriz A, denotada por AT , é uma matriz obtida
trocando-se as suas linhas pelas colunas.
Exemplo:
1 2 3
4 5 6 1 5 7 10
A=
7 8 9 ,
AT = 2 5 8 11
3 6 9 12
10 11 12
Adição e Subtração
Sejam A e B matrizes m × n. Então a matriz C é m × n e seus elementos são
dados por
cij = aij + bij , ∀ i, j
12 / 168
Conceitos fundamentais
13 / 168
Conceitos fundamentais
13 / 168
Conceitos fundamentais
Exemplo
1 2
5
1
3 4 = 11
2
5 6 17
13 / 168
Conceitos fundamentais
Multiplicação matriz-matriz
Seja A uma matriz m × p e B uma matriz p × n. O resultado da multiplicação
AB é uma matriz C de tamanho m × n.
p
X
cij = aik bkj , i = 1, . . . , m, j = 1, . . . , n
k=1
Exemplo:
−3 2
3 1 0
A= , B= 4 9
−1 6 4
8 −1
−5 15
C = AB =
59 48
14 / 168
Conceitos fundamentais
15 / 168
Conceitos fundamentais
mij = xi yj , i = 1, . . . , m, j = 1, . . . , n
15 / 168
Conceitos fundamentais
mij = xi yj , i = 1, . . . , m, j = 1, . . . , n
Exemplo:
5 1 5 15 20
x = −1 , y = 3 , xT y = 10, xyT = M = −1 −3 −4
2 4 2 6 8
15 / 168
Conceitos fundamentais
Determinante
Seja A uma matriz quadrada de ordem n. Então A possui um número
associado chamado de determinante, o qual pode ser calculado pela seguinte
fórmula:
16 / 168
Conceitos fundamentais
Determinante
Seja A uma matriz quadrada de ordem n. Então A possui um número
associado chamado de determinante, o qual pode ser calculado pela seguinte
fórmula:
16 / 168
Conceitos fundamentais
17 / 168
Conceitos fundamentais
17 / 168
Conceitos fundamentais
Definição (Posto)
O posto (ou rank) de uma matriz A de tamanho m × n é definido como o
número máximo de vetores linhas (ou de vetores colunas) linearmente
independentes de A. Escrevemos posto(A) = r e temos que r ≤ min (m, n).
18 / 168
Conceitos fundamentais
Definição (Posto)
O posto (ou rank) de uma matriz A de tamanho m × n é definido como o
número máximo de vetores linhas (ou de vetores colunas) linearmente
independentes de A. Escrevemos posto(A) = r e temos que r ≤ min (m, n).
Definição (Inversa)
A inversa de uma matriz A quadrada n × n é representada por A−1 e definida
de tal forma que
AA−1 = A−1 A = I
onde I é a matriz identidade de ordem n.
3
− 21
2 1 −1 2
A= , A =
4 3 −2 1
18 / 168
Sistemas Lineares
Iremos tratar do caso onde A não é uma matriz quadrada e m > n mais
adiante, quando estudarmos mínimos quadrados.
20 / 168
Classificação de Sistemas
21 / 168
Classificação de Sistemas
44 3 2 1 0 1 2 3 4
21 / 168
Classificação de Sistemas
22 / 168
Classificação de Sistemas
22 / 168
Classificação de Sistemas
5
x+y=1
4 2x + 2y = 2
34 3 2 1 0 1 2 3 4
22 / 168
Classificação de Sistemas
x1 + x2 = 1
⇒ ̸ ∃x tal que Ax = b
x1 + x2 = 4
23 / 168
Classificação de Sistemas
x1 + x2 = 1
⇒ ̸ ∃x tal que Ax = b
x1 + x2 = 4
8
x+y=1
x+y=4
6
44 3 2 1 0 1 2 3 4
23 / 168
Existência e unicidade da solução
a) A−1 existe
b) Não existe y não-zero tal que Ay = 0. Ou seja, a única solução do
sistema homogêneo é y = 0.
c) posto(A) = n
d) det(A) ̸= 0
e) Dado qualquer vetor b, existe exatamente um vetor x tal que Ax = b (ou
x = A−1 b).
Prova
Livro texto de Álgebra Linear.
24 / 168
Existência e unicidade da solução
Caso (b)
1 1
det =2−2=0
2 2
Caso (c)
1 1
det =1−1=0
1 1
25 / 168
Métodos para solução de sistemas lineares
26 / 168
Métodos para solução de sistemas lineares
26 / 168
Sistema triangular inferior
27 / 168
Sistema triangular inferior
l11 x1 = b1
27 / 168
Sistema triangular inferior
27 / 168
Sistema triangular inferior
l21 x1 + l22 x2 = b2
27 / 168
Sistema triangular inferior
27 / 168
Sistema triangular inferior
27 / 168
Sistema triangular inferior
27 / 168
Sistema triangular inferior
27 / 168
Sistema triangular inferior
28 / 168
Sistema triangular inferior
Exemplo
2 0 0 0 x1 4
3 5 0 0 x2 1
=
1 −6 8 0 x3 48
−1 4 −3 9 x4 0
28 / 168
Sistema triangular inferior
Exemplo
2 0 0 0 x1 4
3 5 0 0 x2 1
=
1 −6 8 0 x3 48
−1 4 −3 9 x4 0
Solução
2x1 = 4 ⇒ x1 = 2
28 / 168
Sistema triangular inferior
Exemplo
2 0 0 0 x1 4
3 5 0 0 x2 1
=
1 −6 8 0 x3 48
−1 4 −3 9 x4 0
Solução
2x1 = 4 ⇒ x1 = 2
1−6
3x1 + 5x2 = 1 ⇒ x2 = 5 = −1
28 / 168
Sistema triangular inferior
Exemplo
2 0 0 0 x1 4
3 5 0 0 x2 1
=
1 −6 8 0 x3 48
−1 4 −3 9 x4 0
Solução
2x1 = 4 ⇒ x1 = 2
1−6
3x1 + 5x2 = 1 ⇒ x2 = 5 = −1
48−2−6
x1 − 6x2 + 8x3 = 48 ⇒ x3 = 8 =5
28 / 168
Sistema triangular inferior
Exemplo
2 0 0 0 x1 4
3 5 0 0 x2 1
=
1 −6 8 0 x3 48
−1 4 −3 9 x4 0
Solução
2x1 = 4 ⇒ x1 = 2
1−6
3x1 + 5x2 = 1 ⇒ x2 = 5 = −1
48−2−6
x1 − 6x2 + 8x3 = 48 ⇒ x3 = 8 =5
2+4+15 21 28 / 168
Sistema triangular inferior
entrada: L ∈ Rn×n , b ∈ Rn
saída: x ∈ Rn
29 / 168
Sistema triangular superior
e assim temos
30 / 168
Sistema triangular superior
e assim temos
unn xn = bn
30 / 168
Sistema triangular superior
e assim temos
bn
unn xn = bn ⇒ xn =
unn
30 / 168
Sistema triangular superior
e assim temos
bn
unn xn = bn ⇒ xn =
unn
30 / 168
Sistema triangular superior
e assim temos
bn
unn xn = bn ⇒ xn =
unn
bn−1 − un−1n xn
un−1n−1 xn−1 + un−1n xn = bn−1 ⇒ xn−1 =
un−1n−1
30 / 168
Sistema triangular superior
e assim temos
bn
unn xn = bn ⇒ xn =
unn
bn−1 − un−1n xn
un−1n−1 xn−1 + un−1n xn = bn−1 ⇒ xn−1 =
un−1n−1
..
.
30 / 168
Sistema triangular superior
e assim temos
bn
unn xn = bn ⇒ xn =
unn
bn−1 − un−1n xn
un−1n−1 xn−1 + un−1n xn = bn−1 ⇒ xn−1 =
un−1n−1
..
.
30 / 168
Sistema triangular superior
e assim temos
bn
unn xn = bn ⇒ xn =
unn
bn−1 − un−1n xn
un−1n−1 xn−1 + un−1n xn = bn−1 ⇒ xn−1 =
un−1n−1
..
.
b1 − u12 x2 − u13 x3 − . . . − u1n xn
u11 x1 + u12 x2 + . . . + u1n xn = b1 ⇒ x1 =
u11
30 / 168
Sistema triangular superior
31 / 168
Sistema triangular superior
Exemplo
2 4 −2 x1 2
0 1 1 x2 = 4
0 0 4 x3 8
31 / 168
Sistema triangular superior
Exemplo
2 4 −2 x1 2
0 1 1 x2 = 4
0 0 4 x3 8
Solução
4x3 = 8 ⇒ x3 = 2
31 / 168
Sistema triangular superior
Exemplo
2 4 −2 x1 2
0 1 1 x2 = 4
0 0 4 x3 8
Solução
4x3 = 8 ⇒ x3 = 2
x2 + x3 = 4 ⇒ x2 = 2
31 / 168
Sistema triangular superior
Exemplo
2 4 −2 x1 2
0 1 1 x2 = 4
0 0 4 x3 8
Solução
4x3 = 8 ⇒ x3 = 2
x2 + x3 = 4 ⇒ x2 = 2
2−8+4
2x1 + 4x2 − 2x3 = 2 ⇒ x1 = 2 = − 22 = −1
31 / 168
Sistema triangular superior
entrada: U ∈ Rn×n , b ∈ Rn
saída: x ∈ Rn
x(n) = b(n)/U(n,n);
para i=n-1, ..., 1 faça
s = b(i);
para j=i+1, ..., n faça
s = s - U(i,j) * x(j);
fim-para
x(i) = s/U(i,i);
fim-para
32 / 168
Complexidade Computacional
Lembrando que
n
X n(n + 1)
i=
2
i=1
33 / 168
Complexidade Computacional
Substituição:
Divisão: n
n n−1
X X n(n − 1)
Adição: (i − 1) = i=
2
i=2 i=1
n n−1
X X n(n − 1)
Multiplicação: (i − 1) = i=
2
i=2 i=1
34 / 168
Complexidade Computacional
Retro-substituição:
Divisão: n
n−1
X n(n − 1) n(n − 1)
Adição: (n − i) = n(n − 1) − =
2 2
i=1
n−1
X n(n − 1) n(n − 1)
Multiplicação: (n − i) = n(n − 1) − =
2 2
i=1
n(n − 1) n(n − 1)
n+ + = n + n2 − n = n2
2 2
operações de ponto flutuante.
35 / 168
Métodos para solução de sistemas lineares
36 / 168
Métodos para solução de sistemas lineares
36 / 168
Métodos para solução de sistemas lineares
36 / 168
Eliminação de Gauss
37 / 168
Eliminação de Gauss
x x x x x x x x x x x x x x x x
x x x x 0 x x x 0 x x x 0 x x x
→ → →
x x x x 0 x x x 0 0 x x 0 0 x x
x x x x 0 x x x 0 0 x x 0 0 0 x
37 / 168
Eliminação de Gauss
x x x x x x x x x x x x x x x x
x x x x 0 x x x 0 x x x 0 x x x
→ → →
x x x x 0 x x x 0 0 x x 0 0 x x
x x x x 0 x x x 0 0 x x 0 0 0 x
37 / 168
Eliminação de Gauss
38 / 168
Eliminação de Gauss
38 / 168
Eliminação de Gauss
38 / 168
Eliminação de Gauss
Exemplo
3x1 + 5x2 = 9
6x1 + 7x2 = 4
L2′ = L2 − 2L1
3x1 + 5x2 = 9
−3x2 = −14
39 / 168
Eliminação de Gauss
Exemplo 7
6
3x1 + 5x2 = 9 5
6x1 + 7x2 = 4 4
1
múltiplo da linha 1, isto é
0
17
L2′ = L2 − 2L1
6 5 4 3 2 1 0 1
3x1 + 5x2 = 9
−3x2 = −14
39 / 168
Eliminação de Gauss
Exemplo 7
6
3x1 + 5x2 = 9 5
6x1 + 7x2 = 4 4
1
múltiplo da linha 1, isto é
0
17
L2′ = L2 − 2L1
6 5 4 3 2 1 0 1
6
5
Efetuando esta operação obtemos o
4
sistema equivalente
3
3x1 + 5x2 = 9
2
−3x2 = −14
17 6 5 4 3 2 1 0 1
39 / 168
Eliminação de Gauss
x1 + x3 = 0
x1 + x2 = 1
2x1 + 3x2 + x3 = 1
Solução
40 / 168
Eliminação de Gauss
40 / 168
Eliminação de Gauss
40 / 168
Eliminação de Gauss
Exemplo - (cont.)
41 / 168
Eliminação de Gauss
Exemplo - (cont.)
41 / 168
Eliminação de Gauss
Exemplo - (cont.)
41 / 168
Eliminação de Gauss
Exemplo - (cont.)
2x3 = −2 ⇒ x3 = −1
x2 − x3 = 1 ⇒ x2 = 1 + x3 = 1 − 1 = 0
x1 + x3 = 0 ⇒ x1 = −x3 = 1
41 / 168
Eliminação de Gauss
Exemplo - (cont.)
2x3 = −2 ⇒ x3 = −1
x2 − x3 = 1 ⇒ x2 = 1 + x3 = 1 − 1 = 0
x1 + x3 = 0 ⇒ x1 = −x3 = 1
▶ Aula passada
▶ Conceitos fundamentais
▶ Sistemas triangulares
▶ Eliminação de Gauss
▶ Aula de hoje
▶ Eliminação de Gauss
▶ Estratégias de Pivotamento
▶ Decomposição LU
42 / 168
Revisitando a Eliminação de Gauss
43 / 168
Revisitando a Eliminação de Gauss
Passo 1
m21 = a21
a11 = 4/2 = 2 ⇒ L2′ = L2 − 2L1
43 / 168
Revisitando a Eliminação de Gauss
Passo 1
m21 = a21
a11 = 4/2 = 2 ⇒ L2′ = L2 − 2L1
m31 = a31
a11 = −2/2 = −1 ⇒ L3′ = L3 + L1
43 / 168
Revisitando a Eliminação de Gauss
Passo 1
m21 = a21
a11 = 4/2 = 2 ⇒ L2′ = L2 − 2L1
m31 = a31
a11 = −2/2 = −1 ⇒ L3′ = L3 + L1
2 1 1 5
0 −8 −2 −12
0 8 3 14
43 / 168
Revisitando a Eliminação de Gauss
Passo 2
2 1 1 5
0 −8 −2 −12
0 8 3 14
m32 = a32
a22 = 8/ − 8 = −1 ⇒ L3′′ = L3′ + L2′
44 / 168
Revisitando a Eliminação de Gauss
Passo 2
2 1 1 5
0 −8 −2 −12
0 8 3 14
m32 = a32
a22 = 8/ − 8 = −1 ⇒ L3′′ = L3′ + L2′
2 1 1 5
0 −8 −2 −12
0 0 1 2
44 / 168
Eliminação de Gauss
De forma geral
a11 a12 a13 ... a1n b1
a21 a22 a23 ... a2n b2
.. .. .. .. .. ..
. . . . . .
an1 an2 an3 ... ann bn
45 / 168
Eliminação de Gauss
De forma geral
a11 a12 a13 ... a1n b1
a21 a22 a23 ... a2n b2
.. .. .. .. .. ..
. . . . . .
an1 an2 an3 ... ann bn
Passo 1 (k=1): eliminamos os elementos abaixo da diagonal principal na
primeira coluna. Suponha que a11 ̸= 0.
45 / 168
Eliminação de Gauss
De forma geral
a11 a12 a13 ... a1n b1
a21 a22 a23 ... a2n b2
.. .. .. .. .. ..
. . . . . .
an1 an2 an3 ... ann bn
Passo 1 (k=1): eliminamos os elementos abaixo da diagonal principal na
primeira coluna. Suponha que a11 ̸= 0. Então:
m21 = a21 /a11
m31 = a31 /a11
..
.
mn1 = an1 /a11
ou seja
mi1 = ai1 /a11 , i=2:n
45 / 168
Eliminação de Gauss
De forma geral
a11 a12 a13 ... a1n b1
a21 a22 a23 ... a2n b2
.. .. .. .. .. ..
. . . . . .
an1 an2 an3 ... ann bn
Passo 1 (k=1): eliminamos os elementos abaixo da diagonal principal na
primeira coluna. Suponha que a11 ̸= 0. Então:
m21 = a21 /a11
m31 = a31 /a11
..
.
mn1 = an1 /a11
ou seja
mi1 = ai1 /a11 , i=2:n
Notação: i = 2 : n ⇔ i = 2, 3, . . . , n 45 / 168
Eliminação de Gauss
46 / 168
Eliminação de Gauss
46 / 168
Eliminação de Gauss
47 / 168
Eliminação de Gauss
47 / 168
Eliminação de Gauss
48 / 168
Eliminação de Gauss
e assim fazemos
(k) (k−1) (k−1)
para i = k + 1 : n aij = aij − mik akj
(k) (k−1) (k−1)
bi = bi − mik bk , j=k:n
48 / 168
Eliminação de Gauss
(1) (2) (k−1)
No processo de eliminação os elementos a11 , a22 , a33 , . . ., akk que
aparecem na diagonal da matriz A são chamados de pivôs.
49 / 168
Eliminação de Gauss
para k = 1 : n − 1 faça
para i = k + 1 : n faça
m = A(i,k) / A(k,k);
para j = k + 1 : n faça
A(i,j) = A(i,j) - m * A(k,j);
fim-para
b(i) = b(i) - m * b(k);
fim-para
fim-para
x = retroSubstituicao(A,b);
retorna x;
50 / 168
Eliminação de Gauss
51 / 168
Eliminação de Gauss
n
n X n(n + 1)(2n + 1)
X n(n + 1) i2 =
i= 6
2 i=1
i=1
51 / 168
Eliminação de Gauss
(1) A → U
▶ Divisões
n−1 n
! n−1
X X X
1 = (n − k)
k=1 i=k+1 k=1
n−1
X
= n(n − 1) − k
k=1
n(n − 1)
= n(n − 1) −
2
n(n − 1)
=
2
52 / 168
Eliminação de Gauss
(1) A → U
▶ Adições
!
n−1 X
X n n
X n−1
X n
X
1 = (n − k)
k=1 i=k+1 j=k+1 k=1 i=k+1
n−1
X
= (n − k)(n − k)
k=1
n−1
X
= (n2 − 2kn + k2 )
k=1
(n−1)(n−1+1)(2n−2+1)
= n2 (n − 1) − 2n n(n−1)
2 + 6
n(n − 1)(2n − 1)
=
6
▶ Multiplicações
n(n − 1)(2n − 1)
6 53 / 168
Eliminação de Gauss
(2) b → g
▶ Adições
n−1 n
! n−1
X X X
1 = (n − k)
k=1 i=k+1 k=1
n−1
X
= n(n − 1) − k
k=1
n(n − 1)
= n(n − 1) −
2
n(n − 1)
=
2
▶ Multiplicações
n(n − 1)
2
54 / 168
Eliminação de Gauss
(Total)
Em cada etapa temos
2 3 n2 n
(1) 3n − 2 − 6
(2) n2 − n
2
Assim nas etapas (1) e (2) temos um total de 23 n3 + n2 − 76 n.
Considerando que na etapa de retro-substituição (3) temos n2 operações, no
total o algoritmo de eliminação de Gauss realiza um total de
55 / 168
Eliminação de Gauss
Exemplo
Se um sistema linear tem tamanho n = 100, então:
▶ resolver o sistema triangular: 1002 = 10 000 operações
▶ eliminação de gauss: 681 550 operações
56 / 168
Eliminação de Gauss
Veremos agora um caso que a matriz não é singular e podemos resolver esse
problema.
57 / 168
Estratégia de Pivotamento
58 / 168
Estratégia de Pivotamento
58 / 168
Estratégia de Pivotamento
Então obtemos
1 1 1
0 0 3
0 2 4
58 / 168
Estratégia de Pivotamento
No próximo passo, o pivô é a22 e usamos ele para calcular m32 . Entretanto
a32 2
m32 = =
a22 0
Divisão por zero! E agora, o que podemos fazer?
59 / 168
Estratégia de Pivotamento
No próximo passo, o pivô é a22 e usamos ele para calcular m32 . Entretanto
a32 2
m32 = =
a22 0
Divisão por zero! E agora, o que podemos fazer?
59 / 168
Estratégia de Pivotamento
No próximo passo, o pivô é a22 e usamos ele para calcular m32 . Entretanto
a32 2
m32 = =
a22 0
Divisão por zero! E agora, o que podemos fazer?
59 / 168
Estratégia de Pivotamento
60 / 168
Pivotamento Parcial
61 / 168
Pivotamento Parcial
|mik | ≤ 1
Exemplo
Aplique a eliminação de Gauss com Pivotamento parcial no seguinte sistema:
2 4 −2 2
4 9 −3 8
−2 −3 7 10
A cada passo k:
▶ encontrar o pivô do passo k
▶ se necessário, trocar as linhas
▶ calcular multiplicador mik
▶ para i = k + 1 : n, calcular
(k) (k−1) (k−1)
aij = aij − mik akj
(k) (k−1) (k−1)
bi = bi − mik bk , j=k:n
62 / 168
Pivotamento Parcial
Exemplo - (cont.)
Passo 1
Escolha do pivô: max {2, 4, 2} = 4. Trocar as linhas 1 e 2.
2 4 −2 2 4 9 −3 8
4 9 −3 8 ⇒ 2 4 −2 2
−2 −3 7 10 −2 −3 7 10
63 / 168
Pivotamento Parcial
Exemplo - (cont.)
Passo 1
Escolha do pivô: max {2, 4, 2} = 4. Trocar as linhas 1 e 2.
2 4 −2 2 4 9 −3 8
4 9 −3 8 ⇒ 2 4 −2 2
−2 −3 7 10 −2 −3 7 10
63 / 168
Pivotamento Parcial
Exemplo - (cont.)
Passo 1
Escolha do pivô: max {2, 4, 2} = 4. Trocar as linhas 1 e 2.
2 4 −2 2 4 9 −3 8
4 9 −3 8 ⇒ 2 4 −2 2
−2 −3 7 10 −2 −3 7 10
4 9 −3 8
0 −1 − 12 −2
2
0 32 11
2 14
63 / 168
Pivotamento Parcial
Exemplo - (cont.)
Passo 2
Escolha do pivô: max { 21 , 32 } = 23 .
4 9 −3 8 4 9 −3 8
0 −1 − 21 −2 ⇒ 0 3 11
14
2 2 2
0 23 11
2 14 0 − 21 − 12 −2
64 / 168
Pivotamento Parcial
Exemplo - (cont.)
Passo 2
Escolha do pivô: max { 21 , 32 } = 23 .
4 9 −3 8 4 9 −3 8
0 −1 − 21 −2 ⇒ 0 3 11
14
2 2 2
0 23 11
2 14 0 − 21 − 12 −2
64 / 168
Pivotamento Parcial
Exemplo - (cont.)
Passo 2
Escolha do pivô: max { 21 , 32 } = 23 .
4 9 −3 8 4 9 −3 8
0 −1 − 21 −2 ⇒ 0 3 11
14
2 2 2
0 23 11
2 14 0 − 21 − 12 −2
4 9 −3 8
0 3 11 14
2 2
0 0 43 8
3
64 / 168
Pivotamento Parcial
Exemplo - (cont.)
Retro-substituição
4 9 −3 8
0 3 11 14
2 2
0 0 43 8
3
65 / 168
Pivotamento Parcial
Exemplo - (cont.)
Retro-substituição
4 9 −3 8
0 3 11 14
2 2
0 0 43 8
3
4 8
3 x3 = 3 ⇒ x3 = 2
65 / 168
Pivotamento Parcial
Exemplo - (cont.)
Retro-substituição
4 9 −3 8
0 3 11 14
2 2
0 0 43 8
3
4 8
3 x3 = 3 ⇒ x3 = 2
3
2 x2 + 2 11
2 = 14 ⇒ x2 = 2
65 / 168
Pivotamento Parcial
Exemplo - (cont.)
Retro-substituição
4 9 −3 8
0 3 11 14
2 2
0 0 43 8
3
4 8
3 x3 = 3 ⇒ x3 = 2
3
2 x2 + 2 11
2 = 14 ⇒ x2 = 2
4x1 + 9(2) − 3(2) = 8 ⇒ x1 = −1
65 / 168
Pivotamento Parcial
Exemplo - (cont.)
Retro-substituição
4 9 −3 8
0 3 11 14
2 2
0 0 43 8
3
4 8
3 x3 = 3 ⇒ x3 = 2
3
2 x2 + 2 11
2 = 14 ⇒ x2 = 2
4x1 + 9(2) − 3(2) = 8 ⇒ x1 = −1
65 / 168
Pivotamento Parcial
Solução
Temos que
1 ′
m21 = = 10000 ⇒ L2 = L2 − 10000L1
0.0001
66 / 168
Pivotamento Parcial
→ xT = 0 1
Solução obtida
68 / 168
Pivotamento Parcial
→ xT = 0 1
Solução obtida
xT =
Solução exata → 1.00010001 0.99989999
68 / 168
Pivotamento Parcial
então:
▶ podemos seguir para o próximo passo e completar a eliminação
▶ entretanto a matriz triangular superior U resultante do processo possui
um zero na diagonal principal, o que implica que
69 / 168
Pivotamento Parcial
para k = 1 : n − 1 faça
w = |A(k,k)|;
para j = k : n faça
se |A(j,k)| > w então
w = |A(j,k)|;
r = j;
fim-se
fim-para
trocaLinhas(k,r);
para i = k + 1 : n faça
m = A(i,k) / A(k,k);
para j = k + 1 : n faça
A(i,j) = A(i,j) - m*A(k,j) ;
fim-para
b(i) = b(i) - m*b(k) ;
fim-para
fim-para 70 / 168
Pivotamento Total
71 / 168
Pivotamento Total
71 / 168
Pivotamento Total
71 / 168
Estratégias de Pivotamento
maior elemento
em valor absoluto maior elemento
em valor absoluto
72 / 168
Eliminação de Gauss e Método de Gauss-Jordan
▶ Objetivo:
▶ Eliminação de Gauss: Reduz a matriz a uma forma triangular superior
(forma escalonada) para resolver o sistema por substituição regressiva.
▶ Gauss-Jordan: Reduz a matriz à forma escalonada reduzida, onde os
pivôs são 1 e são os únicos elementos não nulos em suas colunas,
permitindo uma solução direta.
▶ Operações:
▶ Ambos utilizam operações elementares de linha (troca de linhas,
multiplicação por escalar, e soma de múltiplos de linhas).
▶ No Gauss-Jordan, as operações continuam até que os elementos acima e
abaixo dos pivôs sejam zerados.
73 / 168
Eliminação de Gauss e Método de Gauss-Jordan
▶ Esforço Computacional:
▶ Eliminação de Gauss: Menor esforço, pois para na forma triangular
superior.
▶ Gauss-Jordan: Maior esforço devido à necessidade de zerar elementos
acima e abaixo dos pivôs.
▶ Aplicações:
▶ Eliminação de Gauss: Resolver sistemas de equações lineares de forma
eficiente.
▶ Gauss-Jordan: Encontrar a inversa de matrizes ou resolver diretamente
múltiplos sistemas.
74 / 168
Diferença nas Formas Finais
75 / 168
Decomposição LU
Uma matriz quadrada pode ser escrita como o produto de duas matrizes L e
U, onde
▶ L é uma matriz triangular inferior unitária (com elementos da diagonal
principal igual a 1)
▶ U é uma matriz triangular superior
76 / 168
Decomposição LU
Uma matriz quadrada pode ser escrita como o produto de duas matrizes L e
U, onde
▶ L é uma matriz triangular inferior unitária (com elementos da diagonal
principal igual a 1)
▶ U é uma matriz triangular superior
Ou seja, a matriz pode ser escrita como
A = LU
76 / 168
Decomposição LU
Uma matriz quadrada pode ser escrita como o produto de duas matrizes L e
U, onde
▶ L é uma matriz triangular inferior unitária (com elementos da diagonal
principal igual a 1)
▶ U é uma matriz triangular superior
Ou seja, a matriz pode ser escrita como
A = LU
76 / 168
Decomposição LU
fazemos
Ly = b ⇒ Ux = y
isto é, temos os seguintes passos:
1. Como L é triangular inferior podemos resolver Ly = b facilmente
usando o algoritmo de substituição. Assim encontramos o vetor y.
2. Em seguida substituimos y no sistema Ux = y. Como U é uma matriz
triangular superior, podemos resolver este sistema usando o algoritmo da
retro-substituição para encontrar a solução x.
Vamos ver agora em que condições podemos decompor uma matriz A na
forma LU.
77 / 168
Decomposição LU
Teorema (LU)
Sejam A = (aij ) uma matriz quadrada de ordem n e Ak o menor principal,
constituído das k primeiras linhas e k primeiras colunas de A.
Então existe:
▶ uma única matriz triangular inferior L = (lij ) com lii = 1, i = 1 : n
▶ uma única matriz triangular superior U = (uij )
tal que A = LU.
78 / 168
Decomposição LU
Prova
(i) Para n = 1 temos
79 / 168
Decomposição LU
Prova
(i) Para n = 1 temos
79 / 168
Decomposição LU
Prova
(i) Para n = 1 temos
Prova (cont.)
Usando (2) temos
Lk−1 0 Uk−1 p
A = LU ⇒ L= , U=
m 1 0 ukk
80 / 168
Decomposição LU
Prova (cont.)
Usando (2) temos
Lk−1 0 Uk−1 p
A = LU ⇒ L= , U=
m 1 0 ukk
80 / 168
Decomposição LU
Prova (cont.)
Usando (2) temos
Lk−1 0 Uk−1 p
A = LU ⇒ L= , U=
m 1 0 ukk
80 / 168
Decomposição LU
Prova (cont.)
Assim
Observe que
▶ pela hip. de indução Lk−1 e Uk−1 são unicamente determinadas
▶ e ainda, Lk−1 e Uk−1 não são singulares, caso contrário Ak−1 também
seria, contrariando a hipótese
81 / 168
Decomposição LU
Prova (cont.)
Portanto
r = Lk−1 p ⇒ p = L−1
k−1 r
s = mUk−1 ⇒ m = sU−1
k−1
mp + ukk = akk ⇒ ukk = akk − mp
82 / 168
Decomposição LU
1a linha de U
84 / 168
Decomposição LU
1a linha de U
1a coluna de L
a21
a21 = l21 u11 ⇒ l21 = u11
a31
a31 = l31 u11 ⇒ l31 = u11
...
an1
an1 = ln1 u11 ⇒ ln1 = u11
84 / 168
Decomposição LU
2a linha de U
a22 = l21 u12 + 1 u22 ⇒ u22 = a22 − l21 u12
a23 = l21 u13 + 1 u23 ⇒ u23 = a23 − l21 u13
...
a2n = l21 u1n + 1 u2n ⇒ u2n = a2n − l21 u1n
85 / 168
Decomposição LU
2a linha de U
a22 = l21 u12 + 1 u22 ⇒ u22 = a22 − l21 u12
a23 = l21 u13 + 1 u23 ⇒ u23 = a23 − l21 u13
...
a2n = l21 u1n + 1 u2n ⇒ u2n = a2n − l21 u1n
2a coluna de L
a32 − l31 u12
a32 = l31 u12 + l32 u22 ⇒ l32 =
u22
a42 − l41 u1
a42 = l41 u12 + l42 u22 ⇒ l42 =
u22
...
an2 − ln1 u12
an2 = ln1 u12 + ln2 u22 ⇒ ln2 =
u22
85 / 168
Decomposição LU
i−1
X
uij = aij − lik ukj , i≤j
k=1
j−1
!,
X
lij = aij − lik ukj ujj , i>j
k=1
86 / 168
Decomposição LU
para i = 1 : n faça
para j = i : n faça
Pi−1
uij = aij − k=1 lik ukj ;
fim-para
para j = i + 1 : n faça ,
Pj−1
lij = aij − k=1 lik ukj ujj ;
fim-para
fim-para
87 / 168
Decomposição LU
para i = 1 : n faça
para j = i : n faça
Pi−1
uij = aij − k=1 lik ukj ;
fim-para
para j = i + 1 : n faça ,
Pj−1
lij = aij − k=1 lik ukj ujj ;
fim-para
fim-para
87 / 168
Decomposição LU
Assim
1 0 0 . . . 0 a11 a12 . . . a1n b1
−m21 1 0 . . . 0 a21 a22 . . . a2n b2
M1 (A|b)0 = −m31 0 1 . . . 0 a31 a32 . . . a3n b3
.. .. .. . . . .. .. .. ..
. . . . 0 .. . . . .
−mn1 0 . . . 0 1 an1 an2 . . . ann bn
89 / 168
Decomposição LU
Assim
1 0 0 ... 0 a11 a12 . . . a1n b1
−m21 1 0 ... 0 . . . a2n
a21 a22 b2
M1 (A|b)0 = −m31 0 1 ... 0 a31 a32 . . . a3n b3
.. .. .. .. .. .. .. .. ..
. . . . 0 . . . . .
−mn1 0 ... 0 1 an1 an2 . . . ann bn
a11 a12 . . . a1n b1
0 a1 . . . a12n b12
22
1 . . . a13n b13
= 0 a32 = (A|b)1
.. .. .. .. ..
. . . . .
0 a1n2 . . . a1nn b1n
89 / 168
Decomposição LU
(A|b)2 = M2 (A|b)1
1 0 0 . . . 0 a11 a12 . . . a1n b1
0
1 0 . . . 0 0
a122 . . . a12n b12
M2 (A|b)1 = 0 −m32 1 . . . 0 0
a132 . . . a13n b13
.. .. .. . . . .. .. .. ..
. . . . 0 .. . . . .
0 −mn2 . . . 0 1 0 1
an2 . . . ann b1n
1
90 / 168
Decomposição LU
(A|b)2 = M2 (A|b)1
1 0 0 ... 0 a11 a12 . . . a1n b1
0 1 0 ... 0 1 . . . a12n b12
0 a22
0 −m32 1 ... 0 1 . . . a13n b13
1
M2 (A|b) = 0 a32
.. .. .. .. . .. .. .. ..
. . . . 0 .. . . . .
0 −mn2 ... 0 1 0 an21 1
. . . ann b1n
a11 a12 . . . a1n b1
0 a1 . . . a12n b12
22
= 0
0 . . . a23n b23
= (A|b)2
.. .. .. .. ..
. . . . .
0 0 . . . ann b2n
2
90 / 168
Decomposição LU
91 / 168
Decomposição LU
91 / 168
Decomposição LU
−1
MA = U ⇒ A=M
|{z} U
L
onde
1 0 0 ... 0
m21 1
0 ... 0
M−1 = L = m31 m32 1 ... 0
.. .. .. ..
. . . .0
mn1 mn2 mn3 ... 1
92 / 168
Decomposição LU
Exemplo 1
Decomponha a matriz A dada abaixo nos fatores L e U, usando a eliminação
de Gauss.
2 1 1 0
4 3 3 1
A= 8 7 9 5
6 7 9 8
93 / 168
Decomposição LU
Exemplo 1
Decomponha a matriz A dada abaixo nos fatores L e U, usando a eliminação
de Gauss.
2 1 1 0
4 3 3 1
A= 8 7 9 5
6 7 9 8
Solução do Exemplo 1
2 1 1 0 1 0 0 0 2 1 1 0
4 3 3 1 2 1 0 0
0 1 1 1
A=
8 =
7 9 5 4 3 1 0 0
0 2 2
6 7 9 8 3 4 1 1 0 0 0 2
| {z }| {z } 93 / 168
Decomposição LU
Exemplo 2
Resolva o seguinte sistema linear:
1 2 −1 x1 2
2 3 −2 x2 = 3
1 −2 1 x3 0
94 / 168
Decomposição LU
Exemplo 2
Resolva o seguinte sistema linear:
1 2 −1 x1 2
2 3 −2 x2 = 3
1 −2 1 x3 0
Solução do Exemplo 2
1 0 0 1 2 −1
A = LU = 2 1 0 0 −1 0
1 4 1 0 0 2
94 / 168
Decomposição LU
Exemplo 2
Resolva o seguinte sistema linear:
1 2 −1 x1 2
2 3 −2 x2 = 3
1 −2 1 x3 0
Solução do Exemplo 2
1 0 0 1 2 −1 1
∗
A = LU = 2 1 0 0 −1 0 , x = 1
1 4 1 0 0 2 1
94 / 168
Decomposição LU
det(L) = 1
det(U) = u11 u22 u33 . . . unn
Portanto
95 / 168
Decomposição LU
Exemplo 2
Para o exemplo anterior, temos
1 0 0 1 2 −1
A = 2 1 0 0 −1 0
1 4 1 0 0 2
96 / 168
Decomposição LU
Exemplo 2
Para o exemplo anterior, temos
1 0 0 1 2 −1
A = 2 1 0 0 −1 0
1 4 1 0 0 2
Portanto o determinante é
det(A) = 1 (−1) 2 = −2
96 / 168
Decomposição LU com Pivotamento Parcial
Para definir o que significa, de forma matricial, a troca de duas linhas de uma
matriz, iremos apresentar o conceito de matrizes de permutação.
97 / 168
Decomposição LU com Pivotamento Parcial
Uma forma de implementar isso é fazer com que p[k] seja o índice da
coluna que tem apenas um "1"na k-ésima linah de P. Para o exemplo anterior
p = [3 2 1]
98 / 168
Decomposição LU com Pivotamento Parcial
Uma forma de implementar isso é fazer com que p[k] seja o índice da
coluna que tem apenas um "1"na k-ésima linah de P. Para o exemplo anterior
p = [3 2 1]
98 / 168
Decomposição LU com Pivotamento Parcial
99 / 168
Decomposição LU com Pivotamento Parcial
Exemplo 3
Resolver o sistema linear abaixo usando a decomposição LU com
Pivotamento parcial.
3 −4 1 x1 9
1 2 2 x2 = 3
4 0 −3 x3 −2
100 / 168
Decomposição LU com Pivotamento Parcial
Exemplo 3
Resolver o sistema linear abaixo usando a decomposição LU com
Pivotamento parcial.
3 −4 1 x1 9
1 2 2 x2 = 3
4 0 −3 x3 −2
Solução do Exemplo 3
1 0 0 4 0 −3
L = 34 U = 0 −4 13
1 0 , 4
, p= 3 1 2
1
4 − 12 1 0 0 35
8
xT = 1 −1 2
100 / 168
Decomposição LU com Pivotamento Parcial
Decomposição PA = LU:
0 0 1 3 −4 1
P = 1 0 0 , A = 1 2 2
0 1 0 4 0 −3
1 0 0 4 0 −3
L = 3/4 1 0 , U = 0 −4 13/4
1/4 −1/2 1 0 0 35/8
103 / 168
Decomposição LU com Pivotamento Parcial
Solução do Exemplo 3
Para resolver PAx = Pb ⇒ LUx = Pb, define-se Ux = y e então:
1. Resolva Ly = Pb
2. Resolva Ux = y
Procedendo desta forma, chega-se em
1 0 0 4 0 −3
L = 43 1 0 , U = 0 −4 13
, p= 3 1 2
4
1 1 35
4 −2 1 0 0 8
xT = 1 −1 2
104 / 168
Conteúdo
▶ Aula passada
▶ Eliminação de Gauss
▶ Estratégias de Pivotamento
▶ Decomposição LU
▶ Aula de hoje
▶ Decomposição de Cholesky
▶ Decomposição LDLT
▶ Cálculo da Matriz Inversa
▶ Sistema com Matriz Singular
105 / 168
Revisitando algumas definições
aij = aji , ∀ i, j
Portanto A = AT .
106 / 168
Revisitando algumas definições
aij = aji , ∀ i, j
Portanto A = AT .
Tais matrizes satisfazem a seguinte relação
xT Ay = yT Ax, ∀ x, y ∈ Rn
xT Ax > 0, ∀x ̸= 0
106 / 168
Revisitando algumas definições
107 / 168
Revisitando algumas definições
xT = x1 x2 . . . xk 0 0 . . . 0
podemos verificar que todas as matrizes menores principais (Ak ) são positivas
definidas, portanto não singular (det(Ak ) ̸= 0) e consequentemente podemos
decompor A na forma A = LU.
107 / 168
Revisitando algumas definições
xT = x1 x2 . . . xk 0 0 . . . 0
podemos verificar que todas as matrizes menores principais (Ak ) são positivas
definidas, portanto não singular (det(Ak ) ̸= 0) e consequentemente podemos
decompor A na forma A = LU.
107 / 168
Testes para matrizes positivas definidas
108 / 168
Testes para matrizes positivas definidas
108 / 168
Testes para matrizes positivas definidas
108 / 168
Decomposição de Cholesky
det(Ak ) > 0
LU = A = AT = (LU)T = UT LT
109 / 168
Decomposição de Cholesky
Assim
LU = UT LT
L−1 LU = L−1 UT LT
U = L−1 UT LT
U(LT )−1 = L−1 UT LT (LT )−1
U(LT )−1 = L−1 UT
110 / 168
Decomposição de Cholesky
Assim
LU = UT LT
L−1 LU = L−1 UT LT
U = L−1 UT LT
U(LT )−1 = L−1 UT LT (LT )−1
U(LT )−1 = L−1 UT
Temos que
U(LT )−1 = L −1 T
| {zU }
| {z }
triangular superior triangular inferior
110 / 168
Decomposição de Cholesky
Assim
LU = UT LT
L−1 LU = L−1 UT LT
U = L−1 UT LT
U(LT )−1 = L−1 UT LT (LT )−1
U(LT )−1 = L−1 UT
Temos que
U(LT )−1 = L −1 T
| {zU }
| {z }
triangular superior triangular inferior
110 / 168
Decomposição de Cholesky
Assim
LU = UT LT
L−1 LU = L−1 UT LT
U = L−1 UT LT
U(LT )−1 = L−1 UT LT (LT )−1
U(LT )−1 = L−1 UT
Temos que
U(LT )−1 = L −1 T
| {zU }
| {z }
triangular superior triangular inferior
Seja
então
A = LDLT = UT DU (4)
111 / 168
Decomposição de Cholesky
Seja
então
A = LDLT = UT DU (4)
111 / 168
Decomposição de Cholesky
112 / 168
Decomposição de Cholesky
a11 = g211
a22 = g221 + g222
..
.
ann = g2n1 + g2n2 + . . . + g2nn
de forma geral
v
u
u i−1
X
gii = taii − g2ik , i=1:n (5)
k=1
113 / 168
Decomposição de Cholesky
115 / 168
Decomposição de Cholesky
Observações:
▶ Se A é SPD, então a aplicação do método de Cholesky requer menos
operações de ponto flutuante do que a decomposição LU.
▶ Como A é positiva definida, isto garante que só teremos raízes quadradas
de números positivos, isto é, os termos ajj − j−1 2
P
k=1 gjk são sempre
maiores do que zero.
▶ Exemplo do caso 2 × 2
▶ Caso o algoritmo falhe, podemos concluir que A não é simétrica e
positiva definida.
▶ Determinante
116 / 168
Decomposição de Cholesky
A = GGT
então
GT x = b
G |{z}
y
117 / 168
Decomposição de Cholesky
Exemplo
Considere a matriz
4 −2 2
A = −2 10 −7
2 −7 30
118 / 168
Decomposição de Cholesky
Solução do Exemplo
a) A é simétrica e positiva definida
b) A decomposição é
2 0 0 2 −1 1
A = −1 3 0 0 3 −2
1 −2 5 0 0 5
| {z }| {z }
G GT
Idéia:
▶ Decompor A = LU via eliminação de Gauss
▶ Como U = DLT , calcular D
▶ E assim calcular G = LD1/2
Exemplo
A partir da decomposição LU da matriz A do exemplo anterior, obtenha G.
4 −2 2 1 0 0 4 −2 2
A = −2 10 −7 = − 12 1 0 0 9 −6
1
2 −7 30 − 2 1 0 0 25
| 2 {z 3 }| {z }
L U
120 / 168
Decomposição de Cholesky
Exercício
Mostrar que, se o sistema linear Ax = b, onde A é não singular, é
transformado no sistema linear equivalente
AT Ax = AT b
então esse último sistema linear pode sempre ser resolvido pelo método de
Cholesky (isto é B = AT A satisfaz as condições para a aplicação do método).
121 / 168
Decomposição de Cholesky
Exercício
Dicas:
▶ Mostre que B satisfaz as condições da decomposição de Cholesky
▶ Irá precisar de usar
q
||x|| = x12 + x22 + . . . + xn2
||x||2 = x12 + x22 + . . . + xn2 = xT x
122 / 168
Decomposição LDLT
123 / 168
Decomposição LDLT
123 / 168
Decomposição LDLT
123 / 168
Decomposição LDLT
Ax = b ⇒ LT x = b
LD |{z}
y
124 / 168
Decomposição LDLT
Ax = b ⇒ LT x = b
LD |{z}
y
⇒ L Dy = b
|{z}
w
124 / 168
Decomposição LDLT
Ax = b ⇒ LT x = b
LD |{z}
y
⇒ L Dy = b
|{z}
w
124 / 168
Decomposição LDLT
Ax = b ⇒ LT x = b
LD |{z}
y
⇒ L Dy = b
|{z}
w
det(A) = det(L)det(D)det(LT )
= 1 · det(D) · 1 = d11 d22 . . . dnn
124 / 168
Decomposição LDLT
para j = v
1 : n faça
u j−1
X
u
2
djj = tajj − ljk dkk ;
k=1
para i = j + 1 : n faça
j−1
!,
X
lij = aij − lik dkk ljk djj ;
k=1
fim-para
fim-para
125 / 168
Decomposição LDLT
det = 1 ;
para j = 1 : n faça
soma = 0 ;
para k = 1 : j − 1 faça
soma = soma + A(j,k)*A(j,k)*A(k,k) ;
fim-para
A(j,j) = A(j,j) - soma ;
r = 1 / A(j,j) ;
det = det * A(j,j) ;
para i = j + 1 : n faça
soma = 0 ;
para k = 1 : j − 1 faça
soma = soma + A(i,k)*A(k,k)*A(j,k) ;
fim-para
A(i,j) = (A(i,j) - soma) * r ;
fim-para
fim-para
126 / 168
Cálculo da Matriz Inversa
A−1 = v1 v2 . . . vn
127 / 168
Cálculo da Matriz Inversa
A−1 = v1 v2 . . . vn
Seja ainda
ej a coluna j da matriz
identidade. Por exemplo,
e2 = 0 1 0 . . . 0 , en = 0 0 0 . . . 1 . Resolvendo o seguinte
sistema linear
Av1 = e1
encontramos a primeira coluna v1 da matriz inversa de A.
127 / 168
Cálculo da Matriz Inversa
A−1 = v1 v2 . . . vn
Seja ainda
ej a coluna j da matriz
identidade. Por exemplo,
e2 = 0 1 0 . . . 0 , en = 0 0 0 . . . 1 . Resolvendo o seguinte
sistema linear
Av1 = e1
encontramos a primeira coluna v1 da matriz inversa de A. Repetindo o
procedimento para cada coluna temos
Avj = ej , j=1:n (7)
127 / 168
Cálculo da Matriz Inversa
Agora basta usar algum dos métodos que vimos para resolver os sistemas
lineares da equação (7).
1. Decomposição LU
LUvj = ej , j=1:n
Lyj = ej
Uvj = yj
128 / 168
Cálculo da Matriz Inversa
3. Eliminação de Gauss.
Montar
A I
Uvj = tj
129 / 168
Cálculo da Matriz Inversa
Exemplo
Calcular a inversa da seguinte matriz
4 1 −6
A = 3 2 −6
3 1 −5
Assim temos
4 1 −6 1 0 0
3 2 −6 0 1 0
3 1 −5 0 0 1
Exemplo
Agora basta resolver
4 1 −6 1
0 5/4 −3/2 v1 = −3/4
0 0 −1/5 −3/5
4 1 −6 0
0 5/4 −3/2 v2 = 1
0 0 −1/5 −1/5
4 1 −6 0
0 5/4 −3/2 v3 = 0
0 0 −1/5 1
131 / 168
Conteúdo
▶ Aula passada
▶ Decomposição de Cholesky
▶ Decomposição LDLT
▶ Cálculo da Matriz Inversa
▶ Aula de hoje
▶ Métodos Iterativos
▶ Método de Jacobi
▶ Método de Gauss-Seidel
▶ Método SOR
132 / 168
Métodos Iterativos
133 / 168
Métodos Iterativos
133 / 168
Métodos Iterativos
133 / 168
Métodos Iterativos
133 / 168
Métodos Iterativos
133 / 168
Métodos Iterativos
133 / 168
Métodos Iterativos
134 / 168
Métodos Iterativos
Veremos como construir a matriz B para cada um dos métodos que iremos
estudar: Jacobi, Gauss-Seidel e Sobre-relaxação (SOR).
134 / 168
Métodos Iterativos
Veremos como construir a matriz B para cada um dos métodos que iremos
estudar: Jacobi, Gauss-Seidel e Sobre-relaxação (SOR).
134 / 168
Normas de Vetores e Matrizes
135 / 168
Normas de Vetores e Matrizes
135 / 168
Normas de Vetores e Matrizes
135 / 168
Normas de Vetores e Matrizes
136 / 168
Normas de Vetores e Matrizes
136 / 168
Normas de Vetores e Matrizes
Exemplo
4 6
A= ⇒ ||A||∞ = max{10, 7} = 10
−3 4
136 / 168
Critério de Parada
137 / 168
Critério de Parada
Critério de parada
(k+1) (k)
||x(k+1) − x(k) ||∞ max |xi − xi |
(k+1)
= (k+1)
<ε
||x ||∞ max |xi |
onde ε é a precisão desejada (Ex: 10−3 ).
137 / 168
Critério de Parada
Critério de parada
(k+1) (k)
||x(k+1) − x(k) ||∞ max |xi − xi |
(k+1)
= (k+1)
<ε
||x ||∞ max |xi |
onde ε é a precisão desejada (Ex: 10−3 ).
138 / 168
Método de Jacobi
138 / 168
Método de Jacobi
139 / 168
Método de Jacobi
140 / 168
Método de Jacobi
Exemplo
Resolver o seguinte sistema:
141 / 168
Método de Jacobi
Exemplo
Resolver o seguinte sistema:
Solução do Exemplo
k 0 1 2 3
x1 0 2 1.92 1.91
x2 0 3 3.19 3.1944
x3 0 5 5.04 5.0446
141 / 168
Método de Jacobi
Solução do Exemplo
Fórmula de iteração
(k+1) (k) (k)
x1 = 2 − 0.06x2 + 0.02x3
(k+1) (k) (k)
x2 = 3 − 0.03x1 + 0.05x3
(k+1) (k) (k)
x3 = 5 − 0.01x1 + 0.02x2
Passo 1 → x(0) = 0
142 / 168
Método de Jacobi
Solução do Exemplo
Fórmula de iteração
(k+1) (k) (k)
x1 = 2 − 0.06x2 + 0.02x3
(k+1) (k) (k)
x2 = 3 − 0.03x1 + 0.05x3
(k+1) (k) (k)
x3 = 5 − 0.01x1 + 0.02x2
Passo 1 → x(0) = 0
(1) (0) (0)
x1 = 2 − 0.06x2 + 0.02x3 = 2
142 / 168
Método de Jacobi
Solução do Exemplo
Fórmula de iteração
(k+1) (k) (k)
x1 = 2 − 0.06x2 + 0.02x3
(k+1) (k) (k)
x2 = 3 − 0.03x1 + 0.05x3
(k+1) (k) (k)
x3 = 5 − 0.01x1 + 0.02x2
Passo 1 → x(0) = 0
(1) (0) (0)
x1 = 2 − 0.06x2 + 0.02x3 = 2
(1) (0) (0)
x2 = 3 − 0.03x1 + 0.05x3 = 3
142 / 168
Método de Jacobi
Solução do Exemplo
Fórmula de iteração
(k+1) (k) (k)
x1 = 2 − 0.06x2 + 0.02x3
(k+1) (k) (k)
x2 = 3 − 0.03x1 + 0.05x3
(k+1) (k) (k)
x3 = 5 − 0.01x1 + 0.02x2
Passo 1 → x(0) = 0
(1) (0) (0)
x1 = 2 − 0.06x2 + 0.02x3 = 2
(1) (0) (0)
x2 = 3 − 0.03x1 + 0.05x3 = 3
(1) (0) (0)
x3 = 5 − 0.01x1 + 0.02x2 = 5
142 / 168
Método de Jacobi
Solução do Exemplo
Passo 2 → (x(1) )T = 2 3 5
143 / 168
Método de Jacobi
Solução do Exemplo
Passo 2 → (x(1) )T = 2 3 5
(2)
x1 = 2 − 0.06(3) + 0.02(5) = 2 − 0.08 = 1.92
143 / 168
Método de Jacobi
Solução do Exemplo
Passo 2 → (x(1) )T = 2 3 5
(2)
x1 = 2 − 0.06(3) + 0.02(5) = 2 − 0.08 = 1.92
(2)
x2 = 3 − 0.03(2) + 0.05(5) = 3 + 0.19 = 3.19
143 / 168
Método de Jacobi
Solução do Exemplo
Passo 2 → (x(1) )T = 2 3 5
(2)
x1 = 2 − 0.06(3) + 0.02(5) = 2 − 0.08 = 1.92
(2)
x2 = 3 − 0.03(2) + 0.05(5) = 3 + 0.19 = 3.19
(2)
x3 = 5 − 0.01(2) + 0.02(3) = 5 + 0.04 = 5.04
143 / 168
Método de Jacobi
Solução do Exemplo
Passo 2 → (x(1) )T = 2 3 5
(2)
x1 = 2 − 0.06(3) + 0.02(5) = 2 − 0.08 = 1.92
(2)
x2 = 3 − 0.03(2) + 0.05(5) = 3 + 0.19 = 3.19
(2)
x3 = 5 − 0.01(2) + 0.02(3) = 5 + 0.04 = 5.04
(3)
x1 = 2 − 0.06(3.19) + 0.02(5.04) = 1.91
143 / 168
Método de Jacobi
Solução do Exemplo
Passo 2 → (x(1) )T = 2 3 5
(2)
x1 = 2 − 0.06(3) + 0.02(5) = 2 − 0.08 = 1.92
(2)
x2 = 3 − 0.03(2) + 0.05(5) = 3 + 0.19 = 3.19
(2)
x3 = 5 − 0.01(2) + 0.02(3) = 5 + 0.04 = 5.04
(3)
x1 = 2 − 0.06(3.19) + 0.02(5.04) = 1.91
(3)
x2 = 3 − 0.03(1.92) + 0.05(5.04) = 3.1944
143 / 168
Método de Jacobi
Solução do Exemplo
Passo 2 → (x(1) )T = 2 3 5
(2)
x1 = 2 − 0.06(3) + 0.02(5) = 2 − 0.08 = 1.92
(2)
x2 = 3 − 0.03(2) + 0.05(5) = 3 + 0.19 = 3.19
(2)
x3 = 5 − 0.01(2) + 0.02(3) = 5 + 0.04 = 5.04
(3)
x1 = 2 − 0.06(3.19) + 0.02(5.04) = 1.91
(3)
x2 = 3 − 0.03(1.92) + 0.05(5.04) = 3.1944
(3)
x3 = 5 − 0.01(1.92) + 0.02(3.19) = 5.0446
143 / 168
Método de Jacobi
Solução do Exemplo
Passo 2 → (x(1) )T = 2 3 5
(2)
x1 = 2 − 0.06(3) + 0.02(5) = 2 − 0.08 = 1.92
(2)
x2 = 3 − 0.03(2) + 0.05(5) = 3 + 0.19 = 3.19
(2)
x3 = 5 − 0.01(2) + 0.02(3) = 5 + 0.04 = 5.04
(3)
x1 = 2 − 0.06(3.19) + 0.02(5.04) = 1.91
(3)
x2 = 3 − 0.03(1.92) + 0.05(5.04) = 3.1944
(3)
x3 = 5 − 0.01(1.92) + 0.02(3.19) = 5.0446
144 / 168
Método de Gauss-Seidel
144 / 168
Método de Gauss-Seidel
145 / 168
Método de Gauss-Seidel
145 / 168
Método de Gauss-Seidel
145 / 168
Método de Gauss-Seidel
145 / 168
Método de Gauss-Seidel
Exemplo
Resolva o sistema de equações do exemplo anterior usando o método de
Gauss-Seidel.
146 / 168
Método de Gauss-Seidel
Exemplo
Resolva o sistema de equações do exemplo anterior usando o método de
Gauss-Seidel.
Solução do Exemplo
Fórmula de iteração (*)
(k+1) (k) (k)
x1 = 2 − 0.06x2 + 0.02x3
(k+1) (k+1) (k)
x2 = 3 − 0.03x1 + 0.05x3
(k+1) (k+1) (k+1)
x3 = 5 − 0.01x1 + 0.02x2
146 / 168
Método de Gauss-Seidel
Exemplo
Resolva o sistema de equações do exemplo anterior usando o método de
Gauss-Seidel.
Solução do Exemplo
Fórmula de iteração (*)
(k+1) (k) (k)
x1 = 2 − 0.06x2 + 0.02x3
(k+1) (k+1) (k)
x2 = 3 − 0.03x1 + 0.05x3
(k+1) (k+1) (k+1)
x3 = 5 − 0.01x1 + 0.02x2
Passo 1 → x(0) = 0
(1)
x1 = 2 − 0.06(0) + 0.02(0) = 2
146 / 168
Método de Gauss-Seidel
Exemplo
Resolva o sistema de equações do exemplo anterior usando o método de
Gauss-Seidel.
Solução do Exemplo
Fórmula de iteração (*)
(k+1) (k) (k)
x1 = 2 − 0.06x2 + 0.02x3
(k+1) (k+1) (k)
x2 = 3 − 0.03x1 + 0.05x3
(k+1) (k+1) (k+1)
x3 = 5 − 0.01x1 + 0.02x2
Passo 1 → x(0) = 0
(1)
x1 = 2 − 0.06(0) + 0.02(0) = 2
(1)
x2 = 3 − 0.03(2) + 0.05(0) = 3 − 0.06 = 2.94
146 / 168
Método de Gauss-Seidel
Exemplo
Resolva o sistema de equações do exemplo anterior usando o método de
Gauss-Seidel.
Solução do Exemplo
Fórmula de iteração (*)
(k+1) (k) (k)
x1 = 2 − 0.06x2 + 0.02x3
(k+1) (k+1) (k)
x2 = 3 − 0.03x1 + 0.05x3
(k+1) (k+1) (k+1)
x3 = 5 − 0.01x1 + 0.02x2
Passo 1 → x(0) = 0
(1)
x1 = 2 − 0.06(0) + 0.02(0) = 2
(1)
x2 = 3 − 0.03(2) + 0.05(0) = 3 − 0.06 = 2.94
(1) 146 / 168
Método de Gauss-Seidel
Solução do Exemplo
Passo 2 → (x(1) )T = 2 2.94 5.0388
(2)
x1 = 2 − 0.06(2.94) + 0.02(5.0388) = 1.924376
147 / 168
Método de Gauss-Seidel
Solução do Exemplo
Passo 2 → (x(1) )T = 2 2.94 5.0388
(2)
x1 = 2 − 0.06(2.94) + 0.02(5.0388) = 1.924376
(2)
x2 = 3 − 0.03(1.924376) + 0.05(5.0388) = 3.194209
147 / 168
Método de Gauss-Seidel
Solução do Exemplo
Passo 2 → (x(1) )T = 2 2.94 5.0388
(2)
x1 = 2 − 0.06(2.94) + 0.02(5.0388) = 1.924376
(2)
x2 = 3 − 0.03(1.924376) + 0.05(5.0388) = 3.194209
(2)
x3 = 5 − 0.01(1.924376) + 0.02(3.194209) = 5.044640
147 / 168
Método de Gauss-Seidel
Solução do Exemplo
Passo 2 → (x(1) )T = 2 2.94 5.0388
(2)
x1 = 2 − 0.06(2.94) + 0.02(5.0388) = 1.924376
(2)
x2 = 3 − 0.03(1.924376) + 0.05(5.0388) = 3.194209
(2)
x3 = 5 − 0.01(1.924376) + 0.02(3.194209) = 5.044640
(2)
x1 = 2 − 0.06(1.924376) + 0.02(5.04464) = 1.909240
147 / 168
Método de Gauss-Seidel
Solução do Exemplo
Passo 2 → (x(1) )T = 2 2.94 5.0388
(2)
x1 = 2 − 0.06(2.94) + 0.02(5.0388) = 1.924376
(2)
x2 = 3 − 0.03(1.924376) + 0.05(5.0388) = 3.194209
(2)
x3 = 5 − 0.01(1.924376) + 0.02(3.194209) = 5.044640
(2)
x1 = 2 − 0.06(1.924376) + 0.02(5.04464) = 1.909240
(2)
x2 = 3 − 0.03(1.909240) + 0.05(5.04464) = 3.194955
147 / 168
Método de Gauss-Seidel
Solução do Exemplo
Passo 2 → (x(1) )T = 2 2.94 5.0388
(2)
x1 = 2 − 0.06(2.94) + 0.02(5.0388) = 1.924376
(2)
x2 = 3 − 0.03(1.924376) + 0.05(5.0388) = 3.194209
(2)
x3 = 5 − 0.01(1.924376) + 0.02(3.194209) = 5.044640
(2)
x1 = 2 − 0.06(1.924376) + 0.02(5.04464) = 1.909240
(2)
x2 = 3 − 0.03(1.909240) + 0.05(5.04464) = 3.194955
(2)
x3 = 5 − 0.01(1.909240) + 0.02(3.194955) = 5.044807
147 / 168
Convergência dos métodos de Jacobi e Gauss-Seidel
A= L
|{z} + |{z}
D + U
|{z}
triangular inferior diagonal triangular superior
148 / 168
Convergência dos métodos de Jacobi e Gauss-Seidel
A= L
|{z} + |{z}
D + U
|{z}
triangular inferior diagonal triangular superior
148 / 168
Convergência dos métodos de Jacobi e Gauss-Seidel
Ax = b ⇒ (L + D + U)x = b
149 / 168
Convergência dos métodos de Jacobi e Gauss-Seidel
Ax = b ⇒ (L + D + U)x = b
⇒ Dx = b − (L + U)x
149 / 168
Convergência dos métodos de Jacobi e Gauss-Seidel
Ax = b ⇒ (L + D + U)x = b
⇒ Dx = b − (L + U)x
e assim
Dx(k+1) = b − (L + U)x(k)
149 / 168
Convergência dos métodos de Jacobi e Gauss-Seidel
Ax = b ⇒ (L + D + U)x = b
⇒ Dx = b − (L + U)x
e assim
Dx(k+1) = b − (L + U)x(k)
x(k+1) = −D−1 (L + U)x(k) + D−1 b
149 / 168
Convergência dos métodos de Jacobi e Gauss-Seidel
Ax = b ⇒ (L + D + U)x = b
⇒ Dx = b − (L + U)x
e assim
Dx(k+1) = b − (L + U)x(k)
x(k+1) = −D−1 (L + U)x(k) + D−1 b
x(k+1) = BJ x(k) + c
149 / 168
Convergência dos métodos de Jacobi e Gauss-Seidel
Ax = b ⇒ (L + D + U)x = b
⇒ Dx = b − (L + U)x
e assim
Dx(k+1) = b − (L + U)x(k)
x(k+1) = −D−1 (L + U)x(k) + D−1 b
x(k+1) = BJ x(k) + c
BJ = −D−1 (L + U)
c = D−1 b
149 / 168
Convergência dos métodos de Jacobi e Gauss-Seidel
150 / 168
Convergência dos métodos de Jacobi e Gauss-Seidel
150 / 168
Convergência dos métodos de Jacobi e Gauss-Seidel
150 / 168
Convergência dos métodos de Jacobi e Gauss-Seidel
150 / 168
Convergência dos métodos de Jacobi e Gauss-Seidel
151 / 168
Convergência dos métodos de Jacobi e Gauss-Seidel
Bu = λi u
Teorema
A condição necessária e suficiente para que o método iterativo descrito por
x(k+1) = Bx(k) + c convirja usando um vetor inicial x(0) qualquer é
151 / 168
Convergência dos métodos de Jacobi e Gauss-Seidel
152 / 168
Convergência dos métodos de Jacobi e Gauss-Seidel
152 / 168
Convergência dos métodos de Jacobi e Gauss-Seidel
de forma análoga
x(k) − x∗ = B(x(k−1) − x∗ )
152 / 168
Convergência dos métodos de Jacobi e Gauss-Seidel
de forma análoga
x(k) − x∗ = B(x(k−1) − x∗ )
e assim
152 / 168
Convergência dos métodos de Jacobi e Gauss-Seidel
(11)
153 / 168
Convergência dos métodos de Jacobi e Gauss-Seidel
153 / 168
Convergência dos métodos de Jacobi e Gauss-Seidel
153 / 168
Convergência dos métodos de Jacobi e Gauss-Seidel
153 / 168
Convergência dos métodos de Jacobi e Gauss-Seidel
Vamos analisar agora critérios específicos para atender ao critério geral dado
por (12) para o método de Jacobi e Gauss-Seidel.
153 / 168
Convergência dos métodos de Jacobi e Gauss-Seidel
154 / 168
Convergência dos métodos de Jacobi e Gauss-Seidel
154 / 168
Convergência dos métodos de Jacobi e Gauss-Seidel
154 / 168
Convergência dos métodos de Jacobi e Gauss-Seidel
155 / 168
Convergência dos métodos de Jacobi e Gauss-Seidel
155 / 168
Convergência dos métodos de Jacobi e Gauss-Seidel
155 / 168
Convergência dos métodos de Jacobi e Gauss-Seidel
155 / 168
Convergência dos métodos de Jacobi e Gauss-Seidel
155 / 168
Convergência dos métodos de Jacobi e Gauss-Seidel
Definição
Uma matriz A é estritamente diagonal dominante se
n
X
|aij | < |aii |, i=1:n
j=1, j̸=i
156 / 168
Convergência dos métodos de Jacobi e Gauss-Seidel
Definição
Uma matriz A é estritamente diagonal dominante se
n
X
|aij | < |aii |, i=1:n
j=1, j̸=i
Fica claro então que para matrizes estritamente diagonal dominante o critério
das linhas é sempre satisfeito. Portanto, uma outra forma de verificar se o
método de Jacobi converge para uma certa matriz é verificar se esta é
estritamente diagonal dominante.
156 / 168
Convergência dos métodos de Jacobi e Gauss-Seidel
Definição
Uma matriz A é estritamente diagonal dominante se
n
X
|aij | < |aii |, i=1:n
j=1, j̸=i
Fica claro então que para matrizes estritamente diagonal dominante o critério
das linhas é sempre satisfeito. Portanto, uma outra forma de verificar se o
método de Jacobi converge para uma certa matriz é verificar se esta é
estritamente diagonal dominante.
Exemplo
10 2 1
1 5 1
2 3 10
156 / 168
Convergência dos métodos de Jacobi e Gauss-Seidel
Definição
Uma matriz A é estritamente diagonal dominante se
n
X
|aij | < |aii |, i=1:n
j=1, j̸=i
Fica claro então que para matrizes estritamente diagonal dominante o critério
das linhas é sempre satisfeito. Portanto, uma outra forma de verificar se o
método de Jacobi converge para uma certa matriz é verificar se esta é
estritamente diagonal dominante.
Exemplo
|a12 | + |a13 | = |2| + |1| < |10| = |a11 |
10 2 1 |a21 | + |a23 | = |1| + |1| < |5| = |a22 |
1 5 1
|a31 | + |a32 | = |2| + |3| < |10| = |a33 |
2 3 10
156 / 168
Convergência dos métodos de Jacobi e Gauss-Seidel
n
|aij |
X
max |aii | <1
1≤i≤n
j=1, j̸=i
▶ critério de Sassenfeld
max βi < 1 (13)
1≤i≤n
157 / 168
Convergência dos métodos de Jacobi e Gauss-Seidel
temos que
||BGS ||∞ ≤ max βi
1≤i≤n
Sendo assim, para mostrar que o método converge, basta mostrar que o
critério de Sassenfeld (13) é satisfeito.
158 / 168
Convergência dos métodos de Jacobi e Gauss-Seidel
temos que
||BGS ||∞ ≤ max βi
1≤i≤n
Sendo assim, para mostrar que o método converge, basta mostrar que o
critério de Sassenfeld (13) é satisfeito.
* Para ver que o critério das linhas também é válido para o método de
Gauss-Seidel, basta verificar que
n
|aij |
X
max |aii | <1 ⇒ βi < 1, i=1:n
1≤i≤n
j=1, j̸=i
158 / 168
Convergência dos métodos de Jacobi e Gauss-Seidel
Pn |aij |
Prova: Considere que: max j=1, j̸=i |aii | < 1 (CL → OK)
159 / 168
Convergência dos métodos de Jacobi e Gauss-Seidel
Pn |aij |
Prova: Considere que: max j=1, j̸=i |aii | < 1 (CL → OK)
n n
X |a1j | X |aij |
β1 = ≤ max <1
|a11 | 1≤i≤n |aii |
j=2 j=1, j̸=i
159 / 168
Convergência dos métodos de Jacobi e Gauss-Seidel
Pn |aij |
Prova: Considere que: max j=1, j̸=i |aii | < 1 (CL → OK)
n n
X |a1j | X |aij |
β1 = ≤ max <1
|a11 | 1≤i≤n |aii |
j=2 j=1, j̸=i
159 / 168
Convergência dos métodos de Jacobi e Gauss-Seidel
Pn |aij |
Prova: Considere que: max j=1, j̸=i |aii | < 1 (CL → OK)
n n
X |a1j | X |aij |
β1 = ≤ max <1
|a11 | 1≤i≤n |aii |
j=2 j=1, j̸=i
Fica claro que o critério de Sassenfeld pode ser menor que o das linhas.
Logo, o critério de Sassenfeld pode ser satisfeito e o critério das linhas não, e
portanto o processo iterativo converge.
159 / 168
Convergência dos métodos de Jacobi e Gauss-Seidel
Algumas observações:
▶ Quanto menor o valor de ||B||∞ , mais rápida será a convergência do
método.
▶ Permutação de linhas ou colunas pode reduzir ||B||∞
▶ A convergência dos métodos de Jacobi e Gauss-Seidel não depende do
vetor inicial x(0) .
160 / 168
Convergência dos métodos de Jacobi e Gauss-Seidel
Exemplo
Resolva o sistema utilizando o método de Jacobi.
10 2 1 x1 7
1 5 1 x2 = −8
2 3 10 x3 6
161 / 168
Convergência dos métodos de Jacobi e Gauss-Seidel
Exemplo
Resolva o sistema utilizando o método de Jacobi.
10 2 1 x1 7
1 5 1 x2 = −8
2 3 10 x3 6
Solução do Exemplo
Critério das linhas:
Solução do Exemplo
Ou então basta verificar que a matriz A é estritamente diagonal dominante.
Fórmula de iteração:
(k+1) (k) (k)
x1 = 0.7 − 0.2x2 − 0.1x3
(k+1) (k) (k)
x2 = −1.6 − 0.2x1 − 0.2x3
(k+1) (k) (k)
x3 = 0.6 − 0.2x1 − 0.3x2
k 1 2 3 4 5
x1 0.7 0.96 0.978 0.9994 0.9979
x2 -1.6 -1.86 -1.98 -1.9888 -1.9996
x3 0.6 0.94 0.966 0.966 0.9968
162 / 168
Convergência dos métodos de Jacobi e Gauss-Seidel
Exemplo
Resolva o sistema utilizando o método de Gauss-Seidel.
5 1 1 x1 5
3 4 1 x2 = 6
3 3 6 x3 0
163 / 168
Convergência dos métodos de Jacobi e Gauss-Seidel
Exemplo
Resolva o sistema utilizando o método de Gauss-Seidel.
5 1 1 x1 5
3 4 1 x2 = 6
3 3 6 x3 0
Solução do Exemplo
1) A matriz não é estritamente diagonal dominante. Nada podemos afirmar
sobre a convergência.
163 / 168
Convergência dos métodos de Jacobi e Gauss-Seidel
Exemplo
Resolva o sistema utilizando o método de Gauss-Seidel.
5 1 1 x1 5
3 4 1 x2 = 6
3 3 6 x3 0
Solução do Exemplo
1) A matriz não é estritamente diagonal dominante. Nada podemos afirmar
sobre a convergência.
2) Critério das linhas:
α1 = (|a12 | + |a13 |)/|5| = 0.2 + 0.2 = 0.4 < 1
α2 = (|a21 | + |a23 |)/|4| = 0.75 + 0.25 = 1
α3 = (|a31 | + |a32 |)/|6| = 0.5 + 0.5 = 1
163 / 168
Convergência dos métodos de Jacobi e Gauss-Seidel
Exemplo
Resolva o sistema utilizando o método de Gauss-Seidel.
5 1 1 x1 5
3 4 1 x2 = 6
3 3 6 x3 0
Solução do Exemplo
1) A matriz não é estritamente diagonal dominante. Nada podemos afirmar
sobre a convergência.
2) Critério das linhas:
α1 = (|a12 | + |a13 |)/|5| = 0.2 + 0.2 = 0.4 < 1
α2 = (|a21 | + |a23 |)/|4| = 0.75 + 0.25 = 1
α3 = (|a31 | + |a32 |)/|6| = 0.5 + 0.5 = 1
163 / 168
Convergência dos métodos de Jacobi e Gauss-Seidel
Solução do Exemplo
3) Critério de Sassenfeld:
164 / 168
Convergência dos métodos de Jacobi e Gauss-Seidel
Solução do Exemplo
3) Critério de Sassenfeld:
Assim
max βi = max{0.4, 0.55, 0.475} = 0.55 < 1
1≤i≤n
164 / 168
Convergência dos métodos de Jacobi e Gauss-Seidel
Solução do Exemplo
3) Critério de Sassenfeld:
Assim
max βi = max{0.4, 0.55, 0.475} = 0.55 < 1
1≤i≤n
164 / 168
Convergência dos métodos de Jacobi e Gauss-Seidel
Solução do Exemplo
Fórmula de iteração:
(k+1) (k) (k)
x1 = 1 − 0.2x2 − 0.2x3
(k+1) (k+1) (k)
x2 = 1.5 − 0.75x1 − 0.25x3
(k+1) (k+1) (k+1)
x3 = 0 − 0.5x1 − 0.5x2
165 / 168
Convergência dos métodos de Jacobi e Gauss-Seidel
Solução do Exemplo
Fórmula de iteração:
(k+1) (k) (k)
x1 = 1 − 0.2x2 − 0.2x3
(k+1) (k+1) (k)
x2 = 1.5 − 0.75x1 − 0.25x3
(k+1) (k+1) (k+1)
x3 = 0 − 0.5x1 − 0.5x2
165 / 168
Convergência dos métodos de Jacobi e Gauss-Seidel
Solução do Exemplo
Iterando para k = 1, 2, . . . temos
k 1 2 3 4
x1 1.0 1.025 1.0075 1.0016
x2 0.75 0.95 0.9913 0.9987
x3 -0.875 -0.9875 -0.9994 -1.0002
166 / 168
Convergência dos métodos de Jacobi e Gauss-Seidel
Solução do Exemplo
Iterando para k = 1, 2, . . . temos
k 1 2 3 4
x1 1.0 1.025 1.0075 1.0016
x2 0.75 0.95 0.9913 0.9987
x3 -0.875 -0.9875 -0.9994 -1.0002
166 / 168
Método SOR
167 / 168
Método SOR
onde xSOR (k) é a aproximação do passo anterior obtida pelo método SOR e
xGS (k+1) é a aproximação atual obtida pelo método de Gauss-Seidel.
167 / 168
Método SOR
168 / 168
Método SOR
168 / 168
Método SOR
168 / 168
Método SOR
168 / 168
Método SOR
168 / 168
Método SOR
168 / 168
Método SOR