Buscar

Aula 10 Sistemas lineares

Prévia do material em texto

Universidade Federal do Ceará
Campus de Russas
RUS0024
Programação computacional e
introdução ao cálculo numérico
Aula 10 – Sistemas lineares
Markos Freitas
markos@lia.ufc.br
 
Introdução
● Leis de Kirchhoff
● Circuitos elétricos
– Em um nó, a soma das correntes que entram é igual 
a soma das correntes que saem
● Um nó não acumula carga
– A soma algébrica da diferença de potencial elétrico 
em um percurso fechado é nula
 
Introdução
● Leis de Kirchhoff
● Circuitos elétricos
– Bateria e resistores
 
Introdução
● Leis de Kirchhoff
● Circuitos elétricos
– Qual o fluxo de corrente?
● B: i1 = i2 + i3
● C: i3 = i4 + i5
● Circuito 1: 2i1 + 5i2 + 3i1 = V
● Circuito 2: 3i3 + 2i4 + 4i3 – 5i2 = 0
● Circuito 3: 2i5 + 1i5 – 2i4 = 0
 
Introdução
● Sistema linear
● 5 equações e 5 incógnitas
– 1i1 – 1i2 – 1i3 = 0
– 1i3 – 1i4 – 1i5 = 0
– 5i1 + 5i2 = V
– – 5i2 + 7i3 + 2i4 = 0
– – 2i4 + 3i5 = 0
 
Sistema linear
● Conjunto de equações
● Todas as equações são lineares
– Do tipo
● a0x0 + a1x1 + … anxn = c
– Não existe multiplicação entre incógnitas
● x0x1, x22, xixj3xk
● Sistema anterior
– Incógnitas → is → corrente elétrica
● i1, i2, i3, i4 e i5
 
Sistema linear
● Sistema linear em notação matricial
● 5 equações e 5 incógnitas
– 1i1 – 1i2 – 1i3 + 0i4 + 0i5= 0
– 0i1 + 0i2 + 1i3 – 1i4 – 1i5 = 0
– 5i1 + 5i2 + 0i3 + 0i4 + 0i5 = V
– 0i1 – 5i2 + 7i3 + 2i4 + 0i5 = 0
– 0i1 + 0i2 + 0i3 – 2i4 + 3i5 = 0
● Solução
– Deve satisfazer a todas as equações
 
Sistema linear
● Sistema linear em notação matricial
● 5 linhas e 5 colunas
(
1 – 1 – 1 0 0
0 0 1 – 1 – 1
5 5 0 0 0
0 – 5 7 2 0
0 0 0 – 2 3
) [
i1
i2
i3
i4
i5
]=[ 00V00 ]
 
