Vous êtes sur la page 1sur 15

Ing. Elctrica Edison Merma Mamani.

% Metodo de Biseccion

function Biseccion
% Lab. de metodos numericos Grupo A
a=input('Ingrese Limite Inferior a= ');
b=input('Ingrese el Limite Superior b= ');
error=input('Ingrese el Error e= ');
fx=input('Ingrese la Funcion f(x)= ','s');
n=(log(b-a)-log(error))/log(2);
for i=1:n+1
A(i,1)=i;
A(i,2)=a;
A(i,3)=b;
error=b-a
x=a;
fa=eval(fx);
A(i,5)=fa;
x=b;
fb=eval(fx);
A(i,6)=fb;
x=(a+b)/2;
A(i,4)=x;
if fa*eval(fx)<0
a=a;
b=x;
else
b=b;
a=x;
end
A(i,7)=eval(fx);
A(i,8)=error;
end
disp(' n a b x fa
fb fx error')
A
'Raiz Aproximada con Error de 0.01 es: '
disp(x)
Ing. Elctrica Edison Merma Mamani. 2

% METODO DE FALSA POSICION


f=input('Ingrese la funcion F(x)= ','s');
xi=input('Ingrese Xi= ');
xd=input('Ingrese Xd= ');
e=input('Ingrese el Error= ');
ea=1;
i=1;
while ea>e
x=xd;
a=eval(f);
x=xi;
b=eval(f);
A(i,1)=i;
A(i,2)=xi;
A(i,3)=xd;
xm=xd-((xd-xi)*a)/(a-b);
A(i,4)=xm;
A(i,5)=b;
A(i,6)=a;
x=xm;
c=eval(f);
A(i,7)=c;
if (b*c)<0
xd=xm;
xi=xi;
else
xi=xm;
xd=xd;
end
i=i+1;
ea=abs(c);
end
disp(A)
Ing. Elctrica Edison Merma Mamani. 3

% METODO DE LA SECANTE

x0=input('Ingrese xo= ');


x1=input('Ingrese x1= ');
f=input('Ingrese F(x)= ','s');
e=input('Ingrese el error= ');
i=1;
ea=1;
while ea>e
A(i,1)=i;
A(i,2)=x0;
A(i,3)=x1;
x=x1;
a=eval(f);
x=x0;
b=eval(f);
x2=x1-(((x1-x0)*a)/(a-b));
A(i,4)=x2;
ea=abs(x2-x1);
x=x2;
c=eval(f);
A(i,5)=c;
d=abs(x2-x1);
A(i,6)=d;
x0=x1;
x1=x2;
i=i+1;
end
disp(A)
disp(x2)
Ing. Elctrica Edison Merma Mamani. 4

% TRIANGULAR SUPERIOR

a=input('Ingrese Matriz A= ')


b=input('Ingrese Vector Fila b= ')
n=length(a);

x(n)=b(n)/a(n,n)

for i=n-1:-1:1
s=0;
for j=i+1:n
s=s+(a(i,j)*x(j)/a(i,i));
end
x(i)=(b(i)/a(i,i))-s;
end
x

% TRIANGULAR INFERIOR
a=input('Ingrese Matriz A ')
b=input('Ingrese Vector Fila b ')
n=length(a);

x(1)=b(1)/a(1,1);

for i=2:n
s=0;
for j=1:i-1
s=s+(a(i,j)*x(j)/a(i,i));
end
x(i)=(b(i)/a(i,i))-s;
end
x
Ing. Elctrica Edison Merma Mamani. 5

%%% METODO DE NEWTON

function newtonnn

x0=input('Ingrese Valor Inicial = ');


e=input('Ingrese Error = ');
fx=input('Ingrese Funcion = ','s');
dx=input('Ingrese Derivada = ','s');
x=x0;
b=eval(fx);
c=eval(dx);
xkk=x0-(b/c);
%A(1,1)=0
A(1,2)=x0;
A(1,3)=xkk;
A(1,4)=b;
A(1,5)=xkk-x0;

r=0
while abs(xkk-x0)>e
r=r+1;
A(r+1,1)=r;
A(r+1,3)=xkk;
x=xkk;
A(r+1,2)=x;
b=eval(fx);
A(r+1,4)=b;
c=eval(dx);
x0=xkk;
xkk=xkk-(b/c);

A(r+1,5)=xkk-x0;
end
disp(' n Xk Xk+1 f(Xk+1)
error')
disp(A)
disp(xkk)
Ing. Elctrica Edison Merma Mamani. 6

%%%% METODO DE GAUSS

a=input('Ingrese Matriz A ')


b=input('Ingrese Matriz b ')
n=length(a);

for i=1:n-1
for k=i+1:n
b(k)=b(k)-(a(k,i)*b(i)/a(i,i))
for j=i+1:n
a(k,j)=a(k,j)-(a(k,i)*a(i,j)/a(i,i))
end
a(k,i)=0;
end
end
a
b
n=length(a);

x(n)=b(n)/a(n,n);

for i=n-1:-1:1
s=0
for j=i+1:n
s=s+(a(i,j)*x(j)/a(i,i))
end
x(i)=(b(i)/a(i,i))-s
end
x
Ing. Elctrica Edison Merma Mamani. 7

%DOULITLE Lii=1
a=input('la matriz : ')
n=length(a);
l=eye(n,n)
u=zeros(n,n)

% Fila 1 de U
for j=1:n
u(1,j)=a(1,j)
end

% Columna 1 de L
for i=2:n
l(i,1)=a(i,1)/u(1,1)
end

for k=2:n
for j=k:n
suma=0;
for p=1:k-1;
suma=suma+l(k,p)*u(p,j)
end
u(k,j)=a(k,j)-suma;
end
for i=k+1:n
suma=0;
for r=1:k-1;
suma=suma+l(i,r)*u(r,k)
end
l(i,k)=(a(i,k)-suma)/u(k,k)
end
end
l
u
f=l*u
Ing. Elctrica Edison Merma Mamani. 8

% CROUT uii=1
a=input('la matriz : ')
n=length(a);
u=eye(n,n);
l=zeros(n,n);

%columna 1 de L
for i=1:n
l(i,1)=a(i,1);
end

%fila 1 de U
for j=2:n
u(1,j)=a(1,j)/l(1,1);
end

for k=2:n
for i=k:n
suma=0;
for p=1:k-1;
suma=suma+l(i,p)*u(p,k);
end
l(i,k)=a(i,k)-suma;
end
for j=k+1:n
suma=0;
for r=1:k-1;
suma=suma+l(k,r)*u(r,j);
end
u(k,j)=(a(k,j)-suma)/l(k,k);
end
end
l
u
f=l*u
Ing. Elctrica Edison Merma Mamani. 9

FACTORIZACION CHOLESKY

function ECHOLESKY
a=input('Ingrese la Matriz a= ')
n=length(a);
%l=ones(n,n)
l(1,1)=sqrt(a(1,1));
for i=2:n
l(i,1)=a(i,1)/l(1,1);
end
for k=2:n
s=0;
for v=1:k-1
s=s+(l(k,v)^2);
end
l(k,k)=sqrt((a(k,k)-s));

for j=k+1:n
s=0;
for v=1:k-1
s=s+(l(k,v)*l(j,v));
end
l(j,k)=(a(j,k)-s)/l(k,k);
end
end
l
ts=l'
AA=l*ts
Ing. Elctrica Edison Merma Mamani. 10

% METODO DE JACOBY

function JACOBII

a=input('Ingrese la matriz a: ')


b=input('Ingrese la matriz b: ')
e=input('Ingrese el error e: ')
x0=input('Ingrese punto inicial x0: ')
n=length(a);

modu=2;
z=x0;
while modu>e
for i=1:n
s=0;
for j=1:n
if j~=i
s=s+(a(i,j)*z(j)/a(i,i));
end
end
x(i)=(b(i)/a(i,i))-s;

end
r=x;
p=x0;
x0=x;
mo=r-p;
modu=0;
for k=1:n
modu=modu+sqrt(mo(k).^2);
end
modu;
z=x;
end
x
Ing. Elctrica Edison Merma Mamani. 11

% DIFERENCIAS DIVIDIDAS

xx=input('Ingrese Vector Fila xi= ')


y=input('Ingrese Vector Fila Yi= ')

n=length(xx);
t(1)=y(1);
for k=2:n
for i=1:k
p=1;
for j=1:k
if i~=j
p=p*(xx(i)-xx(j));
end
end
l(i)=p;
end
s=0;
for i=1:k
s=s+(y(i)/l(i));

end
t(k)=s;
end
Fk=t
Ing. Elctrica Edison Merma Mamani. 12

APROXIMACION POLINOMIAL

X=input('ingrese vector x= ')


b=input(' ingrese los Yi = ')
n=length(X);
a=ones(n)
for i=1:n
a(i,2)=X(i);
end
for j=3:n
a(:,j)=a(:,2).^(j-1);
end

a
b
%%%%%%%%%%%%%%%%%%%

n=length(a);

for i=1:n-1
for k=i+1:n
b(k)=b(k)-(a(k,i)*b(i)/a(i,i))
for j=i+1:n
a(k,j)=a(k,j)-(a(k,i)*a(i,j)/a(i,i))
end
a(k,i)=0;
end
end
a
b
n=length(a);

x(n)=b(n)/a(n,n);

for i=n-1:-1:1
s=0
for j=i+1:n
s=s+(a(i,j)*x(j)/a(i,i))
end
x(i)=(b(i)/a(i,i))-s
end
x
Ing. Elctrica Edison Merma Mamani. 13

% METODO DE LAGRANGE

xx=input('ingrese vector x= ')


y=input(' ingrese los Yi = ')
x=input('ingrese punto x = ')
n=length(xx);

for i=1:n
p=1;
for j=1:n
if i~=j
p=p*(x-xx(j))/(xx(i)-xx(j));
end
end
a(i)=p;
end

s=0;
a;
for i=1:n
s=s+(y(i)*a(i));
end
ai=a
px=s
Ing. Elctrica Edison Merma Mamani. 14

% APD NEWTON DIVIDIDAS

xx=input('ingrese vector xx= ')


y=input(' ingrese los Yi = ')
x=input('Ingrese x = ')
n=length(xx);
t(1)=y(1);
for k=2:n
for i=1:k
p=1;
for j=1:k
if i~=j
p=p*(xx(i)-xx(j));
end
end
l(i)=p;
end
s=0;
for i=1:k
s=s+(y(i)/l(i));

end

t(k)=s;
end
Fk=t
a=t
w(1)=1
for j=2:n
p=1;
for i=1:j-1
p=p*(x-xx(i));
end
w(j)=p;
end
w
for i=2:n
s=s+(a(i).*w(i));
end
respuesta=s+a(1)
Ing. Elctrica Edison Merma Mamani. 15

% DIFERENCIAS FINITAS

xx=input('Ingrese el vector xx = ')


f=input('Ingrese el vector f = ')
x=input('Ingrese punto x =')
h=xx(2)-xx(1)
s=(x-xx(1))/h;
n=length(xx);
fx=f;
o=1;
s
A=zeros(n);
for k=n:-1:2
ff=0;
for i=1:k-1
df=fx(i+1)-fx(i);
ff(i)=df;
end
fx=ff;
o=o+1;
g(o)=fx(1);
end
g(1)=f(1);
g
%%%%%%%%%%%%

fac=1;
for i=1:n-1
fac=fac*i;
z(i+1)=fac;
end
z(1)=1;
z;
dif=g./z;
ss(1)=1;
for j=2:n
p=1;
for i=1:j-1
p=p*(s-(i-1));
end
ss(j)=p;
end
ss
pp=ss.*dif
zz=0;
for i=1:n
zz=zz+pp(i);
end
Pn=zz

Vous aimerez peut-être aussi