Método De Gauus-Seidel

Ver Todos os Exercícios

Teoria

Fala aí! Hoje vamos aprender um pouquinho melhor sobre o método de Gauss-Seidel, que é um método iterativo para a resolução de sistemas lineares!

Tá preparado? Então vem comigo descobrir o tanto que esse método é parecido com o de método de Jacobi. E se você só quiser o algoritmo desse negócio relaxa que separei pra você lá no final. 😆

Veja também

Para que serve o Método de Gauss-Seidel?

O método de Gauss-Seidel fornece uma receita para resolver sistemas lineares mais complicados.

Ele é uma adaptação do método de Jacobi com a intenção de acelerar a convergência. Quer dizer que vamos chegar na resposta desejada com um número menor de iterações, isto é, precisaremos repetir o processo descrito pelo método um número menor de vezes.

E como funciona esse negócio aí?

Te explico agora! Para se calcular a componente da iteração , vamos utilizar as componentes já calculadas na iteração atual e as componentes da iteração anterior.

Ficou confuso com esse tanto de letra que apareceu aí? Calma, vou desenhar pra deixar tudo bem claro pra você!

Se liga nesse sisteminha aqui:

Sistema linear
Sistema linear

Só pra deixar claro: são os coeficientes que multiplicam as três variáveis, e .

O método de Gauss-Seidel diz que encontramos a função de iteração para a variável isolando-a na primeira equação.

Esse índice que aparece aí representa a iteração que a gente tá. Começamos com , e os valores de e dessa iteração costumam ser fornecidos pelo enunciado da questão como uma aproximação inicial.

Aí, vamos repetir isso aí para as outras linhas do sistema, para obtermos as funções de iteração das outras variáveis.

Da segunda equação, vamos isolar o :

Opa! Por que o índice do ficou diferente?

Aaah, chegamos na grande sacada do método de Gauss-Seidel!

Como a gente já tem um valor atualizado pra variável , que acabamos de calcular nessa mesma iteração , podemos esquecer o valor da iteração passada ! Isso vai garantir uma convergência muito mais rápida!

Já consegue me dizer como vai ficar a função de iteração da variável ? Vê se você acertou 👇

Da terceira equação, vamos isolar o :

Muito bem!! Naquele mesmo esquema: já temos um valor atualizado pra variável , então já podemos usá-lo no cálculo da variável 😄

Saca só nesse esqueminha aqui de como vai ficar cada iteração pelo método de Gauss-Seidel:

Método de Gauss-Seidel.
Método de Gauss-Seidel.

Já vamos fazer um exemplo pra deixar isso bem fixado na sua cabeça. Mas tem algumas coisinhas que precisamos ver antes disso!

Se quiser, pode assistir esse vídeo aqui explicando tudo isso bonitinho também 👇

Critério de Convergência (Critério de Sassenfeld)

Antes de começarmos a usar esse método de Gauss-Seidel, precisamos ter certeza que o sistema vai convergir.

O critério de Sassenfeld é condição suficiente para a convergência do método, e ele diz o seguinte:

Depois de calcular todos os , pegamos o maior deles em módulo. Se esse valor for menor que , o critério de Sassenfeld é satisfeito e o método irá convergir!

Critério de Parada

Beleza, já sabemos como funciona o método e quando podemos utilizá-lo. Mas, depois que começar as iterações, tem algum jeito de perceber que já encontramos uma aproximação boa o suficiente?

Claro que tem!

O critério de parada normalmente utilizado são as diferenças . Com como cada uma das variáveis do nosso sistema.

Quando a maior dessas diferenças, em módulo, for menor que o erro informado pelo enunciado, quer dizer que já temos uma aproximação boa o suficiente e podemos parar com as iterações.

Tranquilo? Agora sim, temos tudo o que precisamos pra resolver um exercício.

Exemplo: Resolva o sistema linear abaixo pelo método de Gauss-Seidel com e .

Passo 1: Aplicar o critério de convergência.

Antes de começar, temos que ver se esse negócio aí vai convergir, né? Se não, só vamos perder nosso tempo fazendo conta à toa.

Pelo critério de Sassenfeld:

O máximo aí é o e ele é menor do que . Então, o critério de Sassenfeld garante a convergência do método.

Passo 2: Encontrar as funções de iteração.

Só isolar a primeira variável na primeira equação, a segunda variável na segunda equação e assim por diante.

Tranquilo, né? Isso aí já mostrei como que faz ali em cima.

Ah, um detalhe: toma muito cuidado com os sinais. Se você reparar ali na segunda equação ficamos com , porque esse termo já era negativo no sistema inicial, aí quando passamos pro outro lado da igualdade ele fica positivo.

Passo 3: Primeira iteração.

Começamos lá pelo , com os valores de e fornecidos pela aproximação inicial dada pelo enunciado.

Esse valor encontrado para o vai ser utilizado na equação seguinte para o cálculo do .

E para a última equação:

Beleza, ficamos com .

Passo 4: Analisar o critério de parada.

A maior diferença aqui vai ser para o .

Nossos valores ainda não são bons o suficiente. Devemos fazer mais iterações, cada vez com os valores atualizados para nossas variáveis!

Algoritmo do Método de Gauss-Seidel

A grande vantagem do Cálculo Numérico é que podemos escrever algoritmos e soltar tudo isso no cérebro dos nossos computadores pra eles se virarem, não é? Então bora ver como fica o algoritmo desse método aqui!

Algoritmo para o Método de Gauss-Seidel.
Algoritmo para o Método de Gauss-Seidel.

Agora você já tem todas as informações necessárias pra resolver nossa lista de exercícios 😉

Exemplo: Resolva o sistema linear abaixo pelo método de Gauss-Seidel com e .

Algoritmo do Método de Gauss-Seidel

Exercícios Resolvidos

Exercício Resolvido #1

Dar exemplo de um sistema de equações 2 × 2 que não seja diagonal dominante, mas seja convergente usando o método de Gauss-Seidel.

