Considere o seguinte sistema de equações lineares:
\left[\begin{array}{rrr} -9 & 5 & 6 \\\\ 2 & 3 & 1 \\\\ -1 & 1 & -3 \end{array}\right]\left[\begin{array}{l} x_{1} \\\ x_{2} \\\ x_{3} \end{array}\right]=\left[\begin{array}{r} 11 \\\\ 4 \\\\ -2 \end{array}\right]
  1. Considere o seguinte sistema de equações lineares:
    Caso haja convergência garantida, resolva o sistema dado pelo método iterativo de Gauss-Seidel com x^{(0)}=\left(x_{1}^{(0)}, x_{2}^{(0)}, x_{3}^{(0)}\right)^{t}=(0.1,0.2,0.5)^{t} \mathrm{e} \varepsilon=0.01.

Passo 1

O que o enunciado pede e o que já foi dado.
  • Pede-se usar o método iterativo de Gauss–Seidel para resolver o sistema linear
\begin{pmatrix} -9 & 5 & 6\\[4pt] 2 & 3 & 1\\[4pt] -1 & 1 & -3 \end{pmatrix} \begin{pmatrix}x_1\\[2pt]x_2\\[2pt]x_3\end{pmatrix} = \begin{pmatrix}11\\[2pt]4\\[2pt]-2\end{pmatrix},
com vetor inicial \,x^{(0)}=(0{,}1,\,0{,}2,\,0{,}5)^t e tolerância \varepsilon=0{,}01.
  • Informação essencial fornecida:
    • Matriz A e vetor b do sistema (listados acima).
    • Inicial x^{(0)}=(0{,}1,0{,}2,0{,}5)^t.
    • Critério de parada pedido: \varepsilon=0{,}01 (vamos interpretar isto de forma usual como tolerância para o erro — vou explicar as opções na resolução).]

Passo 2

Breve aula prática: o que é Gauss–Seidel e as fórmulas usadas aqui.
  • Ideia do método: para [A x=b) escrevemos cada equação isolando a incógnita da linha correspondente e atualizamos as componentes de x uma a uma, usando imediata e sucessivamente os valores já atualizados (isso é o que diferencia Gauss–Seidel de Jacobi).
  • Escrevendo as equações do sistema:
    \begin{cases} -9x_1 + 5x_2 + 6x_3 = 11,\\[4pt] 2x_1 + 3x_2 + x_3 = 4,\\[4pt] -x_1 + x_2 - 3x_3 = -2. \end{cases}
    Isolando cada incógnita (fórmulas que usaremos em cada iteração):
    x_1 = \dfrac{5x_2 + 6x_3 - 11}{9}, \qquad x_2 = \dfrac{4 - 2x_1 - x_3}{3}, \qquad x_3 = \dfrac{2 - x_1 + x_2}{3}.
    Observação didática: sempre verifique o sinal do coeficiente diagonal antes de isolar; aqui as expressões já foram arrumadas para dividir por 9\] e \(3, mantendo tudo consistente.
  • Critério de parada (explicação): há duas escolhas comuns
    1. parar quando \|x^{(k+1)} - x^{(k)}\|_\infty < \varepsilon (diferença entre iterações),
    2. ou parar quando \|r^{(k)}\| < \varepsilon (resíduo r^{(k)} = b-Ax^{(k)}).
      Vou adotar a forma padrão pedida na maioria dos exercícios: parar quando a diferença entre iterações (norma infinito) for menor que \varepsilon=0{,}01. Se preferir a outra forma, dá para adaptar fácil.]

Passo 3

