Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Trabalho 01 – Resolução de sistema de equações 10x10 pelo método de Jacobi e método de Gauss-
Seidel
Fortaleza, 2017
2
Introdução
O método numérico, ou análise numérica, é um conjunto de ferramentas que são utilizadas para
a solução de problemas matemáticos obtendo soluções aproximadas para os mesmos. São
utilizados em problemas que não possuem solução analítica, portanto precisam ser resolvido
numericamente, ou seja, a partir de um valor inicial, soluções aproximadas são geradas de
forma que o erro entre um interação e outra seja cada vez menor.
O método de Gauss- Seidel e o método de Jacobi são bastante semelhantes. Nos dois métodos
busca-se isolar em cada equação uma variável e aplicar as restantes valores iniciais propostos,
chegando assim a uma próxima aproximação melhor que a anterior. A diferença entre estes
dois métodos, é que no método de Gauss-Seidel após a primeira aproximação feita, utiliza-se
este valor na próxima interação. Isso faz com que na maioria dos casos o método de Gauss-
Seidel convirja de forma mais rápida que o método de Jacobi.
Vejamos o seguintes exemplos:
Método de Jacobi.
Temos o seguinte sistema:
Admitindo como valores iniciais o vetor (0,0,0,0) aplica-se esses valores como condições
iniciais, de forma a melhorá-los aproximando-os da solução correta.
Assim se obtém o seguinte vetor (3,2 , 3,933 , 1,9 , 5,33), onde esses valores são utilizados
para a próxima interação, e assim sucessivamente. Obtendo o valor aproximado para o sistema.
3
Método de Gauss-Seidel.
Retomando ao sistema anterior:
Desenvolvimento
Método de Jacobi:
Primeiramente é pedido ao usuário que forneça os valores dos coeficientes das variáveis e o
valor do termo da matriz b no seguinte formato.
Exemplo:
[2𝑥1 + 3𝑥2 + 4𝑥3 = 5] → [2 3 4 5]
Em seguida, definimos a tolerância k de 0,0001 e definimos os erros iniciais (apenas para entrar
no laço).
Dentro do laço “while” (seguindo as condições de o erro ser maior que a tolerância) calculamos
os novos valores das variáveis após isolar uma para cada equação. Os valores das variáveis do
lado direito são os mesmos para toda a interação (os novos valores obtidos são utilizados apenas
na interação seguinte, obedecendo assim o método de Jacobi);
O erro foi definido seguindo a seguinte equação:
Além disso, os valores obtidos foram gravados em novas variáveis para serem utilizados na
próxima interação.
5
No momento que o erro se torna menor que a tolerância as interações são interrompidas (sai do
laço) e os valores obtidos são mostrados ao usuário.
Método de Gauss-Seidel:
De forma semelhante ao método de Jacobi, é pedido ao usuário que forneça os valores dos
coeficientes das variáveis e o valor do termo da matriz b no mesmo formato mostrado
anteriormente,
[2𝑥1 + 3𝑥2 + 4𝑥3 = 5] → [2 3 4 5]
Definimos a tolerância de 0,0001 e o erros iniciais.
Em seguida o programa entra no laço “while” enquanto o erro for maior que a tolerância.
Dentro do laço é necessário armazenar em novas variáveis o valores da interação anterior (no
caso da primeira interação, os valores iniciais) para o posterior cálculo do erro.
Isolamos as variáveis (uma para cada equação) de forma que o cálculo da variável seguinte já
o utilize o valor que foi calculado anteriormente, obedecendo ao método de Gauss-Seidel.
O erro é calculado obedecendo a mesma fórmula que foi utilizada no método de Jacobi.
6
No momento que o erro for menor que a tolerância, o programa sai do laço e mostra o usuário
quais valores foram obtidos.
Método de Jacobi:
8
Método de Gauss-Seidel:
Conclusão
O método que convergiu de forma mais rápida para o resultado foi o de Gauss Seidel, como já
era esperado, já que utiliza os valores da variável anterior no cálculo da próxima variável na
mesma interação. Porém isso não garante que isso acontecerá para todo e qualquer sistema de
10x10.