Obs.: Um sistema é diagonal dominante se para todas as linhas da matriz de coeficientes, o módulo do valor da matriz na diagonal é maior que a soma dos módulos de todos os demais valores (não-diagonais) daquela linha. 

Passo 1

-

Beleza, o enunciado dá uma breve explicação do que é um sistema diagonal dominante. Em um sistema 2 × 2 isso significa:

a 11 x 1 + a 12 x 2 = b 1 a 21 x 1 + a 22 x 2 = b 2

a 11 > a 12

a 22 > a 21

E para que o sistema convirja pelo método de Gauss-Seidel temos que satisfazer o critério de Sassenfeld, que em um sistema 2 × 2 fica:

β 1 = a 12 a 11

β 2 = a 21 β 1 a 22

E queremos que β 1 < 1 e β 2 < 1 . Para que isso seja satisfeito sem usarmos um sistema diagonal dominante, basta que a 12 < a 11 e que a 21 = a 22 por exemplo. Se liga:

2 x 1 + x 2 = 3 x 1 + x 2 = 2

No sistema acima temos:

β 1 = 1 2 = 0.5 < 1

β 2 = 1 ∙ 0.5 1 = 0.5 < 1

Logo, o sistema converge pelo método de Gauss-Seidel, mas o sistema não é diagonal dominante.

Resposta

Ei, a resposta está no passo a passo :)

Exercício Resolvido #2

Em cada caso verifique se o critério de Sassenfeld é satisfeito e resolva por Gauss-Seidel com ε = 0.0001 , se possível:

a A = 10 1 1 1 10 1 1 1 10 ; b = 12 12 12

b A = 4 - 1 0 0 - 1 4 - 1 0 0 - 1 4 - 1 0 0 - 1 4 ; b = 1 1 1 1

Passo 1

a Verificando o critério de Sassenfeld:

β 1 = 1 + 1 10 = 0.2

β 2 = 0.2 ∙ 1 + 1 10 = 0.12

β 3 = 0.2 ∙ 1 + 0.12 ∙ 1 10 = 0.032

Logo, β = 0.2 < 1 . O critério é satisfeito.

Passo 2

As funções de iteração são:

x 1 k + 1 = 12 - x 2 k - x 3 k 10

x 2 k + 1 = 12 - x 1 k + 1 - x 3 k 10

x 3 k + 1 = 12 - x 1 k + 1 - x 2 k + 1 10

Visualmente podemos ver que a solução é simplesmente x = 1 , 1,1 né? Mas pra treinar um pouco vamos usar como aproximação inicial x 0 = 0.9,1 . 1,0.9 .

Iteração 1 :

x 1 1 = 12 - x 2 0 - x 3 0 10

x 1 1 = 1

x 2 1 = 12 - x 1 1 - x 3 0 10

x 2 1 = 1.01

x 3 1 = 12 - x 1 1 - x 2 1 10

x 3 1 = 0.999

Então temos x 1 = 1,1 . 01,0.999 .

Critério de Parada:

x 1 1 - x 1 0 = 0.1 > ε

Não atingimos o critério, então continuamos as iterações.

Iteração 2 :

x 1 2 = 12 - x 2 1 - x 3 1 10

x 1 2 = 0.9991

x 2 2 = 12 - x 1 2 - x 3 1 10

x 2 2 = 1.00019

x 3 2 = 12 - x 1 2 - x 2 2 10

x 3 2 = 1.00007

Então temos x 2 = 0.9991,1 . 00019,1.00007 .

Critério de Parada:

x 1 2 - x 1 1 = 0.0009 > ε

Não atingimos o critério, então continuamos as iterações.

Iteração 3 :

x 1 3 = 12 - x 2 2 - x 3 2 10

x 1 3 = 0.99997

x 2 3 = 12 - x 1 3 - x 3 2 10

x 2 3 = 1

x 3 3 = 12 - x 1 3 - x 2 3 10

x 3 3 = 1

Então temos x 3 = 0.99997,1 , 1 .

Critério de Parada:

x 1 3 - x 1 2 = 0.00087 > ε

Não atingimos o critério, então continuamos as iterações.

Iteração 4 :

x 1 4 = 12 - x 2 3 - x 3 3 10

x 1 4 = 1

x 2 4 = 12 - x 1 4 - x 3 3 10

x 2 4 = 1

x 3 4 = 12 - x 1 4 - x 2 4 10

x 3 4 = 1

Então temos x 4 = 1 , 1,1 .

Critério de Parada:

x 1 4 - x 1 3 = 2.6 × 10 - 5 < ε

x 2 4 - x 2 3 = 4.2 × 10 - 6 < ε

x 3 4 - x 3 3 = 3 × 10 - 6 < ε

Beleza, o critério de parada foi atingido! Então nossa aproximação é:

x = 1,1 , 1

Passo 3

b Aplicando o critério de Sassenfeld temos:

β 1 = 1 4 = 0.25 < 1

β 2 = 0.25 + 1 4 = 0.3125 < 1

β 3 = 0.3125 + 1 4 = 0.328125 < 1

β 4 = 0.328125 4 = 0.082 < 1

Logo, β = 0.328125 < 1 . O critério é satisfeito.

Passo 4

As funções de iteração são:

x 1 k + 1 = 1 + x 2 k 4

x 2 k + 1 = 1 + x 1 k + 1 + x 3 k 4

x 3 k + 1 = 1 + x 2 k + 1 + x 4 k 4

x 4 k + 1 = 1 + x 3 k + 1 4

Agora precisamos de um chute inicial. Se a gente jogar 0.5 em todas as variáveis dá valores bem próximos né? Então vamos usar x 0 = 0.5,0 . 5,0.5,0.5 .

Iteração 1 :

x 1 1 = 1 + x 2 0 4

x 1 1 = 0.375

x 2 1 = 1 + x 1 1 + x 3 0 4

x 2 1 = 0.46875

