Interpolación polinómica en una variable

Introducción

La interpolación es un método para aproximar una función a partir de ciertos datos de la misma. El aproximante se denomina, en este caso, interpolante y debe verificar los datos conocidos de la función. Por ejemplo, si el valor de una función en el punto $x_{0}=-1$ es $2$, en el punto $x_{1}=0$ es $4$ y en el punto $x_{2}=1$ es $2$, entonces el polinomio $4-2x^{2}$ es su interpolante en el espacio MATH (de los polinomios de grado menor o igual que $2$). Otros interpolantes de esa función en los puntos $x_{0},$ $x_{1}$ y $x_{2}$ en espacios de funciones trigonométricas son MATH, MATH, etc.

Todos los datos del ejemplo anterior corresponden a valores de la función en puntos diferentes. Se dice que son lagrangianos. A veces parte de los datos corresponden a derivadas de la función; entonces se habla de datos de tipo Hermite.

En la interpolación lineal los datos conocidos deben corresponder a funcionales lineales aplicados a la función que deseamos interpolar. Un funcional es una aplicación de un conjunto de funciones en $\QTR{Bbb}{R}$. En el ejemplo anterior los tres funcionales $\QTR{cal}{L}_{0,}$ $\QTR{cal}{L}_{1}$ y $\QTR{cal}{L}_{2}$ están definidos de la siguiente forma: MATH, MATH y MATH. Son lineales, lo mismo que le ocurre al funcional $\QTR{cal}{L}$ definido por MATH (derivada de orden $k$ en el punto $x=7$) o al definido por MATH Sin embargo, no es lineal el funcional $\QTR{cal}{N}$ definido por MATH o el definido por MATH, etc.

El número de datos que usaremos en la interpolación será finito y buscaremos el interpolante en un espacio vectorial, $V$, cuya dimensión coincidirá con el número de datos y sus funciones serán sencillas de manejar; es decir, sencillas de derivar, evaluar, integrar y almacenar en un ordenador. Los espacios polinómicos son los primeros candidatos para la interpolación.

Planteamiento general del problema

En general, si los datos conocidos son MATH, MATH, $\ldots$, MATH y el espacio vectorial $V$, donde buscamos el interpolante, tiene dimensión $n+1$ y una base está formada por las funciones $\varphi_{0} $, $\varphi_{1}$, $\ldots$, $\varphi_{n}$, el interpolante, $p$, se escribirá como MATH donde los coeficientes $a_{i}$ deben ser calculados forzando a que $p$ interpole los datos conocidos de $f$, es decir, imponiendo que se verifiquen las igualdades MATH Se obtiene, pues, el sistema lineal de orden $n+1$MATH que será compatible determinado si el determinante de la matriz de coeficientes, MATH (llamado determinante de Gram), es diferente de cero. En tal caso se dice que el problema es unisolvente (solución única).

Es interesante conocer espacios donde sean unisolventes datos de interpolación que se conocen habitualmente. Por ejemplo datos lagrangianos, es decir valores de la función en puntos diferentes, como las dadas en el ejemplo inicial. También interesa disponer de fórmulas que permitan obtener el interpolante fácilmente en los problemas unisolventes.

En este capítulo usaremos como espacios interpoladores los de tipo polinómico de grado bajo, obteniendo la interpolación polinómica; y daremos las fórmulas de Lagrange y de Newton para obtener el interpolante.

Problemas de interpolación polinómica más habituales. Unisolvencia

Lógicamente, la unisolvencia de un problema de interpolación depende sólo de los funcionales lineales y del espacio $V$. No depende de la base de $V$. Por tanto, para probar la unisolvencia usaremos en cada caso la base que consideremos más apropiada para ver la no nulidad del determinante de Gram.

En los problemas que damos a continuación, el espacio interpolador, $V$, será siempre $\QTR{Bbb}{P}_{n}$, es decir, el de los polinomios de grado menor o igual que $n$ (suponiendo que el número de datos que hay que interpolar es $n+1$).

Interpolación de Lagrange

En este caso los datos son valores de la función en $n+1$ puntos diferentes. Es decir, si los puntos de interpolación, que sólo por comodidad los consideramos ordenados, son MATH debemos conocer los valores MATH, $i=0,1,\ldots,n$, lo que implica que los funcionales son MATH, $i=0,\ldots,n$. Este es el problema de interpolación polinómica lagrangiana. Es unisolvente, como puede comprobarse sin más que tomar la base MATH de $\QTR{Bbb}{P}_{n}$ y evaluar el determinante de Gram correspondiente, que es triangular inferior.

