Muy frecuentemente se dispone de una gran cantidad de datos relativos a una función, conocida o no, que se desea aproximar. Las técnicas de interpolación polinómica dan lugar en general a interpolantes que presentan grandes oscilaciones. La interpolación spline desempeña un papel fundamental en el tratamiento de este tipo de problemas. En lo que sigue, nos centraremos principalmente en la interpolación spline cúbica, aunque trataremos primero brevemente la lineal y la cuadrática.
Como hemos indicado, los polinomios de grado elevado pueden presentar grandes oscilaciones. Ello hace que un polinomio pueda coincidir con una función en muchos puntos y que, aunque dos de ellos estén muy próximos, en puntos entre estos dos el valor del polinomio diste mucho del de la función. Incluso es posible que la distancia tienda a infinito cuando el grado del polinomio crece (el ejemplo de Runge es una buena ilustración).
Por el contrario para los polinomios de grado bajo no se dan tales oscilaciones; basta pensar en las gráficas de las rectas, las parábolas o las cúbicas, por citar los de grado más bajo, que son los de mayor interés en la construcción de las funciones spline polinómicas.
La idea de este tipo de funciones es hacer posible la construcción de espacios de funciones suficientemente suaves fácilmente manejables. Los más utilizados son los construidos, hablando en términos gráficos, a partir de funciones polinómicas a trozos de grado bajo que presentan cierta regularidad.
Un ejemplo sencillo es el de una función cuya gráfica la forman rectas a trozos, es decir segmentos, sobre una partición
del intervalo
, de tal manera que el extremo final de un segmento coincide con
el principio del siguiente. La gráfica que resulta es lo que conocemos como una
poligonal. Obsérvese que se trata de una función continua en el intervalo total
, y
que al restringirla al intervalo
,
, es
un polinomio de grado menor o igual que uno; además, estas dos propiedades se
mantienen cuando se suman poligonales o se multiplican por escalares. Por tanto
las funciones cuyas gráficas son las poligonales asociadas a la partición
anterior constituyen un espacio vectorial. Este espacio vectorial es el de las
funciones spline de grado uno y nodos
, y se nota por
También se observa de inmediato que si en los nodos ,
,
se conocen los
valores
,
,
que toma cierta
función y se desea construir una poligonal, del tipo anterior, que pasa por
ellos, el problema tiene solución y es única: su gráfica la forman los segmentos
que unen los puntos resultantes: el punto
con el punto
, el
con
, etc., y su expresión
analítica,
en
el subintervalo
,
, es
(el último subintervalo se considera
cerrado por la derecha, es decir,
).
Por tanto, el problema consistente en interpolar datos lagranianos referidos
a los nodos ,
,
en el espacio
es unisolvente (es
decir, tiene solución en ese espacio vectorial y es única). Este hecho también
nos indica que la dimensión de dicho espacio es
La dimensión también se
puede deducir teniendo en cuenta que cada spline es un polinomio de grado menor
o igual que
en cada
subintervalo, lo que deja dos parámetros libres para su determinación; en total,
como hemos de obtener
polinomios, serían
parámetros, a los que habría
que restar
restricciones originadas al exigir la continuidad en los
nodos interiores, obteniendo
como valor de la dimensión
(este resultado, obtenido a
partir de un razonamiento de tipo heurístico, requiere una demostración
rigurosa, pues no hemos probado que las formas lineales asociadas al problema
sean linealmente independientes).
Una base del espacio la constituyen las
poligonales que valen,
respectivamente,
en un nodo y
en los
nodos restantes. Esta base
es muy útil en problemas de elementos finitos (ver figura c10g1 ).
Gráfica de la función de de la
base de
correspondiente al nodo
.
Otra base se puede definir a partir de potencias
truncadas. La función potencia truncada de grado en el punto
se nota por
y se define por
En la figura c10g2 se muestran las gráficas de dos de ellas.
Gráficas en de las
potencias truncadas de grados
correspondientes a
.
La base de mediante
potencias truncadas es
Las funciones spline polinómicas de grado mayor que uno siguen una filosofía
idéntica a las de grado uno, sólo que al aumentar el grado se puede conseguir
mayor regularidad global, sin que cambie mucho la dimensión del espacio
vectorial. Así, los splines cuadráticos con nodos ,
,
están
constituidos por parábolas a trozos, unidas entre sí no sólo con continuidad
sino también con tangente continua, de tal forma que son funciones de clase uno
en el intervalo
. El espacio vectorial
correspondiente se nota por
Es evidente que si se desea
calcular una parábola conociendo su valor en dos puntos, por ejemplo en
y
, y el valor de
su derivada en uno de ellos, por ejemplo en
el problema
es unisolvente. Si queremos usar el spline cuadrático para interpolar datos, la
siguiente parábola tendría que volver a interpolar el valor en el nodo
, puede
interpolar un nuevo valor de función en
pero no podemos interpolar
una derivada arbitraria en uno de estos extremos, pues, para que ambas parábolas
enlacen con clase uno se necesita que la nueva parábola tenga en
la misma
derivada que la parábola construida en el intervalo
Continuando la construcción
hasta el último subintervalo, observamos que el espacio
permite resolver un problema
de interpolación con
datos (valores en los
nodos y el valor de la
derivada en uno de ellos). Nuevamente, la dimensión
es igual al número de
parábolas que hay que construir,
, por el número de parámetros
de cada una, tres, menos el número de nodos interiores,
, por las restricciones en
cada nodo interior, dos (coincidencia del valor y de la primera derivada).
Detallemos el problema de interpolación lagrangiana en
, que describimos
como sigue:
Si es el
polinomio cuadrático que se obtiene al restringir
al intervalo
,
,
entonces
, donde
,
y
son
constantes reales. La función
cumplirá las condiciones de
interpolación
,
, si y
sólo si
y
,
,
condiciones equivalentes a
donde
. Entonces
donde
. La determinación
del interpolante spline
pasa por hallar los valores
. Sólo resta
imponer que
sea de
clase
. Pero
esto está garantizado si
es derivable en los nodos
interiores
. En
definitiva,
es de
clase
si y
sólo si
,
, es
decir, si y sólo si
igualdades que se simplifican dando
lugar a
Se trata de un sistema de ecuaciones para las
incógnitas
, por lo
que el problema (c10:Lagcuad) no es
unisolvente en
. Una forma de conseguir un
problema unisolvente consiste en especificar el valor de la derivada de la
función spline en uno de los nodos. Si es el inicial, equivale a especificar el
valor de
.
En cualquiera de estos casos las igualdades (c10:sistcuad) permiten determinar recurrentemente
los restantes valores de las incógnitas.
Otra forma de abordar el problema es elegir de modo que
alguna cantidad relacionada con el spline se minimice, por ejemplo la energía o
alguna aproximación de la curvatura (ver [Späth]).
El problema descrito también podría haberse expresado en términos de la base
de potencias truncadas de , dada por
De igual forma que en los casos anteriores, se puede construir un espacio
formado por funciones cúbicas a trozos de clase dos. Es el espacio vectorial de
los splines cúbicos, que se nota por . Este espacio tiene
dimensión
, como
indica un razonamiento similar al de los casos precedentes. De nuevo podemos
escribir una base para el mismo en función de potencias truncadas
Con el espacio podemos interpolar valores
en los
nodos y
dos datos más. Cabría pensar que los dos datos restantes para la interpolación
son relativos a derivadas en los extremos de uno de los subintervalos.
Efectivamente esa es una posibilidad, pero no la más interesante. Los problemas
de interpolación en el espacio
tienen sus dos datos
restantes referidos a los nodos extremos
y
; por tanto, su construcción
no es tan simple como en los casos anteriores.
El problema de interpolación lagrangiana en es el siguiente:
Como hemos comentado, se requieren dos condiciones adicionales; tres elecciones muy interesantes son las siguientes:
Caso cúbico natural
.
Caso cúbico periódico
.
Caso cúbico sujeto
,
Los problemas de Lagrange con las anteriores condiciones adicionales tienen
datos de
interpolación comunes.
Veamos cómo se podría determinar el primero de ellos, el spline cúbico natural de interpolación. Mantenemos la notación
empleada en el caso cuadrático. La restricción al subintervalo del
spline
se nota
y es un
polinomio de grado menor o igual que tres, que debe tomar en los extremos los
valores
e
,
respectivamente. Si denominamos
y
a los valores
(desconocidos) de la derivada primera de
en los extremos
y
, entonces
satisface las
igualdades
Se trata de un problema de
interpolación polinómica de Hermite, por lo que
puede
expresarse en términos de los polinomios de la correspondiente base de Newton:
. Unos cálculos
elementales muestran que
La función
construida a partir de las
restricciones
,
,
interpola los valores
y es de clase
. Sólo hay que imponer que
sea de clase
, lo que
se consigue si lo es en los nodos interiores
. Pero esto equivale a que
para
.
Pero
y
En definitiva, igualando
ambos valores y simplificando, se tiene clase
si y sólo si
para
.
Constituyen un sistema de
ecuaciones para
incógnitas, por lo que el
problema (c10:Lagcub) no es unisolvente, como
ya se anunció. Son necesarias dos condiciones adicionales. En el caso cúbico
natural, son
, o,
equivalentemente,
. A partir de las
expresiones de
y
, se obtiene
que la segunda derivada de
en
y
será nula si y sólo si
La matriz de coeficientes del sistema que determina los valores de la derivada
de
en los nodos de
interpolación es
Es una matriz diagonalmente
dominante en sentido estricto, por lo que es invertible. Así pues, existe un
único spline natural de interpolación. El vector de términos intependientes es
En las figuras (c10g3) y (c10g4) se muestran las gráficas de la función y de su spline cúbico
natural de interpolación relativo a la partición uniforme del intervalo
con paso
, y el
error de interpolación asociado, respectivamente.
Gráficas de la función y de su
spline cúbico natural de interpolación relativo a la partición uniforme
del intervalo
con paso
.
Gráfica del error de
interpolación correspondiente al ejemplo de la figura (c10g3).
El caso cúbico sujeto es más simple, pues las condiciones en los extremos se
traducen en valores concretos de y
, por lo que las
ecuaciones primera y última que relacionan los valores de las incógnitas se
simplifican, obteniendo un sistema de orden
en lugar de uno de orden
.
Conocidos los valores de las derivadas del spline en cada nodo es inmediato obtener con Mathematica la expresión del spline en ese intervalo con la orden InterpolatingPolynomial.
El caso periódico, que también es unisolvente, se trata de forma análoga, aunque la matriz de coeficientes ya no es tridiagonal.
Podríamos pensar en utilizar un espacio formado por cúbicas a trozos que
enlazaran con continuidad y también con tangente continua pero sin exigir
coincidencia de las segundas derivadas en los nodos interiores. Lo notaremos por
, donde el
superíndice indica la regularidad global y el subíndice el grado de los
polinomios. Es de nuevo un espacio vectorial, de mayor dimensión que el
anterior, que además contiene al espacio de los splines cúbicos de clase dos.
Es inmediato que con este espacio podemos interpolar, con solución única, el
valor de una función y el de su derivada en cada uno de los nodos. Por tanto, la
dimensión del espacio es
. Además, la
construcción de cada uno de los trozos se puede hacer por separado con la orden
InterpolatingPolynomial..
Consideremos dos funciones . Entonces, se tiene que
Si
es
derivable en casi todos sus puntos, entonces se puede desarrollar por partes la
última integral de la expresión anterior y se obtiene
Teniendo en cuenta las
relaciones anteriores, probaremos las siguientes propiedades de tipo extremal
para los splines cúbicos.
Supongamos que interpola los valores
en los nodos
, para
, y que
es el spline
cúbico natural que interpola dichos datos. Entonces, se tiene que
y la
igualdad se verifica si y sólo si
, para todo
.
Demostración El primer miembro a la derecha del signo
igual en (c10:es5) es nulo, por ser (spline cúbico natural), y
resulta que
donde
es el
valor constante de
en
. Por tanto,
y la igualdad (c10:es4) se reduce a
y, por tanto,
De la continuidad de y
se
deduce que la igualdad sólo se da si
, es decir, si y sólo si
, para todo
, por lo que
y
difieren únicamente en un
polinomio de grado uno. Como coinciden en al menos dos nodos, este polinomio se
anula en, al menos, dos puntos y, por consiguiente es idénticamente nulo. En
definitiva,
con lo que concluye la demostración.
Supongamos que interpola los datos
en los nodos
, para
, y
además los datos derivada en los extremos,
e
. Sea
el
spline cúbico sujeto asociado a los mismos datos. Entonces se tiene que
y la
igualdad se da si y sólo si
para todo
.
Demostración La demostración es análoga a la del
teorema precedente, teniendo en cuenta que la condición se debe sustituir por
y
.
Sean ahora un spline
cúbico cualquiera con nodos
,
y
, y
una función de clase
. Sean
y
,
donde
es el spline cúbico sujeto que interpola a
.
Notemos que ,
,
y
. Aplicando (c10:es6), se tiene que
cumpliéndose la igualdad si y sólo
si
.
La propiedad (c10:es7) se puede interpretar como que,
si medimos la distancia entre y cualquier spline cúbico
mediante la
expresión
,
entonces esta distancia se minimiza cuando
y para todos sus
trasladados mediante un polinomio de grado uno. Por tanto, podemos decir que
es la
mejor aproximación de
en este sentido.
Sean un intervalo cerrado real y
una partición del mismo.
Sea
. Sean
y
el spline cúbico natural o
sujeto que interpola a
en los nodos de la partición
considerada. Entonces, el error de interpolación
verifica, para cada
intervalo
, que
y, por el teorema
de Rolle, existe al menos un valor
tal que
. En consecuencia,
Por la desigualdad de Cauchy-Schwartz, se tiene que
Aplicando la propiedad extremal que verifica , ya sea el spline cúbico
natural o el sujeto, se verifica que
Teniendo en cuenta (c10:es8), y tomando raíz cuadrada
se obtiene que Luego la derivada del error está
acotada por una expresión proporcional a
.
Como se tiene que
Luego, una cota del error de interpolación spline cúbica natural o sujeta es
deduciéndose que el error está acotado por una expresión proporcional a
.