x 3 1 = 1 + x 2 1 + x 4 0 4

x 3 1 = 0.49219

x 4 1 = 1 + x 3 1 4

x 4 1 = 0.37 305

Então temos x 1 = 0.375 ,   0.46875 ,   0.49219 ,   0.37305 .

Critério de Parada:

x 1 1 - x 1 0 = 0.125 > ε

Não atingimos o critério, então continuamos as iterações.

Iteração 2 :

x 1 2 = 1 + x 2 1 4

x 1 2 = 0.36719

x 2 2 = 1 + x 1 2 + x 3 1 4

x 2 1 = 0.46484

x 3 2 = 1 + x 2 2 + x 4 1 4

x 3 2 = 0.45947

x 4 2 = 1 + x 3 2 4

x 4 2 = 0.36487

Então temos x 2 = 0.36719,0 . 46484,0.45947,0.36487 .

Critério de Parada:

x 1 2 - x 1 1 = 0.00781 > ε

Não atingimos o critério, então continuamos as iterações.

Iteração 3 :

x 1 3 = 1 + x 2 2 4

x 1 3 = 0.36621

x 2 3 = 1 + x 1 3 + x 3 2 4

x 2 3 = 0.45642

x 3 3 = 1 + x 2 3 + x 4 2 4

x 3 3 = 0.45532

x 4 3 = 1 + x 3 3 4

x 4 3 = 0.36383

Então temos x 3 = 0.36621,0 . 45642,0.45532,0.36383 .

Critério de Parada:

x 1 3 - x 1 2 = 0.00098 > ε

Não atingimos o critério, então continuamos as iterações.

Iteração 4 :

x 1 4 = 1 + x 2 3 4

x 1 4 = 0.36411

x 2 4 = 1 + x 1 4 + x 3 3 4

x 2 4 = 0.45486

x 3 4 = 1 + x 2 4 + x 4 3 4

x 3 4 = 0.45467

x 4 4 = 1 + x 3 4 4

x 4 4 = 0.36367

Então temos x 4 = 0.36411,0 . 45486,0.45467,0.36367 .

Critério de Parada:

x 1 4 - x 1 3 = 0.00211 > ε

Não atingimos o critério, então continuamos as iterações.

Iteração 5 :

x 1 5 = 1 + x 2 4 4

x 1 5 = 0.36371

x 2 5 = 1 + x 1 5 + x 3 4 4

x 2 5 = 0.4546

x 3 5 = 1 + x 2 5 + x 4 4 4

x 3 5 = 0.45457

x 4 5 = 1 + x 3 5 4

x 4 5 = 0.36364

Então temos x 5 = 0.36371,0 . 4546,0.45457,0.36364 .

Critério de Parada:

x 1 5 - x 1 4 = 0.00039 > ε

Não atingimos o critério, então continuamos as iterações.

Iteração 6 :

x 1 6 = 1 + x 2 5 4

x 1 6 = 0.36365

x 2 6 = 1 + x 1 6 + x 3 5 4

x 2 6 = 0.45455

x 3 6 = 1 + x 2 6 + x 4 5 4

x 3 6 = 0.45455

x 4 6 = 1 + x 3 6 4

x 4 6 = 0.36364

Então temos x 6 = 0.36365,0 . 45455,0.45455,0.36364 .

Critério de Parada:

x 1 6 - x 1 5 = 6.5 × 10 - 5 < ε

x 2 6 - x 2 5 = 4.3 × 10 - 5 < ε

x 3 6 - x 3 5 = 1.7 × 10 - 5 < ε

x 4 6 - x 4 5 = 4.3 × 10 - 6 < ε

Beleza, o critério de parada foi atingido! Então nossa aproximação é:

x = 0.36365,0.45455,0.45455,0.36364

Resposta

a x = 1,1 , 1

b x = 0.36365,0.45455,0.45455,0.36364

Exercício Resolvido #3

Considere o seguinte sistema de equações lineares:

x 1 + 2 x 2 - x 3     = 1 2 x 1 - x 2         = 1   - x 2 + 2 x 3 - x 4 = 1       - x 3 + 2 x 4 = 1

a Mostre que este sistema não satisfaz o critério de linhas;

b Mostre que esse sistema não satisfaz o critério de Sassenfeld;

c O que se pode afirmar sobre a convergência dos métodos de Gauss-Jacobi e Gauss-Seidel, quando aplicados a este sistema?

d Mostre que o sistema obtido permutando-se as duas primeiras equações satisfaz o critério de Sassenfeld;

e Usando o método de Gauss-Seidel, determine a solução aproximada do sistema, com a permutação sugerida no item anterior e erro ε = 1 × 10 - 3 = 0.001 .

Passo 1

a Verificando o critério das linhas:

α 1 = 3 1 = 3 > 1

Só pelo α 1 já podemos ver que ele não satisfaz o critério.

Passo 2

b Verificando o critério de Sassenfeld:

β 1 = 3 1 = 3 > 1

Novamente, apenas pelo valor de β 1 já sabemos que o critério não é satisfeito.

Passo 3

c Nesse caso não podemos afirmar nada a respeito da convergência dos métodos de Gauss-Jacobi e Gauss-Seidel quando aplicados a esse sistema. Eles podem convergir ou divergir.

Passo 4

d Permutando-se as duas primeiras linhas obtemos:

2 x 1 - x 2         = 1 x 1 + 2 x 2 - x 3     = 1   - x 2 + 2 x 3 - x 4 = 1       - x 3 + 2 x 4 = 1

Verificando o critério de Sassenfeld:

β 1 = 1 2 = 0.5

β 2 = 0.5 ∙ 1 + 1 2 = 0.75

β 3 = 0.75 ∙ 1 + 1 2 = 0.875

β 4 = 0.875 ∙ 1 2 = 0.4375

Logo, β = 0.875 < 1 . Então, o sistema satisfaz o critério de Sassenfeld.

Passo 5

