Método de Interpolación de Newton
Método de Interpolación de Newton
Método de Interpolación de Newton
Introducción
Con frecuencia se encontrará con que tiene que estimar valores intermedios entre
datos definidos por puntos. El método más común que se usa para este propósito
es la interpolación polinomial. Existe una gran variedad de formas alternativas
para expresar una interpolación polinomial. El polinomio de interpolación de
Newton en diferencias divididas es una de las formas más populares y útiles.
Una vez que se han calculado las diferencias divididas, se puede construir el
polinomio de interpolación de Newton y utilizarlo para aproximar el valor de la
función en cualquier punto dentro del rango de datos dados.
Marco teórico
2 n
f ( x )=a0 +a 1 x +a2 x + …+an x … (1 )
Dados n+1 puntos, hay uno y sólo un polinomio de grado n que pasa a través de
todos los puntos. Por ejemplo, hay sólo una línea recta (es decir, un polinomio de
primer grado) que une dos puntos (figura 1a). De manera similar, únicamente una
parábola une un conjunto de tres puntos (figura 1b). La interpolación polinomial
consiste en determinar el
polinomio único de n-ésimo
grado que se ajuste a n+1
puntos. Este polinomio,
entonces, proporciona una
Figura 1: Figura 1: Ejemplos de interpolación polinomial: a) de primer grado fórmula para calcular
(lineal) que une dos puntos, b) de segundo grado (cuadrática o parabólica)
que une tres puntos y c) de tercer grado (cúbica) que une cuatro puntos. valores intermedios.
Interpolación lineal
La forma más simple de interpolación consiste en unir dos puntos con una línea
recta. Dicha técnica, llamada interpolación lineal, se ilustra de manera gráfica en la
figura 2. Utilizando triángulos semejantes:
f 1 ( x )−f ( x 0 ) f ( x 1 )−f ( x 0 )
=
x −x 0 x 1−x 0
reordenando se obtiene
f ( x 1) −f ( x 0 )
f 1 ( x )=f ( x 0 ) + ( x−x 0 ) … ( 2 )
x 1−x 0
que es una fórmula de interpolación lineal. La
notación f 1 ( x) designa que éste es un polinomio de
interpolación de primer grado. En general, cuanto
menor sea el intervalo entre los datos, mejor será
la aproximación. Esto se debe al hecho de que,
Figura 2: Esquema gráfico de la conforme el intervalo disminuye, una función
interpolación lineal. Las áreas sombreadas
indican los triángulos semejantes usados continua estará mejor aproximada por una línea
para obtener la fórmula de la interpolación recta.
lineal
Interpolación cuadrática
Una estrategia para mejorar la estimación consiste en introducir alguna curvatura
a la línea que une los puntos. Si se tienen tres puntos como datos, éstos pueden
ajustarse en un polinomio de segundo grado (también conocido como polinomio
cuadrático o parábola). Una forma particularmente conveniente para ello es
f 2 ( x )=b 0 +b1 ( x−x 0 ) +b 2 ( x−x 0 ) ( x−x 1 ) … ( 3 )
Aunque la ecuación 3 parece diferir del polinomio general [ecuación 1], las dos
ecuaciones son equivalentes. Lo anterior se demuestra al multiplicar los términos
de la ecuación 3:
2
f 2 ( x )=b 0 +b1 x−b1 x 0+ b2 x +b 2 x 0 x1−b2 x x 0−b 2 x x 1
agrupando términos
2
f 2 ( x )=a0 +a1 x+ a2 x
donde
a 0=b 0 – b1 x 0 +b 2 x 0 x1
a 1=b1 – b 2 x 0−b 2 x 1
a 2=b2
Como se hizo antes con las interpolaciones lineales y cuadráticas, los puntos
asociados con datos se utilizan para evaluar los coeficientes b 0 , b 1 , ... ,b n. Para un
polinomio de n-ésimo grado se requieren n+1 puntos:
[ x 0 , f ( x 0 ) ] , [ x1 , f ( x 1 ) ] , … ,[ x n , f (x n)]
Usamos estos datos y las siguientes ecuaciones para evaluar los coeficientes:
b 0=f ( x 0 ) 8
b 1=f [ x 1 , x 0 ] 9
b 2=f [ x 2 , x 1 , x 0 ] 10
.
.
.
11
b n=f [ x n , x n−1 , … , x 1 , x 0 ]
Estas diferencias sirven para evaluar los coeficientes en las ecuaciones 8 a 11, los
cuales se sustituirán en la ecuación 7 para obtener el polinomio de interpolación
f n ( x )=f ( x 0 ) + ( x−x 0 ) f [ x 1 , x 0 ] + ( x−x 0 ) ( x−x 1 ) f [ x 2 , x 1 , x 0 ]
Algoritmo en seudocódigo
Ejemplo
1 2 3−2 1 1 3 1
f [3 , 1 ]= = −1− +
3−1 2 2 −1 5 2 11
f [ 4 , 3 ,1 ]= = f [ 8 , 4 ,3 ,1 ] = =
4−1 2 8−1 70
3 3 2−3 2−(−1) 3
f [ 4 , 3 ]= =−1 f [ 8 , 4 ,3 ] = =
4−3 8−3 5
4 2 10−2 Escriba aquí la ecuación.
f [8 , 4 ]= =2
8−4
8 10
2.- Cálculo del polinomio de interpolación.
1 1 11
f 3 ( x )=2+ ( x−1 )− ( x−1 ) ( x −3 ) + ( x−1 ) ( x −3 ) (x−4)
2 2 70
11 3 123 2 192 66
¿ x− x+ x−
70 70 35 35
¿ 1.714285714
function [NewtonPol]=intNewton(x,y,X)
ddf=zeros(length(x),length(y)); %Crea una matriz de nxn
ddf(:,1)=y; %Pasa los valores de y a la primer columna
n=length(x)-1;
for j=2:n+1 %Calculo de las diferencias divididas
for i=1:(n+1)-(j-1)
ddf(i,j)=(ddf(i+1,j-1)-ddf(i,j-1))/(x(i+j-1)-x(i));
end
end
for i=2:n+1
xterm=xterm*(X-x(i-1));
yint(i)=ddf(1,i)*xterm;
end
Y=sum(yint)
%Gráfica
fs = str2sym(NewtonPol); %Convierte el string a función simbólica.
fplot(fs,[min(x)-1,max(x)+1],'k-','LineWidth',2); %Grafica la función de color
negro y grosor 2
title(['P(x) = ',NewtonPol]); hold on
x2 = sort(x); y2 = sort(y);
plot(x2,y2,'m--','LineWidth',1.5); hold on
scatter(x,y,'LineWidth',2,'MarkerEdgeColor','b'); hold on
plot(X,Y,'ro','MarkerFaceColor','r'); grid on
h = gcf; h.Position(1:2) = [750,90];
end
Referencias bibliográficas
Chapra, S. C., y Canale, R. P. (2011). Métodos numéricos para ingenieros (Sexta edición).
McGraw-Hill.
Ruso, R. (sf). Diferencias divididas (Interpolación de Newton)
http://www3.fi.mdp.edu.ar/metodos/apuntes/diferencias%20divididas.pdf
Valdez, R. [Tutoingeniero]. (20 de febrero de 2023). Interpolación polinomial de Newton
https://www.youtube.com/watch?v=CMz6efYPq2E