Capı́tulo 4 INTERPOLACIÓN. 4.1. 4.1.1. Introducción. Interpolación polinómica. Introducción A menudo, hemos de interpretar en forma más o menos precisa la interrelación entre 2 magnitudes; a saber, x e y, supuesto conocidos algunos datos sobre ellas. Ası́, más concretamente, si se conocen los puntos (o relaciones, o datos) del plano: {(xi , yi ); i = 0, 1, . . . , n}, cabe preguntarse si hay alguna función, y = φ(x), cuya curva pase por los puntos considerados. Figura 4.1: Datos de iterpolación y curva interpolante. También puede ocurrir que , de una función dada y = f (x), se conozcan algunos valores: f (x0 ), f (x1 ), . . . , f (xn ), y nos preguntamos, ¿cómo dar un valor aproximado de f en un ”x” entre los xi ? En ambos casos, una función que satisfaga los requisitos impuestos se llama función interpoladora o Interpolante. 1 2 Interpolación. No obstante, lo anterior hay que precisarlo mejor en el sentido siguiente: Dado el conjunto de datos, D = {(xi , yi ) i = 0, 1, . . . , n}, buscamos una función, p(x), tal que: Sea interpolante; es decir, p(xi ) = yi ∀i la función p(x) pertenezca a un espacio de funciones prefijado (p.e., polinómicas, racionales, splines, etc...). Fijado el espacio de funciones, hay dos cuestiones básicas: ¿Existe y es único el Interpolante?; si existe el Interpolante, ¿cómo construirlo? Ocupémonos, ahora, del problema de existencia y unicidad del interpolante para un caso clásico concreto (interpolación polinomial de Lagrange). Sean (xi , yi ) i = 0, 1, . . . , n; (n + 1)–puntos del plano y consideramos el problema siguiente: Hallar un polinomio, p(x), de grado ≤ n tal que p(xi ) = yi i = 0, 1, . . . , n (4.1) Si hay solución se llama polinomio de Interpolación o interpolante polinomial. Si notamos por Pn al espacio de polinomios de grado ≤ n y coeficientes reales; entonces, todo p(x) ∈ Pn se escribe como: p(x) = a0 + a1 x + · · · + an xn . Ası́, p(x) será solución del problema si, y sólo si, el S.E.L : 1 x0 x20 . . . xn0 a0 y0 1 x1 x2 . . . xn a1 y1 1 1 1 x2 x2 . . . xn a2 y2 (4.2) 2 2 = .. .. .. . . .. .. .. . . . . . . . 2 1 xn xn . . . xnn an yn admite solución. Llamando M a la matriz de coeficientes del sistema (4.2); se tiene que el problema de interpolación admite una única solución si, y sólo si, los nodos de interpolación son distintos. Para ello basta con probar que det(M) = Q i>j (xi − xj ) y, por lo tanto, det(M) 6= 0 ⇔ xi 6= xj . Extendiendo un poco más la idea de interpolación (problema de coincidencias) introducida se puede plantear el problema (interpolación polinomial clásica de Hermite) siguiente: Apuntes de J. Lorente 3 Hallar un polinomio de grado ≤ 2m + 1 verificando: p(xi ) = yi i = 0, 1, . . . , m p0 (xi ) = yi0 i = 0, 1, . . . , m 4.1.2. (4.3) Generalización del Problema. En los casos, anteriormente descritos, cabe destacar dos aspectos comunes: El número de datos es finito. El tipo de datos satisface las condiciones de ”linealidad”. Más aún, el espacio de funciones interpolantes es de dimensión igual al número de datos o condiciones. Ası́, un plantemiento general del problema serı́a: Interpolación Lineal Finita. Sean L1 , L2 , . . . , LN N–formas o aplicaciones lineales (definen los datos de interpolación), Li : F −→ R con F espacio vectorial real y V ⊂ F un subespacio de dimensión N . Para f ∈ F, se pretende: Hallar p ∈ V verificando: Li (p) = Li (f ) i = 1, . . . , N (4.4) o, equivalentemente, para valores reales, {z1 , z2 , . . . , zN }, dados; Hallar p ∈ V verificando: Li (p) = zi i = 1, . . . , N (4.5) Si el problema (4.4) ó (4.5) admite solución única en V se dice que es V –unisolvente. A continuación, damos una caracterización de la existencia y unicidad de solución (o unisolvencia) de (4.4) ó (4.5); a saber: Teorema 4.1 Sea V ⊂ F de dimensión N , f ∈ F, y L1 , L2 , . . . , LN N–formas lineales. Entonces, (4.4) es V –unisolvente ⇐⇒ Det(Li (ϕj ))i,j 6= 0 donde {ϕ1 , ϕ2 , . . . , ϕN } es una base cualquiera de V . 4 Interpolación. Demostración: Si {ϕ1 , ϕ2 , . . . , ϕN } es base para V se tendrá que: p= N X ai ϕ i ∀p ∈ V i=1 por lo que resolver el problema (4.4) equivale a encontrar las ctes ai i = 1, . . . , N solución del S.E.L.: a1 · L1 (ϕ1 ) + a2 · L1 (ϕ2 ) + · · · + aN · L1 (ϕN ) = L1 (f ) a1 · L2 (ϕ1 ) + a2 · L2 (ϕ2 ) + · · · + aN · L2 (ϕN ) = L2 (f ) .. . a1 · LN (ϕ1 ) + a2 · LN (ϕ2 ) + · · · + aN · LN (ϕN ) = LN (f ) Ası́, dado que la matriz de coeficientes del S.E.L. es L1 (ϕ1 ) L1 (ϕ2 ) L2 (ϕ1 ) L2 (ϕ2 ) G = (Li (ϕj ))i,j = .. .. . . LN (ϕ1 ) LN (ϕ2 ) · · · L1 (ϕN ) · · · L2 (ϕN ) .. .. . . · · · LN (ϕN ) (llamada matriz de Gram), se tiene trivialmente la caracterización dada en el teorema. C.Q.D. Observación.- El teorema anterior se puede interpretar de forma idéntica si usamos el problema (4.5) sin más que intercambiar Li (f ) con zi . Apuntes de J. Lorente 4.2. 5 Problemas habituales: Lagrange, Taylor y Hermite Veamos como se pueden obtener los problemas clásicos usuales desde un planteamiento particular del problema general (4.4). 1. Interpolación Polinomial Clásica o Interpolación Lagrangiana. Se considera el espacio F =espacio de funciones valuadas en, al menos, un conjunto finito de puntos xi (que llamaremos nodos de interpolación). Tomamos V = Pn y definimos las (N = n + 1)–formas lineales: Li : F −→ R con Li (f ) = f (xi ) i = 0, . . . , n y los llamamos datos de tipo Lagrange. Ası́, el problema resultante es el dado en (4.1). Dicho problema es unisolvente en Pn ⇐⇒ la matriz de Gram tiene determinante no nulo; es decir, Det(ϕj (xi ))i,j 6= 0 donde {ϕj = xj j = 0, . . . , n} es la base canónica de Pn . Es fácil comprobar que la matriz de Gram es la que aparece en (4.2) y, por lo tanto el problema tiene solución única si y, sólo si, los nodos son distintos entre si. 2. Interpolación Taylor. Supongamos que son conocidos el valor y derivadas sucesivas de f (x) en un nodo x0 , entonces, tenemos las formas lineales (datos tipo Taylor) siguientes: L0 (f ) = f (x0 ), L1 (f ) = f 0 (x0 ), . . . , Ln (f ) = f n) (x0 ) y, as, el problema de Interpolación Taylor consiste en: Hallar T (x) ∈ Pn / Lk (T ) = Lk (f ) es decir, T k) (x0 ) = f k) (x0 ) k = 0, 1, . . . , n (4.6) k = 0, 1, . . . , n El problema (4.6) tiene solución única si la matriz de Gram asociada tiene determinante no nulo para alguna base del espacio interpolante (V = Pn ). Si elegimos como base de trabajo, {ϕj } = {1, x − x0 , (x − x0 )2 , . . . , (x − x0 )n } es fácil comprobar que la matriz de Gram es: G= 1 0 0 .. . 0 1 0 .. . 0 0 2 .. . 0 0 ··· ··· ··· ··· ... 0 0 0 0 0 n! 6 Interpolación. Y, por lo tanto, det(G) 6= 0. Luego, el problema (4.6) tiene una única solución. 3. Interpolación Clásica de Hermite. Sean x0 , x1 , . . . , xm nodos distintos de interpolación y se toman F = C 1 ([a, b]), P2m+1 y formas lineales (datos de tipo Hermite): V = Lr : F −→ R f 7−→ Lr (f ) = f (xi ) r = 2i i = 0, . . . , m f 0 (xi ) r = 2i + 1 i = 0, . . . , m Ahora, escribiendo el problema general de interpolacin (4.4) con estos datos y espacio particular V se obtiene el problema: Hallar un polinomio p(x) ∈ P2m+1 verificando: Lr (p) = p(xi ) = Lr (f ) = f (xi ) = yi r = 2i Lr (p) = p0 (xi ) = Lr (f ) = f 0 (xi ) = yi0 r = 2i + 1 con i = 0, . . . , m que es el mismo problema que se dió en (4.3). En este caso, la matriz de Gram asociada a la base canónica de P2m+1 es: G= 1 x0 x20 0 1 2x0 1 x1 x21 0 1 2x1 .. .. ... . . 1 xm x2m 0 1 2xm ... x2m+1 0 . . . (2m + 1)x2m 0 ... x2m+1 1 . . . (2m + 1)x2m 1 .. . ... x2m+1 m . . . (2m + 1)x2m m Además det(G) 6= 0 ⇐⇒ xi 6= xj ∀i 6= j Puede probarse que det(G) = Y (xi − xj )4 i>j con lo que se tiene la afirmación dada y el problema tendrá una únicica solución. Apuntes de J. Lorente 4.3. 4.3.1. 7 Métodos de Interpolación: Lagrange y Newton. Método de Lagrange Si bien, la técnica que se presenta se desarrolló desde la resolución del problema de Interpolación polinomial clásica, aquı́ la consideraremos para el caso general y posteriormente se aplicará a los casos más conocidos; a saber, la Interpolación lagrangiana, la de Taylor, y la interpolación clásica de Hermite. Problema General de Interpolación Sea f ∈ F y L1 , L2 , . . . , LN N–formas lineales sobre F. El problema de hallar p ∈ V (subespacio de dim V = N ) verificando: Li (p) = Li (f ) admite solución única ⇐⇒ det (Li (ϕj ))i,j 6= 0 i = 1, 2, . . . , N siendo {ϕ1 , ϕ2 , . . . , ϕN } una base de V . Ahora bien, supongamos construida una base de V , {Φ1 , Φ2 , . . . , ΦN } , dual respecto de las formas lineales dadas; es decir, 1 i=j i = 1, 2, . . . , N. Li (Φj ) = δij = 0 i 6= j Entonces, la única solución del Problema general de interpolación se puede expresar como: p = L1 (f )Φ1 + L2 (f )Φ2 + · · · + LN (f )ΦN (4.7) que se denomina Fórmula de Lagrange para el Problema General de Interpolación Lineal Finita (P.G.I.L.F.). Observaciones: La fórmula (4.7) se escribe, para el problema (4.5), como: p = z1 Φ1 + z2 Φ2 + · · · + zN ΦN (4.8) Si el P.G.I.L.F. es unisolvente, es evidente que se pueden construir las Φj y recı́procamente. Además, una base de este tipo se llama Base de Lagrange . 8 Interpolación. Por tanto, de lo anterior puede decirse que el método de Lagrange consiste en la resolución inicial de N–problemas canónicos (un dato con valor 1 y el resto 0), y desde ellos poder resolver cualquier otro (datos con valores arbitrarios) sin más que utilizar la Fórmula de Lagrange. Interpolación Polinomial Clásica (I. Lagrangiana) Sea D = {(xi , yi ) i = 0, 1, . . . , n} el conjunto de datos de interpolación con nodos, xi , distintos. Vamos a usar la idea anteriormente expuesta al Problema: Hallar p(x) ∈ Pn / p(xi ) = yi i = 0, 1, . . . , n (4.9) Ası́, construimos una Base de Lagrange en Pn ; es decir, sean l0 (x), l1 (x), . . . , ln (x) n + 1– polinomios de grado n verificando: li (xj ) = 1 i=j i = 0, 1, . . . , n (4.10) 0 i 6= j Por tanto, desde (4.10) se deduce que cada li (x) es un polinomio de grado n que se anula en n–nodos. Más concretamente, n Y li (x) = Ai (x − xj ) j=0 j6=i donde Ai se obtiene sin más que imponer: li (xi ) = 1. Ası́, n Y x − xj li (x) = ( ) x − x i j j=0 i = 0, 1, . . . , n (4.11) j6=i Tales polinomios son denominados, a menudo, polinomios de Lagrange. Y, desde aquı́, es claro que la solución del problema (4.9) es: p(x) = y0 l0 (x) + y1 l1 (x) + · · · + yn ln (x) (4.12) La expresión (4.12) recibe el nombre de Fórmula de Lagrange para el interpolante. Apuntes de J. Lorente 9 Interpolación Polinomial de Taylor Consideramos el problema de interpolación siguiente: Hallar siendo T (x) ∈ Pn / T k) (x0 ) = f k) (x0 ) k = 0, 1, . . . , n (4.13) f ∈ C n ([x0 − r, x0 + r]) Es fácil obtener la base de Lagrange, {T0 (x), T1 (x), . . . , Tn (x)}, asociada al problema (4.13); a saber: (x − x0 )j j = 0, 1, . . . , n Tj (x) = j! Por lo tanto, la Fórmula de Lagrange para el interpolante será: T (x) = f (x0 )T0 (x) + f 0 (x0 )T1 (x) + · · · + f n) (x0 )Tn (x)= (4.14) 0 = f (x0 ) + f (x0 )(x − x0 ) + · · · + f n) (x0 ) (x n! − x0 ) n Interpolación Clásica de Hermite Pretendemos, ahora obtener la Fórmula de Lagrange para el problema: Hallar H(x) ∈ P2m+1 / H(xi ) = f (xi ) 0 i = 0, 1, . . . , m (4.15) 0 H (xi ) = f (xi ) Para el problema (4.15) la obtención de una base de Lagrange es algo más compleja; a saber: sean Hi (x) y Ki (x) con i = 0, 1, . . . , m polinomios de grado 2m + 1 verificando: Hi (xj ) = δij H 0 i (xj ) = 0 j = 0, 1, . . . , m i = 0, 1, . . . , m 0 Ki (xj ) = 0 K i (xj ) = δij j = 0, 1, . . . , m Ası́, teniendo en cuenta las caracterı́sticas, respecto a los ceros, de Hi (x) y Ki (x) se pueden escribir de la forma: Hi (x) = (Ai x + Bi ) · (li (x))2 i = 0, 1, . . . , m 2 Ki (x) = Ci · (x − xi ) · (li (x)) 10 Interpolación. donde l0 (x), l1 (x), . . . , lm (x) son los polinomios clásicos de Lagrange asociados a los nodos x0 , x1 , . . . , xm . Ahora, imponiendo las condiciones de interpolación que restan, en cada caso; se obtiene: Hi (xi ) = 1 =⇒ Hi (x) = [1 − 2l0 i (xi )(x − xi )] · (li (x))2 i = 0, 1, . . . , m H 0 i (xi ) = 0 y, análogamente: K 0 i (xi ) = 1 =⇒ Ki (x) = (x − xi ) · (li (x))2 i = 0, 1, . . . , m Con esto se deduce la Fórmula de Lagrange para el interpolante de Hermite: H(x) = f (x0 )H0 (x) + f 0 (x0 )K0 (x) + · · · + f (xm )Hm (x) + f 0 (xm )Km (x) 4.3.2. (4.16) Método de Newton. El objetivo del método de Newton es la obtención del interpolante de una forma recursiva. A tal fin, se intenta encontrar la relación entre el interpolante para k + 1-datos y el interpolante para k-datos de ellos. Vemos como se lleva esta idea a la práctica según el problema a resolver. Interpolación Polinomial Clásica. Pretendemos, aquı́, resolver el problema (4.9). Sea pk (x) el polinomio de grado ≤ k interpolante para los datos, D = {(xi , yi ) 0, 1, . . . , k}, entonces: pk+1 (x) − pk (x) ∈ Pk+1 i = y se anula en los nodos, x0 , x1 , . . . , xk ; por consiguiente, pk+1 (x) − pk (x) = Ak+1 · (x − x0 ) · · · (x − xk ) con Ak+1 = C te Imponiendo la condición pk+1 (xk+1 ) = yk+1 se obtiene el valor de Ak+1 ; a saber: Ak+1 = yk+1 − pk (xk+1 ) (xk+1 − x0 ) · · · (xk+1 − xk ) Desde aquı́, es trivial que el polinomio buscado (solución de (4.9) ) es: p(x) = pn (x) = A0 + A1 · (x − x0 ) + · · · + An · (x − x0 ) · (x − x1 ) · · · (x − xn−1 ) (4.17) Apuntes de J. Lorente 11 La expresión (4.17) recibe el nombre de Fórmula de Newton para la interpolación lagrangiana. No obstante, el cálculo de las ctes. Ak puede simplificarse. Para ello, debido a la dependencia respecto de los nodos correspondientes, notamos: Ai = f [x0 , x1 , . . . , xi ] y la llamamos Diferencia Dividida de orden i de f en los nodos x0 , x1 , . . . , xi (D.D. orden i). De su cálculo nos ocupamos en la sección siguiente. 12 Interpolación. 4.4. Diferencias Divididas. Diferencias Finitas. En primer lugar, nuestro objetivo es obtener una relación de recurrencia, apropiada, para el cálculo de las D.D. en general, y de las ctes. Ai en particular para la obtención del polinomio de interpolación para el problema de Lagrange y el problema de Hermite. Propiedades 1. Para cada k ≥ 0, se tiene: f [x0 , x1 , . . . , xk ] = k X Q i=0 f (xi ) j6=i (xi − xj ) 2. Para cada permutación, (i0 , i1 , . . . , ik ), de los ı́ndices {0, 1, . . . , k} se verifica: f [xi0 , xi1 , . . . , xik ] = f [x0 , x1 , . . . , xk ] Demostración: 1. Sea pk (x) el polinomio de interpolación, en la forma de Lagrange, para la función f (x) en los nodos x0 , x1 , . . . , xk =⇒ pk (x) = k X f (xi ) · li (x) con li (x) = i=0 k Y x − xj j=0 xi − xj j6=i entonces, el coeficiente de xk en dicho polinomio es: k X Q i=0 f (xi ) j6=i (xi − xj ) Por otra parte, la forma de Newton para pk (x) es: pk (x) = A0 + A1 · (x − x0 ) + · · · + Ak · (x − x0 ) · (x − x1 ) · · · (x − xk−1 ) de donde, puesto que el interpolante es único, se tiene: f [x0 , x1 , . . . , xk ] = Ak = k X Q i=0 C.Q.D. 2. Basta utilizar la propiedad 1 para verificar 2. f (xi ) j6=i (xi − xj ) Apuntes de J. Lorente 13 Ası́, estamos en disposición de obtener la relación de recurrencia para las D.D. de órdenes sucesivos. Esta se expresa en el teorema siguiente: Teorema 4.2 Sea f ∈ C([a, b]) y {xi }i ⊂ [a, b], entonces: 1. f [xj ] = f (xj ) 2. Para cada k ≥ 1 se verifica: f [x0 , x1 , . . . , xk ] = f [x1 ,...,xk ]−f [x0 ,...,xk−1 ] xk −x0 Con la relación de recurrencia anterior, se puede obtener una tabla de D.D. de órdenes 1, 2, ..., k, ... como sigue: xi f (xi ) o yi D.D. 1 D.D. 2 D.D. 3 x0 f (x0 ) - - - x1 f (x1 ) f [x0 , x1 ] - - x2 f (x2 ) f [x1 , x2 ] f [x0 , x1 , x2 ] x3 f (x3 ) f [x2 , x3 ] f [x1 , x2 , x3 ] f [x0 , x1 , x2 , x3 ] .. . .. . .. . .. . - .. . Entonces, calculada la tabla, se obtiene la formula de interpolación de Newton: p(x) = f (x0 ) + f [x0 , x1 ] · (x − x0 ) + · · · + f [x0 , . . . , xn ] · (x − x0 ) · · · (x − xn−1 ) (4.18) Esta idea es extensible al problema de Hermite y al de Taylor. Para ello es de gran interés la propiedad siguiente: Proposición 4.1 Si f ∈ C n ([a, b]), entonces f [x0 , x1 , . . . , xn ] = donde ξ es un nodo entre los xi . f n) (ξ) n! 14 Interpolación. Demostración. En efecto, consideramos el polinomio interpolante en los nodos x0 , x1 , . . . , xn (supuestos distintos) para f entonces, f (x) − p(x) se anulará en n + 1–nodos, y usando el teorema de Rolle deducimos que (f − p)n) (x) se anula, al menos, una vez; es decir: ∃ξ / f n) (ξ) − pn) (ξ) = 0 =⇒ f [x0 , x1 , . . . , xn ] = f n) (ξ) n! C.Q.D. Esta propiedad permite, sin mucha dificultad, extender la noción de D.D. al caso en que sus argumentos puedan ser repetidos. Más concretamente: Definición 4.1 Sean los nodos x0 ≤ x1 ≤ · · · ≤ xk en un intervalo [a, b] donde f es suficientemente derivable, entonces: k) f (x ) si x0 = xk k! 0 f [x0 , x1 , . . . , xk ] = f [x1 ,...,xk ]−f [x0 ,...,xk−1 ] si x 6= x 0 xk −x0 k Ası́, la solución del problema de Hermite (4.15) adoptarı́a la forma de Newton siguiente: H(x) = f (x0 ) + f [x0 , x0 ] · (x − x0 ) + f [x0 , x0 , x1 ] · (x − x0 )2 + · · · + (4.19) 2 2 +f [x0 , x0 , . . . , xn , xn ] · (x − x0 ) · · · (x − xn−1 ) · (x − xn ) donde las D.D. consideradas se obtienen desde la tabla: xi f (xi ) o yi D.D. 1 D.D. 2 D.D. 3 x0 f (x0 ) - - - x0 f (x0 ) f 0 (x0 ) - - x1 f (x1 ) x1 f (x1 ) f [x0 , x1 ] f [x0 , x0 , x1 ] f 0 (x1 ) - f [x0 , x1 , x1 ] f [x0 , x0 , x1 , x1 ] Ejemplo: Calculemos el polinomio de gardo ≤ 5, interpolante de Hermite, verifivando: p(0) = 1 p(1) = −1 p(3) = 2 p0 (0) = 0 p0 (1) = 5 p0 (3) = 2 Apuntes de J. Lorente 15 Para ello usamos la tabla de D.D. del tipo anterior que da lugar a: xi f (xi ) o yi D.D. 1 D.D. 2 D.D. 3 D.D. 4 D.D. 5 0 0 1 1 3 3 1 1 -1 -1 2 2 0 -2 5 3 2 2 -2 7 - 74 9 - 1 4 35 12 - 1 143 36 47 36 Por tanto el interpolante de Hermite es: H(x) = 1 − 2x2 + 9x2 (x − 1) − 143 2 x (x 36 − 1)2 + 95 2 x (x 54 La gráfica del interpolante se da en la Figura 4.2. Figura 4.2: Interpolante de Hermite − 1)2 (x − 3) 95 54 16 Interpolación. 4.4.1. Diferencias Finitas: Fórmulas de Newton Progresiva y Regresiva. Nos preguntamos, ahora, ¿cómo puede expresarse el polinomio de interpolación para datos lagrangianos; es decir, p (xi ) = f (xi ) = yi cuando los nodos están igualmente espaciados?. Supongamos que los nodos son de la forma: a = x0 < x1 < · · · < xn = b con xi = a + ih, i = ; entonces, podemos relacionar las diferencias divididas de f (x) con las 0, . . . , n y h = b−a n llamadas Diferencias Finitas (D.F.) de f (x). Pero, ¿cómo se definen?. Definición 4.2 Llamamos D.F. progresiva de f de orden k > 0 en un punto x, al valor: f (x) si k = 0 k f (x + h) − f (x) si k = 1 ∆ f (x) = ∆ ∆k−1 f (x) si k > 1 Si usamos como punto un nodo de interpolación, entonces las D.F. progresivas serán: ∆0 yi = yi , i = 0, 1, . . . , n ∆yi = yi+1 − yi , i = 0, . . . , n − 1 k k−1 ∆ yi = ∆ ∆ yi , i = 0, . . . , n − k De forma similar pueden definirse las D.F. regresivas para f o datos; a saber, Definición 4.3 Llamamos D.F. regresiva de f de orden k > 0 en un punto x, al valor: ∇0 f (x) = f (x) ∇f (x) = f (x) − f (x − h) ∇k f (x) = ∇ ∇k−1 f (x) o bien, ∇0 yi = yi , i = 0, 1, . . . , n ∇yi = yi − yi−1 , i = 1, . . . , n ∇k yi = ∇ ∇k−1 yi , i = k, . . . , n Ahora, con esta nomenclatura, es fácil comprobar la propiedad siguiente: Proposición 4.2 Dada f evaluada en nodos igualmente espaciados, xi = a + ih, i = 0, . . . n , entonces: 1. f [x0 , x1 , . . . , xk ] = ∆ k y0 , k!hk 2. f [xn , xn−1 , . . . , xn−k ] = k = 0, . . . , n (D.D. ascendentes mediante D.F. progresivas) ∇ k yn , k!hk k = 0, . . . , n (D.D. descendentes mediante D.F. regresivas). Por lo tanto, desde las dos propiedades anteriores, el polinomio de interpolación en la forma de Newton admite las representaciones que especificamos a continuación. Apuntes de J. Lorente 17 Fórmula de Newton Progresiva. Esta la obtenemos usando la fórmula de Newton clásica para el interpolante de Lagrange; es decir, PN (x) = f [x0 ] + f [x0 , x1 ] (x − x0 ) + · · · + f [x0 , x1 , . . . , xn ] (x − x0 ) (x − x1 ) · · · (x − xn−1 ) Esta expresión quedarı́a reducida a la siguiente: PN (x) = ∆0 y0 + ∆y0 ∆n y0 (x − x0 ) + · · · + (x − x0 ) (x − x1 ) · · · (x − xn−1 ) h n!hn pero si realizamos el cambio de variable: s= x − xi x − (x0 + ih) x − x0 ⇒ = =s−i h h h entonces, s(s−1) 2 PN (s) = ∆0 y + · · · + ∆n y0 s(s−1)···(s−n+1) = 0 + ∆y 0 s + ∆ y0 2! n! n P s = ∆k y0 k k=0 (4.20) Fórmula de Newton Regresiva. Si, en el método de interpolación de Newton, usamos un proceso descendente; es decir, desde el nodo xn hasta el nodo x0 tendrı́amos la Fórmula de Newton siguiente: PN (x) = f [xn ] + f [xn , xn−1 ] (x − xn ) + · · · + f [xn , xn−1 , . . . , x0 ] (x − xn ) (x − xn−1 ) · · · (x − x1 ) y, desde aquı́, de forma similar pero con las diferencias regresivas llegamos a la expresión: ∇yn ∇n yn (x − xn ) + · · · + (x − xn ) (x − xn−1 ) · · · (x − x1 ) h n!hn Como antes, si hacemos el cambio: PN (x) = ∇0 yn + t= xn − x xn−i − x (xn − ih) − x ⇒ = =t−i h h h tenemos la expresión: t(t−1) 2 P (t) = ∇0 yn − ∇y + · · · + (−1)n ∇n yn t(t−1)···(t−n+1) = n t +∇ yn 2! n! n P t = (−1)k ∇k yn k k=0 (4.21) 18 Interpolación. Observación.- En las expresiones (4.20) y (4.21) he usado el combinatorio formal: w = w(w−1)···(w−k+1) con w = s ó w = t. k! k EJEMPLO Calculamos la tabla respectivas de diferencias finitas progresivas y regresivas para los datos: {(−2, 3) , (0, −1) , (2, 3) , (4, 5)} y damos las respectivas expresiones del interpolante. Solución: Las diferencias finitas (progresivas y regresivas) son: ∆k y0 & yi = ∆0 yi ∆yi ∆2 yi ∆3 yi ↓ ↓ ↓ ↓ 3 -4 −1 8 4 3 -10 -2 2 5 % ∇k yn ↑ ↑ ↑ ↑ yi = ∇0 yi ∇yi ∇2 yi ∇3 yi Por lo tanto, los respectivos polinomios de interpolación son: FORMA PROGRESIVA (coeficientes en azul-morado): p(s) = 3 − 4s + 8 s(s−1) − 10 s(s−1)(s−2) 2 6 donde s = x+2 2 (pues h = 2, y x0 = −2) FORMA REGRESIVA (coeficientes en rojo-morado): p(s) = 5 − 2t − 2 t(t−1) + 10 t(t−1)(t−2) 2 6 donde t = 4−x 2 (pues h = 2, y x3 = 4) Apuntes de J. Lorente 4.4.2. 19 Interpolación por resurrencia Aquı́ se pretende obtener de forma recursiva el valor del polinomio de interepolación en ”x”desde una modificación adecuada en la tabla de diferencias divididas. El procedimeiento está basado en el resultado siguiente (que se atribuye a Aitken). Lema general de Aitken Sean PSi (x) y PSj (x) sendos polinomios interpolantes para los conjuntos de nodos respectivos Si y Sj . Supongamos que ambos conjuntos difieren, exactamente, en un nodo; a saber, xi ∈ Si − Sj y xj ∈ Sj − Si . Entonces, el interpolante para la unión de nodos, S = Si ∪ Sj es: PS (x) = (x − xj )PSi (x) − (x − xi )PSj (x) xi − xj La demostración es muy simple, pues basta con evaluar la expresión propuesta en los nodos de interpolación de S, xr , para los casos: r 6= i ó j r=i r=j y comprobar que el resultado es el valor yr respectivo. En particular, si Pi,i+1,...,i+k−1 (x) y Pi+1,...,i+k−1,i+k (x) son los polinomios de interpolación en los nodos {xi , xi+1 , . . . , xi+k−1 } y {xi+1 , . . . , xi+k−1 , xi+k } respectivamente. Entonces, el interpolante para los nodos {xi , xi+1 , . . . , xi+k−1 , xi+k } es: Pi,i+1,...,i+k−1,i+k (x) = (x − xi )Pi+1,...,i+k−1,i+k (x) − (x − xi+k )Pi,i+1,...,i+k−1 (x) xi+k − xi Ahora, desde este resultado podemos generar una tabla de interpolantes susesivos para 1 nodo, 2 nodos, , hasta el total de nodos con el objetivo de conseguir el valor del polinomio de interpolación en ”x”. Dependiendo de la estrategia elegida aparecen dos tablas diferenciadas: Estrategia de Neville Ésta tiene el mismo procedimiento de cálculo que las diferencias divididas salvo por los factores x − xr y conduce a la tabla siguiente: x − xi x − x0 x − x1 x − x2 x − x3 · xi x0 x1 x2 x3 · yi y0 y1 y2 y3 = Pi (x) = P0 (x) = P1 (x) = P2 (x) = P3 (x) · P grado 1 P grado 2 P grado 3 P01 (x) P12 (x) P23 (x) · P012 (x) P123 (x) · P0123 (x) · 20 Interpolación. Estrategia de Aitken Esta estrategia conduce a la tabla siguiente: x − xi x − x0 x − x1 x − x2 x − x3 · xi x0 x1 x2 x3 · yi y0 y1 y2 y3 = Pi (x) = P0 (x) = P1 (x) = P2 (x) = P3 (x) · P grado 1 P grado 2 P grado 3 P01 (x) P02 (x) P03 (x) · P012 (x) P013 (x) · P0123 (x) · Por último, observe que ambas estrategias tiene los mismos valores en la diagonal de las tablas respectivas. As, el valor de salida de ambas estrategias es: p(x) = P0,1,...,n (x) Ejemplo. Calcula el valor del polinomio de interpolación en x = 3 para los datos: {(−1, 0), (2, −1), (5, 2), (6, 5)} Solución. • Si utilizamos la tabla de Neville, se obtiene: x − xi xi yi = grad. 0 grado 1 grado 2 grado 3 4 −1 0 1 2 −1 − 43 −2 5 2 0 − 49 −3 6 5 −4 −1 − 16 21 Desde aquı́, el valor buscado es: p(3) = P0123 (3) = − 16 21 • Si usamos la estrategia de Aitken, obtenemos la tabla de valores: x − xi xi yi = grad. 0 grado 1 grado 2 grado 3 4 −1 0 − − − 4 1 2 −1 −3 − − 4 4 −2 5 2 −9 − 3 20 2 −3 6 5 −7 − 16 7 21 . De nuevo, el valor del interpolante es: p(3) = P0123 (3) = − 16 21 Ejercicio. Compruebe, usando la fórmula de interpolación de Newton, que el valor obtenido mediante las tablas anteriores es el correcto. Apuntes de J. Lorente 4.5. 21 Error en la Interpolación Polinomial. Cuando calculamos el polinomio de interpoalción para el problema de Lagrange o Hermite, en general, estamos dando una estimación del modelo exacto por lo que se comete un error que pretendemos analizar de forma escueta en esta sección. Lo hacemos para los dos problemas más clásicos: Interpolación polinomial lagrangiana y de Hermite clásica. Ası́ supongamos que los datos vienen de la función f (x) y sea p(x) el interpolante de f (x) entonces llamamos error de interpolación en ”x” al valor: E(x) = f (x) − p(x) En esta situación, nos preguntamos si podemos dar una estimación manejable de este valor. Veámoslo en los casos comentados anteriormente. Sea pn (x) el interpolante de f (x) en los nodos x0 , x1 , . . . , xn , entonces, el error lo escribimos como En (x) = f (x) − pn (x). Si usamos la fórmula de Newuton, tenemos que: pn (x) = f (x0 ) + f [x0 , x1 ] · (x − x0 ) + · · · + f [x0 , . . . , xn ] · (x − x0 ) · · · (x − xn−1 ) y también, si agregamos un nuevo nodo de interpolación, xn+1 = x b tendremos la expresión formal de Newton: pn+1 (x; x b) = pn (x) + f [x0 , . . . , xn , x b] · (x − x0 ) · · · (x − xn−1 ) · (x − xn ) Pues bien, si suponemos que el nodo elegido es precisamente el nodo genérico x b = x, es evidente que la expresión anterior es una forma de escribir la función f (x); es decir, f (x) ≡ pn+1 (x; x) = pn (x) + f [x0 , . . . , xn , x] · (x − x0 ) · · · (x − xn−1 ) · (x − xn ) Por lo tanto, el error de interpolación polinomial es: En (x) = f (x) − pn (x) = f [x0 , . . . , xn , x] · (x − x0 ) · · · (x − xn−1 ) · (x − xn ) Si usamos la propiedad que relaciona las diferencias difididas con la derivabilidad de una función podemos obtener el resultado siguiente: Teorema 4.3 Sea f ∈ C n+1 ([a, b]) y sea pn (x) el polinomio de interpolación de f en los nodos xi i = 0, 1, . . . , n del intervalo [a, b]. Entonces, 1. En (x) = f (x) − pn (x) = f n+1) (ξx ) Π(x) (n+1)! donde Π(x) = (x − x0 ) · (x − x1 ) · · · (x − xn ) = n Q (x − xi ) i=0 2. Una estimación del error es la siguiente: |En (x)| ≤ para f n+1) (x) en el intervalo [a, b]. M (n+1)! |Π(x)| donde M es una cota 22 Interpolación. Ası́, podemos observad que el error de interpolación puede estar controlado para funciones suaves pero el término que depende de los nodos en una forma especial puede presentar grandes oscilaciones debido a tal propiedad intrı́nsica de los polinomios de grado elevado. Nos preguntamos, pues, si interpolamos una función dada en un intervalo [a, b] mediante el aumento sucesivo de nodos de interpolación ¿será más pequeño el error?; es decir, ¿convergerá la sucesión de polinomios de interpolación a la función cuando n → ∞? La respuesta, en general, es negativa, a menos que los nodos sean elegidos de forma especial. Observe esto con el ejemplo de la Figura 4.3. Figura 4.3: función e interpolantes p2 (x), p6 (x) y p10 (x) La función considerada es: f (x) = igualmente espaciados: {−5, 0, 5}; {−5, − 1 1+x2 en el intervalo ]-5, 5[ y nodos de interpolación 10 20 20 10 , − , 0, , , 5}; {−5, −4, −3, −2, −1, 0, 1, 2, 3, 4, 5} 6 6 6 6 En estas gráficas puede apreciarse que el error de interpolación no disminuye con el grado sino que es mayor, por lo que esta distribución de nodos conduce a una sucesión de polinomios divergente. Nos preguntamos, pues, ¿es posible elegir unos nodos óptimos respecto del error de interpolación? En términos más precisos, ¿existen nodos xi en el intervalo de interpolación para los que máx {|Π(x)|} sea mı́nimo? x∈[a,b] La respuesta a esta cuestión está en las propiedades de los llamados polinomios de Chebyshev cuyo análisis detallado se hace en el capı́tulo 5. Tales polinomios vienen definidos, en el intervalo [-1,1] mediante la relación de recurrencia: T0 = 1, T1 = x, Tn+1 = 2xTn − Tn−1 n ≥ 1 Ası́ por ejemplo los cinco primeros polinomios de Chebyshev son: Apuntes de J. Lorente 23 T0 = 1, T1 = x, T2 = 2x2 − 1, T3 = 4x3 − 3x, T4 = 8x4 − x2 + 1 Pues bien, estos polinomios tienen propiedades muy interesantes en relación al error de interpolación. 1. p(x) = Tn+1 2n es un polinomio de grado n+1 y coeficiente lı́der 1 que cumple: 1 |Tn+1 (x)| = n kp(x)k∞ = máx n x∈[−1,1] 2 2 2. para cualquier polinomio de grado n+1 y coeficiente lı́der 1, q(x), se cumple: kq(x)k∞ ≥ 1 2n 3. El polinomio de Chebyshev, Tn+1 , tiene exactamente n+1 ceros distintos en el intervalo ] − 1, 1[ que vienen dados por la igualdad: 2i + 1 π xi = cos · i = 0, 1, . . . , n n+1 2 (esta igualdad proviene de la igualdad siguiente: Tn+1 (x) = cos ((n + 1)θ), con θ = arc cos(x)) Como consecuencia de estas dos propiedades podemos asegurar que los mejores n + 1 nodos de interpolación para una función en el intervalo [-1,1] serı́an los ceros del polinomio de Chebyscuyo valor máximo en el intervalo [-1,1] hev Tn+1 pues, en tal caso, el polinomio Π(x) serı́a Tn+1 2n es lo más pequeo posible y por tanto el error de interpolación serı́a óptimo. Pero, ¿qué ocurre si deseamos interpolar una función suave en un intervalo [a, b] 6= [−1, 1]? Pues, lo único que hay que hacer es un cambio de variable adecuado que transforme los nodos del intervalo [-1,1] en nodos del intervalo [a,b]. Con el cambio de variable se tienen los nodos en [a, b]: b−a 2i + 1 π xi = a + 1 + cos · i = 0, 1, . . . , n 2 n+1 2 En la tabla siguiente se dan los nodos óptimos para n=2, 3, 4 en intervalos diferentes: 2 3 4 [−1, 1] {−0,866025, 0., 0,866025} {−0,92388, −0,382683, 0,382683, 0,92388} {−0,951057, −0,587785, 0., 0,587785, 0,951057} [−5, 5] {−4,33013, 0., 4,33013} {−4,6194, −1,91342, 1,91342, 4,6194} {−4,75528, −2,93893, 0., 2,93893, 4,75528} Observe y compare el comportamiento de los interpolantes en las Figuras 4.3 y 4.4. 24 Interpolación. Figura 4.4: Interpolantes con nodos óptimos para f (x) = 1 1+x2 en [−5, 5]
Puede agregar este documento a su colección de estudio (s)
Iniciar sesión Disponible sólo para usuarios autorizadosPuede agregar este documento a su lista guardada
Iniciar sesión Disponible sólo para usuarios autorizados(Para quejas, use otra forma )