e As funções de iteração são:

x 1 k + 1 = 1 + x 2 k 2

x 2 k + 1 = 1 - x 1 k + 1 + x 3 k 2

x 3 k + 1 = 1 + x 2 k + 1 + x 4 k 2

x 4 k + 1 = 1 + x 3 k + 1 2

Agora precisamos de um chute inicial. Se a gente jogar 1 em todas as variáveis dá valores bem próximos né? Então vamos usar x 0 = 1 , 1,1 , 1 .

Iteração 1 :

x 1 1 = 1 + x 2 0 2

x 1 1 = 1

x 2 1 = 1 - x 1 1 + x 3 0 2

x 2 1 = 0.5

x 3 1 = 1 + x 2 1 + x 4 0 2

x 3 1 = 1.25

x 4 1 = 1 + x 3 1 2

x 4 1 = 1.125

Então temos x 1 = 1.0 ,   0.5 ,   1.25 ,   1.125 .

Critério de Parada:

x 1 1 - x 1 0 = 0 < ε

x 2 1 - x 2 0 = 0.5 > ε

Não atingimos o critério, então continuamos as iterações.

Iteração 2 :

x 1 2 = 1 + x 2 1 2

x 1 2 = 0.75

x 2 2 = 1 - x 1 2 + x 3 1 2

x 2 1 = 0 . 75

x 3 2 = 1 + x 2 2 + x 4 1 2

x 3 2 = 1.4375

x 4 2 = 1 + x 3 2 2

x 4 2 = 1.21875

Então temos x 2 = 0.75 ,   0.75 ,   1.4375 ,   1.21875 .

Critério de Parada:

x 1 2 - x 1 1 = 0.25 > ε

Não atingimos o critério, então continuamos as iterações.

Iteração 3 :

x 1 3 = 1 + x 2 2 2

x 1 3 = 0.875

x 2 3 = 1 - x 1 3 + x 3 2 2

x 2 3 = 0.78125

x 3 3 = 1 + x 2 3 + x 4 2 2

x 3 3 = 1.5

x 4 3 = 1 + x 3 3 2

x 4 3 = 1.25

Então temos x 3 = 0.875 ,   0.78125 ,   1.5 ,   1.25 .

Critério de Parada:

x 1 3 - x 1 2 = 0.125 > ε

Não atingimos o critério, então continuamos as iterações.

Iteração 4 :

x 1 4 = 1 + x 2 3 2

x 1 4 = 0.89063

x 2 4 = 1 - x 1 4 + x 3 3 2

x 2 4 = 0.80469

x 3 4 = 1 + x 2 4 + x 4 3 2

x 3 4 = 1.52734

x 4 4 = 1 + x 3 4 2

x 4 4 = 1.26367

Então temos x 4 = 0.89063,0 . 80469,1.52734,1.26367 .

Critério de Parada:

x 1 4 - x 1 3 = 0.01563 > ε

Não atingimos o critério, então continuamos as iterações.

Iteração 5 :

x 1 5 = 1 + x 2 4 2

x 1 5 = 0.90234

x 2 5 = 1 - x 1 5 + x 3 4 2

x 2 5 = 0.8125

x 3 5 = 1 + x 2 5 + x 4 4 2

x 3 5 = 1.53809

x 4 5 = 1 + x 3 5 2

x 4 5 = 1.26904

Então temos x 5 = 0.90234 , 0 . 8125 , 1.53809 , 1.26904 .

Critério de Parada:

x 1 5 - x 1 4 = 0.01172 > ε

Não atingimos o critério, então continuamos as iterações.

Iteração 6 :

x 1 6 = 1 + x 2 5 2

x 1 6 = 0.90625

x 2 6 = 1 - x 1 6 + x 3 5 2

x 2 6 = 0.81592

x 3 6 = 1 + x 2 6 + x 4 5 2

x 3 6 = 1.54248

x 4 6 = 1 + x 3 6 2

x 4 6 = 1.27124

Então temos x 6 = 0.90625 , 0 . 81592 , 1.54248 , 1.27124 .

Critério de Parada:

x 1 6 - x 1 5 = 0.00391 > ε

Não atingimos o critério, então continuamos as iterações.

Iteração 7 :

x 1 7 = 1 + x 2 6 2

x 1 7 = 0.90796

x 2 7 = 1 - x 1 7 + x 3 6 2

x 2 7 = 0.81726

x 3 7 = 1 + x 2 7 + x 4 6 2

x 3 7 = 1.54425

x 4 7 = 1 + x 3 7 2

x 4 7 = 1.27213

Então temos x 7 = 0.90796 , 0 . 81726 , 1.54425 , 1.27213 .

Critério de Parada:

x 1 7 - x 1 6 = 0.00171 > ε

Não atingimos o critério, então continuamos as iterações.

Iteração 8 :

x 1 8 = 1 + x 2 7 2

x 1 8 = 0.90863

x 2 8 = 1 - x 1 8 + x 3 7 2

x 2 8 = 0.81781

x 3 8 = 1 + x 2 8 + x 4 7 2

x 3 8 = 1.54497

x 4 8 = 1 + x 3 7 2

x 4 8 = 1.27248

Então temos x 8 = 0.90863 , 0 . 81781 , 1.54497 , 1.27248 .

Critério de Parada:

x 1 8 - x 1 7 = 0.00067 < ε

x 2 8 - x 2 7 = 0.00055 < ε

x 3 8 - x 3 7 = 0.00072 < ε

x 4 8 - x 4 7 = 0.00036 < ε

Beleza, o critério de parada foi atingido! Então nossa aproximação é:

x = 0.90863 , 0.81781 , 1.54497 , 1.27248

Resposta

c Nesse caso não podemos afirmar nada a respeito da convergência dos métodos de Gauss-Jacobi e Gauss-Seidel quando aplicados a esse sistema. Eles podem convergir ou divergir.

e x = 0.90863 , 0.81781 , 1.54497 , 1.27248

