Octave - Sistemas lineares por Jacobi
Publicado por Daniel Moreira dos Santos (última atualização em 14/07/2010)
[ Hits: 14.441 ]
Homepage: http://www.danielmoreira.wordpress.com
O método de Jacobi trata-se dum algoritmo para determinar a solução de um sistema de equações lineares com os maiores valores absolutos em cada linha e coluna dominados pelo elemento da sua diagonal. Trata-se duma versão simplificada do algoritmo de valores próprios de Jacobi.
function [x,Iter,CondErro] = Jacobi(n,A,b,Toler,IterMax)
%n,A,b,Toler,IterMax = ordem,matriz,vetor independente,tolerancia,numero
%maximo de iteracoes
%x,Iter,CondErro = vetor solucao,numero de iteracoes e condicao de erro
for i=1:n
r=1/A(i,i);
for j=1:n
if i~=j
A(i,j)=A(i,j)*r;
end
end
b(i)=b(i)*r;
x(i)=b(i);
end
Iter =0;
fprintf('\nIter = %d ' ,Iter);
x
while 1
Iter = Iter+1;
for i=1:n
Soma=0;
for j=1:n
if i~=j
Soma=Soma+A(i,j)*x(j);
end
end
v(i)=b(i)-Soma;
end
NormaNum =0;
NormaDen=0;
for i=1:n
t=abs(v(i)-x(i));
if t>NormaNum
NormaNum =t;
end
if abs(v(i))>NormaDen
NormaDen = abs(v(i));
end
x(i)=v(i);
end
NormaRel = NormaNum/NormaDen;
fprintf('\nIter = %d ' ,Iter);
x
fprintf('NormaRel = %f \n',NormaRel);
if NormaRel<=Toler | Iter>=IterMax
break;
end
end
if NormaRel<=Toler
CondErro =0;
else
CondErro =1;
end
Octave - Calcular raiz pelo método Regula-Falsi
Octave - Sistemas lineares por Gauss-Seidel
Cálculo da raiz de uma função pelo Método da Bisseção - Octave
Octave - Método de Runge-Kutta
Nenhum comentário foi encontrado.
Trabalhando Nativamente com Logs no Linux
Jogando Daikatana (Steam) com Patch 1.3 via Luxtorpeda no Linux
LazyDocker – Interface de Usuário em Tempo Real para o Docker
Linux Mint: Zram + Swapfile em Btrfs
O widget do Plasma 6 Área de Notificação
Internet não funciona corretamente no Linux (0)
tentei instalar o steam pelo terminal, agora ele não abre (2)
Após todos esses anos... youtube! (4)