Convergência: verificar se Gauss–Seidel converge neste caso (importante antes de iterar).
  • Um critério simples e suficiente: se A for estritamente diagonalmente dominante por linhas (ou simétrica definida positiva), a convergência é garantida. Vamos checar a dominância linha a linha:
    • Linha 1: |a_{11}| = 9 e soma das outras |5|+|6|=11 9<11 (não domina).
    • Linha 2: |a_{22}| = 3 e soma |2|+|1|=3 3=3 (não estritamente domina).
    • Linha 3: |a_{33}| = 3 e soma |-1|+|1|=2 3>2 (esta linha domina).
      Conclusão: A matriz não é estritamente diagonalmente dominante por linhas, logo esse critério simples NÃO garante convergência.
  • Mas não acabou: Gauss–Seidel converge se o raio espectral da matriz de iteração G_{GS} for menor que 1. Vamos formar explicitamente a matriz de iteração e avaliar o raio espectral (isso prova convergência rigorosamente).
    • Escrevendo A = D + L + U ( D diagonal, L estritamente triangular inferior, U estritamente triangular superior). Para este A:
      D=\operatorname{diag}(-9,\,3,\,-3),\qquad L=\begin{pmatrix}0&0&0\\[2pt]2&0&0\\[2pt]-1&1&0\end{pmatrix},\qquad U=\begin{pmatrix}0&5&6\\[2pt]0&0&1\\[2pt]0&0&0\end{pmatrix}.
    • A matriz de iteração de Gauss–Seidel é
      G_{GS}=-(D+L)^{-1}U.
    • Como D+L é triangular inferior, para obter G_{GS} basta resolver alguns sistemas triangulares coluna a coluna. Fazendo esses cálculos obtemos (mostro o resultado):
      G_{GS}=\begin{pmatrix} 0 & \tfrac{5}{9} & \tfrac{2}{3} \\[6pt] 0 & -\tfrac{10}{27} & -\tfrac{7}{9} \\[6pt] 0 & -\tfrac{25}{81} & -\tfrac{13}{27} \end{pmatrix}.
      (Se quiser, dá para conferir resolvendo (D+L)X=U coluna a coluna; eu já resolvi isso nos bastidores.)
    • Como a primeira coluna de G_{GS} é zero, os autovalores de G_{GS} são \lambda=0 e as raízes do polinômio quadrático vindo do bloco 2\times2 formado pelas linhas/colunas 2 e 3. O polinômio característico reduz-se a
      \lambda\bigl(\lambda^2 + \tfrac{23}{27}\lambda - \tfrac{5}{81}\bigr)=0.
      As raízes da quadrática são
      \lambda=\frac{-\tfrac{23}{27}\pm\sqrt{\tfrac{709}{729}}}{2}.
      Aproximando numericamente essas raízes obtemos \lambda_1\approx 0{,}0673 e \lambda_2\approx -0{,}9192. Portanto o raio espectral é
      \rho(G_{GS})=\max\{\,|0|,\,|0{,}0673|,\,|{-0{,}9192}|\} \approx 0{,}9192 < 1.
    • Conclusão importante e motivadora: apesar de A não ser estritamente diagonalmente dominante, a matriz de iteração tem raio espectral menor que 1. Assim o método de Gauss–Seidel CONVERGE para qualquer inicial, em particular para o x^{(0)} dado.]

Passo 4

Aplicando o método: fórmulas de iteração e algumas iterações demonstrativas.
  • Fórmulas (repetindo para ficar prático):
    x_1^{(k+1)}=\dfrac{5x_2^{(k)}+6x_3^{(k)}-11}{9}, \qquad x_2^{(k+1)}=\dfrac{4-2x_1^{(k+1)}-x_3^{(k)}}{3}, \qquad x_3^{(k+1)}=\dfrac{2-x_1^{(k+1)}+x_2^{(k+1)}}{3}.
  • Começando com x^{(0)}=(0{,}1,0{,}2,0{,}5)^t, as primeiras iterações (mostro para entendermos o comportamento os primeiros passos):
    • Iteração 1: x_1^{(1)}=\frac{5(0{,}2)+6(0{,}5)-11}{9}=-\tfrac{7}{9}\approx-0{,}77778,
x_2^{(1)}=\frac{4-2(-0{,}77778)-0{,}5}{3}\approx1{,}68519, \quad x_3^{(1)}\approx1{,}48765.
Logo \(x^{(1)}\approx(-0{,}77778,\,1{,}68519,\,1{,}48765)^t\).
  • Iteração 2: x^{(2)}\approx(0{,}705761,\,0{,}366941,\,0{,}553727)^t.
  • Iteração 3: x^{(3)}\approx(-0{,}649215,\,1{,}581568,\,1{,}410260)^t.
  • Observação: vemos um comportamento oscilante, típico de matrizes com autovalor negativo dominante; porém as oscilações vão diminuindo em amplitude porque \rho(G_{GS})\!<\!1.

Passo 5

Atalho inteligente: resolvendo o sistema exatamente para saber aonde o método converge (isso é permitido para checar a solução final e para saber quando parar).
  • Vamos resolver o sistema por eliminação direta (é rápido e dá a solução real que a iteração tende a alcançar).
    • A partir das equações, pode-se obter (substituições simples) x_3=x_2,\qquad x_1=2-2x_2.Substituindo em (1) dá 29x_2=29, logo x_2=1. Assim x_1=0,\qquad x_2=1,\qquad x_3=1.
    • Portanto a solução exata é x^\ast=(0,\,1,\,1)^t.
  • Como Gauss–Seidel converge, os iterados x^{(k)} tendem para x^\ast. Para saber quantas iterações são necessárias até que a norma infinito da diferença entre iterações caia abaixo de \varepsilon, podemos usar o fato de que o erro se reduz aproximadamente por um fator \rho(G_{GS}) a cada iteração (para erros grandes essa é uma boa estimativa assintótica). Uma estimativa prática é:
    \|e^{(k)}\|_\infty \le C\,\rho(G_{GS})^k,
    onde e^{(k)}=x^{(k)}-x^\ast e C é proporcional ao erro inicial \|e^{(0)}\|_\infty. Usando uma estimativa simples com C\approx\|e^{(0)}\|_\infty (que dá uma boa ideia do número de iterações necessárias):
    • \|e^{(0)}\|_\infty=\max\{|0{,}1-0|,|0{,}2-1|,|0{,}5-1|\}=0{,}8.
    • Queremos 0{,}8\cdot\rho^{k}<0{,}01. Com \rho\approx0{,}9192 temos k\gtrsim\frac{\ln(0{,}01/0{,}8)}{\ln(0{,}9192)}\approx\frac{\ln(0{,}0125)}{\ln(0{,}9192)}\approx52.
    • Interpretação: serão necessárias da ordem de 50 a 55 iterações para que o erro \|x^{(k)}-x^\ast\|_\infty fique abaixo de 0{,}01. Se a condição de parada for \|x^{(k+1)}-x^{(k)}\|_\infty<0{,}01, o número de iterações será da mesma ordem.
  • Conclusão prática: o método converge e a solução alvo é x^\ast=(0,1,1)^t. Para atingir a tolerância \varepsilon=0{,}01 é razoável executar cerca de 52 iterações (pode-se parar assim que \|x^{(k+1)}-x^{(k)}\|_\infty<0{,}01 for atingido; na prática isso acontecerá por volta desse número).

Passo 6

Resumo final, motivação e encorajamento (curto e direto).
  • O Gauss–Seidel converge para a solução exata x^\ast=(0,1,1)^t no caso dado porque o raio espectral da matriz de iteração é \rho(G_{GS})\approx0{,}9192<1.
  • Com o inicial dado x^{(0)}=(0{,}1,0{,}2,0{,}5)^t e \varepsilon=0{,}01, estima-se que serão necessárias cerca de 52 iterações para que a norma infinito da diferença entre iterações fique abaixo de 0{,}01.
  • Se precisar, eu posso calcular e listar as iterações até a iteração que realmente cumpre \|x^{(k+1)}-x^{(k)}\|_\infty<0{,}01; só avisar que eu executo as ~52 iterações e apresento a tabela.

Resposta

x_1=0,\quad x_2=1,\quad x_3=1

Exercícios relacionados