Exercício Resolvido #4

Considere o sistema linear:

1 1 2 7 5 1 1 1 1 - 6 1 1 1 1 8 1 x 1 x 2 x 3 x 4 = - 5 4 7 7

a Escreva um sistema linear equivalente tal que o método de Gauss-Seidel convirja.

b Aplique o método de Gauss-Seidel para resolver o sistema modificado utilizando x 0 = 0 , 0,0 , 0 T e com precisão de 0.1 .

Passo 1

a Fazendo as seguintes trocas de linhas:

L 1 ↔ L 4

L 1 ↔ L 2

L 2 ↔ L 3

Obtemos o sistema:

5 1 1 1 1 - 6 1 1 1 1 8 1 1 1 2 7 x 1 x 2 x 3 x 4 = 4 7 7 - 5

Verificando o critério de Sassenfeld:

β 1 = 3 5 = 0.6

β 2 = 2.6 6 = 0.4 3 ¯

β 3 = 2.0 3 ¯ 8 = 0.2541 6 ¯

β 4 = 1.541 6 ¯ 7 = 0.22024

Logo, β = 0.6 < 1 . Ou seja, o método de Gauss-Seidel converge. Também podíamos ter dito que converge, pois a matriz é diagonal dominante. Ou ainda podíamos ter verificado o critério das linhas, que seria satisfeito implicando que o critério de Sassenfeld seria satisfeito também.

Passo 2

b As funções de iteração são:

x 1 k + 1 = 4 - x 2 k - x 3 k - x 4 k 5

x 2 k + 1 = 7 - x 1 k + 1 - x 3 k - x 4 k - 6

x 3 k + 1 = 7 - x 1 k + 1 - x 2 k + 1 - x 4 k 8

x 4 k + 1 = - 5 - x 1 k + 1 - x 2 k + 1 - 2 x 3 k + 1 7

E como chute inicial temos x 0 = 0 , 0,0 , 0 com ε = 0.1

Iteração 1 :

x 1 1 = 4 - x 2 0 - x 3 0 - x 4 0 5

x 1 1 = 0.8

x 2 1 = 7 - x 1 1 - x 3 0 - x 4 0 - 6

x 2 1 = - 1.03

x 3 1 = 7 - x 1 1 - x 2 1 - x 4 0 8

x 3 1 = 0.9

x 4 1 = - 5 - x 1 1 - x 2 1 - 2 x 3 1 7

x 4 1 = - 0.94

Então temos x 1 = 0.8 , - 1.03,0.9 , - 0.94 .

Critério de Parada:

x 1 1 - x 1 0 = 0.8 > ε

Não atingimos o critério, então continuamos as iterações.

Iteração 2 :

x 1 2 = 4 - x 2 1 - x 3 1 - x 4 1 5

x 1 2 = 1.01

x 2 2 = 7 - x 1 2 - x 3 1 - x 4 1 - 6

x 2 1 = - 1

x 3 2 = 7 - x 1 2 - x 2 2 - x 4 1 8

x 3 2 = 0.99

x 4 2 = - 5 - x 1 2 - x 2 2 - 2 x 3 2 7

x 4 2 = - 1

Então temos x 2 = 1.01 , - 1,0.99 , - 1 .

Critério de Parada:

x 1 2 - x 1 1 = 0 . 21 > ε

Não atingimos o critério, então continuamos as iterações.

Iteração 3 :

x 1 3 = 4 - x 2 2 - x 3 2 - x 4 2 5

x 1 3 = 1

x 2 3 = 7 - x 1 3 - x 3 2 - x 4 2 - 6

x 2 3 = - 1

x 3 3 = 7 - x 1 3 - x 2 3 - x 4 2 8

x 3 3 = 1

x 4 3 = - 5 - x 1 3 - x 2 3 - 2 x 3 3 7

x 4 3 = - 1

Então temos x 3 = 1 , - 1,1 , - 1 .

Critério de Parada:

x 1 3 - x 1 2 = 0.01 < ε

x 2 3 - x 2 2 = 0.0 03 < ε

x 3 3 - x 3 2 = 0.0 09 < ε

x 4 3 - x 4 2 = 0.0 01 < ε

Beleza, o critério de parada foi atingido! Então nossa aproximação é:

x = 1 , - 1,1 , - 1

Resposta

a 5 1 1 1 1 - 6 1 1 1 1 8 1 1 1 2 7 x 1 x 2 x 3 x 4 = 4 7 7 - 5

b x = 1 , - 1,1 , - 1

Exercício Resolvido #5

Seja o sistema linear:

10 1 - 1 2 10 8 7 1 10 x 1 x 2 x 3 = 10 20 30

a É possível dizer que o Método de Jacobi é convergente para este sistema?

b E o de Gauss-Seidel?

c Resolva o sistema utilizando o método de Gauss-Seidel com x 0 = 0.7 , - 1.6,0.6 T , tolerância de 0.01 .

Passo 1

a Verificando o critério das linhas:

α 1 = 2 10 = 0.2

α 2 = 10 10 = 1

α 3 = 8 10 = 0.8

Logo, α = 1 . Então o critério das linhas não é satisfeito e a convergência do método de Gauss-Jacobi não é garantida.

Passo 2

b Verificando o critério de Sassenfeld:

β 1 = 2 10 = 0.2

β 2 = 8.4 10 = 0.84

β 3 = 2.24 10 = 0.224

Logo, β = 0.84 < 1 . Ou seja, o método de Gauss-Seidel converge.

Passo 3

c As funções de iteração são:

x 1 k + 1 = 10 - x 2 k + x 3 k 10

x 2 k + 1 = 20 - 2 x 1 k + 1 - 8 x 3 k 10

x 3 k + 1 = 30 - 7 x 1 k + 1 - x 2 k + 1 10

E como chute inicial temos x 0 = 0.7 , - 1.6,0.6 com ε = 0 . 0 1

Iteração 1 :

