Proyecto De Metodos Numericos

Páginas: 5 (1086 palabras) Publicado: 9 de diciembre de 2012
METODO DE NEWTON-RHAPSON
%Inicio de programa

xin=input('Dame el valor de x inicial ');
nmax=input('Dame el número máximo de iteraciones ');
ep=input('Dame el valor de Epsilon para el criterio de convergencia ');
k=1;
while(k<=nmax)
xf=xin-(xin^3-5*xin+1)/(3*xin^2-5);
dif=abs(xin-xf);
fprintf('iteracion=%2i xf =%10.6f diferencia=%10.6f\n',k,xf,dif)if(dif<=ep)
disp('La RAIZ es '),disp(xf)
k=2*nmax;
else
xin=xf;
k=k+1;
end
end
if(k==2*nmax)
else
disp('No converge en Nmax Iteraciones')
end

%FIN

METODO DE BISECCION
%Inicio de programa

disp('METODO DE BISECCION')
a=input('Dame el valor de a ');
b=input('Dame el valor de b ');
nmax=input('Dame el número máximo de iteraciones');
ep=input('Dame el valor de Epsilon para el criterio de convergencia ');
fa=a^2-a-2; %Función
fb=b^2-b-2; %Función
if(fa==0)
fprintf('a=%6.2f es la Raiz \n',a)
else
if(fb==0)
fprintf('b=%6.2f es la Raiz \n',b)
else
if(fa*fb>0)
fprintf('entre a=%6.2f y b=%6.2f no hay una raiz \n',a,b)
else
i=1
while(i<=nmax)m=(a+b)/2;
fm=m^2-m-2 %Función
if(abs(fm)<=ep)
fprintf('m=%6.2f es la Raiz \n',m)
i=2*nmax;
else
if(fa*fm>0)
a=m; b=b;
else
b=m; a=a;
end
i=i+1;
end
end
if(i==2*nmax)else
disp('NO CONVERGE EN Nmax ITERACIONES')
end
end
end
end

%FIN

METODO DE JACOBI
%Inicio de programa

A=input('Dame la matriz de coeficientes del sistema entre [ ] ');
b=input('Dame el vector de términos independientes entre [ ] ');
xo=input('Dame el valor de x inicial entre [ ] ');
Nmax=input('Dame el numero máximo de Iteraciones ');Ep=input('Dame el valor de Epsilon para el criterio de convergencia ');
[n,m]=size(A);
p=length(b);
if(n==p && m==p)
for k=1:1:Nmax
for i=1:1:n
suma=0;
for j=1:1:n
if(i~=j)
suma=suma+A(i,j)*xo(j);
else
end
end
x(i)=(b(i)-suma)/A(i,i);
endfor i=1:1:n
fprintf('La iteracion = %2i para x(%2i) = %12.8f\n',k,i,x(i))
end
q=0;
for i=1:1:n
if(abs(xo(i)-x(i))<=Ep)
q=q+1;
else
end
xo(i)=x(i);
end
if(q==n)
disp('Las raices son '),disp(x)
break
else
end
endif(q==n)
else
disp('No converge en Nmax Iteraciones')
end
else
disp('No se puede aplicar el metodo de Jacobi')
disp('pues no es cuadrada la matriz')
end

%FIN

METODO DE GAUSS-SEIDEL
%Inicio de programa

A=input('Dame la matriz de coeficientes del sistema entre [ ] ');
b=input('Dame el vector de términos independientes entre [ ] ');
xo=input('Dame elvalor de x inicial entre [ ] ');
Nmax=input('Dame el numero máximo de Iteraciones ');
Ep=input('Dame el valor de Epsilon para el criterio de convergencia ');
[n,m]=size(A);
p=length(b);
if(n==p && m==p)
for k=1:1:Nmax
for i=1:1:n
suma=0;
for j=1:1:n
if(i~=j)
suma=suma+A(i,j)*xo(j);else
end
end
x(i)=(b(i)-suma)/A(i,i);
dif=abs(xo(i)-x(i));
xo(i)=x(i);
end
for i=1:1:n
fprintf('La iteracion = %2i para x(%2i) = %12.8f\n',k,i,x(i))
end
q=0;
for i=1:1:n
if(dif<=Ep)
q=q+1;
else
end
end...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Proyecto Metodos Numericos
  • Proyecto Final De Metodos Numericos
  • PROYECTO SEMESTRAL metodos numericos
  • PROYECTO SEMESTRAL Metodos Numericos
  • Proyecto Final Metodos Numericos
  • Metodos numericos (analisis numerico)
  • Metodos numericos
  • Métodos Numéricos

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS