Baixe o app para aproveitar ainda mais
Esta é uma pré-visualização de arquivo. Entre para ver o arquivo original
//programa para aplicação do método de Gauss seidel a um sistema linear de ordem 3: AX=B //Definindo matriz A dos coeficientes do sistema. Aqui a(i,j) denota o elemento da i-ésima linha e j-ésima coluna da matriz A a(1,1)=3; a(1,2)=1; a(1,3)=1; a(2,1)=1; a(2,2)=3; a(2,3)=1; a(3,1)=1; a(3,2)=1; a(3,3)=3; // Definindo a matriz-coluna B de termos independentes do sistema. Aqui b(j) denota o elemento da j-ésima linha de B. b(1)=1; b(2)=2; b(3)=3; i=1 // índice para auxiliar nas iterações dk=1; // dk está relacionado ao erro cometido na aproximação // No que segue x(i,j) representará o valor aproximado de xi na ()j-1)-ésima iteração. Assim, os valores de x(1, 1), x(2, 1) e x(3, 1) representam a aproximação inicial x(1,1)=0 x(2,1)=0 x(3,1)=0 // Calculando iterações do método while dk >0.001 x(1,i+1)=(b(1)-a(1,2)*x(2,i)-a(1,3)*x(3,i))/a(1,1); x(2,i+1)=(b(2)-a(2,1)*x(1,i+1)-a(2,3)*x(3,i))/a(2,2); x(3,i+1)=(b(3)-a(3,1)*x(1,i+1)-a(3,2)*x(2,i+1))/a(3,3); d(1)=abs(x(1,i+1)-x(1,i)); d(2)=abs(x(2,i+1)-x(2,i)); d(3)=abs(x(3,i+1)-x(3,i)); dk=max(d); i=i+1; end disp('número de iterações'), disp(i); disp('Solução aproximada') disp(x(:,i)) disp('dk='); disp(dk);
Compartilhar