x 1 1 = 10 - x 2 0 + x 3 0 10

x 1 1 = 1.22

x 2 1 = 20 - 2 x 1 1 - 8 x 3 0 10

x 2 1 = 1.276

x 3 1 = 30 - 7 x 1 1 - x 2 1 10

x 3 1 = 2.018

Então temos x 1 = 1.22,1 . 276,2.018 .

Critério de Parada:

x 1 1 - x 1 0 = 0.52 > ε

Não atingimos o critério, então continuamos as iterações.

Iteração 2 :

x 1 2 = 10 - x 2 1 + x 3 1 10

x 1 2 = 1.074

x 2 2 = 20 - 2 x 1 2 - 8 x 3 1 10

x 2 2 = 0.17

x 3 2 = 30 - 7 x 1 2 - x 2 2 10

x 3 2 = 2.231

Então temos x 2 = 1.074,0 . 17,2.231 .

Critério de Parada:

x 1 2 - x 1 1 = 0.146 > ε

Não atingimos o critério, então continuamos as iterações.

Iteração 3 :

x 1 3 = 10 - x 2 2 + x 3 2 10

x 1 3 = 1.206

x 2 3 = 20 - 2 x 1 3 - 8 x 3 2 10

x 2 3 = - 0.026

x 3 3 = 30 - 7 x 1 3 - x 2 3 10

x 3 3 = 2.158

Então temos x 3 = 1.206 , - 0.026,2.158 .

Critério de Parada:

x 1 3 - x 1 2 = 0.132 > ε

Não atingimos o critério, então continuamos as iterações.

Iteração 4 :

x 1 4 = 10 - x 2 3 + x 3 3 10

x 1 4 = 1.218

x 2 4 = 20 - 2 x 1 4 - 8 x 3 3 10

x 2 4 = 0.0 3

x 3 4 = 30 - 7 x 1 4 - x 2 4 10

x 3 4 = 2.144

Então temos x 4 = 1.218,0 . 03,2.144 .

Critério de Parada:

x 1 4 - x 1 3 = 0.012 > ε

Não atingimos o critério, então continuamos as iterações.

Iteração 5 :

x 1 5 = 10 - x 2 4 + x 3 4 10

x 1 5 = 1.211

x 2 5 = 20 - 2 x 1 5 - 8 x 3 4 10

x 2 5 = 0.042

x 3 5 = 30 - 7 x 1 5 - x 2 5 10

x 3 5 = 2.148

Então temos x 5 = 1.211,0 . 042,2.148 .

Critério de Parada:

x 1 5 - x 1 4 = 0.007 > ε

Não atingimos o critério, então continuamos as iterações.

Iteração 6 :

x 1 6 = 10 - x 2 5 + x 3 5 10

x 1 6 = 1.211

x 2 6 = 20 - 2 x 1 6 - 8 x 3 5 10

x 2 6 = 0.04

x 3 6 = 30 - 7 x 1 6 - x 2 6 10

x 3 6 = 2.149

Então temos x 6 = 1.211,0 . 04,2.149 .

Critério de Parada:

x 1 6 - x 1 5 = 0.0009 < ε

x 2 6 - x 2 5 = 0.003 < ε

x 3 6 - x 3 5 = 0.0009 < ε

Beleza, o critério de parada foi atingido! Então nossa aproximação é:

x = 1.211,0.04,2.149

Resposta

a Não.

b Sim.

c x = 1.211,0.04,2.149

Exercício Resolvido #6

Resolva pelo método iterativo de Gauss-Seidel, se possível. Use precisão ε = 0.1

0.2 x + y - 0.3 z = - 1.2 0.3 x - 0.1 y - z =       1.5   x - 0.5 y + 0.1 z =     0.5

Passo 1

Esse “se possível” do final da frase vai dar um trabalhinho a mais. Pq agora a gente vai ter que provar que pode usar Gauss-Seidel.

Para isso vamos usar o Critério de Sassenfeld pra verificar se rola mesmo. Lembra, se todos os β   que a gente calcular forem menores que 1, então converge. Bora ver!

β 1 = | a 12 | + | a 13 | | a 11 | = 1 + 0.3 0.2 > 1

E agoooora?? Deu maior que 1, que que a gente faz??

Lembra que a gente é autorizado a trocar a ordem das linhas? Então, bora trocar e deixar de um jeito que o maior elemento (em módulo) de cada linha esteja na diagonal principal. Olha só...

x - 0.5 y + 0.1 z =     0.5       0.2 x + y - 0.3 z = - 1.2 0.3 x - 0.1 y - z =       1.5  

Colocando as equações nessa ordem, percebe que o maior elemento de cada equação ficou na diagonal principal? Bora aplicar o critério de novo.

β 1 = | a 12 | + | a 13 | | a 11 | = 0.5 + 0.1 1 = 0.6 < 1

β 2 = | a 21 | β 1 + | a 23 | | a 22 | = 0.2 * 0.6 + 0.3 1 = 0.42 < 1

β 3 = | a 31 | β 1 + | a 32 | β 2 | a 33 | = 0.3 * 0.6 + 0.1 * 0.42 1 = 0.222 < 1

Percebeu? Só de trocar a ordem das equações, já conseguimos provar que o sistema converge e é possível resolve-lo pelo método de Gauss- Seidel

Passo 2

Feito isso agora é hora de achar as equações de iteração. Pra isso basta a gente isolar na primeira equação o x , na segunda o y   e na terceira o z .  

x - 0.5 y + 0.1 z =     0.5       0.2 x + y - 0.3 z = - 1.2 0.3 x - 0.1 y - z =       1.5  

x k + 1 = 0.5 + 0.5 y k - 0.1 z k

y k + 1 = - 1.2 - 0.2 x k + 1 + 0.3 z k

z k + 1 = - 1.5 + 0.3 x k + 1 - 0.1 y k + 1

Esse k que aparece em cada fórmula é o número da iteração, começando em k = 0 .

