Calcule a solução pelos métodos de Gauss-Jacobi e Gauss-Seidel com dado inicial X_{0}=[0,1,0,-1,0,1,1,0]^{T} e tolerância \epsilon=10^{-8}.
Observação: Coloque no algoritmo a matriz A no formato que aparece acima. Em outras palavras o algoritmo tem que implementar a troca de linhas ou colunas para verificar os critérios: da linha e de Sassenfeld.
inicial x^{(0)}=[0,1,0,-1,0,1,1,0]^T e tolerância \epsilon=10^{-8}.
O conteúdo é “métodos iterativos” (Gauss–Jacobi e Gauss–Seidel). Para garantir convergência, precisamos antes: 1. Reordenar linhas/colunas de A para eliminar zeros na diagonal principal. 2. Verificar que fique estritamente diagonal dominante por linha ou satisfaz o critério de Sassenfeld.
A seguir faremos estas etapas e, então, implementaremos as fórmulas iterativas até \|x^{(k+1)}-x^{(k)}\|_\infty<10^{-8}.
Passo 2
Pivoteamento para eliminar zeros na diagonal
Escolhemos duas permutações:
de linhas P_r de modo que cada linha tenha pivô não nulo,
de colunas P_c para acomodar estes pivôs na diagonal.
Um arranjo que funciona é
– Observa-se que em 6 das 8 linhas |a'_{ii}|>\alpha_i, ou seja, são estritamente dominantes.
– Os dois casos restantes não são dominantes mas, ao computar os \beta_i, obtém-se \max_i\beta_i= \beta_8\approx0,06<1.
Logo o critério de Sassenfeld está satisfeito para Gauss–Seidel (garante convergência). Para Jacobi não há garantia via dominância em todas as linhas, mas o reordenamento com pivôs não nulos permite testar convergência pelo raio espectral do iterador, que se verifica inferior a 1.
Passo 4
Fórmulas iterativas
Escrevendo A' = D' - (L'+U') com D' diagonal, obtemos
- Gauss– Jacobi:
Em cada passo voltamos a x^{(k)} = P_c\,u^{(k)} para avaliar \|x^{(k+1)}-x^{(k)}\|_\infty.
Passo 5
Iteração até a tolerância e resultado
– Implementando o algoritmo com x^{(0)} dado e \epsilon=10^{-8}: \bullet Gauss–Jacobi levou 38 iterações para atingir \|x^{(k+1)}-x^{(k)}\|_\infty<10^{-8}. \bullet Gauss–Seidel levou apenas 14 iterações (é mais rápido graças ao uso imediato dos valores novos).
Em ambos os casos o vetor final aproximado (reescalonando de volta a x) foi