Por ejemplo, si $n=3$ dicho determinante es MATH y es no nulo al ser distintos los puntos de interpolación. Lo mismo sucede en caso general.

Interpolación de Hermite clásica

En este caso los datos que se consideran son el valor de la función y el de su primera derivada en cada punto, es decir, MATH, MATH, $\ldots$, MATH, MATH. En total $2n+2$ datos. Por tanto MATH.

Si consideramos la base de $V$ dada por MATH y la sometemos a los funcionales, que son MATH, MATH, $i=0,...,n$, obtenemos, de nuevo, un determinante triangular inferior sin elementos nulos en la diagonal, luego el problema de Hermite clásico también es unisolvente.

Interpolación de Hermite generalizada

Entendemos como Hermite generalizado un problema cuyos datos, en cada punto, son de la forma MATH, MATH, MATH, $\ldots$, MATH, $i=0,...,n$. Los valores de la derivada máxima, $\eta_{i}$, pueden variar de un punto a otro. Es decir, la única condición es que si en un punto se da como dato el valor de cierta derivada de $f$ en ese punto también se tienen que dar los valores de todas las derivadas de menor orden en dicho punto. Quedaría excluido de este tipo de problemas, por ejemplo, el que tiene por datos $f\left( 0\right) $, MATH y MATH, pues no aparece $f\left( 1\right) $. Este ejemplo corresponde a una familia de problemas, más general, llamada de Hermite-Birkhoff.

El número total de datos en un problema de Hermite generalizado es MATH y la unisolvencia está garantiza en el espacio MATH La demostración vuelve a ser inmediata si se elige una base adecuada de este espacio, usando productos de potencias de $x-x_{i}$, como en los casos anteriores. Concretamente, una base adecuada para que el determinante de Gram sea triangular es MATH

Por ejemplo, si los datos que se desea interpolar son MATH una base adecuada para probar la unisolvencia es MATH ya que al evaluar los funcionales resulta el determinante no nulo MATH

Interpolación de Taylor

Es un caso particular de interpolación de Hermite generalizada, en el que los datos están todos referidos a un solo punto, digamos $x_{0}$, en el que conocemos el valor de la función y el de varias derivadas sucesivas, esto es MATH, MATH, MATH, $\ldots$, MATH. Los funcionales lineales son MATH,$\,$ $i=0,...,n$. La unisolvencia en $\QTR{Bbb}{P}_{n}$ puede verse de forma inmediata a partir de la base canónica, MATH, pues el determinante de Gram correspondiente es MATH

Fórmula de Lagrange para la interpolación en general

En primer lugar, observemos que si $x_{0}$, $x_{1}$, $\ldots$, $x_{n}$ son $n+1$ valores reales distintos, pertenecien-tes a un intervalo $\left[ a,b\right] $, y MATH es una función real definida en ese intervalo, los polinomios $l_{i}$ de grado $n$ definidos por MATH satisfacen las igualdades MATH Por tanto, el polinomio definido por MATH es de grado menor o igual que $n$ y en cada nodo $x_{i}$ toma el valor MATH. Por tanto, debido a la unisolvencia, $p_{n}$ es el polinomio de interpolación de Lagrange de la función $f$ en los nodos $x_{i}$, $0\leq i\leq n$, y la representación (ec09.1) es la fórmula de Lagrange para el polinomio de interpolación con datos lagrangianos.

La fórmula de Lagrange es aplicable a otros problemas de interpolación en los que los datos no sean lagrangianos, incluso aunque el espacio interpolador $V$ no sea $\QTR{Bbb}{P}_{n}.$ Pero los $l_{i}$, obviamente, cambian ya que tienen que pertenecer al nuevo espacio interpolador. Es posible que su cálculo deje de ser inmediato. Concretamente, si los datos del problema corresponden a unos funcionales $\QTR{cal}{L}_{i}$, $i=0,...,n$, que conducen a unisolvencia en un espacio $V$ de dimensión $n+1$, calculamos la función $\varphi_{0}\in V$ que verifica