Passo 3

Como chute inicial vamos usar x 0 y 0 z 0 = 0 0 0 . Pq se converge, converge para qualquer chute inicial .

Iteração 1:

x 1 = 0.5 + 0.5 * 0 - 0.1 * 0 = 0.5

y 1 = - 1.2 - 0.2 * 0.5 + 0.3 * 0 = - 1.3

z 1 = - 1.5 + 0.3 * 0.5 - 0.1 * - 1.3 = - 1.22

x 1 y 1 z 1 = 0.5 - 1.3 - 1.22

Será que já podemos parar?

Critério de Parada:

| x 1 - x 0 | = 0.5 - 0 = 0.5 > ε

Falhou logo no primeiro. Então precisamos de mais iterações.

Iteração 2:

x 2 = 0.5 + 0.5 * - 1.3 - 0.1 * - 1.22 = - 0.028

y 2 = - 1.2 - 0.2 * - 0.028 + 0.3 * - 1.22 = - 1.56

z 2 = - 1.5 + 0.3 * - 0.028 - 0.1 * - 1.56 = - 1.352

x 2 y 2 z 2 = - 0.028 - 1.56 - 1.352

Será que já podemos parar?

Critério de Parada:

| x 2 - x 1 | = | - 0.028 - 0.5 | = 0.528 > ε

Fazer mais uma iteração aqui pra gente tentar chegar neh?

Iteração 3:

x 3 = 0.5 + 0.5 * - 1.56 - 0.1 * - 1.352 = - 0.1448

y 3 = - 1.2 - 0.2 * - 0.1448 + 0.3 * - 1.352 = - 1.577

z 3 = - 1.5 + 0.3 * - 0.1448 - 0.1 * - 1.577 = - 1.386

x 3 y 3 z 3 = - 0.1448 - 1.577 - 1.386

Critério de parada

| x 3 - x 2 | = | - 0.1448 + 0.028 | = 0.1168 > ε

Puuutz, furou mais uma vez. Mas tá percebendo que os números tá convergindo?? Bora fazer mais uma iteração!!

Iteração 4:

x 4 = 0.5 + 0.5 * - 1.577 - 0.1 * - 1.386 = - 0.15

y 4 = - 1.2 - 0.2 * - 0.15 + 0.3 * - 1.386 = - 1.59

z 4 = - 1.5 + 0.3 * - 0.15 - 0.1 * - 1.59 = - 1.39

x 4 y 4 z 4 = - 0.15 - 1.59 - 1.39

Critério de parada

| x 4 - x 3 | = | - 0.15 + 0.1448 | = 0.0052 < ε

| y 4 - y 3 | = | - 1.59 + 1.577 | = 0.013 < ε

| z 4 - z 3 | = | - 1.39 + 1.386 | = 0.004 < ε

Finalmente atendeu nosso critério de parada!!!

Resposta

x y z = - 0.15 - 1.59 - 1.39

Exercício Resolvido #7

Dado o sistema linear abaixo. Use precisão ε = 0.1

2 x + y + 4 z =   1 4 x + y + 2 z =       1   x + 4 y + 2 z =     1

  1. O que é possível dizer sobre a sua convergência quando utilizado o método de Gauss- Seidel?
  2. Permutando-se as equações, seria possível garantir convergência para um chute inicial x 0 y 0 z 0 = 0 0 0 ?

Se possível, resolva o sistema para o chute inicial. Use ε = 0.1

Passo 1

No item (a), para analisar a convergência vamos usar o Critério de Sassenfeld. Mas essa pergunta do professor é meio maldosa... quer ver?

Lembra do critério? Se todos os β   que a gente calcular forem menores que 1, então converge. Bora ver!

β 1 = | a 12 | + | a 13 | | a 11 | = 1 + 4 2 = 2.5 > 1

E agoooora?? Já deu maior que 1, que que a gente diz pro professor??

Se todos os β fossem menores que 1, a gente poderia afirmar que o sistema converge. Maaaaas como o professor perguntou “O que é possível dizer sobre a sua convergência” a resposta é NADAA!

Quando o critério de convergência falha, nada podemos afirmar sobre a convergência!!

Olha que maldoso esse professor, que provavelmente tava esperando que a gente dissesse que não converge. HEHE

Passo 2

Para resolver o item (b), lembra que a gente é autorizado a trocar a ordem das linhas? Então, bora trocar e deixar de um jeito que o maior elemento (em módulo) de cada linha esteja na diagonal principal. Olha só...

4 x + y + 2 z =     1       x + 4 y + 2 z =     1 2 x + y + 4 z =       1  

Colocando as equações nessa ordem, percebe que o maior elemento de cada equação ficou na diagonal principal? Bora aplicar o critério de novo.

β 1 = | a 12 | + | a 13 | | a 11 | = 1 + 2 4 = 0 . . 75 < 1

β 2 = | a 21 | β 1 + | a 23 | | a 22 | = 1 * 0.75 + 2 4 = 0.69 < 1

β 3 = | a 31 | β 1 + | a 32 | β 2 | a 33 | = 2 * 0.75 + 1 * 0.69 4 = 0.55 < 1

Percebeu? Só de trocar a ordem das equações, já conseguimos provar que o sistema converge e é possível resolve-lo pelo método de Gauss- Seidel.

Mas e o chute inicial? Ele pediu para que a gente dissesse se para o chute inicial x 0 y 0 z 0 = 0 0 0 se o sistema converge. E a resposta é SIIIM! Porque se converge, converge para qualquer chute inicial.

Passo 3

Já que é para resolver, bora achar as equações de iteração. Pra isso, basta a gente isolar na primeira equação o x , na segunda o y   e na terceira o z .  

4 x + y + 2 z =     1       x + 4 y + 2 z =     1 2 x + y + 4 z =       1  

x k + 1 = 0.25 - 0.25 y k - 0.5 z k

y k + 1 = 0.25 - 0.25 x k + 1 - 0.5 z k

