Sei sulla pagina 1di 10

Ejemplo (Interpolacin Lagrange)

Se tiene los siguientes datos para f(x)=log(x), calcular el polinomio interpolante y evaluar
en x=9.4
i
Xi
F(xi)
0
3.5
0.5441
1
6.2
0.7924
2
7.3
0.8633
3
8.1
0.9085
4
2.1
0.3222
Solucin:
Se observa {(3.5,0.5441) ; (6.2,0.7924) ; (7.3,0.8633) ; (8.1,0.9085) ; (2.1,0.3222) }
Codificacin de la interpolacin de lagrange:
x=[ 3.5 6.2 7.3 8.1 2.1];
fx=[0.5441 0.7924 0.8633 0.9085 0.3222];
kk=length(x);
disp('valores utilazados')
for i=0:kk-1
disp([; x(i+1) fx(i+1)]);
end
x1=input('ingrese el valor de x a interpolar :');
if (x1<x(1) | x1>x(kk))
disp('advertencia x esta en el rango de extrapolacion')
end
yres=0;
for i=1:kk
z=1.0;
for j=1:kk
if(i~=j)
z=z*(x1-x(j))./(x(i)-x(j));
end
end
yres=yres+z.*fx(i);
end
disp([x1 yres])

Ejemplo (Regla del trapecio)


Calcular la integral:
2

e cosx
0

Solucin:
Se sabe la codificacin dela regla del trapecio:
clear all
clc
n=input('ingrese numeros de intervalos : ');
a=input('limite inferior:');
b=input('limite superior:');
h=(b-a)/n;
x=a
sum=ftrap(x)
for i=1:n-1
x=x+h;
sum=sum+2*ftrap(x);
end
sum=sum+ftrap(b);
A=(b-a)*sum/(2*n);
disp(A)
function [area]=ftrap(x)
area=exp(cos(x));
end

Ejemplo (Interpolacin Lineal)


Se tiene los siguientes datos:
x
3
4.5
7
9

f(x)
2.5
1
2.5
0.5

Hallar la interpolacin lineal para x=3.5


Solucin:
De los datos se forma el conjunto de puntos:
{(3,2.5);(4.5,1);(7,2.5);(9,0.5)}
Como se sabe la codificacin de la interpolacin es:
clear all
clc
xn=input('ingrese datos a x:');
yn=input('ingrese datos a y:');
x=input('ingrese valor a interpolar:');
for j=1:length(xn)-1
if(x>=xn(j)&&x<=xn(j+1))
Y=((yn(j+1)-yn(j))./(xn(j+1)-xn(j)))*(x-xn(j))+yn(j);
end
end
disp([x Y])

Ejemplo (Mtodo del Grafico)


cos ( x)
Hallar la raz de la siguiente funcin: f(x)= e
+ log(x)

Solucion:
Como se sabe la codificacin del mtodo de grafico es:
x=0:0.001:2;
m=length(x);
hx=exp(-cos(x));
gx=log10(x);
%determinando el valor de xr donde se intersecta las dos curvas
for i=1:m
if (abs(hx(i)+gx(i)))<=0.01
xx=x(i);
yy=gx(i);
end
end
disp('valor de la raiz aproximada y la ordenada comun')
disp([xx yy])
figure(01)
plot(x,gx,x,hx)
text(0.4,0.5,'exp(-cos(x))');
text(1.75,0.4,'log10(x)');
grid on
axis;
figure(02)
plot(x,gx)
hold on
plot(x,hx,'r')
grid
axis([0,2,0,1])

Ejemplo (Mtodo del Grafico)


Hallar la raz de la siguiente funcin:
f(x)= sen ( x ) +5 + ln(x)
Solucion:
Como se sabe la codificacin del
mtodo de grafico es:
x=0:0.001:2;
m=length(x);
hx=sqrt(sin(x)+5);
gx=log(x);
%determinando el valor de xr donde se intersecta las dos curvas
for i=1:m
if (abs(hx(i)+gx(i)))<=0.01
xx=x(i);
yy=gx(i);
end
end
disp('valor de la raiz aproximada y la ordenada comun')
disp([xx yy])
figure(01)
plot(x,gx,x,hx)
text(0.4,0.5,'sqrt(sin(x)+5)');
text(1.75,0.4,'log(x)');
grid on
axis;
figure(02)
plot(x,gx)
hold on
plot(x,hx,'r')
grid
axis([0,2,0,1])

