Lab 2 Numerico
Obtener el polinomio de interpolación usando la fórmula de interpolación de Newton en diferencias divididas con los datos de la tabla que aparece a continuación, e interpolar en elpunto x = −4. ademas usar un metodo de ecuaciones No lineales para hallar su cero
xk
3
1
-7
-1
6
5
yk
-137
-7
12
1
-17
-191
Grafíquese el polinomio de quinto orden que ajustalos datos del Cuadro . Escríbanse las conclusiones a las que se arribaron
SOLUCION
Código de Newton de Diferencia Divididas
%Interpolacion de Newton
function [yi, p, b]=pol_newton(x,y,xi)%Inicializa Vaariables
n=length(x);
b=zeros(n);
b(:,1)=y(:);
%Obtener la Tabla de Diferencias
for j=2:n
for i=1:n-j+1
b(i,j)=(b(i+1,j-1)-b(i,j-1))/(x(i+j-1)-x(i));
end
end%Calcular el dato interpolado
xt=1;
yi=b(1,1);
for j=1:n-1;
xt=xt.*(xi-x(j));
yi=yi+b(1,j+i)*xt;
end
%Construir el Polinomio
p=num2str(b(1,1));
xx=x*-1;
for j=2:n
signo='';
ifb(1,j)>=0
signo='+';
end
xt='';
for i=1:j-1
signo2='';
if xx(i)>=0
signo2='+';
end
xt=strcat(xt,'.*(x',signo2,num2str(xx(i)),')');end
p=strcat(p,signo,num2str(b(1,j)),xt);
end
%
Código de Regula Falsa
function reglafalsa
f=input('Ingrese la funcion: ','s');
f=inline(f);
a=input('Ingrese el limiteinferior: ');
b=input('Ingrese el limite superior: ');
tol=input('Ingrese el error admisible: ');
n=input('ingrese el numero de iteraciones: ');
if f(a)==0
fprintf('\nLa raíz es: %1.10f \n',a)
else if f(b)==0
fprintf('\n La raíz es: %1.10f \n',b)
else if f(a)*f(b)> y=[-137 -7 12 1 -17 -191]
y =
-137 -7 12 1 -17 -191
2)Se llama a la función “pol_newton” con el fin de determinar el valor deseado, que en este caso es -4.
>> pol_newton(x,y,-4)
ans =
-78.4964
3) Una vez obtenido el valor, si se deseas buscar la...
Regístrate para leer el documento completo.