Documentos de Académico
Documentos de Profesional
Documentos de Cultura
INTERPOLACIÓN
Interpolar una función f (x) consiste en aproximar la función con otra función g(x), escogida
entre una clase de funciones y que satisface algunas propiedades. La función g(x) sustituye
a f (x).
Algunas situaciones son necesarias para efectuar dicha sustitución, como por ejemplo
a) Cuando conocemos solamente los valores numéricos de una función para un conjunto
finito y discreto de puntos en un intervalo y es necesario calcular el valor en algún
otro punto del intervalo.
b) Cuando la función en estudio tiene una expresión analı́tica muy complicada tal que
operaciones como diferenciación e integración son dificiles de realizar.
Las funciones que sustituyen las funciones dadas pueden ser exponenciales, logarı́tmicas,
trigonométricas, polinomiales, etc. Nosotros consideraremos que g(x) pertenece a la clase
de las funciones polinomiales, debido que los polinomios tienen como derivadas e integrales
polinomios y son relativamente más fáciles de trabajar computacionalmente.
1 Interpolación polinomial
Dados los (n + 1) puntos (x0 , f (x0 )), (x1 , f (x1 )), . . . , (xn , f (xn )), queremos aproximar f (x)
por un polinomio pn (x), de grado menor o igual a n, tal que :
f (xk ) = p(xk ) k = 0, 1, 2, . . . , n
p1 (x) = a1 x + a0
f (xk ) = pn (xk ) k = 0, 1, 2, . . . , n
pn (x) = ao + a1 x + a2 x2 + . . . + an xn .
que es conocida como la matriz de Vandermonde y por tanto, desde que x0 , x1 , . . . , xn sean
siempre puntos distintos, tenemos que:
n
Y
det A = (xi − xj ),
i=1
i>j
b) Formas de Lagrange
c) Forma de Newton
2 Resolución de un sistema lineal 3
1. Encontrar el polinomio de primer grado que interpola los puntos de la tabla y deter-
minar f (0.73)
x 0 1
f(x) 1.35 2.94
Tenemos que p1 (x) = a0 + a1 x
2. Encontrar el polinomio de segundo grado que interpola los puntos de la tabla y apro-
ximar f (1)
x -1 0 2
f(x) 4 1 -1
Tenemos que p2 (x) = a0 + a1 x + a2 x2
p2 (x0 ) = f (x0 ) = a0 − a1 + a2 = 4
p2 (x1 ) = f (x1 ) = a0 = 1
p2 (x2 ) = f (x2 ) = a0 + 2a1 + 4a2 = −1
3 Forma de Lagrange
Sean x0 , x1 , x2 , . . . , xn , (n + 1) puntos distintos y yi = f (xi ), i = 0, 1, . . . , n. Sea pn (x) el
polinomio de grado ≤ n que interpola f en x0 , x1 , x2 , . . . , xn . Podemos representar pn (x)
en la forma pn (x) = y0 L0 (x) + y1 L1 (x) + . . . + yn Ln (x), donde los polinomios Lk (x) para
k = 0, 1, 2, . . . , n, son de grado n.
Para cada i queremos que la condición pn (xi ) = yi se satisfaga, es decir
Interpolación Lineal
Calculemos teóricamente para dos puntos distintos (x0 , f (x0 )) y (x1 , f (x1 )), como
n = 1 usando la forma de Lagrange tenemos
(x − x1 ) (x − x0 )
donde L0 (x) = , L1 (x) =
(x0 − x1 ) (x1 − x0 )
Asi:
(x − x1 ) (x − x0 ) (x1 − x)yo + (x − x0 )y1
p1 (x) = y0 + y1 =
(x0 − x1 ) (x1 − x0 ) (x1 − x0 )
que es la ecuación de la recta que pasa por (x0 , f (x0 )) y (x1 , f (x1 )).
Ejemplo: Dada la tabla calcular su polinoio interpolante
x 0 1
f(x) 1.35 2.29
Interpolación cuadrática
Dados tres puntos distintos (x0 , f (x0 )), (x1 , f (x1 )) y (x2 , f (x2 )). Usando la forma de
Lagrange tenemos
p2 (x) = yo L0 (x) + y1 L1 (x) + y2 L2 (x)
(x − x1 )(x − x2 ) (x − x0 )(x − x2 )
donde L0 (x) = , L1 (x) = , y
(x0 − x1 )(x0 − x2 ) (x1 − x0 )(x1 − x2 )
(x − x0 )(x − x1 )
L2 (x) =
(x2 − x0 )(x2 − x1 )
Ejemplo Dada la tabla calcular su polinomio interpolante
x -1 0 2
f(x) 4 1 -1
4 Forma de Newton 5
(x − 0)(x − 2) x2 − 2x (x + 1)(x − 2) x2 − x − 2
donde L0 (x) = = , L1 (x) = ,
(−1 − 0)(−1 − 2) 3 (0 + 1)(0 − 2) −2
(x + 1)(x − 0) x2 + x
y L2 (x) = =
(2 + 1)(2 − 0) 6
Luego 2 2 2
x − 2x x −x−2 x +x
p2 (x) = 4 +1 + (−1)
3 −2 6
Agrupando obtenemos
7 2
p2 (x) = 1 − x + x2
3 3
4 Forma de Newton
La forma de Newton para el polinomio pn (x) que interpola f (x) en x0 , x1 , x2 , . . . , xn (n + 1)
puntos distintos es la siguiente:
Para k = 2 se tiene
Dada una función f (x) y conocidos los valores que f (x) asume en los puntos distintos
x0 , x1 , x2 , . . . , xn , podemos construir la tabla.
x0 f [x0 ]
f [x0 , x1 ]
x1 f [x1 ] f [x0 , x1 , x2 ]
f [x1 , x2 ] f [x0 , x1 , x2 , x3 ]
x2 f [x2 ] f [x1 , x2 , x3 ]
..
f [x2 , x3 ] f [x1 , x2 , x3 , x4 ] .
..
x3 f [x3 ] f [x2 , x3 , x4 ] . f [x0 , x1 , . . . , xn ]
.. ..
f [x3 , x4 ] . .
.. ..
x4 f [x4 ] . .
.. .. ..
. . . f [xn−3 , xn−2 , xn−1 , xn ]
.. ..
. . f [xn−2 , xn−1 , xn ]
f [xn−1 , xn ]
xn f [xn ]
x -1 0 1 2 3
f (x) 1 1 0 -1 -2
Entonces
f (x) = f (x0 ) + (x − x0 )f [x0 , x]
| {z } | {z }
p0 (x) E0 (x)
Entonces
f (x) = f (x0 ) + (x − x0 )f [x1 , xo ] + (x − x0 )(x − x1 )f [x0 , x1 , x]
| {z } | {z }
p1 (x) E1 (x)
donde E1 (x) = f (x) − p1 (x) = (x − x0 )(x − x − 1)f [x0 , x1 , x] es el error cometido por
truncamiento al aproximar f (x) por p1 (x).
Generalizando, la forma de Newton para el polinomio de grado menor o igual que n que
interpola f (x) en x0 , x1 , . . . , xn es
x -1 0 2
f(x) 4 1 -1
Teorema 2 Sean x0 < x1 < x2 < . . . < xn , (n+1) puntos. Sea f (x) con derivadas hasta
el orden (n + 1) para todo x en el intervalo [x0 , xn ]. Sea pn (x) el polinomio interpolador
de f (x) en los puntos x0 , x1 , x2 , . . . , xn . Entonces en cualquier punto x perteneciente al
intervalo [x0 , xn ], el error es dado por
f n+1 (ξx )
En (x) = f (x) − pn (x) = (x − x0 )(x − x1 )(x − x2 ) . . . (x − xn )
(n + 1)!
donde ξx ∈ (x0 , xn ).
Podemos escribir
f (x) = pn (x) + En (x)
El término En (x) es llamado el término de error o error de truncamiento. El error que
se comete en el punto x cuando se usa el polinomio calculado en el punto x en vez de la
función.
Observamos que, al aproximar f (x) por un polinomio de interpolación de grado menor
o igual que n, el error que se comete está relacionada con la derivada de orden n+1 de f (x).
Teorema 3
f n+1 (ξx )
f [x0 , x1 , . . . , xn , x] = x ∈ (x0 , xn ) ξx ∈ (x0 , xn )
(n + 1)!
donde ξ ∈ (x0 , xn ).
Este teorema muestra la relación entre la diferencia dividida de orden n+1 y la derivada
de orden n + 1 de la función f (x).
Corolario 1 Sobre las hipótesis del Teorema 2, si f n+1 (x) es continua en I = [x0 , xn ],
podemos escribir la siguiente relación
Mn+1
|En (x)| = |f (x) − pn (x) |≤ |(x − x0 )(x − x1 )(x − x2 ) . . . (x − xn )|
(n + 1)!
donde Mn+1 = max |f n+1 (x)|.
x∈I
Corolario 2 Si además de las hipótesis anteriores los puntos están igualmente espaci-
ados, es decir
x1 − x0 = x2 − x1 = . . . = xn − xn−1 = h
entonces
hn+1 Mn+1
|En (x)| = |f (x) − pn (x)| <
4(n + 1)
5 Estudio del error en la interpolación 9
con x ∈ [x0 , xn ].
Ejemplo
Dada la tabla de f (x) = ex + x + 1, obtener f (0.7) y analizar el error
x 0.0 0.5 1.0 1.5 2.0
f(x) 0.0 1.1487 2.7183 4.9811 8.3890
Tenemos que: p1 (x) = f (xo ) + (x − x0 )f [xo , x1 ]
como x0 ∈ (0.5, 1), entonces x0 = 0.5 y x1 = 1
p1 (x) = 1.1487 + (x − 0.5)3.1392 → p1 (0.7) = 1.7765
En este caso tenemos condiciones de calcular el verdadero error
|E1 (0.7)| = |f (0.7) − p1 (0.7)| = |1.7137 − 1.7765| = 0.0628
Usando los Corolarios calculamos las cotas para el error
a) Corolario 1 (en x = 0.7)
M2
|E1 (0.7)| ≤ |(0.7 − 0.5)(0.7 − 1)
2
0 1
donde M2 = maxx∈[0.5,1] |f (x)| = e = 2.7183 Entonces |E1 (0.7)| ≤ 0.0815
b) Corolario 2 (∀x ∈ (0.5, 1))
h2 (0.5)2
|E1 (x)| ≤ M2 = (2.7183) = 0.0850.
8 8
5.2 Estimativa para el error
Si la función f (x) es dado solo en la forma de tabla, el valor del error |En (x)| solamente
puede ser estimado, pues no es posible calcular Mn+1 , pero si construimos la tabla de
diferencias divididas hasta el orden n + 1, podemos usar el mayor valor (en módulo) de
Mn+1
estas diferencias como una aproximación para .
(n + 1)!
En este caso decimos que
|En (x) ≤ |(x − x0 )(x − x1 ) . . . (x − xn )| (max |diferencias divididas de orden n + 1|)
Ejemplo Sea f (x) dado por
x 0.2 0.34 0.4 0.52 0.6 0.72
f(x) 0.16 0.22 0.27 0.29 0.32 0.37
• Obtener f (0.47)
• Dar una estimativa para el error
Su tabla de diferencias divididas es
x orden 0 orden 1 Orden 2 Orden 3
0.2 0.16
0.4286
0.34 0.22 2.035
0.8333 -17.8963
0.4 0.27 -3.7033
0.1667 18.2494
0.52 0.29 1.0415
0.375 -2.6031
0.6 0.32 0.2085
0.4167
0.72 0.37
6 El grado del polinomio interpolante 10
Como 0.47 ∈ (0.4, 0.52), escogemos los puntos x0 = 0.4, x1 = 0.52 y x2 = 0.6.
Luego
p2 (x) = f (x0 ) + (x − x0 )f [x0 , x1 ] + (x − x0 )(x − x1 )f [x0 , x1 , x2 ]
p2 (x) = 0.27 + (x − 0.4)0.1667 + (x − 0.4)(x − 0.52)(1.0415)