Metodos Iterativos En Matlab

Páginas: 3 (541 palabras) Publicado: 4 de diciembre de 2012
Dados A y b
clear all
%% Descomposicion de A
load datospreg2.mat
E = tril(A,-1); % matriz triangular inferior
F = triu(A,1); % matriz triangular superior
D = A - E - F; % matriz diagonal
H =(-E-F);
%% Metodo de Jacobi
Mj = inv(D)*H;
vj = inv(D)*b;
x0 = zeros(530,1);
i=0;
tol=10;
tic;
while tol > 10^(-5)
x = Mj*x0 + vj;
if norm(x0)>0
tol=norm(x-x0)/norm(x0);
elsetol=norm(x-x0);
end
x0=x;
i=i+1;
ej(i)=tol;
itj(i)=i;
end
tiempo(1) = toc;
error(1) = min(ej);
iter(1)=i;
x0;disp(sprintf('-----------------------------------------------------------------------------------------------------------------------'))
disp(sprintf('El metodo de Jacobi realiza %d iteraciones en %g segundos con un error minimo de %d',iter(1),tiempo(1),error(1)))disp(sprintf('-----------------------------------------------------------------------------------------------------------------------'))disp(sprintf('-----------------------------------------------------------------------------------------------------------------------'))
%% Metodo de Gauss Seidel
I = eye(530); % matriz identidad
MGS = -(inv(I+(inv(D))*E))*(inv(D))*F;
vgs =(inv(I+(inv(D))*E))*(inv(D))*b;
x0 = zeros(530,1);
i=0;
tol=10;
tic;
while tol > 10^(-5)
x = MGS*x0 + vgs;
if norm(x0)>0
tol=norm(x-x0)/norm(x0);
else
tol=norm(x-x0);
end
x0=x;
i=i+1;egs(i)=tol;
itgs(i)=i;
end
tiempo(2) = toc;
error(2) = min(egs);
iter(2)=i;
x0;
disp(sprintf('El metodo de Gauss Seidel realiza %d iteraciones en %g segundos con un minimo error de%d',iter(2),tiempo(2),error(2)))
disp(sprintf('-----------------------------------------------------------------------------------------------------------------------'))disp(sprintf('-----------------------------------------------------------------------------------------------------------------------'))
%% Gradiente Conjugado
x0 = zeros(530,1);
r0 = b-A*x0;
s0 = -r0;
k = 1;
tol=10;
i=0;
tic;
while...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • métodos iterativos de matlab
  • Metodos iterativos
  • INVESTIGACION 3 METODOS ITERATIVOS
  • metodos iterativos en sistemas de potencia
  • METODOS NUMERICOS EN MATLAB
  • Método De Punto Fijo Con Matlab
  • Metodos Numericos En Matlab.
  • Métodos iterativos para sistemas de ecuaciones

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS