Octave - Sistemas lineares por Jacobi
Publicado por Daniel Moreira dos Santos (última atualização em 14/07/2010)
[ Hits: 14.475 ]
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 - Método de Euler-Modificado para solução de EDO
Octave - Método de Euler para solução de EDO
Algoritmo para calcular a tabuada
Octave - Sistemas lineares por Gauss-Seidel
Função Fatorial Recursiva em Fortran 95
Nenhum comentário foi encontrado.
Berry Bank: Criando um Banco Digital Gamificado para seus Filhos com Gentoo, Flask e Tailscale
Papagaiando o XFCE com temas e recursos
Instale o DOOM Retro no Gentoo facilmente via Overlay
Steam (Flatpak) rodando jogos em partição NTFS
O dock Plank + U-Launcher deixam qualquer desktop mais produtivo
Instalar Linux em notebook Sony Vaio VPCEG13EB (17)
Alguém tem que acabar com ANATEL!!! (10)
O que você está ouvindo agora? [2] (229)









