Octave - Sistemas lineares por Gauss-Seidel
Publicado por Daniel Moreira dos Santos (última atualização em 14/07/2010)
[ Hits: 23.471 ]
Homepage: http://www.danielmoreira.wordpress.com
Resolver o sistema Ax=b pelo método iterativo de Gauss-Seidel.
O método de Gauss-Seidel é um método iterativo para resolução de sistemas de equações lineares. O seu nome é uma homenagem aos matemáticos alemães Carl Friedrich Gauss e Philipp Ludwig von Seidel. É semelhante ao método de Jacobi (e como tal, obedece ao mesmo critério de convergência). É condição suficiente de convergência que a matriz seja estritamente diagonal dominante, i. e., fica garantida a convergência da sucessão de valores gerados para a solução exata do sistema linear.
function [x,Iter,CondErro] = Gauss_Seidel(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)=x(i); x(i)=b(i)-Soma; end NormaNum=0; NormaDen=0; for i=1:n t=abs(x(i)-v(i)); if t>NormaNum NormaNum =t; end if abs(x(i))>NormaDen NormaDen = abs(x(i)); end 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
Função Fatorial Recursiva em Fortran 95
Octave - Sistemas lineares por Jacobi
Octave - Método de Runge-Kutta
Cálculo da raiz de uma função pelo Método da Bisseção - Octave
tux-gpt - Assistente de IA para o Terminal
Instalação e configuração do Chrony
Programa IRPF - Guia de Instalação e Resolução de alguns Problemas
Como instalar no Linux Jogos da Steam só para Windows
Instalando o Team Viewer no Debian Trixie - problema no Policykit
O Que Fazer Após Instalar Ubuntu 25.04
Controle do PS5 no Linux Mint funciona? (2)
Os empreguim de meu Deus estão cada vez mais tecnológicos (4)
Alguém poderia me ajudar a escolher peças pra montar um desktop? (29)