MATH Análogamente, calculamos MATH cambiando la posición del valor $1$ en la columna de términos independientes, a la segunda ecuación, tercera, etc. Es decir, $\varphi_{j}\in V$ es la solución del sistema MATH, $i=0,...,n $. Las funciones $\varphi_{j}$ existen y son únicas debido a la unisolvencia del problema de partida.

Ahora, si nuestro problema de interpolación consiste en calcular $p\in V$ tal que MATH, $\ldots$, MATH, entonces la solución es MATH

Efectivamente, $p\in V$ y MATH, $\ldots$, MATH, luego es la solución (debido a la unisolvencia). Asimismo, el interpolante de una función de $V$ es la propia función. Por tanto las funciones $\varphi_{i}$ constituyen una base de $V$. Se denomina base de Lagrange, y a la fórmula (ec09.2) se le denomina fórmula de Lagrange.

La fórmula de Lagrange es válida para resolver cualqier problema de interpolación unisolvente, sea polinómico o no, y para cualquier tipo de datos, pero requiere calcular previamente la base de Lagrange. Luego, salvo que ésta sea inmediata, como ocurre con el problema de interpolación polinómica con datos lagrangianos, tendremos que resolver $n+1$ problemas, es decir $n+1$ sistemas lineales, de igual tamaño. No es práctico para reslover un solo problema. Ahora bien, en ocasiones tenemos que interpolar muchas funciones en un mismo espacio y de ellas conocemos los mismos datos. En tal caso, la base de Lagrange es la misma para todos los problemas y, por tanto, sólo hay que obtenerla una vez.

En el caso de la interpolación polinómica la base de Lagrange está formada por $n+1$ polinomios de grado $n$. Si después hay que evaluar el interpolante en muchos puntos, por ejemplo para dibujar su gráfica, se tarda más tiempo que si la base contiene polinomios de todos los grados, como ocurre con la base canónica y con las utilizadas para probar la unisolvencia de los problemas anteriores (que son las bases de Newton). Otro inconveniente importante de la base de Lagrange es que una modificación en los datos, por eliminación o adición de alguno, hace inservibles los polinomios de Lagrange ya calculados.

Fórmula de Newton para la interpolación polinómica

La fórmula de Newton surge de la idea de aprovechar el polinomio que interpola $k$ datos, $p_{k-1}$, para construir el polinomio, $p_{k}$, que interpola en $k+1$ datos (los $k$ anteriores y otro nuevo).

Supongamos, en primer lugar, que los datos son todos lagrangianos, es decir conocemos los valores MATH, MATH, $\ldots$, MATH, donde $x_{i}\neq x_{j}$ si $i\neq j$, y deseamos obtener el polinomio MATH tal que MATH, $i=0,...,n$.

Sea MATH tal que MATH Deseamos obtener el polinomio de interpolación de los datos MATH, MATH, $\ldots$, MATH, MATH, escribiéndolo como MATH donde MATH. Ello obliga a que MATH, $i=0,\ldots,k-1$ y, por tanto, MATH siendo $A_{k}$ una constante.

Finalmente, $p_{k}$ debe interpolar también el dato en $x_{k}$, con lo cual MATH de lo que se deduce que MATH valor que recibe el nombre de diferencia dividida (de los datos considerados).

El proceso para calcular el interpolante en los $n+1$ puntos se puede llevar a cabo en $n+1$ etapas. En primer lugar se calcula el polinomio, $p_{0}$, que interpola a $f$ sólo en el punto $x_{0}$; es $p_{0}(x)=f(x_{0}).$ A continuación se obtiene $p_{1}$ a partir de la expresión MATH siendo MATH. Después se obtiene $p_{2}$ como MATH imponiendo que interpole en $x_{2}$. Se continúa este procedimiento hasta disponer de $p_{n}$. Para unificar la notación, pongamos MATH, con lo cual el polinomio $p_{n}$ queda como MATH que es la fórmula de Newton para la interpolación polinómica con datos lagrangianos. El valor de la diferencia dividida $A_{0}$ depende sólo del valor de la función interpolada, $f$, en el nodo $x_{0}$. Por ello a veces se nota por MATH. El valor de $A_{1}$ depende sólo de los valores de $f$ en los nodos $x_{0}$ y $x_{1}$ (también se suele notar por MATH), etc. Así pues, otra forma de escribir el polinomio $p_{n}$ es MATH En definitiva, la fórmula de Newton para el polinomio de interpolación de Lagrange se escribe en forma compacta como MATH sobreentendiendo que MATH

