AJUSTE DE CURVAS E INTERPOLACIÓN
Enviado por Rimma • 25 de Febrero de 2018 • 4.069 Palabras (17 Páginas) • 380 Visitas
...
Que en forma compacta la podemos escribir como
[pic 9] (4.3)
donde
[pic 10] (4.3)
[pic 11] (4.5)
son llamadas las funciones cardinales.
El polinomio de Lagrange se expresa como:
[pic 12]
El siguiente programa determina los coeficientes del polinomio de Lagrange.
% ESTE PROGRAMA CALCULA LOS COEFICIENTES DEL POLINOMIO DE LAGRANGE.
%Polinomios de Interpolación de Lagrange
%Marco Antonio Rodríguez R.
%23/Nov/09
%
function [l,L]=lagranp(x,y)
%Entradas: x = [x0,x1,...xn]; y = [y0,y1,...yn]
%Salideas: l = Coeficientes del polinomio de Lagrange de grado N.
%L = Coeficientes polinomiales de Lagrange
N = length(x)-1; % N es el grado del polinomio
l = 0;
for m = 1:N+1
p = 1;
for k = 1:N+1
if k ~= m
p = conv(p,[1 -x(k)])/(x(m)-x(k)); end
end
L(m,:)=p; %Coeficientes polinomiales de Lagrange
l = l + y(m)*p; %Polinomio de Lagrange
end
%El resultado de correr este programa es un polinomio de grado N. Para ver
%su gráfica puede calcular el polinomio obtenido con yy = polyval(l,xx), donde
%xx es el vector de [x0:0.01:xn]. Use el comando plot y haga la gráfica del
%polinomio encontrado junto con los puntos de los datos discretos. Pudiera
%ser como: plot(xx,yy,x,y,'rd')
% También puede utilizar el polinomio encontrado para realizar una
% interpolación numérica mediante el comando polyval(l,xi), donde xi = al vector de valores en x para los que se desea encontrar y.
% l = polinomio de Lagrange.
Ejemplo 4.1
Calcule el polinomio de Lagrange dados los datos siguientes.
[pic 13]
-2
-1
1
2
[pic 14]
-6
0
0
6
e interpole la función en -1.5 y 1.5.
Solución. Para correr el programa anterior y obtener la gráfica correspondiente al polinomio ejecute los comandos siguientes:
x=[-2 -1 1 2]; % Escriba los vectores con los datos
y=[-6 0 0 6];
l=lagranp(x,y) % Se llama al programa y la salida es el vector l, con los coeficientes del polinomio de lagrange
l =
1 0 -1 0
xx=-2:0.02:2; yy=polyval(l,xx); % Se define un vector xx y el yy. Este evaluado con el vector xx.
clf, plot(xx,yy,'b',x,y,'og'),grid % Se obtiene la gráfica continua (xx, yy) y la de puntos (x,y).
[pic 15]
Figura 4.2 Gráfica de un polinomio de Lagrange de tercer grado.
Para interpolar en x= -1.5 y x=1.5 el polinomio obtenido se evalúa mediante el comando polyval de Matlab.
Intepolacion = polyval(l,[-1.5,1.5])
intepolacion =
-1.8750 1.8750
Ejemplo 4.2
Calcular el polinomio de Lagrange usando los siguientes datos:
x
1
3
5
7
y
-2
1
2
-3
Solución. Tenemos que:
[pic 16]
[pic 17]
donde:
[pic 18]
[pic 19]
[pic 20]
[pic 21]
Sustituyendo arriba, el polinomio de Lagrange queda definido como sigue:
[pic 22]
4.2 Polinomio de interpolación de Newton
Una desventaja de interpolación de Lagrange es que si añadimos otro punto n + 1, tenemos que calcular todos los polinomios de Lagrange nuevamente desde cero y aunque el método de Lagrange es conceptualmente simple, su algoritmo no es muy eficiente. Un mejor procedimiento computacional es el método de Newton debido a que evita esta dificultad de calcular muchos polinomios del mismo grado. El polinomio de interpolación de Newton se expresa como
[pic
...