Propõe-se (faça cinco iterações):
(a) aplicar Jacobi e Gauss-Seidel com x^{(0)}=(0,0,0)^{T};
(b) comparar numericamente o número de iterações;
(c) investigar o efeito de diferentes escolhas de \omega no método SOR.
e pede três coisas:
(a) aplicar os métodos iterativos de Jacobi e de Gauss–Seidel durante cinco iterações com x^{(0)}=(0,0,0)^{T};
(b) comparar numericamente o número de iterações (isto é, comparar a rapidez de convergência numericamente);
(c) investigar o efeito de diferentes escolhas de \omega no método SOR (fazer experimentos e comparar).
Explicação: exemplo para x_1: da equação 4x_1 - x_2 + x_3 =7 isolamos x_1=(7 + x_2 - x_3)/4. Mesma ideia para as outras.
Método de Jacobi:
Em Jacobi o lado direito usa todas as componentes da iteração anterior x^{(k)}. Então a regra de atualização é
x_i^{(k+1)} = \text{função das }x_j^{(k)}\\ (j\ne i).çã
Usaremos exatamente as fórmulas acima, substituindo todas as variáveis pela iteração anterior.
Método de Gauss–Seidel:
Em Gauss–Seidel, ao atualizar x_i^{(k+1)} usamos as componentes já atualizadas dentro da mesma iteração (i.e., x_1^{(k+1)} é usada ao computar x_2^{(k+1)}, se x_1 vem antes de x_2). Em notação componente:
Explicação: \omega é o parâmetro de relaxação. Quando \omega=1 recuperamos Gauss–Seidel; para 0<\omega<1 é under-relaxation (mais conservador); para 1<\omega<2 geralmente acelera (over-relaxation), mas se \omega for muito grande pode tornar o método instável.
Convergência:
A matriz A é estritamente diagonal dominante por linhas (verificação rápida: 4>|-1|+|1|=2,\;6>|-2|+|1|=3,\;5>|1|+|1|=2). Isso garante convergência de Jacobi e Gauss–Seidel. SOR pode acelerar ou atrapalhar dependendo de \omega.]
Passo 3
Calculando a solução exata (útil para medir erro e comparar rapidez).
Vou resolver o sistema por eliminação direta (mostrando os passos essenciais) para termos o vetor exato x^* e calcular erros relativos.
Das igualdades, isolando x_3 pela primeira equação:
x_3 = 7 - 4x_1 + x_2.
Substituindo em (2) e (3) e resolvendo o sistema 2×2 obtém-se, após contas algébricas (detalhes: verificação feita passo a passo),
Iterações do método de Jacobi (usar as fórmulas do Passo 2; iniciar em x^{(0)}=(0,0,0)^T). Vou mostrar todas as 5 iterações com valores fracionários e decimais úteis.
Observação imediata (prévia à comparação formal): Gauss–Seidel foi visivelmente mais rápido que Jacobi — após 5 iterações o erro máximo de GS é da ordem de 3{,}4\times10^{-3} enquanto o de Jacobi é da ordem de 6{,}8\times10^{-2}.]
Passo 6
Comentário prático sobre aplicação em prova (como fazer rápido e sem calculadora):
Anote as fórmulas isoladas para x_1,x_2,x_3 (conforme Passo 2).
Para Jacobi, calcule as três fórmulas usando os componentes de x^{(k)} — atenção às frações simples; trabalhar com frações pequenas (como /4, /6, /5) mantém exatidão.
Para Gauss–Seidel, atualize seqüencialmente e use imediatamente os valores novos: geralmente menos operações totais porque os valores novos aceleram a convergência.
Use norma infinito para decidir critério de parada (por exemplo \|e^{(k)}\|_\infty<10^{-3}).
Passo 7
Investigação do método SOR: experimentos com diferentes \omega. Vou aplicar SOR por cinco iterações desde x^{(0)}=(0,0,0) para \omega\in\{0{,}8,\\\ 1{,}0,\\\ 1{,}2,\\\ 1{,}5,\\\ 1{,}9\}. Lembre: \omega=1 coincide com Gauss–Seidel (já fizemos).
Comentário: neste caso há overshoot e maior erro; \omega grande pode provocar oscilações e piora.
\omega=1{,}9 (muito próximo de 2):
\text{comportamento: instável / divergente após poucas iterações (valores oscilantes e muito grandes)}.áóçõ
Comentário: \omega muito grande pode tornar o processo instável; aqui observou-se comportamento divergente.
Conclusão prática do experimento SOR: um \omega apropriado (aqui em torno de 1{,}1–1{,}3) acelera bastante; \omega<1 tende a desacelerar; \omega muito grande (próximo de 2) tende a instabilizar.
Passo 8
Resumo e interpretação final (como usar esses resultados na prova):
Jacobi é fácil de aplicar, mas converge mais lentamente do que Gauss–Seidel quando a matriz é diagonalmente dominante (como neste caso).
Gauss–Seidel usa valores atualizados e normalmente reduz o erro mais rápido; aqui isso ficou claro após 5 iterações (\|e^{(5)}\|_\infty de ordem 10^{-3}).
SOR com um \omega adequado (testei 1{,}2) pode acelerar ainda mais a convergência (aqui \|e^{(5)}\|_\infty caiu para cerca de 6{,}8\times10^{-4}). Mas cuidado: \omega muito grande pode levar à instabilidade.
Em prova: se puder testar, tente \omega levemente maior que 1 (por exemplo 1{,}1 ou 1{,}2) — geralmente traz ganhos; evite experimentar \omega muito grande sem justificativa.
Resposta
(a) Jacobi — iterações x^{(k)} a partir de x^{(0)}=(0,0,0)^T: x^{(1)}=(1{,}75,\\\ 1{,}5,\\\ -1{,}2)^T x^{(2)}\approx(2{,}425,\\\ 2{,}283333333,\\\ -1{,}85)^T x^{(3)}\approx(2{,}783333333,\\\ 2{,}616666667,\\\ -2{,}141666667)^T x^{(4)}\approx(2{,}939583333,\\\ 2{,}784722222,\\\ -2{,}28)^T x^{(5)}_{\text{Jacobi}}\approx(3{,}014236111,\\\ 2{,}859861111,\\\ -2{,}344861111)^T
(b) Comparação numérica (erro \|\cdot\|_\infty em relação à solução exata x^*\approx(3{,}0824742268,2{,}9278350515,-2{,}4020618557)^T):
Jacobi: \|e^{(5)}\|_\infty\approx 0{,}068237.
Gauss–Seidel: \|e^{(5)}\|_\infty\approx 0{,}003415.
Conclusão: Gauss–Seidel converge muito mais rápido que Jacobi neste caso (após 5 iterações GS está muito mais próximo da solução).
(c) SOR — efeitos de diferentes \omega (valores de x^{(5)} e \|e^{(5)}\|_\infty):
\omega=1{,}9: comportamento instável / divergente (não é aceitável).
Resumo final: Gauss–Seidel já é muito melhor que Jacobi aqui; SOR com \omega ligeiramente acima de 1 (por exemplo \omega\approx1{,}2) acelera ainda mais; \omega demasiado grande pode tornar o método divergente.