Capítulo 8
Interpolación
Polinómica
Los Métodos Numéricos
Ajuste de Curvas y Modelamiento
Métodos mas utilizados
REGRESION INTERPOLACION
INTRODUCCIÓN
La finalidad del cálculo de las funciones de
interpolación se centra en la necesidad de obtener
valores intermedios (INTERPOLACIÓN) o de
valores fuera del intervalo para el que se dispone
de datos (EXTRAPOLACIÓN).
Como es difícil encontrar la función representativa
de un conjunto de datos, es mejor aproximarlo a
una forma polinómica.
Interpolación polinómica
En análisis numérico, la interpolación polinomial es una técnica de
interpolación de un conjunto de datos o de una función por un polinomio.
Es decir, dado cierto número de puntos obtenidos por muestreo o a
partir de un experimento se pretende encontrar un polinomio que pase
por todos los puntos.
X Y
-----------------------
X1 Y1
X2 Y2
X3 Y3
X4 Y4
…… ……
Xn Yn
Interpolación lineal
x=[0 1 2 3 4 5 6];
Y=[0 0.9 1 0.2 -0.9 -1 -0.3];
Encontrar Y(1.5)
Interpolación
Sustitución de una función (conocida o
tabulada) por otra más simple
Interpolante como combinación de la base de
un espacio funcional:
n
x ii x
i 0
Funciones base: polinómicas, trigonométricas, …
Función interpolante “coincide” con la inicial
Lagrange: valor de la función en algunos puntos
Taylor: valor de las derivadas en un punto
Hermite: valor de la función y la derivada
Interpolación Numérica
Objetivos de la Interpolación
Plantear las condiciones de existencia y unicidad de solución
del problema general de interpolación
Saber que el problema de Lagrange tiene un único polinomio
de interpolación de grado mínimo
Conocer las diferentes formas de representar dicho polinomio
Conocer las ventajas e inconvenientes de las formas de
Lagrange y de Newton
Comprender la relación entre diferencias divididas y expansión
en serie de Taylor y su uso para acotar el error
Comprender las limitaciones e incertidumbres de la
extrapolación
Valorar las ventajas e inconvenientes de los diferentes
interpolantes segmentarios
Interpolación Numérica
Introducción:
Se trata de obtener un polinomio (polinomio de interpolación) que
cumpla:
f(x )≈ p(x).
en una serie de n puntos x0, x1, …, xn .
Interpolación con polinomios MUESTRAS
PEQUEÑAS
se utiliza una función interpoladora de tipo polinómico
de grado no mayor que n, siendo n el número de
puntos conocidos menos uno
Interpolación lineal
Encontrar P(13) a través
de los puntos
(x0,y0)=(12,18), 25
(x1,y1)=(14,21)
20
P1( x ) a0 a1x
15
Grados
a0 a1x 0 y 0
a0 a1x1 y1 10
a0 12a1 18 5
a0 14a1 21 5 10 15 20
Hora
La solución de estas 2 ecuaciones, nos da los
valores de ao , a1
A=[1 12 18;1 14 21];
Sol=rref(A)
Ejecutando
Sol =[1.00 0.00 0.00
0.00 1.00 1.50]
Equivale ao =0, a1=1.5
Y=0 +1.5x
Y(13)=1.5(13)=19.5
Interpolación lineal
Utilizando triángulos semejantes
f1 x f x0 f x1 f x0
f(x)
x x0 x1 x0
Reordenando f(x1)
f x1 f x0
f1(x)
f1 x f x0 x x0 f(x0)
x1 x0
x0 x x1
Interpolación con ajuste
cuadrático
Expresión del polinomio
P2 ( x ) a0 a1x a2 x 2 Polinomio de grado2
25
Condiciones de interpol
a0 a1x0 a2 x 02 y 0 20
a0 a1x1 a2 x12 y1
Grados
2 15
a0 a1x 2 a2 x 2 y 2
10
El polinomio puede ser
P(x)=a+bx + cx2, entonces 5
5 10 15 20
Hora
Ej1.- Dados (1,1), (3,6), (5,1). Hallar f(4)
X=[1, 3, 5]; Y=[1, 6, 1];plot(X,Y);grid;
P(x)=a+bx + cx2
a +b + c = 1
a +3b+9c=6
a+5b+25c=1
A=[1 1 1 1;1 3 9 6;1 5 25 1];abc=rref(A)
Ejecutando en octave, se obtiene
abc = 1.00 0.00 0.00 -5.25
0.00 1.00 0.00 7.50
0.00 0.00 1.00 -1.25
Es decir: a=-5.25; b=7.5; c=-1.25;
Y(4) = y4=a+b*4+c*16
y4 = 4.75
Forma normal del polinomio
de interpolación
Expresión
Pn ( x ) a0 a1x a2 x 2 an xn
Determinación
2
a0 a1x 0 a2 x 0 an xn0 y0
2 n y
a0 a1x1 a2 x1 an x1 1
2 n y
a0 a1x 2 a2 x 2 an x 2 2
2
a0 a1xn a2 xn an xn
n yn
Ej2. Interpolación polinomial
Dados x=[0 1 2 3 4 5 6];
Y=[0 0.9 1 0.2 -0.9 -1 -0.3];
x1=1.5
Encontrar y(1.5)
Podemos utilizar diferentes
Alternativas: segmentario lineal entre (1,0.9)y (2,1), y(1.5)=0.95
Segmentario parabólico entre (1,0.9),(2,1),(3,0.2): P(x)=a+bx+cx
P(x)=a+bx+c 2
a+b+c =0.9
a+2b+4c=1
a+3b+9c=0.2
P=1.06
Contin. Ej.2. Forma cuadrática
x=[0 1 2 3 4 5 6];
Y=[0 0.9 1 0.2 -0.9 -1 -0.3];
a=0
a+b+c =0.9
a+2b+4c=1
a+3b+9c=0.2
b+c =0.9
b+2c =0.5 -- > c=-0.4
bc=[1 1 0.9;1 2 0.5];bc=rref(bc)
b+c =0.9
b+3c =0.2/3=0.066 -- > 2c=-0.83 -- > c=-0.415
c =-0.41, b=1.31
x=1.5;P=1.31*x-0.41*x^2
y(1.5)=1.04; y(0.5)=0.55
Ej3.Interpolación forma cúbica
x=[0 1 2 3 4 5 6];
Y=[0 0.9 1 0.2 -0.9 -1 -0.3];
Encontrar y(4.5), y(5.5)
P(x) =a+bx
= + cx2 + dx3
Escogemos
x=[1 2 5 6];
Y=[0.9 1 -1 -0.3];
a+b+c+d=0.9
a+2b+4c+8d=1
a+5b+25c+125d=-1
a+6b+36c+216d=-0.3
Cont Ej3.Interpolación polinomial
a+b+c+d=0.9
a+2b+4c+8d=1
a+5b+25c+125d=-1
a+6b+36c+216d=-0.3
A=[1 1 1 1 0.9; 1 2 4 8 1;1 5 25 125 -1;1 6 36 216 -0.3];
A=rref(A)
A=
1.00 0.00 0.00 0.00 -0.65
0.00 1.00 0.00 0.00 2.49
0.00 0.00 1.00 0.00 -1.04
0.00 0.00 0.00 1.00 0.11
>> x=4.5;y=-0.65+2.49*x-1.04*x*x+0.11*x^3
y = -0.48
Forma de Lagrange del
polinomio de interpolación
Polinomios de Lagrange
( x x 0 ) ( x xi1)( x xi1) ( x xn )
Lin ( x )
( xi x 0 ) ( xi xi1)( xi xi1) ( xi xn )
para i 0, 1, 2, , n
Polinomio de interpolación
Pn (x) y0 L0 (x) y1 L1(x) y 2 L2 (x) ··· yn Ln (x)
Polinomio de interpolación de Lagrange
Sea una función f(x), de tal manera que conozcamos su valor en cada uno de
n+1 puntos: f(x0), f(x1), …, f(xn).
1º. Obtenemos los “multiplicadores o coeficientes de Lagrange”):
( x x0 ) ( x x1 ) ... ( x xk 1 ) ( x xk 1 ) ... ( x xn )
Lk ( x )
( xk x0 ) ( xk x1 ) ... ( xk xk 1 ) ( xk xk 1 ) ... ( xk xn )
Son n+1 coeficientes: con k=0, 1, 2, …, n .
n
( x xi ) i = 0, 1, 2, …, n
Lk ( x)
i 0 ( xk xi )
ik
k = 0, 1, 2, …, n
Propiedad de los coeficientes Lk(x):
El coeficiente Lk(x) se anula en cada punto xi, excepto en el xk que tiene el
valor 1 (valor máximo).
Ejemplo: Supongamos como soporte los seis puntos siguientes,
x0 = 1, x1 = 3, x2 = 4, x3 = 6, x4 = 8, x5 = 9.
( x 1) ( x 3) ( x 4) ( x 8) ( x 9)
L3 ( x)
(6 1) (6 3) (6 4) (6 8) (6 9)
El polinomio de interpolación deLagrange se
obtiene:
n
p( x) f ( xk ) Lk ( x)
k 0
EJEMPLO: Si los valores de la función en los cuatro puntos:
x0=2, x1=2.5, x2=3, x3=4,
es:
f(x0) = 7.3890, f(x1) = 12.1825, f(x2) = 20.0855, f(x3) = 54.5980
Hallemos el polinomio de interpolación de Lagrange:
( x 2.5) ( x 3) ( x 4)
L0 ( x) x3 9.5x2 29.5x 30
(2 2.5)(2 3) (2 4)
( x 2) ( x 3)( x 4)
L1 ( x) 2.66667 x3 24 x 2 69.3333x 64
(2.5 2) (2.5 3)(2.5 4)
( x 2) ( x 2.5) ( x 4)
L2 ( x) 2 x3 17 x2 46 x 40
(3 2)(3 2.5)(3 4)
( x 2) ( x 2.5) ( x 3)
L3 ( x) 0.3333x3 3.5x2 6.16667 x 5
(4 2)(4 2.5) (4 3)
El polinomio de interpolación de Lagrange es:
p(x) = f(x0) L0(x) + f(x1) L1(x) + f(x2) L2(x) + f(x3) L3(x)
p(x) = 3.12601 x3 – 17.2259 x2 + 39.432 x – 27.5792
Ej. Dados x=[-3 0 1 4 6 ];y=[-8 5 -1 7 -3 ];xi=5 encontrar y(5) con el
Algoritmo de Lagrange en Octave
clc;clear;
x=[-3 0 1 4 6 ];y=[-8 5 -1 7 -3 ];LS=0;xi=5;n=5;
plot(x,y);grid;
for i=1:n
L=1;
for j=1:n
if i~=j
L=L*(xi-x(j))/(x(i)-x(j));
end
end
LS=LS+L*y(i);
end
sol=LS
Los resultados se verifican con los datos originales
como y(4)=7, y se corrigen y ajustan con la Gráfica
.
6
-2
-4
-6
Y(5)= 8.8783,
-8
según Lagrange
-3 -2 -1 0 1 2 3 4 5 6
Y(5)=4, valor corregido, suavisado y ajustado con la gráfica
Ej. Encontrar y(5.5) mediante el algoritmo de Lagrange y
ayuda del Octave
x=[0 1 2 3 4 5 6];
Y=[0 0.9 1 0.2 -0.9 -1 -0.3];
Encontrar y(4.5), y(5.5)
P(x) =a+bx
= + cx2 + dx3
Escogemos
x=[1 2 5 6];y=[0.9 1 -1 -0.3];
Luego se ingresan estos datos en el Programa de Octave
Y obtenemos y(5.5)= -0.83 (Lagrange)
Otra Forma de Lagrange
x xk n
Grado n y además L x : Lni xk ik
n
i
k 0 xi xk
Ejemplo k i
x F(x) L x
3 x 1 x 1 x 2
x3 2 x 2 x 2
X0=-2 -13/5
0
2 1 2 1 2 2 12
L1 x
3 x 2 x 1 x 2
x3 x 2 4 x 4
X1=-1 -3
1 2 1 1 1 2 6
X2=1 -2
L x
3 x 2 x 1 x 2 x 3 x 2 4 x 4
X3=2 3/5
2
1 2 1 11 2 6
L3 x
3 x 2 x 1 x 1 x 3 2 x 2 x 2
2 2 2 1 2 1 12
n
Pn x f xi L3i x 13 5 L30 x 3L13 x 2L32 x 3 5 L33 x
i 0
3 2 3 2 3 2 3 2
x 2 x x 2 x x 4 x 4 x x 4 x 4 x 2 x x2
13 5 3 2 35
12 6 6 12
3 2
101 x 12 x 52 x 3 Interpolación Numérica
Forma de Lagrange (II)
Ventajas
Fácil de calcular
Independientes de la Inconvenientes
función a interpolar
El interpolante puede ser
mucho más simple que
Función los polinomios de
{(-2,-5),(-1,-3),(1,1),(2,3)} Lagrange
n
Pn x f xi L3i x
Si cambia el soporte los
i 0
polinomios obtenidos son
5L0 x 3L1 x 1L2 x 3L3 x
3 3 3 3
inútiles, es necesario
x3 2 x 2 x 2 x3 x 2 4 x 4 repetir todo el proceso
5 3
12 6
x3 x 2 4 x 4 x3 2 x 2 x 2
1 3
6 12
0 x3 0 x 2 2 x 1
Interpolación Numérica
Ejemplos
Existencia y unicidad de
F(-)=1,F(0)=0,F()=1
– Base polinómica: solución única
P2 x 0 0 x 1 x 2
2
– {1,sen(x),sen(2x)}: sin solución
– {1,cos(x),cos(2x)}: solución múltiple
x 12 1 21 cos x 0cos 2 x
x 01 21 cos x 12 cos 2 x
F(x0)=y0,F(x1)=y1,F’(x2)=y2
– Base polinómica:
– Solución única si
x0 x1 x2 1
2 x0 x1
Interpolación Numérica
Forma de Newton del
polinomio de interpolación
Expresión
Pn(x) = c0 + c1(xx0) + c2(xx0)(xx1) +
+ cn(xx0)(xx1) (xxn1)
Determinación algebraica
Pn(x0) = y0 = c0
Pn(x1) = y1 = c0+ c1(x1x0)
Pn(x2) = y2 = c0+ c1(x2x0) + c2(x2x0)(x2x1)
MÉTODO DE NEWTON
P2(x) = b0 + b1(x – x0) + b2(x – x0)(x – x1)
Ej. Hallar f(4). Dados los puntos
1 3 5
1 4 1
P(x)= b0 + b1(x – x0) + b2(x – x0)(x – x1)
P(x)=b0 + b1(x – 1) + b2(x – 1)(x – 3)
P(3)=1+ b1(3 – 1) =4 -- >b1 =3/2
b2=
Forma de Newton – Diferencias Divididas (I)
n i 1 n i 1
Pn x i x xk f x0 , x1 , xi x xk
i 0 k 0 i 0 k 0
n 1
Origen: Qn x Pn x Pn1 x n x xk
k 0
n 1
Pn x Pn 1 x n x xk
k 0
Propiedades
Simetría k
f xi k
f xi
f x0 , x1 , xk
i 0 xi x0 xi xi 1 xi xi 1 xi x n
k
i 0
x x
j 0
i j
j i Demo
Cálculo
f x0 f x0
f x0 , x1 , xk 1 f x1 , xk 1, xk Demo
f x0 , x1 , xk 1 , xk
x0 xk
Interpolación Numérica
Interpolación polinomial de Newton
Revisaremos solo algunos casos: lineal, de segundo grado y
de tercer grado.
Interpolación cuadrática y cúbico
Polinomio cuadrático
f2(x) = b0 + b1(x – x0) + b2(x – x0)(x – x1) (1)
f3(x) = b0 + b1(x – x0) + b2(x – x0)(x – x1)+ b3(x – x0)(x – x1)(x – x2)
f2(x) = b0 + b1x – b1x0 + b2x2 + b2x0 x1 – b2xx0 – b2xx1
Podemos escribirlo como
f2(x) = a0 + a1x + a2x2
Donde
a0 = b0 – b1x0 + b2x0 x1, a1 = b1 – b2x0 – b2x1, a2=b2
Podemos evaluar b0, b1 y b2 sustituyendo x0, x1 y x2 en la ecuación (1), se obtiene
b0 = f(x f x2 f x1 f x1 f x0
f 0)x1 f x0
b1 x2 x1 x1 x0
x1 x0 b2
x2 x0
Ejemplo 2
Calculemos ln 2 con ln 4 y ln 6, los punto que se conocen son:
f(x) = ln x
x0 = 1 f(x0) = 0
x1 = 4 f(x0) = 1.386294
2.5
x0 = 6 f(x0) = 1.791759
2
Valor verdadero
Aplicando las ecs. anteriores
1.5
b0 = 0
1
b1 = (1.386294 – 0)/(4 – 1) = 0.4620981
0.5
b2 = ((1.791759 – 1.386294)
0 Estimación cuadrática
/(6 – 4) – 0.4620981)/(6 – 1)
-0.5 Estimación lineal
= – 0.0518731
-1
0 1 2 3 4 5 6 7 8 El polinomio es
f2(x) = 0.4620981(x – 1) – 0.0518731(x – 1)(x – 4)
Valor real ln 2 = 0.6931472
f (2) = 0.5658444
Error relativo
2
porcentual = 18.4%
Interp. Diferencias divididas
Pn(x0) = ƒ(x0) = a0. Pn(x1)= a0 + a1(x1 – x0),
como Pn(x1)= ƒ(x1) y a0= ƒ(x0), entonces
reemplazando se tiene
ƒ(x1)=ƒ(x0) + a1(x1–x0), donde
Ejemplo : Halle el polinomio que interpola los datos:
X 1 2 3 5
f(x) 4 3.5 4 5.6
.
xi f(xi)
1 4
-0.5
2 3.5 0.5
0.5 -0.1
3 4 0.1
0.8
5 5.6
Luego P3(x)=4 – 0.5(x - 1) + 0.5(x - 1)(x - 2) – 0.1(x - 1)(x - 2)(x - 3)
P(4)=4-0.5(3)+0.5(3)(2)-0.1(3)(2)(1)
P(4)=4-1.5+3-0.6 = 4.9
Ej. Si x=[-3,0,1,4,6];y=[-8,5,-1, 7,-3]; encontrar y(3)
clc;clear;x=[-3,0,1,4,6];y=[-8,5,-1, 7,-3];plot(x,y);grid;
D(:,1)=y';xi=3;n=5;
for j=2:n
for k=j:n
D(k,j)=(D(k,j-1)-D(k-1,j-1))/(x(k)-x(k-j+1));
end;
end;
P=D(1,1);
for k=1:n-1
F=1;
for j=1:k
F=F*(xi-x(j));
end;
P=P+F*D(k+1,k+1);
end;
fprintf('Pd=');disp(P);
Las diferencias finitas son:
-3 -8.00 0 0 0 0
0 5.00 4.33 0 0 0
1 -1.00 -6.00 -2.58 0 0
4 -7.00 -2.00 1.00 0.51 0
6 -3.00 2.00 0.80 -0.03 -0.06
La matriz de las diferencias divididas y el polinomio de Newton son como
sigue:
-1 -8.00 0 0 0 0
0 4.00 12.00 0 0 0
2 -1.00 -2.50 -4.83 0 0
4 -5.00 -2.00 0.13 0.99 0
6 2.00 3.50 1.38 0.21 -0.11
P(x)=-8+12(x+1)-4.83(x+1)x+0.99(x+1)x(x-2)-0.11(x+1)x(x-2)(x-4)
P(3)=-4.7571
Forma de Newton – Diferencias Divididas (II)
Pn x f x0 f x0 , x1 x x0 f x0 , x1 , x2 x x0 x x1
f x0 , x1 , xn x x0 x x1 x xn 1
Cálculo de la tabla de Diferencias divididas
x F(x)
x0=-2 f x0 13
5
f x0 f x1 513 3 2
x1=-1 f x1 3 f x0 , x1
x0 x1
2 1 5
x2=1 f x1 f x2 3 2 1 f x0 , x1 f x1 , x2 3
f x2 2 f x1 , x2
x1 x2
1 1 2
f x0 , x1 , x2
x0 x2
10
f x2 f x3 2 53 13 f x , x , x f x1 , x2 f x2 , x3 7
x3=2 f x3 3
5 f x2 , x3 1 2 3
x1 x3 10
x2 x3 2 1 5
f x0 , x1 , x2 f x1 , x2 , x3 1
f x0 , x1 , x2 , x3
x0 x3 10
Pn x 13
5 52 x 2 103 x 2 x 1 101 x 2 x 1 x 1
53 135 x 2 107 x 2 x 1 101 x 2 x 1 x 1
P3 x 101 x 3 1 2
x
Interpolación
2
2
x3
5Numérica
Problema de Hermite
2 n 1 xk f xk
x ii x : , k 0,1, n
i 0 xk f xk
Existencia y unicidad asociadas al sistema
0 x0 1 x0 n x0 n1 x0 2n 1 x0 0 f x0
0 x1 1 x1 n x1 n1 x1 2n 1 x1 1 f x1
0 xn 1 xn n xn n1 xn 2 n1 xn n f xn
x 1 x0 n x0 n 1 x0 2 n 1 x0 n1 f x0
0 0
x 1 xn n xn n 1 xn 2 n1 xn 2 n1
f xn
0 n
Base polinónica: soporte sin puntos repetidos
1, x, x , x , x
2 3 2 n 1
Base trigonométrica: soporte sin puntos repetidos y
comprendidos en [- , ]
1,sin x , cos x , sin kx , cos kx ,
Interpolación Numérica
Problema de Taylor
n
x ii x : k a f k a , k 0,1, n
i 0
Existencia y unicidad asociados al sistema
0 a 1 a n a
0 f a
0 a 1 a n a
1
f a
n n
a n a n a n f 0 a
n
0 1
Series de potencias
k 0
k x k ¿ converge ?
x
– Criterios del cociente y de la raíz
k 1
lim L lim k k L
k k
k
– Si L=, converge en x=0, si L=0, converge x
– Sino converge para |x|<1/L
Interpolación Numérica
Forma de Newton – Diferencias Divididas (III)
Ventajas
Los cálculos son muy simples
La tabla de diferencias divididas se
Inconvenientes
simplifica cuando el interpolante es de
menor grado
Las operaciones se pueden reutilizar al
El cálculo depende de la
añadir o eliminar puntos
función
Polinomio:y=2x-1
– {(-2,-5),(-1,-3),(1,1),(2,3)}
x F(x)
x0=-2 -5
x1=-1 -3 2
x2=1 1 2 0
x3=2 3 2 0 0
Interpolación Numérica
Diferencias divididas
c 0 = f [ x0 ] y0
f [ x1] f [ x0 ]
c1 = f [ x 0 , x1]
x1 x0
f [ x1, x 2 ] f [ x0 , x1]
c 2 f [ x 0 , x1, x 2 ]
x 2 x0
f[x1, x 2, xk ] f[x 0 , x1, xk 1]
c k f[x 0 , x1, xk ]
xk x 0
Tabla de diferencias divididas
y0 f [ x0 ]
y1 f [ x1] f [ x 0 , x1]
y2 f [x2 ] f [ x1, x 2 ] f [ x 0 , x1, x 2 ]
y3 f [ x3 ] f [ x 2, x 3 ] f [ x1, x 2, x 3 ] f [ x 0 , x1, x 2, x3 ]
Ejemplo de las temperaturas
12 18
14 21 1.5000
10 12 2.2500 -0.3750
16 19 1.1667 -0.5417 -0.0417
Evaluación de los polinomios
Grados 0 a 3
30
25
20
15
10
5
-5
-10
6 8 10 12 14 16 18 20
Forma de Newton – Diferencias Finitas
Puntos equiespaciados xk=x0+k h
Progresivas f k f xk 1 f xk y f k f k 1 f k
n n 1 n 1
Regresivas f k f xk f xk 1 y n f k n1 f k n1 f k 1
Relaciones
f k f k 1 y n f k n f k n
n f k n !h n f xk , xk 1 , , xk n
n
n
f k 1
n n i
f k i
i 0 i
n f k n !h n f xk n , , xk 1 , xk
n
n
f k 1
n n i
f k ni
i 0 i
Interpolación Numérica