Logo Studenta

Interpolación en MATLAB (1)

¡Estudia con miles de materiales!

Vista previa del material en texto

Institución: Tecnológico de la laguna
Carrera: Mecatrónica
Materia: MÉTODOS NUMÉRICOS
Docente: Leticia Lozano Cuellar
Alumno: Eduardo Antonio Rodríguez Guerra
Matricula: 19131252
Interpolación en MATLAB
Fecha de entrega: 06 de noviembre de 2020
 
INTERPOLACION POLINOMIO DE LAGRAGE
clc
clear
format long 
disp('......................... INSTITUTO TECNOLOGICO DE LA LAGUNA .............................');
disp('................................. MÉTODOS NUMERICOS ......................................');
fprintf('........................ INTERPOLACION "POLINIMIO DE LAGRAGE" ............................\n\n');
xi=input('Ingrese los puntos pertenecientes a eje x: ');
yi=input('Ingrese los puntos pertenecientes a eje y: ');
n=length(xi);
x=sym('x');
for j=1:n
 prod1=1;
 for i=1:j-1
 prod1=prod1*(x-xi(i));
 end
 prod2=1;
 for i=j+1:n
 prod2=prod2*(x-xi(i));
 end
 prod3=1;
 for i=1:j-1
 prod3=prod3*(xi(j)-xi(i));
 end
 prod4=1;
 for i=j+1:n
 prod4=prod4*(xi(j)-xi(i));
 end
 L(j)=(prod1*prod2)/(prod3*prod4);
 fprintf('\n---L%d:',j-1)
 disp(L(j))
end
pn=0;
for j=1:n
 pn=pn+L(j)*yi(j);
end
 
fprintf('\nEL POLINOMIO QUE PASA POR LOS PUNTOS QUE USTED ME BRINDÓ ES: \n')
pn = simplify(pn);
disp(pn)
 x=[-10:0.05:xi(n)];
 y=eval(pn);
 plot(x,y,xi,yi,'*')
 
opc2=input('\nDesea aproximar un valor (s/n): ','s');
if opc2=='s'
 x=input('\nIngrese el punto a aproximar: ');
 y=eval(pn);
 disp('La aproximacion a f(x) es: '); 
 disp(y)
end
......................... INSTITUTO TECNOLOGICO DE LA LAGUNA .............................
................................. MÉTODOS NUMERICOS ......................................
........................ INTERPOLACION "POLINIMIO DE LAGRAGE" ............................
Ingrese los puntos pertenecientes a eje x: [0 1 2]
Ingrese los puntos pertenecientes a eje y: [1 3 0]
---L0:((x - 1)*(x - 2))/2
 
---L1:-x*(x - 2)
 
---L2:(x*(x - 1))/2
 
EL POLINOMIO QUE PASA POR LOS PUNTOS QUE USTED ME BRINDÓ ES: 
(9*x)/2 - (5*x^2)/2 + 1
 
Desea aproximar un valor (s/n): s
Ingrese el punto a aproximar: 4
La aproximacion a f(x) es: -21
INTERPOLACION DE NEWTON
clear
clc
format long 
disp('......................... INSTITUTO TECNOLOGICO DE LA LAGUNA .............................');
disp('................................. MÉTODOS NUMERICOS ......................................');
fprintf('.................. INTERPOLACION de NEWTON "DIFERENCIAS DIVIDIDAS" .......................\n\n');
n=input('Ingrese el grado del polinomio: ');
fprintf('Para interpolar necesitamos %.0f puntos\n',n+1);
fprintf('Ingrese los puntos\n\n');
for i=1:n+1
 fprintf('x%.0f=',i-1);
 X(i)=input(' ');
 fprintf('y%.0f=',i-1);
 Y(i)=input(' ');
 fprintf('\n');
end
DD=zeros(n+1);
DD(:,1)=Y;
for k=2:n+1
 for J=k:n+1
 DD(J,k)=[DD(J,k-1)-DD(J-1,k-1)]/[X(J)-X(J-k+1)];
 end
end
fprintf('La matriz de diferencias divididas es:\n\n');
disp(DD);
disp('El polinomio de newton es: ');
syms x;
polnew=DD(1,1);
P=1;
for i=1:n
 P=P*(x-X(i));
 polnew=polnew+P*DD(i+1,i+1);
end
polnew=expand(polnew);
pretty(polnew);
x=input('Por favor ingrese el valor que se desee interpolar:');
vi=eval(polnew);
fprintf('El valor interpolado es: %.2f\n',vi);
hold on;
ezplot(polnew,[X(1) X(n+1)]);
plot(x,vi,'r+');
......................... INSTITUTO TECNOLOGICO DE LA LAGUNA .............................
................................. MÉTODOS NUMERICOS ......................................
.................. INTERPOLACION de NEWTON "DIFERENCIAS DIVIDIDAS" .......................
Ingrese el grado del polinomio: 2
Para interpolar necesitamos 3 puntos
Ingrese los puntos
x0= 1
y0= 2
x1= 0
y1= 4
x2= -3
y2= -2
La matriz de diferencias divididas es:
 2 0 0
 4 -2 0
 -2 2 -1
El polinomio de newton es: 
 2
- x - x + 4
Por favor ingrese el valor que se desee interpolar:5
El valor interpolado es: -26.00
>>
	Página 6

Continuar navegando

Materiales relacionados

7 pag.
Integración Lagrange

UNAM

User badge image

Rocio Nuñez Trejo

93 pag.
01 MANUAL MATLAB 2015

User badge image

Lesly Jennyfer Hurtado Barrientos

175 pag.
2023-04-20-144505-metodos_numericos

User badge image

Pinargote franterioer Zarami romales