Sistema linear
● Exemplos
{2 x1+x2=3x1−3 x2=−2→ x∗={x1=1x2=1
{2 x1+x2=34 x1+2 x2=6→ x∗={x1=αx2=3−2α
{2 x1+x2=34 x1+2 x2=2
 
Sistema linear
● Exemplos
1 ponto
{2 x+ y=3x−3 y=−2
x−3 y=−2x−3 y>−2
x−3 y<−2
x−3 y>−2
x−3 y<−2
2 x+ y<3
2 x+ y>3
(1,1)
2 x+ y=3
2 x+ y<3
2 x+ y>3
 
Sistema linear
● Exemplos
infinitos
pontos
{2 x+ y=34 x+2 y=6 2 x+ y=3
2 x+ y>3
2 x+ y<3
4 x+2 y=6
4 x+2 y<6
4 x+2 y>6
 
Sistema linear
● Exemplos
nenhum
ponto
{2 x+ y=34 x+2 y=2 2 x+ y=3
2 x+ y>3
2 x+ y<3
4 x+2 y=2
4 x+2 y<2
4 x+2 y>2
4 x+2 y>2
2 x+ y<3
 
Sistema linear
● Exemplos
1 ponto
{2 x+ y=3x−3 y=−2ax+by=c
 
Sistema linear
● Exemplos
nenhum
ponto
{2 x+ y=3x−3 y=−2ax+by=c
 
Sistema linear
● Exemplos
infinitos
pontos
{a1 x+b1 y+c1 z=d1a2 x+b2 y+c2 z=d2
 
Sistema linear
● Exemplos
1 ponto
{a1 x+b1 y+c1 z=d1a2 x+b2 y+c2 z=d2a3 x+b3 y+c3 z=d3
 
Sistema linear
● De maneira geral
● m equações e n incógnitas
{ a1,1 x1+a1,2 x2+…+a1,n xn=b1→Eq1a2,1 x1+a2,2 x2+…+a2,n xn=b2→Eq2⋮am ,1 x1+am ,2 x2+…+am, n xn=bm→Eqm
(
a1,1 a1,2 ⋯ a1,n
a2,1 a2,2 ⋯ a2,n
⋮ ⋮ ⋱ ⋮
am ,1 am ,2 ⋯ am ,n
)
m×n
[x1x2⋮xn]n×1=[
b1
b2
⋮
bm
]
m×1
Am×n xn×1=bm×1
 
Sistema linear
● De maneira geral
● m equações e n incógnitas
– Uma única soluções
● Sistema compatível determinado
– Nenhuma solução
● Sistema incompatível
– Infinitas soluções
● Sistema compatível indeterminado
 
Álgebra linear
● Matriz A
● Pode ser vista como uma função ou uma transformação
– Associa um vetor b de Rm a cada vetor x de Rn
● Onde b = Ax
● A: Rn → Rm | x → b = Ax
● Resolver o sistema Ax = b consiste em
● Dado b em Rm, obter, x de Rn tal que Ax = b, caso exista
– x* = A-1b → descobrir matriz inversa é complicado
● Três perguntas
● Existe x* tal que Ax* = b?
● Se existir, x* é único?
● Como obter x*?
 
Álgebra linear
● Matriz A
● Dado b
● Existe um único x* tal que A x* = b
A=(2 11 −3)
v=(11)→u=Av=(2 11 −3)(11)=( 3−2)
w=( 2−1)→t=Aw=(2 11 −3)( 2−1)=(35)
b=( 3−2)
x∗=(11)
 
Álgebra linear
● Graficamente
 
Álgebra linear
● Caso geral
● Número de equações diferente do número de 
incógnitas
● Caso específico
● Número de equações igual ao número de incógnitas
– Matriz A seja quadrada
● Colunas linearmente independentes
– Existe solução → sistema compatível determinado
– Nenhuma solução → sistema incompatível
● Colunas linearmente dependentes
– Infinitas soluções → sistema compatível indeterminado
– Nenhuma solução → sistema incompatível
 
Álgebra linear
● Dependência linear
● Um vetor escrito como combinação linear de 
outros vetores
● Matriz linearmente independente
● Suas colunas formam vetores
● Nenhuma coluna pode ser escrita como 
combinação linear das outras colunas
– Mesmo vale para linhas
v⃗=c1 u⃗1+c2 u⃗2+…+cn u⃗n
 
Métodos de sistemas lineares
● Métodos numéricos para resolver sistemas 
lineares
● Métodos diretos
– Fornecem uma solução aproximada após um número 
finito de iterações
● Pode-se calcular o número de iterações previamente
● Exemplos: Regra de Cramer, Eliminação de Gauss, 
Decomposição LU, Fatoração de Cholesky
● Métodos iterativos
– Geram uma sequência de aproximações a partir de uma 
aproximação inicial
● Geralmente, a sequência converge para uma solução
– Exemplos: Método de Gauss-Jacobi, Método de Gauss-Seidel
 
Regra de Cramer
● Calcula determinante
de A → |A|
● Para cada i
● Encontra matriz A(i)
– Troca coluna i
pelo vetor b
● Calcula
determinante
de A(i) → |A(i)|
● xi = |A(i)| / |A|
A x=b
(
a1,1 a1,2 ⋯ a1,n
a2,1 a2,2 ⋯ a2,n
⋮ ⋮ ⋱ ⋮
an ,1 an ,2 ⋯ an ,n
)[ x1x2⋮xn]=[
b1
b2
⋮
bn
]
xi=
|A(i)|
|A|
A(i)=(
a1,1 ⋯ a1, i−1 b1 a1, i+1 ⋯ a1,n
a2,1 ⋯ a2, i−1 b2 a2, i+1 ⋯ a2,n
⋮ ⋯ ⋮ ⋮ ⋮ ⋱ ⋮
an ,1 ⋯ an , i−1 bn an ,i+1 ⋯ an ,n
)
 
Regra de Cramer
● Número de determinantes
● N + 1 cálculos de determinante
● Cálculo de determinante
● N = 1 → direto
● N = 2 → fácil
● N = 3 → médio
● N ≥ 4 → chato de fazer
 
Regra de Cramer
● Determinante
● Escolha uma linha i
– Somatório nos elementos da linha i
● A-i,-j é A excluindo-se a linha i e a coluna j
– Exige o determinante de n matrizes de tamanho
n-1 x n-1
● Pode-se escolher uma coluna j
– Somatório nos elementos da coluna j
|A|=∑
j=1
n
(−1)i+ j ai , j|A−i ,− j|
 
Regra de Cramer
● Determinante de matriz n-1 x n-1
● n-1 determinantes de matriz n-2 x n-2
● Determinante de matriz n-2 x n-2
● n-2 determinantes de matriz n-3 x n-3
● …
● Determinante de matriz 4 x 4
● 4 determinantes de matriz 3 x 3
● Totalizando
● O(n!) operações
– Número muito grande
– Impraticável
 
Eliminação de Gauss
● Transformação
● Matriz cheia em uma triangular superior
– Matriz A em uma matriz Ã
– De forma que
● x* é solução dos dois sistemas lineares
– Sistemas equivalentes
● Mesma solução
A x=b→~A x=~b
 
Eliminação de Gauss
● Resolução de sistema triangular superior
(
a1,1 a1,2 a1,3 ⋯ a1,n−1 a1,n
0 a2,2 a2,3 ⋯ a2,n−1 a2,n
0 0 a3,3 ⋯ a3,n−1 a3,n
⋮ ⋮ ⋮ ⋱ ⋮ ⋮
0 0 0 ⋯ an−1,n−1 an−1,n
0 0 0 ⋯ 0 an ,n
) [ x1x2⋮xn ]=[b1b2⋮bn ]
{
a1,1 x1+a1,2 x2+a1,3 x3+…+a1,n−1 xn−1+a1,n xn=b1
a2,2 x2+a2,3 x3+…+a2,n−1 xn−1+a2,n xn=b2
a3,3 x3+…+a3,n−1 xn−1+a3,n xn=b3
⋮
an−1,n−1 xn−1+an ,n xn=bn−1
an ,n xn=bn
 
Eliminação de Gauss
● Resolução de sistema triangular superior
● Encontro xn → da equação n
– Diretamente → xn = bn / an,n
● Encontro xn-1 → da equação n-1
– Usando xn → xn-1 = (bn-1 – an-1,n xn)/an-1,n-1
● …
● Encontro x2 → da equação 2
– x2 = (b2 – a2,n xn – a2,n-1 xn-1 – … – a2,3 x3)/a2,2
● Encontro x1 → da equação 1
– x1 = (b1 – a1,n xn – a1,n-1 xn-1 – … – a1,2 x2)/a1,1
 
Eliminação de Gauss
● Algoritmo de substituição retroativa
xn = bn / an,n
para k = n-1, …, 1 faça
s = 0
para j = k+1,…, n faça
s = s + ak,j xj
xk = (bk – s)/ak,k
 
Eliminação de Gauss
● Operações elementares
● Garantem a equivalência entre sistemas
– Trocar duas equações
● Eqi ↔ Eqj
● Li ↔ Lj
– Multiplicar uma equação por uma constante
● Constante diferente de 0
– Eqi ← c Eqi, c ≠ 0
– Li ← c Li, c ≠ 0
– Adicionar um múltiplo de uma equação a outra equação
● Múltiplo diferente de 0
– Eqi ← Eqi + c Eqj, c ≠ 0
– Li ← Li + c Lj, c ≠ 0
 
Eliminação de Gauss
● Procedimento
● Converter matriz qualquer em triangular 
superior
– Eliminação → transformação em zeros
– Eliminação coluna a coluna
● Assumimos |A| ≠ 0
● Matriz aumentada A|b
– Matriz A concatenada do vetor b
● Vetor b colocado como última coluna na matriz A|b
 
Eliminação de Gauss
● Matriz aumentada A|b
A x=b
(
a1,1 a1,2 ⋯ a1,n
a2,1 a2,2 ⋯ a2,n
⋮ ⋮ ⋱ ⋮
an ,1 an ,2 ⋯ an ,n
)[ x1x2⋮xn]=[
b1
b2
⋮
bn
]
A∣b=(
a1,1 a1,2 ⋯ a1,n
a2,1 a2,2 ⋯ a2,n
⋮ ⋮ ⋱ ⋮
an ,1 an ,2 ⋯ an ,n
|b1b2⋮bn)
 
Eliminação de Gauss
● Inicialização
● A(0)|b(0) ← A|b
● Sequência de transformações
● A(1)|b(1) de A(0)|b(0)
– 1a coluna, abaixo da diagonal principal, é composta de zeros
● A(2)|b(2) de A(1)|b(1)
– 2a coluna, abaixo da diagonal principal, é composta de zeros
● A(3)|b(3) de A(2)|b(2)
– 3a coluna, abaixo da diagonal principal, é composta de zeros
● …
● A(n-1)|b(n-1) de A(n-2)|b(n-2)
– n-1-ésima coluna, abaixo da diagonal principal, é composta de zeros
– A(n-1) é triangular superior
● Resolução por substituição retroativa
● A(n-1)x = b(n-1)
 
Eliminação de Gauss
● Inicialização
● A(0)|b(0) ← A|b
(
a1,1
(0) a1,2
(0) a1,3
(0) ⋯ a1,n−1
(0) a1,n
(0)
a2,1
(0) a2,2
(0) a2,3
(0) ⋯ a2,n−1
(0) a2,n
(0)
a3,1
(0) a3,2
(0) a3,3
(0) ⋯ a3,n−1
(0) a3,n
(0)
⋮ ⋮ ⋮ ⋱ ⋮ ⋮
an−1,1
(0) an−1,2
(0) an−1,3
(0) ⋯ an−1,n−1
(0) an−1,n
(0)
an ,1
(0) an ,2
(0) an ,3
(0) ⋯ an ,n−1
(0) an ,n
(0)
|
b1
(0)
b2
(0)
b3
(0)
⋮
bn−1
(0)
bn
(0)
)
 
Eliminação de Gauss
● Transformação
● A(1)|b(1) de A(0)|b(0)
(
a1,1
(1) a1,2
(1) a1,3
(1) ⋯ a1,n−1
(1) a1,n
(1)
0 a2,2
(1) a2,3
(1) ⋯ a2,n−1
(1) a2,n
(1)
0 a3,2
(1) a3,3
(1) ⋯ a3,n−1
(1) a3,n
(1)
⋮ ⋮ ⋮ ⋱ ⋮ ⋮
0 an−1,2
(1) an−1,3
(1) ⋯ an−1,n−1
(1) an−1,n
(1)
0 an ,2
(1) an ,3
(1) ⋯ an ,n−1
(1) an ,n
(1)
|
b1
(1)
b2
(1)
b3
(1)
⋮
bn−1
(1)
bn
(1)
)
 
Eliminação de Gauss
● Transformação
● A(1)|b(1) de A(0)|b(0)
● Terceira operação elementar
– Adicionar um múltiplo de uma equação a outra equação
● Múltiplo da equação 1
● Linha 2
– L2 ← L2 + c2,1 L1, c2,1 ≠ 0
● L2(1) ← L2(0) + c2,1 L1(0), c2,1 ≠ 0
– Restrição → a2,1(1) = 0
● a2,1(1) = a2,1(0) + c2,1 a1,1(0) = 0
● c2,1 = - a2,1(0) / a1,1(0) = - m2,1
– m2,1 = a2,1(0) / a1,1(0) → multiplicador da linha 2
 
Eliminação de Gauss
● Transformação
● A(1)|b(1) de A(0)|b(0)
● Terceira operação elementar
– Adicionar um múltiplo de uma equação a outra equação
● Múltiplo da equação 1
● Linha 3
– L3 ← L3 + c3,1 L1, c3,1 ≠ 0
● L3(1) ← L3(0) + c3,1 L1(0), c3,1 ≠ 0
– Restrição → a3,1(1) = 0
● a3,1(1) = a3,1(0) + c3,1 a1,1(0) = 0
● c3,1 = - a3,1(0) / a1,1(0) = - m3,1
– m3,1 = a3,1(0) / a1,1(0) → multiplicador da linha 3
 
Eliminação de Gauss
● Transformação
● A(1)|b(1) de A(0)|b(0)
● Terceira operação elementar
– Adicionar um múltiplo de uma equação a outra 
equação
● Múltiplo da equação 1
● Linha n
– mn,1 = an,1(0) / a1,1(0) → multiplicador da linha n
– cn,1 = - mn,1 = - an,1(0) / a1,1(0)
 
Eliminação de Gauss
● Transformação
● A(1)|b(1) de A(0)|b(0)
● Linha i > 1
– mi,1 = ai,1(0) / a1,1(0)
– ai,j(1) = ai,j(0) - mi,1 a1,j(0)
– bi(1) = bi(0) - mi,1 b1(0)
● Linha 1
– Não modificada
● Pivô
– a1,1(0)
 
Eliminação de Gauss
● Transformação
● A(2)|b(2) de A(1)|b(1)
(
a1,1
(2) a1,2
(2) a1,3
(2) ⋯ a1,n−1
(2) a1,n
(2)
0 a2,2
(2) a2,3
(2) ⋯ a2,n−1
(2) a2,n
(2)
0 0 a3,3
(2) ⋯ a3,n−1
(2) a3,n
(2)
⋮ ⋮ ⋮ ⋱ ⋮ ⋮
0 0 an−1,3
(2) ⋯ an−1,n−1
(2) an−1,n
(2)
0 0 an ,3
(2) ⋯ an ,n−1
(2) an ,n
(2)
|
b1
(2)
b2
(2)
b3
(2)
⋮
bn−1
(2)
bn
(2)
)
 
Eliminação de Gauss
● Transformação
● A(2)|b(2) de A(1)|b(1)
● Linha i > 2
– mi,2 = ai,2(1) / a2,2(1)
– ai,j(2) = ai,j(1) - mi,2 a2,j(1)
– bi(2) = bi(1) - mi,2 b2(1)
● Linha i ≤ 2
– Não modificada
● Pivô
– a2,2(1)
 
Eliminação de Gauss
● Transformação
● A(k)|b(k) de A(k-1)|b(k-1)
● Linha i > k
– mi,k = ai,k(k-1) / ak,k(k-1)
– ai,j(k) = ai,j(k-1) - mi,k ak,j(k-1)
– bi(k) = bi(k-1) - mi,k bk(k-1)
● Linha i ≤ k
– Não modificada
● Pivô
– ak,k(k-1)
(
a1,1
(k ) a1,2
(k ) ⋯ a1,n−1
(k ) ⋯ a1,n
(k )
0 a2,2
(k ) ⋯ a2,n−1
(k ) ⋯ a2,n
(k)
⋮ ⋮ ⋱ ⋮ ⋱ ⋮
0 0 ⋯ ak ,n−1
(k) ⋯ ak ,n
(k )
⋮ ⋮ ⋱ ⋮ ⋱ ⋮
0 0 ⋯ an ,n−1
(k) ⋯ an ,n
(k )
|
b1
(k )
b2
(k )
⋮
bk
(k )
⋮
bn
(k )
)
 
Eliminação de Gauss
● Transformação
● A(n-1)|b(n-1) de A(n-2)|b(n-2)
● Sistema linear A(n-1)|b(n-1)
– Triangular superior
(
a1,1
(n−1) a1,2
(n−1) a1,3
(n−1) ⋯ a1,n−1
(n−1) a1,n
(n−1)
0 a2,2
(n−1) a2,3
(n−1) ⋯ a2,n−1
(n−1) a2,n
(n−1)
0 0 a3,3
(n−1) ⋯ a3,n−1
(n−1) a3,n
(n−1)
⋮ ⋮ ⋮ ⋱ ⋮ ⋮
0 0 0 ⋯ an−1,n−1
(n−1) an−1,n
(n−1)
0 0 0 ⋯ 0 an ,n
(n−1)
|
b1
(n−1)
b2
(n−1)
b3
(n−1)
⋮
bn−1
(n−1)
bn
(n−1)
)
 
Eliminação de Gauss
● Exemplo
● Entrada
● Primeiro passo → k = 1
– Pivô → a1,1(0) = 3
– Primeira linha → i = 1
● Não modificada
{3 x1+2 x2+4 x3=1x1+x2+2 x3=24 x1+3 x2−2 x3=3 A(0)∣b(0)=(
3 2 4
1 1 2
4 3 −2|
1
2
3)
 
Eliminação de Gauss
● Exemplo
● Entrada
● Primeiro passo → k = 1
– Pivô → a1,1(0) = 3
– Segunda linha → i = 2
● Multiplicador → m2,1 = a2,1(0) / a1,1(0) = 1 / 3
– Operação elementar → L2(1) ← L2(0) - m2,1 L1(0)
● Coluna 1 → j = 1 → a2,1(1) = a2,1(0) - m2,1 a1,1(0) = 1 – 1/3 * 3 = 0
{3 x1+2 x2+4 x3=1x1+x2+2 x3=24 x1+3 x2−2 x3=3 A(0)∣b(0)=(
3 2 4
1 1 2
4 3 −2|
1
2
3)
 
Eliminação de Gauss
● Exemplo
● Entrada
● Primeiro passo → k = 1
– Pivô → a1,1(0) = 3
– Segunda linha → i = 2
● Multiplicador → m2,1 = a2,1(0) / a1,1(0) = 1 / 3
– Operação elementar → L2(1) ← L2(0) - m2,1 L1(0)
● Coluna 2 → j = 2 → a2,2(1) = a2,2(0) - m2,1 a1,2(0) = 1 – 1/3 * 2 = 
1/3
{3 x1+2 x2+4 x3=1x1+x2+2 x3=24 x1+3 x2−2 x3=3 A(0)∣b(0)=(
3 2 4
1 1 2
4 3 −2|
1
2
3)
 
Eliminação de Gauss
● Exemplo
● Entrada
● Primeiro passo → k = 1
– Pivô → a1,1(0) = 3
– Segunda linha → i = 2
● Multiplicador → m2,1 = a2,1(0) / a1,1(0) = 1 / 3
– Operação elementar → L2(1) ← L2(0) - m2,1 L1(0)
● Coluna 3 → j = 3 → a2,3(1) = a2,3(0) - m2,1 a1,3(0) = 2 – 1/3 * 4 = 
2/3
{3 x1+2 x2+4 x3=1x1+x2+2 x3=24 x1+3 x2−2 x3=3 A(0)∣b(0)=(
3 2 4
1 1 2
4 3 −2|
1
2
3)
 
Eliminação de Gauss
● Exemplo
● Entrada
● Primeiro passo → k = 1
– Pivô → a1,1(0) = 3
– Segunda linha → i = 2
● Multiplicador → m2,1 = a2,1(0) / a1,1(0) = 1 / 3
– Operação elementar → L2(1) ← L2(0) - m2,1 L1(0)
● Vetor b → b2(1) = b2(0) - m2,1 b1(0) = 2 – 1/3 * 1 = 5/3
{3 x1+2 x2+4 x3=1x1+x2+2 x3=24 x1+3 x2−2 x3=3 A(0)∣b(0)=(
3 2 4
1 1 2
4 3 −2|
1
2
3)
 
Eliminação de Gauss
● Exemplo
● Entrada
● Primeiro passo → k = 1
– Pivô → a1,1(0) = 3
– Terceira linha → i = 3
● Multiplicador → m3,1 = a3,1(0) / a1,1(0) = 4 / 3
– Operação elementar → L3(1) ← L3(0) - m3,1 L1(0)
● Coluna 1 → j = 1 → a3,1(1) = a3,1(0) - m3,1 a1,1(0) = 4 – 4/3 * 3 = 0
{3 x1+2 x2+4 x3=1x1+x2+2 x3=24 x1+3 x2−2 x3=3 A(0)∣b(0)=(
3 2 4
1 1 2
4 3 −2|
1
2
3)
 
Eliminação de Gauss
● Exemplo
● Entrada
● Primeiro passo → k = 1
– Pivô → a1,1(0)= 3
– Terceira linha → i = 3
● Multiplicador → m3,1 = a3,1(0) / a1,1(0) = 4 / 3
– Operação elementar → L3(1) ← L3(0) - m3,1 L1(0)
● Coluna 2 → j = 2 → a3,2(1) = a3,2(0) - m3,1 a1,2(0) = 3 – 4/3 * 2 = 
1/3
{3 x1+2 x2+4 x3=1x1+x2+2 x3=24 x1+3 x2−2 x3=3 A(0)∣b(0)=(
3 2 4
1 1 2
4 3 −2|
1
2
3)
 
Eliminação de Gauss
● Exemplo
● Entrada
● Primeiro passo → k = 1
– Pivô → a1,1(0) = 3
– Terceira linha → i = 3
● Multiplicador → m3,1 = a3,1(0) / a1,1(0) = 4 / 3
– Operação elementar → L3(1) ← L3(0) - m3,1 L1(0)
● Coluna 3 → j = 3 → a3,3(1) = a3,3(0) - m3,1 a1,3(0) = -2 – 4/3 * 4 = 
-22/3
{3 x1+2 x2+4 x3=1x1+x2+2 x3=24 x1+3 x2−2 x3=3 A(0)∣b(0)=(
3 2 4
1 1 2
4 3 −2|
1
2
3)
 
Eliminação de Gauss
● Exemplo
● Entrada
● Primeiro passo → k = 1
– Pivô → a1,1(0) = 3
– Terceira linha → i = 3
● Multiplicador → m3,1 = a3,1(0) / a1,1(0) = 4 / 3
– Operação elementar → L3(1) ← L3(0) - m3,1 L1(0)
● Vetor b → b3(1) = b3(0) - m3,1 b1(0) = 3 – 4/3 * 1 = 5/3
{3 x1+2 x2+4 x3=1x1+x2+2 x3=24 x1+3 x2−2 x3=3 A(0)∣b(0)=(
3 2 4
1 1 2
4 3 −2|
1
2
3)
 
Eliminação de Gauss
● Exemplo
● Fim do primeiro passo
● Segundo passo → k = 2
– Pivô → a2,2(1) = 1/3
– Primeira linha → i = 1
● Não modificada
– Segunda linha → i = 2
● Não modificada
A(1)∣b(1)=(3 2 40 1 /3 2/30 1 /3 −22/3|
1
5 /3
5 /3){
3 x1+2 x2+4 x3=1
1/3 x2+2 /3 x3=5 /3
1 /3 x2−22/3 x3=5 /3
 
Eliminação de Gauss
● Exemplo
● Fim do primeiro passo
● Segundo passo → k = 2
– Pivô → a2,2(1) = 1/3
– Primeira linha → i = 3
● Multiplicador → m3,2 = a3,2(1) / a2,2(1) = 1/3 / 1/3 = 1
– Operação elementar → L3(2) ← L3(1) - m3,2 L2(1)
● Coluna 1 → j = 1 → a3,1(2) = a3,1(1) - m3,2 a2,1(1) = 0 – 1 * 0 = 0
A(1)∣b(1)=(3 2 40 1 /3 2/30 1 /3 −22/3|
1
5 /3
5 /3){
3 x1+2 x2+4 x3=1
1/3 x2+2 /3 x3=5 /3
1 /3 x2−22/3 x3=5 /3
 
Eliminação de Gauss
● Exemplo
● Fim do primeiro passo
● Segundo passo → k = 2
– Pivô → a2,2(1) = 1/3
– Primeira linha → i = 3
● Multiplicador → m3,2 = a3,2(1) / a2,2(1) = 1/3 / 1/3 = 1
– Operação elementar → L3(2) ← L3(1) - m3,2 L2(1)
● Coluna 2 → j = 2 → a3,2(2) = a3,2(1) - m3,2 a2,2(1) = 1/3 – 1 * 1/3 = 
0
A(1)∣b(1)=(3 2 40 1 /3 2/30 1 /3 −22/3|
1
5 /3
5 /3){
3 x1+2 x2+4 x3=1
1/3 x2+2 /3 x3=5 /3
1 /3 x2−22/3 x3=5 /3
 
Eliminação de Gauss
● Exemplo
● Fim do primeiro passo
● Segundo passo → k = 2
– Pivô → a2,2(1) = 1/3
– Primeira linha → i = 3
● Multiplicador → m3,2 = a3,2(1) / a2,2(1) = 1/3 / 1/3 = 1
– Operação elementar → L3(2) ← L3(1) - m3,2 L2(1)
● Coluna 3 → j = 3 → a3,3(2) = a3,3(1) - m3,2 a2,3(1) = -22/3 – 1 * 2/3 
= -24/3 = -8
A(1)∣b(1)=(3 2 40 1 /3 2/30 1 /3 −22/3|
1
5 /3
5 /3){
3 x1+2 x2+4 x3=1
1/3 x2+2 /3 x3=5 /3
1 /3 x2−22/3 x3=5 /3
 
Eliminação de Gauss
● Exemplo
● Fim do primeiro passo
● Segundo passo → k = 2
– Pivô → a2,2(1) = 1/3
– Primeira linha → i = 3
● Multiplicador → m3,2 = a3,2(1) / a2,2(1) = 1/3 / 1/3 = 1
– Operação elementar → L3(2) ← L3(1) - m3,2 L2(1)
● Vetor b → b3(2) = b3(1) - m3,2 b2(1) = 5/3 – 1 * 5/3 = 0
A(1)∣b(1)=(3 2 40 1 /3 2/30 1 /3 −22/3|
1
5 /3
5 /3){
3 x1+2 x2+4 x3=1
1/3 x2+2 /3 x3=5 /3
1 /3 x2−22/3 x3=5 /3
 
Eliminação de Gauss
● Exemplo
● Fim do segundo passo
● Resolução por substituição retroativa
– x3 = ( 0 ) / ( -8 ) = 0
– x2 = ( 5/3 – 2/3 * 0 ) / ( 1/3 ) = 5
– x1 = ( 1 – 2 * 5 – 4 * 0 ) / ( 3 ) = -3
A(2)∣b(2)=(3 2 40 1/3 2 /30 0 −8|
1
5 /3
0 ){
3 x1+2 x2+4 x3=1
1 /3 x2+2/3 x3=5 /3
−8 x3=0
 
Eliminação de Gauss
● Algoritmo
● Passo k
– Linha i ≤ k, coluna j < k
● Não modificada
● Desnecessário considerá-las
– Linha i > k, coluna = k
● Valor 0
● Desnecessário fazer cálculos
● Reaproveitamento de espaço
– Alteração da mesma matriz A
– Alteração do mesmo vetor b
 
Eliminação de Gauss
● Algoritmo de eliminação de Gauss com 
substituição retroativa
para k = 1, …, n-1 faça
 para i = k+1, …, n faça
 m = ai,k / ak,k
 ai,k = 0
 para j = k+1, …, n faça
 ai,j = ai,j – m * ak,j
 bi = bi – m * bk
xn = bn / an,n
para k = n-1, …, 1 faça
 s = 0
 para j = k+1, …, n faça
 s = s + ak,j xj
 xk = (bk – s)/ak,k
 
Eliminação de Gauss com 
pivoteamento
● Passo k
● Multiplicador → divisão por ak,k
– Se ak,k for 0 → divisão por 0 → número inválido
● NaN
– Se ak,k for próximo de 0 → divisão por número muito 
pequeno → número muito grande
– Imprecisão nos resultados
● Erro muito grande
● Pivoteamento
● Parcial → troca de linhas
● Total → troca de linhas e colunas
 
Eliminação de Gauss com 
pivoteamento
● Pivoteamento parcial
● Troca de linhas
– Procurar elemento na coluna mais longe de 0
● Início do passo k
– Escolhe a linha i ≥ k com maior ai,k
● Em valor absoluto
– Troca linha i com linha k
● Na matriz A e no vetor b
 
Eliminação de Gauss com 
pivoteamento
● Pivoteamento total
● Troca de linhas e colunas
– Procurar elemento mais longe de 0
● Início do passo k
– Escolhe a linha i ≥ k e a coluna j ≥ k com maior ai,j
● Em valor absoluto
– Troca linha i com linha k
● Na matriz A e no vetor b
– Troca coluna j com coluna k
● Na matriz A
– Consequências para o vetor x
● Troca das linhas j com k no vetor x
 
Eliminação de Gauss com 
pivoteamento
● Exemplo → aritmética de 3 dígitos
● Sem pivoteamento
{0,0002 x1+2 x2=52 x1+2 x2=6
A(0)∣b(0)=(0,2×10−3 0,2×1010,2×101 0,2×101|0,5×10
1
0,6×101)
m2,1=
0,2×101
0,2×10−3
=0,1×105
a2,2=0,2×10
1−(0,1×105)×(0,2×101)=−0,2×105
b2=0,6×10
1−(0,1×105)×(0,5×101)=−0,5×105
A(1)∣b(1)=(0,2×10−3 0,2×1010 −0,2×105| 0,5×10
1
−0,5×105)
 
Eliminação de Gauss com 
pivoteamento
● Exemplo → aritmética de 3 dígitos
● Sem pivoteamento
● Substituição retroativa
{0,0002 x1+2 x2=52 x1+2 x2=6
A(1)∣b(1)=(0,2×10−3 0,2×1010 −0,2×105| 0,5×10
1
−0,5×105)
x2=
−0,5×105
−0,2×105
=0,25×101=2,5
x1=
0,5×101−(0,2×101)×(0,25×101)
0,2×10−3
=0,5×10
1−0,5×101
0,2×10−3
=0
 
Eliminação de Gauss com 
pivoteamento
● Exemplo → aritmética de 3 dígitos
● Sem pivoteamento
● Ax = b
{0,0002 x1+2 x2=52 x1+2 x2=6
(0,0002 22 2)[ 02,5]=[55]≠[56 ]
 
Eliminação de Gauss com 
pivoteamento
● Exemplo → aritmética de 3 dígitos
● Com pivoteamento parcial
{0,0002 x1+2 x2=52 x1+2 x2=6
A(0)∣b(0)=( 0,2×101 0,2×1010,2×10−3 0,2×101|0,5×10
1
0,6×101)
m2,1=
0,2×10−3
0,2×101
=0,1×10−3
a2,2=0,2×10
1−(0,1×10−3)×(0,2×101)=0,2×101
b2=0,6×10
1−(0,1×10−3)×(0,5×101)=0,5×101
A(1)∣b(1)=(0,2×101 0,2×1010 0,2×101|0,6×10
1
0,5×101)
 
Eliminação de Gauss com 
pivoteamento
● Exemplo → aritmética de 3 dígitos
● Com pivoteamento parcial
● Substituição retroativa
{0,0002 x1+2 x2=52 x1+2 x2=6
A(1)∣b(1)=(0,2×101 0,2×1010 0,2×101|0,6×10
1
0,5×101)
x2=
0,5×101
0,2×101
=0,25×101=2,5
x1=
0,6×101−(0,2×101)×(0,25×101)
0,2×101
=0,6×10
1−0,5×101
0,2×101
=0,5
 
Eliminação de Gauss com 
pivoteamento
● Exemplo → aritmética de 3 dígitos
● Com pivoteamento parcial
● Ax = b
{0,0002 x1+2 x2=52 x1+2 x2=6
(0,0002 22 2)[0,52,5]=[5,00016 ]≃[56 ]
 
Decomposição LU
● Decomposição ou fatoração
● Transformar a matriz A em uma multiplicação de 
matrizes
● Decomposição LU
– A = L U
● L é triangular inferior com diagonal unitária
● U é triangular superior
– Resolução de dois sistemas lineares
● A x = b → LUx = b
– Faço Ux = y
– Ly = b → Encontra-se y por substituição direta
– Ux = y → Encontra-se y por substituição retroativa
● Pode-se trocar b por qualquer outro vetor
– A fatoração de A não muda
 
Decomposição LU
● A = LU
● Substituição direta
● Ly = b
(
a1,1 a1,2 ⋯ a1,n
a2,1 a2,2 ⋯ a2,n
⋮ ⋮ ⋱ ⋮
an,1 an ,2 ⋯ an ,n
)=( 1 0 ⋯ 0l2,1 1 ⋯ 0⋮ ⋮ ⋱ ⋮ln ,1 ln ,2 ⋯ 1)(
u1,1 u1,2 ⋯ u1,n
0 u2,2 ⋯ u2,n
⋮ ⋮ ⋱ ⋮
0 0 ⋯ un ,n
)
(
1 0 ⋯ 0
l2,1 1 ⋯ 0
⋮ ⋮ ⋱ ⋮
ln ,1 ln ,2 ⋯ 1
)[ y1y2⋮yn ]=[
b1
b2
⋮
bn
]
 
Decomposição LU
● A = LU
● Substituição retroativa
● Ux = y
(
a1,1 a1,2 ⋯ a1,n
a2,1 a2,2 ⋯ a2,n
⋮ ⋮ ⋱ ⋮
an ,1 an ,2 ⋯ an ,n
)=( 1 0 ⋯ 0l2,1 1 ⋯ 0⋮ ⋮ ⋱ ⋮ln ,1 ln ,2 ⋯ 1)(
u1,1 u1,2 ⋯ u1,n
0 u2,2 ⋯ u2,n
⋮ ⋮ ⋱ ⋮
0 0 ⋯ un ,n
)
(
u1,1 u1,2 ⋯ u1,n
0 u2,2 ⋯ u2,n
⋮ ⋮ ⋱ ⋮
0 0 ⋯ un ,n
) [ x1x2⋮xn ]=[
y1
y2
⋮
yn
]
 
Decomposição LU
● A = LU
● Como descobrir L e U?
– Processo de eliminação de Gauss
● Multiplicadores fazem parte de L
● Matriz A(n-1) é a matriz U
(
a1,1 a1,2 ⋯ a1,n
a2,1 a2,2 ⋯ a2,n
⋮ ⋮ ⋱ ⋮
an ,1 an ,2 ⋯ an ,n
)=( 1 0 ⋯ 0l2,1 1 ⋯ 0⋮ ⋮ ⋱ ⋮ln ,1 ln ,2 ⋯ 1)(
u1,1 u1,2 ⋯ u1,n
0 u2,2 ⋯ u2,n
⋮ ⋮ ⋱ ⋮
0 0 ⋯ un ,n
)
 
Decomposição LU
A=(a1,1 a1,2 a1,3a2,1 a2,2 a2,3a3,1 a3,2 a3,3)=(
1 0 0
l2,1 1 0
l3,1 l3,2 1)(
u1,1 u1,2 u1,3
0 u2,2 u2,3
0 0 u3,3)=LU
A(0)=(a1,1
(0) a1,2
(0) a1,3
(0)
a2,1
(0) a2,2
(0) a2,3
(0)
a3,1
(0) a3,2
(0) a3,3
(0))=(a1,1 a1,2 a1,3a2,1 a2,2 a2,3a3,1 a3,2 a3,3)
l2,1=m2,1=
a2,1
(0)
a1,1
(0) l3,1=m3,1=
a3,1
(0)
a1,1
(0) → A
(1)=(a1,1
(1) a1,2
(1) a1,3
(1)
0 a2,2
(1) a2,3
(1)
0 a3,2
(1) a3,3
(1))
l3,2=m3,2=
a3,2
(1)
a2,2
(1) → U=A
(2)=(a1,1
(2) a1,2
(2) a1,3
(2)
0 a2,2
(2) a2,3
(2)
0 0 a3,3
(2))
 
Decomposição LU
● Exemplo
{3 x1+2 x2+4 x3=1x1+x2+2 x3=24 x1+3 x2−2 x3=3
A(0)=(3 2 41 1 24 3 −2)→m2,1=13 ,m3,1=43
A(1)=(3 2 40 1/3 2 /30 1/3 −22/3)→m3,1=1 /31 /3=1
A(2)=(3 2 40 1 /3 2/30 0 −8 )
L=( 1 0 01 /3 1 04 /3 1 1) U=(
3 2 4
0 1/3 2 /3
0 0 −8 )
 
Decomposição LU
● Exemplo
LU=( 1 0 01 /3 1 04 /3 1 1)(
3 2 4
0 1/3 2 /3
0 0 −8 )=
( 1∗3+0∗0+0∗0 1∗2+0∗1 /3+0∗0 1∗4+0∗2 /3+0∗−81/3∗3+1∗0+0∗0 1/3∗2+1∗1/3+0∗0 1/3∗4+1∗2 /3+0∗−84 /3∗3+1∗0+1∗0 4 /3∗2+1∗1/3+1∗0 4 /3∗4+1∗2/3+1∗−8)=
( 3+0+0 2+0+0 4+0+01+0+0 2/3+1/3+0 4 /3+2 /3+012/3+0+0 8 /3+1/3+0 16 /3+2 /3−8)=
(3 2 41 1 24 3 −2)
 
Decomposição LU
● Exemplo
Ly=b
( 1 0 01/3 1 04 /3 1 1)[ y1y2y3]=[
1
2
3]
y1=1
1
3
y1+ y2=2→ y2=2−1 /3=5 /3
4
3
y1+1 y2+ y3=3→ y3=3−4 /3−5 /3=0
Ux= y
(3 2 40 1 /3 2/30 0 −8 )[ x1x2x3]=[
1
5/3
0 ]
x3=0
x2=5
x1=−3
 
Decomposição LU
● Observações
● Decomposição
– Descobrimos multiplicadores de L
– Descobrimos U
– Não mexemos em b
● Substituição direta → Ly = b
– Mesmo que fazer eliminação de Gauss em b
● Substituição retroativa
– Mesmo da eliminação de Gauss
 
Decomposição LU
● Observações
● É possível fazer pivoteamento
– Parcial
● Mais fácil
● Deve-se fazer a troca de linhas também no vetor b
– Total
● Mais difícil
● Deve-se fazer a troca de linhas também no vetor b
– De acordo com a troca de linhas da matriz A
● Deve-se fazer a troca de linhas também no vetor x
– De acordo com a troca de colunas da matriz A
 
Decomposição LU
● Observações
● Economia de espaço
– Utiliza-se a matriz A para guardar L e de U
● L
– Diagonal principal → sempre 1
– Acima da diagonal principal → sempre 0
● U
– Abaixo da diagonal principal → sempre 0
● A
– Diagonal principal → armazena a diagonal principal de U
– Acima da diagonal principal → armazena elementos de U
– Abaixo da diagonal principal → armazena elementos de L
 
Decomposição LU
● Algoritmo → Decomposição LU
para k = 1, …, n-1 faça
 para i = k+1, …, n faça
 m = ai,k / ak,k
 ai,k = m
 para j = k+1, …, n faça
 ai,j = ai,j – m * ak,j
 
Decomposição LU
● Algoritmo → Resolução
para i = 1, …, n faça
 s = 0
 para j = 1, …, i-1 faça
 s = s + ai,j yj
 yi = bi – s
para i = n, …, 1 faça
 s = 0
 para j = i+1, …, n faça
 s = s + ai,j xj
 xi = (bi – s)/ai,i
 
Fatoração de Cholesky
● Caso específico da decomposição LU
● Para matrizes simétricas, definidas positivas
– Matriz A é definida positiva se xT A x > 0, para qualquer 
vetor x
● xT é a transposta de x
● A = LU = LDU = L(DD)LT = (LD)(LD)T = GGT
– D é matriz diagonal contendo os elementos da 
diagonal principal de U
– U = LT, pois a matriz é simétrica
– Em D, di,i = √di,i
– G = LD
● Triangular inferior com diagonal estritamente positiva
 
Fatoração de Cholesky
● Exemplo
(
16 −4 12 −4
−4 2 −1 1
12 −1 14 −2
−4 1 −2 83
)=(
1 0 0 0
−1/4 1 0 0
3 /4 2 1 0
−1/4 0 1 1
)(
16 −4 12 −4
0 1 2 0
0 0 1 1
0 0 0 81
)=
(
1 0 0 0
−1/4 1 0 0
3 /4 2 1 0
−1/4 0 1 1
)(
16 0 0 0
0 1 0 0
0 0 1 0
0 0 0 81
)(
1 −1 /4 3 /4 −1/4
0 1 2 0
0 0 1 1
0 0 0 1
)=
(
1 0 0 0
−1/4 1 0 0
3 /4 2 1 0
−1/4 0 1 1
)(
4 0 0 0
0 1 0 0
0 0 1 0
0 0 0 9
)(
4 0 0 0
0 1 0 0
0 0 1 0
0 0 0 9
)(
1 −1 /4 3 /4 −1/4
0 1 2 0
0 0 1 1
0 0 0 1
)
 
Fatoração de Cholesky
● Exemplo
(
16 −4 12 −4
−4 2 −1 1
12 −1 14 −2
−4 1 −2 83
)=
(
4 0 0 0
−1 1 0 0
3 2 1 0
−1 0 1 9
)(
4 −1 3 −1
0 1 2 0
0 0 1 1
0 0 0 9
)
 
Fatoração de Cholesky
● A = GGT → coluna k = 1
(
a1,1 a2,1 ⋯ an ,1
a2,1 a2,2 ⋯ an ,2
⋮ ⋮ ⋱ ⋮
an ,1 an ,2 ⋯ an ,n
)=(
g1,1 0 ⋯ 0
g2,1 g2,2 ⋯ 0
⋮ ⋮ ⋱ ⋮
gn ,1 gn ,2 ⋯ gn ,n
)(
g1,1 g2,1 ⋯ gn ,1
0 g2,2 ⋯ gn ,2
⋮ ⋮ ⋱ ⋮
0 0 ⋯ gn ,n
)
a1,1=g1,1
2 →g1,1=√a1,1
a2,1=g2,1 g1,1→g2,1=
a2,1
g1,1
a3,1=g3,1 g1,1→g3,1=
a3,1
g1,1
⋮
an ,1=gn ,1g1,1→gn ,1=
an ,1
g1,1
}gi ,1= ai ,1g1,1
 
Fatoração de Cholesky
● A = GGT → coluna k = 2
(
a1,1 a2,1 ⋯ an ,1
a2,1 a2,2 ⋯ an ,2
⋮ ⋮ ⋱ ⋮
an ,1 an ,2 ⋯ an ,n
)=(
g1,1 0 ⋯ 0
g2,1 g2,2 ⋯ 0
⋮ ⋮ ⋱ ⋮
gn ,1 gn ,2 ⋯ gn ,n
)(
g1,1 g2,1 ⋯ gn ,1
0 g2,2 ⋯ gn ,2
⋮ ⋮ ⋱ ⋮
0 0 ⋯ gn ,n
)
a2,1=g1,1 g2,1
a2,2=g2,1
2 +g2,2
2 →g2,2=√a2,2−g2,12
a3,2=g3,1 g2,1+g3,2 g2,2→g3,2=
a3,2−g3,1 g2,1
g2,2
⋮
an ,2=gn ,1g2,1+gn ,2 g2,2→gn ,2=
an ,2−gn ,1g2,1
g2,2
}gi ,2=ai ,2−gi ,1g2,1g2,2
Já calculado
 
Fatoração de Cholesky
● A = GGT → coluna k qualquer
(
a1,1 a2,1 ⋯ an ,1
a2,1 a2,2 ⋯ an ,2
⋮ ⋮ ⋱ ⋮
an ,1 an ,2 ⋯ an ,n
)=(
g1,1 0 ⋯ 0
g2,1 g2,2 ⋯ 0
⋮ ⋮ ⋱ ⋮
gn ,1 gn ,2 ⋯ gn ,n
)(
g1,1 g2,1 ⋯ gn ,1
0 g2,2 ⋯ gn ,2
⋮ ⋮ ⋱ ⋮
0 0 ⋯ gn ,n
)
ak ,k=gk ,1
2 +gk ,2
2 +…+gk ,k
2 →gk , k=√a2,2−∑i=1
k−1
gk ,i
2
a j , k=g j ,1gk ,1+g j ,2gk ,2+…+g j , k gk , k→g j , k=
a j , k−∑
i=1
k−1
g j , igk ,i
gk , k
, k< j≤n
 
Fatoração de Cholesky
● Resolução do sistema
● Parecido com a da decomposição LU
– A = GGT
● Gy = b
● GTx = y
– Diferença
● Em LU
– L tem diagonal unitária
● Em Cholesky
– L tem diagonal com valores positivos
 
Fatoração de Cholesky
● Algoritmo
para k = 1, …, n faça
 s = 0
 para j = 1, …, k-1 faça
 s = s + gk,j2
 r = ak,k – soma
 gk,k = r1/2
 para i = k+1, …, n faça
 s = 0
 para j = 1, …, k-1 faça
 s = s + gi,j gk,j
 gi,k = (ai,k – s) / gk,k
 
Fatoração de Cholesky
● Observações
● Eliminação de Gauss ou decomposição LU 
com pivoteamento
– Divisão por zero → ak,k = 0 (ou próximo de 0)
● Matriz não tem inversa
● Impossível encontrar solução para o sistema Ax = b
– Sistema indeterminado
● Fatoração de Cholesky
– Raiz de um número não positivo → r ≤ 0
● Matriz A não é definida positiva
 
Matriz inversa
● AB = BA = I
● B é a inversa de A
● B = A-1
● A também é inversa de B
● Como descobrir A-1?
(
a1,1 a1,2 ⋯ a1,n
a2,1 a2,2 ⋯ a2,n
⋮ ⋮ ⋱ ⋮
an ,1 an ,2 ⋯ an ,n
)(
b1,1 b1,2 ⋯ b1,n
b2,1 b2,2 ⋯ b2,n
⋮ ⋮ ⋱ ⋮
bn ,1 bn ,2 ⋯ bn ,n
)=(1 0 ⋯ 00 1 ⋯ 0⋮ ⋮ ⋱ ⋮0 0 ⋯ 1)
 
Matriz inversa
● Coluna a coluna de A-1
● Vários vetores de termos independentes
– Decomposição LU ou fatoração de Cholesky(
a1,1 a1,2 ⋯ a1,n
a2,1 a2,2 ⋯ a2,n
⋮ ⋮ ⋱ ⋮
an ,1 an ,2 ⋯ an ,n
)[b1,1b2,1⋮bn ,1]=[
1
0
⋮
0 ] (
a1,1 a1,2 ⋯ a1,n
a2,1 a2,2 ⋯ a2,n
⋮ ⋮ ⋱ ⋮
an ,1 an ,2 ⋯ an ,n
)[b1,2b2,2⋮bn ,2]=[
0
1
⋮
0 ]
(
a1,1 ⋯ a1,k ⋯ a1,n
⋮ ⋱ ⋮ ⋱ ⋮
a2,1 ⋯ ak ,k ⋯ ak ,n
⋮ ⋱ ⋮ ⋱ ⋮
an ,1 ⋯ ak ,2 ⋯ an ,n
)[ b1, k⋮b2, k⋮
bn ,k
]=[0⋮1⋮0 ]
 
Métodos iterativos
● Generalização do método do ponto fixo
● Método do ponto fixo → uma equação
– f(x) = 0 → x = φ(x)
● Gauss-Jacobi e Gauss-Seidel → várias equações
– Ax = b → Ax – b = 0 → x = φ(x) = C x + g
● C é matriz e g é vetor
● Função de iteração matricial
– Dado x(0)
● x(1) = φ(x(0)) = C x(0) + g
● x(2) = φ(x(1)) = C x(1) + g
● …
● x(k+1) = φ(x(k)) = C x(k) + g
 
Métodos iterativos
● Testes de parada
● Uma equação → um valor
– Intervalo → |x(k) – x(k-1)| ≤ ε
– Valor → |f(x(k))| ≤ ε
● Um sistema de equações → vários valores
– Intervalo → valor a valor
● Calculamos a distância em cada elemento → di(k) = |xi(k) – xi(k-1)|
● Calculamos a distância máxima → d(k) = max1≤i≤n di(k)
– Ou relativamente → dr(k) = d(k) / max1≤i≤n |xi(k)|
● Comparamos com a tolerância → d(k) ≤ ε
– Valor
● Calculamos b* = Ax(k)
● Calculamos a diferença → r = b* – b
● Calculamos o valor máxima → d(k) = max1≤i≤n |ri|
● Comparamos com a tolerância → d(k) ≤ ε
 
Gauss-Jacobi
● Sistema original
● Suponha ai,i ≠ 0
● Se não for
– Troca de linhas
● Isolamento de xi
– Pela diagonal
{a1,1 x1+a1,2 x2+…+a1,n xn=b1a2,1 x1+a2,2 x2+…+a2,n xn=b2⋮an ,1 x1+an ,2 x2+…+an ,n xn=bn
 
Gauss-Jacobi
● Sistema modificado
{
x1=
b1−(a1,2 x2+…+a1,n xn)
a1,1
x2=
b2−(a2,1 x1+a2,3 x3+…+a2,n xn)
a2,2
⋮
xi=
bi−(ai ,1 x1+…+ai , i−1 xi−1+ai , i+1 xi+1+…+ai , n xn)
ai , i
⋮
xn=
bn−(an ,1 x1+…+an ,n−1 xn−1)
an ,n
 
Gauss-Jacobi
● Sistema modificado
x=Cx+g
(
x1
x2
⋮
xi
⋮
xn
)=[
0
−a1,2
a1,1
⋯
−a1,i
a1,1
⋯
−a1,n
a1,1
−a2,1
a2,2
0 ⋯
−a2,i
a2,2
⋯
−a2,n
a2,2
⋮ ⋮ ⋱ ⋮ ⋱ ⋮
ai ,1
ai , i
−ai ,2
ai , i
⋯ 0 ⋯
−ai , n
ai , i
⋮ ⋮ ⋱ ⋮ ⋱ ⋮
an ,1
an ,n
−an ,2
an ,n
⋯
an , i
an ,n
⋯ 0
]( x1x2⋮xi⋮xn)+(
b1
a1,1
b2
a2,2
⋮
bi
ai , i
⋮
bn
an
, n
)
 
Gauss-Jacobi
● Sistema modificado iterativo
x(k+1)=Cx(k)+g
(
x1
(k+1)
x2
(k+1)
⋮
xi
(k+1)
⋮
xn
(k+1)
)=[
0
−a1,2
a1,1
⋯
−a1, i
a1,1
⋯
−a1,n
a1,1
−a2,1
a2,2
0 ⋯
−a2, i
a2,2
⋯
−a2,n
a2,2
⋮ ⋮ ⋱ ⋮ ⋱ ⋮
ai ,1
ai , i
−ai ,2
ai , i
⋯ 0 ⋯
−ai , n
ai , i
⋮ ⋮ ⋱ ⋮ ⋱ ⋮
an ,1
an ,n
−an ,2
an ,n
⋯
an ,i
an ,n
⋯ 0
](x1(k )x2(k )⋮x i(k )⋮xn(k ))+(
b1
a1,1
b2
a2,2
⋮
bi
ai , i
⋮
bn
an
, n
)
 
Gauss-Jacobi
● Exemplo
{ 10 x1+2 x2+x3=7x1+5 x2+x3=−82 x1+3 x2+10 x3=6 C=[ 0
−2
10
−1
10
−1
5
0 −1
5
−2
10
−3
10
0 ] g=(
7
10
−8
5
6
10
)x(0)=(000) ,ε=0,05
x(1)=[ 0 −0,2 −0,1−0,2 0 −0,2−0,2 −0,3 0 ](
0
0
0)+(
0,7
−1,6
0,6 )=(
0
0
0)+(
0,7
−1,6
0,6 )=(
0,7
−1,6
0,6 )
( |0,7−0||−1,6−0||0,6−0| )=(
0,7
1,6
0,6) → { d
(1)=1,6>0,05
dr
(1)=1,6
1,6
=1>0,05
 
Gauss-Jacobi
● Exemplo
x(1)=( 0,7−1,60,6 )
x(2)=[ 0 −0,2 −0,1−0,2 0 −0,2−0,2 −0,3 0 ](
0,7
−1,6
0,6 )+(
0,7
−1,6
0,6 )=(
0,26
−0,26
0,34 )+(
0,7
−1,6
0,6 )=(
0,96
−1,86
0,94 )
( |0,96−0,7||−1,86−−1,6||0,94−0,6| )=(
0,26
0,26
0,34) → { d
(2)=0,34>0,05
dr
(2)=0,34
1,86
=0,1828>0,05
 
Gauss-Jacobi
● Exemplo
x(2)=( 0,96−1,860,94 )
x(3)=[ 0 −0,2 −0,1−0,2 0 −0,2−0,2 −0,3 0 ](
0,96
−1,86
0,94 )+(
0,7
−1,6
0,6 )=(
0,278
−0,38
0,366 )+(
0,7
−1,6
0,6 )=(
0,978
−1,98
0,966 )
( |0,978−0,96||−1,98−−1,86||0,966−0,94| )=(
0,018
0,12
0,026) → { d
(3)=0,12>0,05
dr
(3)=0,12
1,98
=0,0606>0,05
 
Gauss-Jacobi
● Exemplo
x(3)=(0,978−1,980,966 )
x(4)=[ 0 −0,2 −0,1−0,2 0 −0,2−0,2 −0,3 0 ](
0,978
−1,98
0,966 )+(
0,7
−1,6
0,6 )=(
0,2994
−0,3888
0,3984 )+(
0,7
−1,6
0,6 )=(
0,9994
−1,9888
0,9984 )
( |0,9994−0,978||−1,9888−−1,98||0,9984−0,966| )=(
0,0214
0,0088
0,0324) → { d
(4)=0,0324<0,05
dr
(4)=0,0324
1,9888
=0,0163<0,05
 
Gauss-Jacobi
● Convergência
● Conforme k cresce, x(k) tende à solução?
– O método converge?
● A convergência depende de x(0)?
– O método só converge para determinados chutes 
iniciais?
x(3)=(0,978−1,980,966 ) x(4)=(
0,9994
−1,9888
0,9984 )x(2)=(
0,96
−1,86
0,94 )x(1)=(
0,7
−1,6
0,6 )x(0)=(
0
0
0)
 
Gauss-Jacobi
● Convergência
● Critério das linhas
– Sejam e . Se α < 1, então 
o método de Gauss-Jacobi gera uma sequência {x(k)} 
convergente para a solução do sistema dado, 
independentemente da escolha da aproximação 
inicial x(0).
– Em outras palavras
● Pegue a matriz com os elementos em módulo
● Se o elemento da diagonal principal for maior que a soma 
dos outros elementos da linha, o método converge
αk=
∑
j=1, j≠k
n
|ak , j|
|ak ,k|
α=max1≤k≤nak
 
Gauss-Jacobi
● Convergência
● Observação
– Se um sistema linear não satisfizer ao critério das 
linhas
● Pode convergir
● Pode não convergir → Podemos tentar uma troca de linhas
{ x1+ x2=3x1−3 x2=−3 x∗=(1,51,5)
{ x1+3 x2+x3=−25 x1+2 x2+2 x3=36 x2+8 x3=−6 → {
5 x1+2 x2+2 x3=3
x1+3 x2+x3=−2
6 x2+8 x3=−6
 
Gauss-Seidel
● Gauss-Jacobi
● Próxima aproximação depende da atual
{
x1
(k+1)=
b1−(a1,2 x2
(k )+…+a1,n xn
(k ))
a1,1
x2
(k+1)=
b2−(a2,1 x1
(k )+a2,3 x3
(k)+…+a2,n xn
(k ))
a2,2
⋮
xi
(k+1)=
bi−(ai ,1 x1
(k )+…+ai , i−1 xi−1
(k ) +ai , i+1 xi+1
(k) +…+ai ,n xn
(k ))
ai , i
⋮
xn
(k+1)=
bn−(an ,1 x1
(k )+…+an ,n−1 xn−1
(k ) )
an ,n
 
Gauss-Seidel
● Próxima aproximação depende dela mesma
● Em xi(k+1), já descobrimos x1(k+1), …, xi-1(k+1)
{
x1
(k+1)=
b1−(a1,2 x2
(k )+…+a1,n xn
(k ))
a1,1
x2
(k+1)=
b2−(a2,1 x1
(k+1)+a2,3 x3
(k )+…+a2,n xn
(k))
a2,2
⋮
xi
(k+1)=
bi−(ai ,1 x1
(k+1)+…+ai , i−1 xi−1
(k+1)+ai , i+1 x i+1
(k ) +…+ai ,n xn
(k ))
ai , i
⋮
xn
(k+1)=
bn−(an ,1 x1
(k+1)+…+an ,n−1 xn−1
(k+1))
an , n
 
Gauss-Seidel
● Exemplo
{ 10 x1+2 x2+x3=7x1+5 x2+x3=−82 x1+3 x2+10 x3=6 x(0)=(
0
0
0) ,ε=0,05
x1
(1)=
7−(2∗0+1∗0)
10
=0,7
x2
(1)=
−8−(1∗0,7+1∗0)
5
=−1,74
x3
(1)=
6−(2∗0,7+3∗−1,74)
10
=0,982
( |0,7−0||−1,74−0||0,982−0|)=(
0,7
1,74
0,982) → { d
(1)=1,74>0,05
dr
(1)=1,74
1,74
=1>0,05
x(4)=( 0,9994−1,98880,9984 )
 
Gauss-Seidel
● Exemplo
{ 10 x1+2 x2+x3=7x1+5 x2+x3=−82 x1+3 x2+10 x3=6 x(1)=(
0,7
−1,74
0,982 ),ε=0,05
x1
(2)=
7−(2∗−1,74+1∗0,982)
10
=0,9498
x2
(2)=
−8−(1∗0,9498+1∗0,982)
5
=−1,9864
x3
(2)=
6−(2∗0,9498+3∗−1,9864)
10
=1,006
( |0,9498−0,7||−1,9864−−1,74||1,006−0,982| )=(
0,2498
0,2464
0,024 ) → { d
(1)=0,2498>0,05
d r
(1)=0,2498
1,9864
=0,1258>0,05
x(4)=( 0,9994−1,98880,9984 )
 
Gauss-Seidel
● Exemplo
{ 10 x1+2 x2+x3=7x1+5 x2+x3=−82 x1+3 x2+10 x3=6 x(2)=(
0,9498
−1,9864
1,006 ),ε=0,05
x1
(3)=
7−(2∗−1,9864+1∗1,006)
10
=0,9967
x2
(3)=
−8−(1∗0,9967+1∗1,006)
5
=−2,0005
x3
(3)=
6−(2∗0,9967+3∗−2,0005)
10
=1,0008
( |0,9967−0,9498||−2,0005−−1,9864||1,0008−1,006| )=(
0,0469
0,0141
0,0052) → { d
(1)=0,0469<0,05
dr
(1)=0,0469
2,0005
=0,0234<0,05
x(4)=( 0,9994−1,98880,9984 )
 
Métodos iterativos
● Interpretação geométrica
● Gauss-Jacobi
● Gauss-Seidel
{ x1+ x2=3x1−3 x2=−3 → {x1=3−x2x2=3+x13
{x1
(k+1)=3−x2
(k )
x2
(k+1)=
3+x1
(k)
3
{ x1
(k+1)=3−x2
(k )
x2
(k+1)=
3+x1
(k+1)
3
 
Métodos iterativos
● Interpretação geométrica
● Gauss-Jacobix(0)=(00) x(1)=(31) x(2)=(22) x(3)=( 15 /3) x(4)=(4 /34 /3)
 
Métodos iterativos
● Interpretação geométrica
● Gauss-Seidel
x(0)=(00) x(0,5)=(30) x(1)=(32) x(1,5)=(12) x(2)=( 14 /3) x(2,5)=(5 /34 /3) x(3)=( 5 /314 /9)
 
Métodos iterativos
● Interpretação geométrica
● Gauss-Seidel
x(0)=(00) x(0,5)=(−30 ) x(1)=(−36 ) x(1,5)=(156 ) x(2)=( 15−12)
{ x1+ x2=3x1−3 x2=−3→{x1−3 x2=−3x1+x2=3 →{x1
(k+1)=−3+3 x2
(k )
x2
(k+1)=3−x1
(k+1)
 
Gauss-Seidel
● Convergência
● Critério de Sassenfeld
– Mais geral que o critério das linhas
● Critério das linhas implica o critério de Sassenfeld
– Sejam
– Se β < 1, Gauss-Seidel converge para qualquer x(0)
β1=
|a1,2|+|a1,3|+…+|a1,n|
|a1,1|
=
∑
j=2
n
|a1, j|
|a1,1|
βi=
|ai ,1|β1+…+|ai , i−1|βi−1+|ai , i+1|…+|ai ,n|
|ai , i|
=
∑
j=1
i−1
|ai , j|β j+∑
j=i+1
n
|ai , j|
|ai , i|
β=max1≤i≤nβi
 
Comparação entre os métodos
● Convergência
● Métodos diretos
– Convergem se a solução existir
● Métodos indiretos
– Podem divergir, dependem de outras condições
● Critérios das linhas e de Sassenfeld
 
Comparação entre os métodos
● Esparsidade
● Matrizes esparsas
– Têm muitos zeros
● Métodos diretos
– Eliminação de Gauss
● Tendem a introduzir valores diferentes de zero na matriz
● Métodos indiretos
– Muitas multiplicações por zero
● Facilitam os cálculos
 
Comparação entre os métodos
● Erros de arredondamento
● Métodos diretos
– Podem apresentar erros grandes
● Resolvidos com pivoteamento
● Métodos indiretos
– Se a convergência for garantida
● Erros pequenos
 
Exercícios
● (5.5) Resolva o sistema linear abaixo usando o 
método da Eliminação de Gauss
2x1 + 2x2 + x3 + x4 = 7
x1 - x2 + 2x3 - x4 = 1
3x1 + 2x2 - 3x3 - 2x4 = 4
4x1 + 3x2 + 2x3 + x4 = 12
● (5.7) O cálculo do determinante de matrizes 
quadradas pode ser feito usando o método da 
Eliminação de Gauss
● (a) Deduza o método
● (b) Aplique-o no cálculo do determinante da matriz do 
sistema do Exercício 5.5
 
Exercícios
● (5.10) Calcule a fatoração LU da matriz abaixo, se 
possível
1 1 1
2 1 -1
3 2 0
● (5.11)
● (d) Encontre a inversa da matriz abaixo, usando 4 
casas decimais
4 -1 0 -1 0 0
-1 4 -1 0 -1 0
0 -1 4 0 0 -1
-1 0 0 4 -1 0
0 -1 0 -1 4 -1
0 0 -1 0 -1 4
 
Exercícios
● (5.23)
● (a) Usando o critério de Sassenfeld, verifique 
para quais valores positivos de k se tem 
garantia que o método de Gauss-Seidel vai 
gerar uma sequência convergente para a 
solução do sistema
k x1 + 3x2 + x3 = 1
k x1 + 6x2 + x3 = 2
x1 + 6x2 +7x3 = 3
● (b) Escolha o menor valor inteiro e positivo para 
k e faça duas iterações do método de Gauss-
Seidel para o sistema obtido
 
Exercícios
● (5.25)
● (a) Aplique analítica e graficamente os métodos 
de Gauss-Jacobi e de Gauss-Seidel no sistema
2 x1 + 5x2 = -3
3 x1 + x2 = 2
● (b) Repita o item (a) para o sistema obtido 
permutando as equações
● (c) Analise os resultados
 
Exercícios
● (5.33) Resolva os sistemas lineares abaixo 
usando a fatoração de Cholesky
● (a)
16x1 + 4x2 + 8x3 + 4x4 = 32
4x1 + 10x2 + 8x3 + 4x4 = 26
8x1 + 8x2 + 12x3 + 10x4 = 38
4x1 + 4x2 + 10x3 + 12x4 = 30
● (b)
20x1 + 7x2 + 9x3 = 16
7x1 + 30x2 + 8x3 = 38
9x1 + 8x2 + 30x3 = 38
 
● (5.5) x* = (1 2 1 0)T
● (5.7)
● (a) Propriedades
● Troca de linhas → determinante troca de sinal
● Multiplicação de linha por constante → determinante fica multiplicado pela 
constante
● Adição de múltiplo de outra linha a linha → determinante não se altera
– Método
● Transforme em matriz triangular U
● Calcule o determinante de U multiplicando os elementos da diagonal 
principal
● Divida o determinante calculado pelos multiplicadores de linhas (2a 
propriedade)
● Se o número de trocas de linhas for ímpar, então troque o sinal do 
determinante calculado
● (b) 3
Respostas
 
● (5.10) A matriz não possui inversa
1 0 0 1 1 1
2 1 0 0 -1 -3
3 -1 1 0 0 0
● (5.11)
0,2948 0,0932 0,0282 0,0861 0,0497 0,0195
0,0932 0,3230 0,0932 0,0497 0,1056 0,0497
0,0282 0,0932 0,2948 0,0195 0,0497 0,0861
0,0861 0,0497 0,0195 0,2948 0,0932 0,0282
0,0497 0,1056 0,0497 0,0932 0,3230 0,0932
0,0195 0,0497 0,0861 0,0282 0,0932 0,2948
Respostas
 
● (5.23)
● (a) |k| > 4
● (b) k = 5
x(0) = (0 0 0)T, x(2) = (0,04857 0,25 0,20734)T
● (5.25)
● (a) As sequências geradas por Gauss-Jacobi e por Gauss-
Seidel não convergem
● (b) Permutando as equações, as sequências convergem 
para x* = (1 -1)T
● (5.33)
● (a) x* = (1 1 1 1)T
● (b) x* = (0 1 1)T
Respostas
	Slide 1
	Slide 2
	Slide 3
	Slide 4
	Slide 5
	Slide 6
	Slide 7
	Slide 8
	Slide 9
	Slide 10
	Slide 11
	Slide 12
	Slide 13
	Slide 14
	Slide 15
	Slide 16
	Slide 17
	Slide 18
	Slide 19
	Slide 20
	Slide 21
	Slide 22
	Slide 23
	Slide 24
	Slide 25
	Slide 26
	Slide 27
	Slide 28
	Slide 29
	Slide 30
	Slide 31
	Slide 32
	Slide 33
	Slide 34
	Slide 35
	Slide 36
	Slide 37
	Slide 38
	Slide 39
	Slide 40
	Slide 41
	Slide 42
	Slide 43
	Slide 44
	Slide 45
	Slide 46
	Slide 47
	Slide 48
	Slide 49
	Slide 50
	Slide 51
	Slide 52
	Slide 53
	Slide 54
	Slide 55
	Slide 56
	Slide 57
	Slide 58
	Slide 59
	Slide 60
	Slide 61
	Slide 62
	Slide 63
	Slide 64
	Slide 65
	Slide 66
	Slide 67
	Slide 68
	Slide 69
	Slide 70
	Slide 71
	Slide 72
	Slide 73
	Slide 74
	Slide 75
	Slide 76
	Slide 77
	Slide 78
	Slide 79
	Slide 80
	Slide 81
	Slide 82
	Slide 83
	Slide 84
	Slide 85
	Slide 86
	Slide 87
	Slide 88
	Slide 89
	Slide 90
	Slide 91
	Slide 92
	Slide 93
	Slide 94
	Slide 95
	Slide 96
	Slide 97
	Slide 98
	Slide 99
	Slide 100
	Slide 101
	Slide 102
	Slide 103
	Slide 104
	Slide 105
	Slide 106
	Slide 107
	Slide 108
	Slide 109
	Slide 110
	Slide 111
	Slide 112
	Slide 113
	Slide 114
	Slide 115
	Slide 116
	Slide 117
	Slide 118
	Slide 119
	Slide 120
	Slide 121
	Slide 122
	Slide 123
	Slide 124
	Slide 125
	Slide 126
	Slide 127
	Slide 128
	Slide 129
	Slide 130

Continue navegando