Además de la progresividad en el cálculo que posibilita la expresión (ec09.3), la evaluación del polinomio en la forma de Newton es menos costosa que en la de Lagrange, pues los grados de los sumandos de la representación de Newton aumentan desde $0$ hasta $n$, mientras que siempre son de grado $n$ en la fórmula de Lagrange. Este hecho se reflejará en un mayor tiempo de cálculo necesario para representar la gráfica del polinomio si se emplea la fórmula de Lagrange.

Un ingrediente que falta para que el esquema de Newton sea sa-tisfactorio es simplificar el cálculo de las diferencias divididas, resultado que incluimos a continuación (ver [Gasca]).

Proposición.-

Las diferencias divididas satisfacen las siguientes propiedades:

  1. MATH

  2. MATH

  3. Si MATH es una permutación de MATH, entonces se cumple que MATH.

La segunda propiedad de la proposición anterior permite disponer de forma cómoda los cálculos necesarios para hallar las diferencias divididas haciendo uso de una estructura triangular. MATH

El error de la interpolación de Lagrange

El error cometido en el punto $x$, $e\left( x\right) $, al interpolar una función $f$ mediante el polinomio $p_{n}$ es MATH. El error es nulo en los nodos de interpolación, pues MATH, $i=0,1,...,n.$ De aquí se deduce una propiedad de las diferencias divididas.

Proposición.-

Si MATH y $x_{0}$, $x_{1}$, $\ldots$, $x_{n}$ son $n+1$ puntos distintos pertenecientes a dicho intervalo, entonces existe un punto $\xi$, comprendido entre el menor y el mayor de los $x_{i}$, tal que MATH

Demostración Podemos considerar los nodos de interpolación ordenados: MATH. Sea $p_{n}$ el polinomio que interpola a $f$ en dicho puntos. El error de interpolación se anula, al menos, en $n+1$ puntos distintos. Entre cada dos de ellos se anulará su derivada, al menos una vez (Teorema de Rolle). Repitiendo el proceso, su derivada $n$-ésima se anulará al menos en un punto, $\xi$, que estará comprendido entre $x_{0}$ y $x_{n}$. Por tanto, como MATH, se cumple que MATH. Pero MATH para todo MATH. Entonces MATH y se concluye el resultado enunciado. $\Box$

Un objetivo básico al tratar con la interpolación lagrangiana es controlar el error que se produce al aproximar el valor de la función interpolada por el de su interpolante, lo que requiere disponer de alguna estimación del mismo para funciones suficientemente regulares.

Proposición.-

Se cumple que MATH.

Demostración Evidentemente es cierto si $x$ coincide con algún nodo $x_{i}$. En los demás casos, si tratásemos de incorporar a $x$ como nuevo nodo de interpoalción con la fórmula de Newton, para obtener el polinomio $p_{n+1}$ que interpola en los $n+1$ nodos iniciales y en el nodo $x,$ se tendría que calcular un nuevo coeficiente $A_{n+1}$ o diferencia dividida MATH, cuyo valor es MATH y de ahí el resultado enunciado. $\Box$

Como consecuencia de las proposiciones difdivyder y errorinterp, podemos enunciar el resultado relativo al error de interpolación.

Teorema.-

Sean MATH y $x_{0}$, $x_{1}$, $\ldots$, $x_{n}$ $n+1$ puntos distintos pertenecientes a dicho intervalo. Si $x$ es otro punto de dicho intervalo, entonces existe $\xi $ MATH tal que el error en $x$ se puede expresar como MATH

Esta propiedad pone de manifiesto que en el error influyen tanto la derivada $\left( n+1\right) $-ésima como la parte polinómica dependiente de los nodos. Es un hecho inherente a la interpolación lagrangiana el que el error no se comporte bien, en el sentido de que, cuando se toman nodos en número creciente en el intervalo -incluso igualmente espaciados- de manera que el tamaño de la partición inducida tienda a cero, el error no necesariamente tiende a cero. Ello sucede aunque la función interpolada sea de clase $C^{\infty}$ en $\left[ a,b\right] $. Más aún, Runge probó que si la función MATH es interpolada en los puntos igualmente espaciados $x_{i}=-5+ih,$ $i=0,\ldots,n$, donde $h=\frac{10}n$, mediante un polinomio MATH, entonces se verifica que MATH cuando $n\rightarrow\infty$.

