Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Métodos Matemáticos
Métodos Matemáticos
Lección 3: Interpolación
Introducción. En muchas situaciones, aparecen conjuntos de datos o resultados de mediciones
experimentales de los que sólo se conoce una cierta cantidad, y para los cuales se necesita
encontrar una ley general que sirva para su tratamiento. Usualmente, esa ley general no es
otra cosa que una función que tome valores predeterminados. Precisamente, éste es el cometido
básico de la interpolación: dada una tabla de datos, se trata de encontrar una función cuyo
comportamiento en los puntos dados se ajuste, en algún sentido, a los valores proporcionados
por la tabla.
La elección del tipo de funciones interpoladoras depende básicamente del contexto en que se
esté trabajando y, como es previsible, hay una gran variedad. En este curso, sólo trataremos la
interpolación polinómica de Lagrange y ciertos tipos de interpolación polinómica a trozos (lineal
y splines).
INTERPOLACIÓN POLINÓMICA
p(x) = a0 + a1 x + · · · + aN xN ,
1. p ← aN ,
2. para j = N − 1, . . . , 0: p ← aj + xp.
1
El problema general de la interpolación polinómica consiste en, dada una función f : [a, b] →
R y N + 1 puntos diferentes: α0 < α1 < · · · < αN del intervalo [a, b], denominados nodos de la
interpolación, encontrar un polinomio pN (x) tal que
Una forma de resolver este problema se basa en los denominados polinomios de Lagrange
(asociados a los nodos α0 , . . . , αN ), que están definidos como
YN
x − αl
Lj (x) = , j = 0, . . . , N.
l=0
αj − αl
l6=j
De esta manera, si tenemos los N + 1 polinomios de Lagrange, se observa que una solución del
problema de interpolación es simplemente
Obviamente, una expresión para dicho polinomio interpolador viene dada por la forma de
Lagrange antes mencionada.
No obstante, esta forma de Lagrange para el polinomio interpolador no siempre es la más
útil en la práctica, pues no permite evaluarlo en un punto con N + 1 flops. Además, si necesita-
mos añadir algunos nodos más (esquemas adaptativos) no podemos reutilizar los cálculos. Para
solventar estas dificultades, se usa la forma de Newton del polinomio interpolador:
Los diversos coeficientes f [α0 ], f [α0 , α1 ], . . . , f [α0 , . . . , αN ] de la forma de Newton del poli-
nomio interpolador reciben el nombre de diferencias divididas de f (x) en los nodos α0 , α1 , . . . , αN .
2
Para calcular su valor, construimos la siguiente tabla:
f [α0 ] = f (α0 )
f [α1 ] = f (α1 ) f [α0 , α1 ] = f (αα11)−f
−α0
(α0 )
Con respecto al problema de determinar el error que se comete al aproximar una función
f (x) por su polinomio interpolador, se tiene el siguiente resultado:
Teorema 2. Consideremos una función f : [a, b] → R de clase C N +1 [a, b] y N +1 puntos diferentes
de intervalo [a, b]: α0 < α1 < · · · < αN . Si pN (x) es el correspondiente polinomio interpolador,
se tiene que para cada x ∈ [a, b], existe un punto ξ = ξ(x) tal que
f (N +1) (ξ)
f (x) − pN (x) = (x − α0 ) · · · (x − αN ).
(N + 1)!
Además, mı́n(α0 , x) < ξ < máx(αN , x).
Respecto a la fórmula anterior conviene hacer dos precisiones. En primer lugar, en el exterior
del intervalo [a, b], la función W (x) = (x − α0 ) · · · (x − αN ) tiende muy rápido a infinito cuando
x se aleja de dicho intervalo hacia infinito. Por tanto, el uso de la interpolación de Lagrange
para aproximar f (x) fuera de este intervalo (proceso denominado extrapolación) debe evitarse,
salvo para valores de x cercanos a [a, b]. En segundo lugar, puede verse que la fórmula del error
depende obviamente de f (x) pero también de la elección de los nodos. Es posible buscar la mejor
disposición de éstos para que el error sea pequeño, cuestión en la que no abundaremos en este
curso pues raramente se presenta en la práctica la ocasión de elegir los nodos de interpolación.
3
El interpolante a trozos p∆ (x) (subordinado a la partición ∆) satisface:
1. p∆ (αj ) = f (αj ), para cada j = 0, . . . , N ,
2. p∆ (x) es un polinomio de cierto grado (prefijado a priori) en cada intervalo [αj−1 , αj ].
Puesto que p∆ (x) es un polinomio en cada [αj−1 , αj ], y coincide con f (x) en los extremos, el
interpolante a trozos resulta ser entonces una función continua.
Interpolación lineal a trozos. Si fijamos el grado en 1, p∆ (x) es en cada intervalo [αj−1 , αj ]
el polinomio interpolador de grado menor o igual que uno basado en los nodos αj−1 y αj , esto
es,
αj − x x − αj−1
p∆ (x) = f (αj−1 ) + f (αj ), x ∈ [αj−1 , αj ], j = 1, . . . , N.
αj − αj−1 αj − αj−1
Este interpolante se conoce con el nombre de interpolante lineal a trozos. Su gráfica es una
poligonal que coincide con f (x) en los puntos de interpolación. Respecto al error del interpolante
lineal a trozos, tenemos que
h2
máx |f (x) − p∆ (x)| ≤ máx |f 00 (ξ)| .
x∈[a,b] 8 ξ∈[a,b]
Es decir, si la función f (x) es suficientemente derivable, su interpolante lineal converge cuadrática-
mente a f (x) cuando el diámetro h tiende a 0 (el diámetro de la partición ∆ se define como
h = máxk |αk+1 − αk |).
Interpolación por splines. El interpolante lineal a trozos tiene el inconveniente de que, siendo
una función continua, no es derivable con continuidad (su derivada es una función constante a
trozos con saltos en los nodos).
Para obtener resultados que representen mejor a una función regular se recurre a polinomios
de bajo grado en cada subintervalo, imponiendo condiciones adicionales que aseguren un enlace
suave entre intervalos adyacentes.
El más habitual es el llamado spline. Esta palabra inglesa denota un instrumento flexible
usado en dibujo técnico que sirve para trazar curvas suaves (de hecho, algunas veces se traduce
como trazador o cercha). Se trata de una regla que puede ser adaptada, flexionándola, a la forma
que tome la curva que se desea dibujar. Precisamente, la propiedad de adaptarse bien a formas
dadas que tienen las funciones spline es su aspecto más destacado.
Se denomina spline respecto de la partición ∆ a cualquier función S∆ (x) de clase C 2 [a, b] que
coincida en cada intervalo [αj , αj+1 ] (i = 0, 1, ..., N −1) con un polinomio de grado menor o igual
que 3. El problema de interpolación por splines consiste en, dada la función f (x), encontrar un
spline S(x) = S∆ (x) tal que
S∆ (αj ) = yj = f (αj ), para todo j = 0, 1, ..., N.
Observemos que el cálculo efectivo se traduce en la determinación de los coeficientes de las
correspondientes cúbicas. Puesto que tenemos N subintervalos determinados por la partición ∆,
deben determinarse 4N coeficientes.
Por otra parte, deben cumplirse 2N condiciones de interpolación (dos por cada una de las
cúbicas) ası́ como 2(N − 1) condiciones que garanticen que el spline sea de clase C 2 [a, b] (deben
de coincidir las derivadas laterales de primer y segundo orden en los nodos interiores).
4
En definitiva, tenemos un sistema de 4N − 2 ecuaciones y 4N incógnitas. Este problema
siempre tiene solución aunque no es única. Para garantizar la unicidad, se imponen condiciones
adicionales, lo que conduce a distintos tipos de splines: naturales, sujetos, periódicos, not-a-
knot,...
00 00
El spline natural se determina imponiendo que S∆ (a) = S∆ (b) = 0.
El spline sujeto se obtiene añadiendo condiciones del tipo S 0 (a) = y00 y S 0 (b) = yN
0
.
El comportamiento del error para las funciones spline es bastante mejor que en el caso
polinomial. Una muestra es el siguiente resultado:
Teorema 3. Sea f : [a, b] → R de clase C 4 [a, b], con |f (4) (x)| ≤ M, para todo x ∈ [a, b]. Si
S(x) = S∆ es el spline sujeto tal que S 0 (a) = y00 y S 0 (b) = yN
0
, que interpola a la función f (x)
en los nodos de la partición ∆, entonces:
5
máx |f (x) − S(x)| ≤ M h4 .
a≤x≤b 384