Ejemplo (Mtodo del Biseccion)

3
2
Sea la funcin f(x)=0.667 x -3.9 x +6.21x-21 hasta que E0= 4%

Solucion:
Asumiendo que el intervalo esta [0.4; 0.6] que es punto de partida para poder aplicar el
mtodo de la Biseccin.
clear all
clc
fx=input('ingrese la funcion: ', 's');
a=input('ingrese valor de a: ');
c=input('ingrese valor de c: ');
e=input('ingrese el error: ');
x=a;
fa=eval(fx);
x=c;
fc=eval(fx);
fprintf('\n%6s %7s %8s %10s %8s %8s %8s
\n','A','B','C','f(a)','f(b)','f(c)','abs(c-a)');
while abs(c-a)>e
b=(a+c)/2;
x=b;
fb=eval(fx);
fprintf('\n %8.4f %8.4f %8.4f %8.4f %8.4f %8.4f %8.4f
\n',a,b,c,fa,fb,fc,abs(c-a));
if fa*fb<=0
c=b;
fc=fb;
else
a=b;
fa=fb;
end
end
fprintf('\n el resultado%8.4f\n',b);
ezplot(fx)
grid on

Ejemplo (Mtodo del Biseccion)


5
4
3
2
Sea la funcin f(x)=0.658 x - 8.68 x + 41.6 x - 88.09 x + 79.35 x -23.33
hasta que E0= 1%
Solucion:
Asumiendo que el intervalo esta [4.5; 5] que es punto de partida para poder aplicar el
mtodo de la Biseccin.
clear all
clc
fx=input('ingrese la funcion: ', 's');
a=input('ingrese valor de a: ');
c=input('ingrese valor de c: ');
e=input('ingrese el error: ');
x=a;
fa=eval(fx);
x=c;
fc=eval(fx);
fprintf('\n%6s %7s %8s %10s %8s %8s %8s
\n','A','B','C','f(a)','f(b)','f(c)','abs(c-a)');
while abs(c-a)>e
b=(a+c)/2;
x=b;
fb=eval(fx);
fprintf('\n %8.4f %8.4f %8.4f %8.4f %8.4f %8.4f %8.4f
\n',a,b,c,fa,fb,fc,abs(c-a));
if fa*fb<=0
c=b;
fc=fb;
else
a=b;
fa=fb;
end
end
fprintf('\n el resultado%8.4f\n',b);

ezplot(fx)
grid on

Ejemplo (Mtodo del Newton Raphson)


cos (x)
Se tiene la funcin f(x)= e
+ ln(x); x0=1 E0=0.01%

Solucin:
Se tiene la codificacin del Mtodo del Newton Raphson:
clear all
clc
x=1; %la prime ra raiz aprox
i=1;
es=0.0001;
while i<=15
f=exp(-cos(x))+log(x);

df=(exp(-cos(x))*(sin(x)))+1/x;
x1=x-f/df;
ea=abs((x1-x)/x1);
disp([x,x1])
if ea<=es
disp('la raiz aproximada es:');
disp(x1);
disp('Numero de iteraciones: ');
disp(i);
break
end
x=x1;
i=i+1;
end

Ejemplo (Mtodo del Newton Raphson)


cos (x)
Se tiene la funcin f(x)= e
+ ln(x); x0=1 E0=1%

Solucin:
Se tiene la codificacin del Mtodo del Newton Raphson:
clear all
clc
x=1; %la prime ra raiz aprox
i=1;
es=0.0001;

while i<=15
f=exp(-x)-1n(x);
df=-exp(-x);
x1=x-f/df;
ea=abs((x1-x)/x1);
disp([x,x1])
if ea<=es
disp('la raiz aproximada es:');
disp(x1);
disp('Numero de iteraciones: ');
disp(i);
break
end
x=x1;
i=i+1;
end

f=sqrt(sin(x)+5)+log(x+5);
df= cos(x)./(2*sqrt(sin(x)+5))+1/
(x+2);
f=-0.875*(x.^2)+1.75*(x)+2.625;
df= 1.75*x +1.75;

Potrebbero piacerti anche