Você está na página 1de 20

CÁLCULO

NUMÉRICO
Prof. Roger Cruz
MÉTODO DA
ELIMINAÇÃO DE GAUSS
• A solução usando o Método da
Eliminação de Gauss consiste em
duas etapas:
a) Transformação do sistema original
num sistema equivalente
usando uma matriz triangular
superior (Escalonamento);
b) Resolução deste sistema
equivalente.
RESOLUÇÃO DO SISTEMA EQUIVALENTE

• Tendo o sistema escalonado n x n,


torna-se simples a obtenção da
solução;
• Calcula-se inicialmente o x3 pela
última equação;
• Depois, utiliza-se o valor de x3 na 2ª
equação para obter o valor de x2;
• Em seguida, faz-se uso dos valores já
conhecidos de x2 e x3 na 1ª equação
para computar x1
TRIANGULAÇÃO
PROCESSO
DE
ELIMINAÇÃO
DE GAUSS
ESCALONAMENTO
SEMPIVOTAMENTO
M21=a21/a11=1/2=0,5
M31=3/2=1,5
M41=2/2=1,0

L’2 =l2-l1.M21=4-1.0,5=3,5
=2-3.0,5=2-1,5=0,5
a’21=a21-a11.m21 =1-4.0,5=1-2= -1
=1-2.0,5 = 0 B’2=9-17.0,5=9-8,5 = 0,5

L’3 = l3 – L1.m31
= 3-2.1,5 = 0
=2-1.1,5= 0,5
L’4 = l4 – L1.m41 =1-3.1,5 = -3,5
=2-2.1,0=0 =4-4.1,5 = -2
=2-1.1,0= 1
=3-3.1,0=0
=1-4.1= -3,0
𝑎32 0,5
𝑚32 = =
𝑎22 3,5
𝑎42 1
𝑚42 = =
𝑎22 3,5

ESCALONAM
L’3=L3-L2.m32
ENTO SEM =0,5-3,5.0,5/3,5=0
PIVO =-3,5-0,5.0,5/3,5= -3,571
= -2-1.0,5/3,5 = - 1,8571
=-5,5 – 0,5.0,5/3,5 = -5,571

L’4= L4-L2.m42
= 1-3,5.1/3,5=0
= 0-0,5.1/3,5 = -0,143
= -3-1.1/3,5 = -2,714
= -8-0,5.1/3,5 = -8,143
0,143
=−
3,571

0,143
= −0,143 − −3,571 . −
3,571

2𝑥 + 𝑦 + 3𝑧 + 4𝑤 = 17
3,5𝑦 + 0,5𝑧 − 1𝑤 = 0,5
−3,571𝑧 − 1,857𝑤 = −5,571
−2,64𝑤 = −7,92
Código Scilab. O script a seguir consegue resolver um sistema de equações lineares N ×N
usando o método descrito . Neste código exemplo, o sistema é gerado aleatoriamente. Não
existe a preocupação para evitar divisão por zero.

/// Sistema de equaçıes lineares


/// solução usando o método de Gauss
clc; // limpa a tela
N = 5; rand(’seed’,23); // Matriz 5 x 5
Ms = round(10*rand(N,N+1,’n’)); // valores aleatórios
disp(Ms); // mostrando o sistema no console
for k=1:N-1 // Laço para gerar uma triangular superior
for p=k+1:N
a = Ms(p,k)/Ms(k,k);
Ms(p,k:N+1) = Ms(p,k:N+1) - a*Ms(k,k:N+1);
end
end
disp(Ms); // mostrando a matriz no formato triangular sup.
x = zeros(N,1); // inicializando o vetor resposta
x(N) = Ms(N,N+1)/Ms(N,N); // cÆlculo de xN
for k=(N-1):-1:1 // substituiçªo progressiva
S = 0;
for p=N:-1:(k+1)
S = S + x(p)*Ms(k,p)
end
x(k) = (Ms(k,N+1)-S)/Ms(k,k);
end
disp(x); // resposta final
ESCALONAMENTO COM PIVOTAMENTO

𝑎21 4
𝑚21 = =
𝑎11 5
10
𝑚31 = =2
5
2
𝑚41 =
5
ESCALONAMENTO
COM
PIVOTAMENTO
RESUMO

Escalonamento sem Escalonamento com pivoteamento


pivoteamento • Repetir da primeira até a penúltima coluna;
• Repetir da primeira até a penúltima • Verificar a necessidade de se fazer o pivoteamento;
coluna; • Procurar uma linha adequada;
• Repetir para as linhas abaixo da diagonal • No caso de encontrar, fazer a permuta das linhas;
principal; • Verificar a necessidade de se fazer o escalonamento da coluna
corrente;
• Aplicar operação elementar com o
objetivo de zerar o elemento da linha • Repetir para as linhas abaixo da diagonal principal;
corrente abaixo da diagonal principal; • Aplicar operação elementar com o objetivo de zerar o
elemento da linha corrente abaixo da diagonal principal;
• Alterar linha da matriz dos coeficientes;
• Alterar linha da matriz dos coeficientes;
• Alterar linha do vetor das constantes. • Alterar linha do vetor das constantes.
• Nos métodos iterativos, a
MÉTODOS partir de uma solução inicial
x0, calculamos
ITERATIVOS sucessivamente os novos xk,
k = 1;2;::: valores até que
algum critério de parada
seja satisfeito.
MÉTODO DE GAUSS-JACOBI
• Cada coordenada do vetor correspondente à nova aproximação é calculada a partir da respectiva equação
do sistema, utilizando-se as demais coordenadas do vetor aproximação da iteração anterior
MÉTODO DE
GAUSS-JACOBI
EXEMPLO
EXEMPLO

Enquanto
dist > tolerância
nite < número máximo de iterações.
então:
nite = nite + 1
Para i = 1,...,n
s = bi
Para j = 1,...,n
Algoritmo Se i for diferente de j
s = s – aij * x0j
Fim
Fim
xi = s/aii
Fim
dist = norma(x-x0)
x0=x
Fim

Você também pode gostar