ULPGC Tutorial de Análisis Numérico Interpolación : Fórmulas de Newton en diferencias finitas Informática Página Web Página de Inicio Jesús Garcı́a Quesada Departamento de Informática y Sistemas Contenido Universidad de Las Palmas de Gran Canaria 35017 Campus de Tafira, España JJ II J I Email : [email protected] 2 de Octubre de 2000, v0.3 Página 1 de 25 Volver Pantalla completa Cerrar Salir ULPGC Índice General 1 NEWTON EN DIFERENCIAS FINITAS 1.1 NEWTON EN DIFERENCIAS PROGRESIVAS . . . . . . . . . . . . . . 1.2 NEWTON EN DIFERENCIAS REGRESIVAS . . . . . . . . . . . . . . . 3 8 12 Informática 2 PROBLEMAS 17 Página Web Soluciones a los Problemas 20 Página de Inicio Contenido JJ II J I Página 2 de 25 Volver Pantalla completa Cerrar Salir ULPGC 1. NEWTON EN DIFERENCIAS FINITAS En el caso particular de que las abcisas de los nodos de interpolación sean equidistantes la expresión del polinomio de interpolación de Newton en diferencias divididas adopta otras formas que se han usado mucho, la fórmula en diferencias progresivas y la fórmula en diferencias regresivas. Antes de desarrollarlas necesitamos de algunas definiciones previas. Dado un conjunto de puntos (xi , yi ), 0 6 i 6 n donde yi = f (xi ) se define diferencia progresiva de orden 1 en yk y se denota por ∆yk a Informática Página Web Página de Inicio ∆yk = f (xk + h) − f (xk ) = f (xk+1 − f (xk ) = yk+1 − yk = ∆1 yk Contenido y diferencia regresiva de orden 1 en yk y se denota por ∇yk a ∇yk = yk − yk−1 = ∇1 yk Análogamente, se define diferencia progresiva de orden 2 en yk a ∆2 yk = ∆(∆yk ) = ∆(yk+1 − yk ) = ∆yk+1 − ∆yk = = yk+2 − yk+1 − (yk+1 − yk ) = yk+2 − 2yk+1 + yk = ∇2 yk+2 JJ II J I Página 3 de 25 Volver En general se definen ∆m yk (def ) = ∆(∆m−1 yk ) ∇m yk (def ) ∇(∇m−1 yk ) = Pantalla completa Cerrar Salir ULPGC y convenimos en que ∆0 yk = yk , ∇0 yk = yk y ocurre además que ∆m yk = ∇m yk+m y también n X n ∆ yk = (−1) yk+n−j j j=0 n j En la tabla 1 aparece como se forman las diferencias de diferentes ordenes. Observe la regularidad de la diagonal superior. De la misma forma, en la tabla 2 aparecen las mismas diferencias que se calcularon en la tabla de dif. progresivas, pero ahora con la notación propia de las diferencias regresivas. Observe la regularidad de la diagonal inferior. Informática Página Web Página de Inicio Contenido Necesitamos ahora establecer una relación entre diferencias divididas y diferencias finitas para poder reescribir la fórmula de Newton en términos de diferencias progresivas o regresivas. Dicha relación nos viene dada por el siguiente lema. Lema 1.1. ∆i yk ∀i > 0 : f [xk , xk+1 , . . . , xk+i ] = i! hi JJ II J I Página 4 de 25 Demostración. Por inducción tenemos : • Lo demostramos para i = 0 : f [xk ] = f (xk ) = yk = ∆0 yk • Lo suponemos cierto para i = n > 0. Y entonces • Lo demostramos para i = n + 1. Tenemos Volver Pantalla completa Cerrar Salir ULPGC x y x0 y0 ∆y ∆2 y ∆3 y ∆4 y ∆5 y ∆6 y ∆7 y ∆8 y ∆y0 x1 Informática 2 y1 ∆ y0 ∆3 y0 ∆y1 x2 2 y2 ∆ y1 y3 ∆3 y2 ∆3 y3 x6 y6 ∆7 y1 ∆6 y2 II ∆ y4 J I 3 ∆ y5 ∆2 y6 y7 JJ ∆ y3 4 ∆ y5 Contenido 5 ∆ y4 ∆y6 x7 ∆4 y3 2 ∆8 y0 ∆ y1 ∆5 y2 3 ∆y5 ∆7 y0 6 ∆ y2 ∆2 y4 y5 ∆5 y1 4 ∆ y3 Página de Inicio ∆6 y0 ∆ y1 2 ∆y4 x5 4 ∆ y2 y4 ∆5 y0 ∆ y1 2 ∆y3 x4 ∆ y0 3 ∆y2 x3 Página Web 4 Página 5 de 25 ∆y7 x8 y8 Volver Tabla 1: Tabla de diferencias progresivas Pantalla completa Cerrar Salir ULPGC x y x0 y0 ∇y ∇2 y ∇3 y ∇4 y ∇5 y ∇6 y ∇7 y ∇8 y ∇y1 x1 Informática 2 ∇ y2 y1 ∇3 y3 ∇y2 x2 2 ∇ y3 y2 ∇3 y5 ∇3 y6 x6 ∇6 y8 II ∇ y8 J I 3 ∇ y8 ∇2 y 8 y7 JJ ∇ y8 4 ∇ y7 y6 ∇7 y8 Contenido 5 ∇ y7 ∇y7 x7 ∇4 y7 2 ∇8 y8 ∇ y7 ∇5 y7 3 ∇y6 ∇7 y7 6 ∇ y6 ∇2 y6 y5 ∇5 y6 4 ∇ y5 y4 Página de Inicio ∇6 y0 ∇ y1 2 ∇y5 x5 4 ∇ y2 y3 ∇5 y5 ∇ y4 2 ∇y4 x4 ∇ y4 3 ∇y3 x3 Página Web 4 Página 6 de 25 ∇y8 x8 y8 Volver Tabla 2: Tabla de diferencias regresivas Pantalla completa Cerrar Salir ULPGC f [xk , · · · , xk+n ] − f [xk+1 , · · · , xk+n+1 ] = xk − xk+n+1 ∆n yk+1 − ∆n yk ∆n yk /n!hn − ∆n yk+1 /n!hn = = = −(n + 1)h (n + 1)! hn+1 ∆n (yk+1 − yk ) ∆n (∆yk ) ∆n+1 yk = = = (n + 1)! hn+1 (n + 1)! hn+1 (n + 1)! hn+1 f [xk , · · · , xk+n+1 ] = Informática Página Web Página de Inicio Contenido JJ II J I Página 7 de 25 Volver Pantalla completa Cerrar Salir ULPGC 1.1. NEWTON EN DIFERENCIAS PROGRESIVAS Utilizando éste lema podemos entonces obtener la fórmula de Newton en diferencias progresivas, que es la misma que en diferencias divididas pero expresada en diferencias finitas, que es posible si en los puntos de interpolación las abcisas son equidistantes, o sea, si xi+1 − xi = h, Página Web ∀i = 0, 1, . . . , n − 1 siendo h la diferencia constante entre dos abcisas consecutivas. Tenemos entonces los puntos de interpolación (x0 , y0 ), (x1 , y1 ), . . . , (xn , yn ), donde yi = f (xi ) y además xi+1 = xi + h, ∀i = 0, 1, . . . , n − 1 y podemos escribir x1 = x0 + h =⇒ x2 = x1 + h = x0 + 2h =⇒ x3 = x0 + 3h =⇒ . . . xi = x0 + i h, i = 0, 1, 2, . . . , n La expresión del polinomio de interpolación en diferencias divididas es pn (x) = f [x0 ] + f [x0 , x1 ](x − x0 ) + f [x0 , x1 , x2 ](x − x0 )(x − x1 ) + · · · + f [x0 , x1 , · · · , xn ](x − x0 )(x − x1 ) . . . (x − xn−1 ) (1) Página de Inicio Contenido JJ II J I Página 8 de 25 Aplicando el lema anterior a ésta fórmula obtenemos : ∆2 y0 ∆1 y0 pn (x) = y0 + (x − x ) + (x − x0 )(x − x1 ) + · · · 0 1! h1 2! h2 ∆n y0 + (x − x0 )(x − x1 ) . . . (x − xn−1 ) n! hn Informática Volver (2) Pantalla completa Cerrar Salir ULPGC por otra parte, hacemos el cambio : x − x0 x − xi x − (x0 + i h) x − x0 − i h x − x0 i h = s =⇒ = = = − =s−i h h h h h h y sustituyendo en (2) : (3) Informática Página Web ∆ 0 y0 z}|{ (x − x0 ) (x − x0 )(x − x1 ) pn (x) = y0 +∆1 y0 + ∆2 y0 + ··· h 2! h2 (x − x0 )(x − x1 ) . . . (x − xn−1 ) + ∆n y0 = n! hn (2s) s z }| { (1) z}|{ s(s − 1) 1 2 = y0 + ∆ y0 s +∆ y0 +··· 2! (ns ) z }| { s(s − 1) . . . (s − n + 1) + ∆n y0 = n! n n X s(s − 1) . . . (s − k + 1) X k s k = ∆ y0 = ∆ y0 k! k k=0 k=0 Página de Inicio Contenido (4) JJ II J I Página 9 de 25 Volver con lo cual tenemos : pn (x) = n X s k=0 k Pantalla completa ∆k y0 Cerrar Salir ULPGC que se conoce con el nombre de fórmula de Newton en diferencias finitas progresivas. Ejemplo. Obtener una fórmula para la suma de los primeros números naturales. Solución: n P Sabemos que k = n(n+1) y como queremos obtenerla por interpolación con abcisas 2 Informática k=1 equidistantes construimos un conjunto de valores según los diferentes valores de n: P n y ∆1 ∆2 ∆3 ∆4 1 −→ 1 1 2 2 −→ 1 + 2 3 1 3 0 3 −→ 1 + 2 + 3 6 1 0 4 0 4 −→ 1 + 2 + 3 + 4 = 10 1 5 1 −→ 1 + 2 + 3 + 4 + 5 = 15 P Tenemos pn (x) = nk=0 ks ∆k y0 con s = (x − x0 )/h = x − 1 con lo que 1 x2 − 3x + 2 + 4x − 2 (x − 1)(x − 2) = = 2! 2 x2 + x x(x + 1) = = 2 2 Página Web Página de Inicio Contenido JJ II J I Página 10 de 25 Volver p(x) =1 + 2(x − 1) + Pantalla completa (5) Cerrar Salir ULPGC que es lo que debı́amos obtener. Informática Página Web Página de Inicio Contenido JJ II J I Página 11 de 25 Volver Pantalla completa Cerrar Salir ULPGC 1.2. NEWTON EN DIFERENCIAS REGRESIVAS También en éste caso las abcisas son equidistantes, o sea xi+1 − xi = h, ∀i = 0, 1, . . . , n − 1 Informática siendo h la diferencia constante entre dos abcisas consecutivas. Tenemos entonces los puntos de interpolación (x0 , y0 ), (x1 , y1 ), . . . , (xn , yn ), donde yi = f (xi ) y además xi+1 = xi + h, ∀i = 0, 1, . . . , n − 1 y podemos escribir x1 = x0 + h =⇒ x2 = x1 + h = x0 + 2h =⇒ x3 = x0 + 3h =⇒ . . . xi = x0 + i h, i = 0, 1, 2, . . . , n Consideramos ahora los puntos de interpolación en el orden (xn , yn ), (xn−1 , yn−1 ), . . . , (x0 , yo ) y para éste orden la expresión del polinomio de interpolación en diferencias divididas es pn (x) = f [xn ] + f [xn , xn−1 ](x − xn ) + f [xn , xn−1 , xn−2 ](x − xn )(x − xn−1 ) + · · · + f [xn , xn−1 , · · · , x0 ](x − xn )(x − xn−1 ) . . . (x − x1 ) (6) Aplicando el lema anterior 1.1 a ésta última fórmula y considerando la relación entre diferencias progresivas y regresivas obtenemos : Página Web Página de Inicio Contenido JJ II J I Página 12 de 25 ∆k yi ∇k yi+k = f [xi , xi+1 , · · · , xi+k ] = k! hk k! hk Considerando además que la diferencia dividida es una función simétrica de sus argumentos, o sea, que f [x0 , x1 , · · · , xk ] = f [xi0 , xi1 , · · · , xik ] Volver Pantalla completa Cerrar Salir ULPGC para cualquier permutación posible (i0 , i1 , . . . , ik ) de (0, 1, . . . , k) tendrı́amos por ejemplo que f [xn , xn−1 ] = f [xn−1 , xn ], f [xn , xn−1 , xn−2 ] = f [xn−2 , xn−1 , xn ], etc. Sustituyendo entonces en la ecuación anterior (6): Informática ∇1 yn ∇2 yn (x − x ) + (x − xn )(x − xn−1 ) + · · · n 1! h1 2! h2 ∇n yn + (x − xn )(x − xn−1 ) . . . (x − x1 ) n! hn pn (x) = yn + Página Web (7) Página de Inicio por otra parte, hacemos el cambio : x − xn = u =⇒ h x−xn−1 n = x−(xhn −h) = x−xhn + h = x−x + hh = u + 1 h h x−xn−2 n = x−(xhn −2h) = x−xnh+2 h = x−x + 2hh = u + 2 h h h) x−xi h h n = x−(xn −(n−i) = x−xn +n−i = x−x + n−i =u h h h h h Contenido +n−i JJ II J I Página 13 de 25 Volver Pantalla completa Cerrar Salir ULPGC y sustituyendo en (7) : ∇ 0 yn z}|{ (x − xn )(x − xn−1 ) (x − xn ) pn (x) = yn +∇1 yn + ∇2 yn + ··· h 2! h2 (x − xn )(x − xn−1 ) . . . (x − x1 ) + ∇n yn = n! hn (u+1 2 ) u z }| { (1) z}|{ u(u + 1) = yn + ∇1 yn u +∇2 yn +··· 2! (u+n−1 ) n z }| { u(u + 1) . . . (u + n − 1) + ∇n yn = n! n n X u(u + 1) . . . (u + k − 1) X k u+k−1 k = ∇ yn = ∇ yn k! k k=0 k=0 Informática Página Web Página de Inicio (8) con lo cual tenemos : Contenido JJ II J I Página 14 de 25 pn (x) = n X u+k−1 k=0 k ∇k y n que se conoce con el nombre de fórmula de Newton en diferencias regresivas. Volver Pantalla completa Ejemplo. Obtener una fórmula para la suma de los primeros números naturales. Cerrar Salir ULPGC Solución: La tabla es exactamente la misma que se construyó para diferencias progresivas, pero se toma ahora la diagonal inferior, que aparece en negrita P n y ∇1 ∇2 ∇3 ∇4 1 −→ 1 = 1 2 2 −→ 1 + 2 = 3 1 3 0 3 −→ 1 + 2 + 3 = 6 1 0 4 0 4 −→ 1 + 2 + 3 + 4 = 10 1 5 5 −→ 1 + 2 + 3 + 4 + 5 = 15 k P Ahora la ecuación es: pn (x) = nk=0 u+k−1 ∇ yn k siendo x − xn u= = x − 5, h = 1 h u(u + 1) 2 ∇ yn = 2! 1 x2 − 9x + 20 + 10x − 20 = = 15 + 5(x − 5) + (x − 5)(x − 4) = 2! 2 x2 + x x(x + 1) = = 2 2 p(x) = yn + u∇yn + Informática Página Web Página de Inicio Contenido JJ II J I Página 15 de 25 Volver Pantalla completa Cerrar Salir ULPGC que es de nuevo lo que debı́amos obtener. Ejemplo. Encontrar el polinomio de interpolación p(x) de segundo grado tal que p(0) = −1, p(1) = 2, p(2) = 7. Solución: Tomando las xi e yi en el orden dado: x0 = 0, x1 = 1, x2 = 2; y0 = −1, y1 = 2, y2 = 7 Construimos la tabla de diferencias finitas: x y ∆1 /∇1 0 −1 3 1 2 5 2 7 ∆2 /∇2 Contenido x−x0 h = x−0 1 = x y por tanto: 2 p(x) = −1 + 3x + x(x − 1) = x2 − x + 3x − 1 = x2 + 2x − 1 2! n Análogamente, para aplicar la fórmula en diferencias regresivas es u = x−x = h x − 2 y entonces: p(x) = 7 + 5(x − 2) + Página Web Página de Inicio 2 Para aplicar la fórmula en diferencias progresivas es s = Informática JJ II J I Página 16 de 25 x−2 1 = Volver 2 (x − 2)(x − 1) = 7 + 5x − 10 + x2 − 3x + 2 = x2 + 2x − 1 2! Pantalla completa Cerrar Salir ULPGC 2. PROBLEMAS Problema 1. Construir la tabla de diferencias finitas para el conjunto de nodos siguiente: x f (x) 0.125 0.250 0.375 0.500 0.625 0.750 0.79168 0.77334 0.74371 0.70413 0.65632 0.60228 Usar la fórmula progresiva de Newton con polinomios de grado tres para estimar f (0.158) y f (0.636). Para el primer polinomio, elegir x0 = 0.125 y para el segundo x0 = 0.375. Problema 2. Con los mismos datos del problema 1, usar la fórmula regresiva de Newton, eligiendo xn = 0.500 en el primer caso y xn = 0.750 en el segundo polinomio ¿se obtienen los mismos resultados? Informática Página Web Página de Inicio Contenido Problema 3. Con los mismos datos del problema 1, obtener los polinomios que interpolan en las abcisas 0.500, 0.625 y 0.750, usando las fórmulas progresiva y regresiva de Newton. Demostrar que se trata del mismo polinomio. JJ II Problema 4. Probar que: J I (a) Página 17 de 25 ∆[f (x).g(x)] = f (x).∆g(x) + g(x + h).∆f (x) (b) ∆n xn = ∇n xn = n! cuando h = 1. Volver (c) f (x) g(x).∆f (x) − f (x).∆g(x) ∆ = g(x) g(x + h).g(x) Pantalla completa Cerrar Salir ULPGC Referencias [Act90] F.S. Acton. Numerical Methods That (Usually) Work. The Mathematical Association of America, Washington, 1990. [Atk89] K. E. Atkinson. An Introduction to Numerical Analysis. John Wiley, New York, 2nd. edition, 1989. [BF80] [CC89] Informática Página Web R.L. Burden and D. Faires. Análisis Numérico. Grupo Editorial Iberoamericana, México, 1980. Página de Inicio S.C. Chapra and R.P. Canale. Numerical Methods for Engineers. McGraw-Hill International, New York, second edition, 1989. Contenido [CdB80] S. D. Conte and C. de Boor. Elementary Numerical Analysis: An Algorithmic Approach. McGraw–Hill, New York, third edition, 1980. JJ II [DB74] J I Germund Dahlquist and Åke Björck. Numerical Methods. Prentice-Hall, Englewood Cliffs, New Jersey, 1974. [Fad59] V.N. Faddeeva. Computational Methods of Linear Algebra. Dover Publications, Inc, New York, 1959. Página 18 de 25 Volver [Frö79] C.-E. Fröberg. Introduction to Numerical Analysis. Adison–Wesley, Reading, Massachusetts, 2nd. edition, 1979. [GW89] C.F. Gerald and P.O. Wheatley. Applied Numerical Analysis. Addison–Wesley Publishing Co., Reading, Massachusets, fourth edition, 1989. Pantalla completa Cerrar Salir ULPGC [Hen72] P. Henrici. Elementos de Análisis Numérico. Ed. Trillas, México, 1972. [Hil74] F. B. Hildebrand. Introduction to Numerical Analysis. McGraw–Hill, New York, second edition, 1974. [KC94] D. Kincaid and W. Cheney. Análisis Numérico : las matemáticas del cálculo cientı́fico. Addison-Wesley Iberoamericana, 1994. Informática Página Web [Mar87] M. J. Maron. Numerical Analysis: A Practical Approach. Macmillan Publishing Co., New York, second edition, 1987. [ML91] M. J. Maron and R. J. Lopez. Numerical Analysis: A Practical Approach. Wadsworth, Belmont, California, third edition, 1991. Página de Inicio Contenido [RR78] Anthony Ralston and Philip Rabinowitz. A First Course in Numerical Analysis. McGraw-Hill, New York, 2nd. edition, 1978. JJ II [Sch89] H.R. Schwarz. Numerical Analysis. John Wiley & Sons, Chichester, 1989. J I [Wer84] W. Werner. Mathematics of Computation, 43:205–217, 1984. Página 19 de 25 [YG73a] David M. Young and R.T. Gregory. A Survey of Numerical Mathematics, volume I. Dover Publications, New York, 1973. Volver [YG73b] David M. Young and R.T. Gregory. A Survey of Numerical Mathematics, volume II. Dover Publications, New York, 1973. Pantalla completa Cerrar Salir ULPGC Soluciones a los Problemas Problema 1. Los valores son f (0.158) = 0.78801042 y f (0.636) = 0.65178537. J Informática Página Web Página de Inicio Contenido JJ II J I Página 20 de 25 Volver Pantalla completa Cerrar Salir ULPGC Problema 2. Se obtienen los mismos resultados: f (0.158) = 0.78801042 y f (0.636) = 0.65178537. El polinomio resultante es: 0.114346666667x3 − 0.44704x2 + 0.00841333333334x + 0.79739 Informática en el primer caso y Página Web 0.170666666667x3 − 0.51936x2 + 0.0391333333333x + 0.79307 en el segundo caso. Página de Inicio J Contenido JJ II J I Página 21 de 25 Volver Pantalla completa Cerrar Salir ULPGC Problema 3. El polinomio en ambos casos es: −0.19936x2 − 0.1582x + 0.83307 J Informática Página Web Página de Inicio Contenido JJ II J I Página 22 de 25 Volver Pantalla completa Cerrar Salir ULPGC Problema 4(a) ∆[f (x).g(x)] = f (x + h).g(x + h) − f (x).g(x) = = f (x + h).g(x + h) − f (x).g(x) + f (x).g(x + h) − f (x).g(x + h) = = f (x).g(x + h) − f (x).g(x) + g(x + h).f (x + h) − g(x + h).f (x) = = f (x).∆g(x) + g(x + h).∆f (x) Informática Página Web Página de Inicio Contenido JJ II J I Página 23 de 25 Volver Pantalla completa Cerrar Salir ULPGC Problema 4(b) Por inducción. Informática Página Web Página de Inicio Contenido JJ II J I Página 24 de 25 Volver Pantalla completa Cerrar Salir Problema 4(c) Es sencillo. Se deja como ejercicio.