Surge así, de manera natural, la siguiente cuestión: ya que en la expresión del error la derivada $n$-ésima no es controlable, en general, ?`sería posible encontrar un conjunto de nodos que minimicen el valor de la parte polinómica del error? Entre todas las elecciones posibles de nodos, los ceros del polinomio de Chebyshev de primer tipo de grado $n$ relativo al intervalo $\left[ a,b\right] $ minimizan la expresión indicada. Además, si la función interpolada es de clase $C^{1}$ y se consideran, para cada $n$, los nodos de dicho polinomio de Chebyshev, la sucesión de polinomios de interpolación converge, en la norma del máximo, a la función interpolada. Sin embargo, en general, la continuidad de la misma no es suficiente para asegurar la convergencia.

Fórmula de Newton para el problema de interpolación de Hermite generalizado

Nos podemos plantear la siguiente cuestión: ?`qué datos interpolaría un polinomio escrito en la forma de Newton si hacemos tender un nodo hacia otro? Por ejemplo, si en MATH, siendo MATH, hacemos tender $x_{1}$ hacia $x_{0}$, ?`qué ocurre? Si $f$ es derivable en $x_{0}$ se tiene MATH y, por continuidad, debemos definir MATH.

Análogamente, si $\ f$ es de clase $k$ y MATH y $x_{k}$ tiende hacia $x_{0}$, debemos definir MATH para que se extiendan por continuidad las propiedades de las diferencias divididas. Los datos que aparecerían son el valor de $f$ y el de sus primeras $k$ derivadas en el punto $x_{0}$. Por tanto, la definición MATH de las diferencias divididas en nodos arbitrarios permite obtener el polinomio de interpolación de Taylor a partir de la fórmula de Newton cuando todos los nodos coinciden en uno solo y, análogamente, el polinomio de interpolación correspondiente al problema de Hermite generalizado, cuando los nodos se agrupan de manera arbitraria. A continuación mostramos un ejemplo, con un nodo simple y otro doble, correspondiente a los datos MATH

La tabla de diferencias divididas se forma fácilmente: MATH Por tanto, el polinomio que los interpola es MATH

El paquete Mathematica contiene una orden capaz de calcular el interpolante polinómico correspondiente a datos tipo Hermite generalizado.Es

InterpolatingPolynomial[{{ nodo1,{dato11,dato12,...}, {nodo2,{dato21,dato22,...}}, .....}, variable ]

donde para cada uno de los nodos de interpolación hay que proporcionar una lista con los datos que se deben interpolar, así como indicar la variable del polinomio resultante.

Para el ejemplo precedente, el polinomio de interpolación, en la variable $x$ se calcula a partir de la orden MATH que es equivalente a MATH

Limitaciones de la interpolación polinómica

En las páginas anteriores se ha pretendido poner de manifiesto que, aunque simples de analizar y fáciles de usar, los métodos de interpolación referidos presentan problemas de divergencia que obligan a actuar con precaución. Una forma de proceder consiste en cambiar de espacio interpolador y pasar a considerar las denomi-nadas funciones spline polinómicas, de grado bajo, que garantizan un comportamiento satisfactorio del error de interpolación. Dedicaremos un capítulo a ese tema, que se centrará fundamentalmente en los splines cúbicos.

Otro problema que surge al tratar la interpolación polinómica es que, aunque la función interpolada sea monótona -creciente o decreciente-, el interpolante polinómico puede no serlo. Lo mismo puede afirmarse en lo que respecta a la concavidad, la convexidad, la positividad, etc. En relación a estos problemas, las curvas de Bézier juegan un papel muy destacado y serán estudiadas posteriormente.

En ocasiones es lógico usar espacios de funciones diferentes de los polinómicos y de los splines. Por ejemplo, si una función es de tipo periódico, puede ser interesante interpolarla en un espacio de funciones trigonométricas: si se conoce el valor de una función en $2n+1$ nodos MATH, existe un único polinomio trigonométrico, es decir generado por las funciones $1$, $\limfunc{sen}x$, $\cos x$, $\limfunc{sen}2x$, $\cos2x$, $\ldots$, $\limfunc{sen}nx$, $\cos nx$, que la interpola en dichos nodos. Es la interpolación trigonométrica. En otras ocasiones es interesante interpolar una función mediante cocientes de polinomios; es la interpolación racional. Mathematica dispone de órdenes para resolver algunos problemas tanto de interpolación trigonométrica como racional.