z k + 1 = 0.25 - 0.5 x k + 1 - 0.25 y k + 1

Esse k que aparece em cada fórmula é o número da iteração, começando em k = 0 (que é o nosso chute inicial).

Como chute inicial vamos usar x 0 y 0 z 0 = 0 0 0 . Pq se converge, converge para qualquer chute inicial .

Iteração 1:

x 1 = 0.25 - 0.25 * 0 - 0.5 * 0 = 0.25

y 1 = 0.25 - 0.25 * 0.25 - 0.5 * 0 = 0.1875

z 1 = 0.25 - 0.5 * 0.25 - 0.25 * 0.1875 = 0.078

x 1 y 1 z 1 = 0.25 0.1875 0.078

Será que já podemos parar?

Critério de Parada:

| x 1 - x 0 | = 0.25 - 0 = 0.25 > ε

Falhou logo no primeiro. Então precisamos de mais iterações.

Iteração 2:

x 2 = 0.25 - 0.25 * 0.1875 - 0.5 * 0.078 = 0.1641

y 2 = 0.25 - 0.25 * 0.1641 - 0.5 * 0.078 = 0.17

z 2 = 0.25 - 0.5 * 0.1641 - 0.25 * 0.17 = 0.126

x 2 y 2 z 2 = 0.1641 0.17 0.126

Será que já podemos parar?

Critério de Parada:

| x 2 - x 1 | = | 0.1641 - 0.25 | = 0.08 < ε

| y 2 - y 1 | = | 0.17 - 0.1875 | = 0.018 < ε

| z 2 - z 1 | = | 0.126 - 0.078 | = 0.04 < ε

Aeeew atendeu nosso critério de parada!!!

Resposta

  1. Nada podemos afirmar sobre a convergência.
  2. Sim, é possível pois se converge, converge para qualquer chute inicial.

x y z = 0.1641 0.17 0.126

Exercício Resolvido #8

Resolva o sistema linear:

5 x + y + z =   5 3 x + 4 y + z =       6   3 x + 3 y + 6 z =     0

Pelo método de Gauss-Seidel com x 0 y 0 z 0 = 0 0 0 e ε = 5 × 10 - 2

Passo 1

Já que é para resolver, bora achar as equações de iteração. Pra isso, basta a gente isolar na primeira equação o x , na segunda o y   e na terceira o z .  

5 x + y + z =   5 3 x + 4 y + z =       6   3 x + 3 y + 6 z =     0

x k + 1 = 1 - 0.2 y k - 0.2 z k

y k + 1 = 1.5 - 0.75 x k + 1 - 0.25 z k

z k + 1 = 0 - 0.5 x k + 1 - 0.5 y k + 1

Como chute inicial vamos usar x 0 y 0 z 0 = 0 0 0 . Pq se converge, converge para qualquer chute inicial .

Iteração 1:

x 1 = 1 - 0.2 * 0 - 0.2 * 0 = 1

y 1 = 1.5 - 0.75 * 1 - 0.25 * 0 = 0.75

z 1 = 0 - 0.5 * 1 - 0.5 * 0.75 = - 0.875

x 1 y 1 z 1 = 1 0.75 - 0.875

Será que já podemos parar?

Critério de Parada:

| x 1 - x 0 | = 1 - 0 = 1 > ε

Falhou logo no primeiro. Então precisamos de mais iterações.

Iteração 2:

x 2 = 1 - 0.2 * 0.75 - 0.2 * - 0.875 = 1.025

y 2 = 1.5 - 0.75 * 1.025 - 0.25 * - 0.875 = 0.95

z 2 = 0 - 0.5 * 1.025 - 0.5 * 0.95 = - 0.9875

x 2 y 2 z 2 = 1.025 0.95 - 0.9875

Será que já podemos parar?

Critério de Parada:

| x 2 - x 1 | = | 1.025 - 1 | = 0.025 < ε

| y 2 - y 1 | = | 0.95 - 0.75 | = 0.2 > ε

Bora fazer +++ iterações então

Iteração 3:

x 3 = 1 - 0.2 * 0.95 - 0.2 * - 0.9875 = 1.0075

y 3 = 1.5 - 0.75 * 1.0075 - 0.25 * - 0.9875 = 0.9913

z 3 = 0 - 0.5 * 1.0075 - 0.5 * 0.9913 = - 0.9994

x 3 y 3 z 3 = 1.0075 0.9913 - 0.9994

Será que já podemos parar?

Critério de Parada:

| x 3 - x 2 | = | 1.0075 - 1.025 | = 0.0175 < ε

| y 3 - y 2 | = | 0.9913 - 0.95 | = 0.0413 < ε

| z 3 - z 2 | = | - 0.9994 + 0.9875 | = 0.0119 < ε

Alô, Alô Graças a DEUS!!! Já pode parar!!!

Resposta

x y z = 1.0075 0.9913 - 0.9994

Exercícios de Livros Relacionados

Em cada caso: verifique se o critério de Sassenfeld é satisfeito ;resolva por Gauss-Seidel , se possível: A = 4 - 1 0 0 - 1 4 - 1 0 0 - 1 4 - 1 0 0 - 1 4 ; b = 1 1 1 1
Usando o critério de Sassenfeld, verifique para que valores positivos de k se tem garantia de que o método de Gauss-Seidel vai gerar uma sequência convergente para a solução do sistema: k x 1 + 3 x 2
Considere o sistema linear: 1 2 1 2 3 1 3 5 2 x 1 x 2 x 3 = 3 5 1 Verifique, usando eliminação gaussiana que este sistema não tem solução. Qual será o comportamento usando Gauss Seidel?Através de um s
Em cada caso: verifique se o critério de Sassenfeld é satisfeito ;resolva por Gauss-Seidel , se possível: A = 10 1 1 1 10 1 1 1 10 ; b = 12 12 12
27. Prove que no método de Gauss-Seidel vale a relação: