Quando é mais vantagem resolver um sistema linear usando um método iterativo (por exemplo, Gauss-Seidel) e quando é mais vantagem usar um método direto (por exemplo, escalonamento).
Passo 1
Beleza, o enunciado pergunta: “Quando é mais vantagem usar um método iterativo (tipo Gauss–Seidel) em vez de um método direto (tipo escalonamento por eliminação de Gauss) para resolver um sistema linear
?”
Conteúdo: Álgebra linear numérica – métodos diretos e iterativos de resolução de sistemas.
O que vamos precisar: entender custo computacional (complexidade), requisitos de memória, propriedades da matriz (esparsidade, simetria, dominância diagonal) e conceito de convergência de iterações.
Conteúdo: Álgebra linear numérica – métodos diretos e iterativos de resolução de sistemas.
O que vamos precisar: entender custo computacional (complexidade), requisitos de memória, propriedades da matriz (esparsidade, simetria, dominância diagonal) e conceito de convergência de iterações.
Passo 2
Primeiro, método direto (eliminação de Gauss):
- A ideia é aplicar operações elementares na matriz aumentada
até deixá-la triangular e depois fazer retro-substituição. - Complexidade típica:
operações de ponto flutuante para uma matriz . - Vantagens: dá resposta exata (até erros de arredondamento), converge em número finito de passos; não precisa checar condições de convergência.
- Desvantagens: se a matriz for muito grande e esparsa (muitos zeros), você acaba “enchendo” ela de não-zeros (fill-in) e gastando muita memória/tempo.
Passo 3
Agora, método iterativo (ex.: Gauss–Seidel):
- A gente reescreve
de um jeito que, a partir de um chute inicial , calculamos novas aproximações até “parar”.
Por exemplo, a fórmula de Gauss–Seidel para o-ésimo componente é - Complexidade por iteração: se a matriz tiver
elementos não-zero, dá algo em . - Convergência: só funciona direitinho se a matriz for, por exemplo, estritamente diagonalmente dominante ou simétrica definida positiva.
- Vantagens: pra sistemas enormes e esparsos, cada iteração é barata e você só precisa armazenar o sparsity pattern; dá pra parar quando a solução estiver “boa o suficiente”.
- Desvantagens: pode demorar muitas iterações pra chegar numa precisão desejada, ou até não convergir se a matriz não tiver propriedades certas.
Passo 4
Comparando os dois cenários:
- Se sua matriz é pequena ou densa (ou seja, quase sem zeros), e você quer uma solução exata (até limite numérico), o método direto costuma ser mais rápido e simples de usar.
- Se sua matriz é muito grande, esparsa e você só precisa de uma aproximação razoável, um método iterativo ganha em eficiência de memória e tempo por iteração, especialmente em aplicações como análise de estruturas, CFD ou simulações.
Resposta
Usa método direto (eliminação de Gauss) quando o sistema for de dimensão moderada ou denso, e você precise da solução exata rapidamente. Usa método iterativo (Gauss–Seidel, Gradiente Conjugado etc.) quando o sistema for muito grande e esparso, e uma solução aproximada com bom compromisso precisão × custo seja suficiente, desde que a matriz satisfaça condições de convergência.