Dado un conjunto de datos de pares de coordenadas , se denominan nodos y se denominan valores . El polinomio de Lagrange tiene grado y asume cada valor en el nodo correspondiente,
Aunque lleva el nombre de Joseph-Louis Lagrange , quien lo publicó en 1795, [1] el método fue descubierto por primera vez en 1779 por Edward Waring . [2] También es una consecuencia fácil de una fórmula publicada en 1783 por Leonhard Euler . [3]
Para nodos equiespaciados, la interpolación de Lagrange es susceptible al fenómeno de gran oscilación de Runge .
Definición
Dado un conjunto de nodos , que deben ser todos distintos, para índices , la base de Lagrange para polinomios de grado para esos nodos es el conjunto de polinomios, cada uno de grado , que toma valores si y . Usando el delta de Kronecker esto se puede escribir. Cada polinomio base se puede describir explícitamente mediante el producto:
Observe que el numerador tiene raíces en los nodos mientras que el denominador escala el polinomio resultante de modo que
El polinomio de interpolación de Lagrange para esos nodos a través de los valores correspondientes es la combinación lineal:
Cada polinomio base tiene grado , por lo que la suma tiene grado e interpola los datos porque
El polinomio de interpolación es único. Prueba: suponga que el polinomio de grado interpola los datos. Entonces la diferencia es cero en nodos distintos. Pero el único polinomio de grado con más de raíces es la función cero constante, entonces o
forma baricéntrica
Cada polinomio de base de Lagrange se puede reescribir como el producto de tres partes, una función común a cada polinomio de base, una constante específica del nodo (llamada peso baricéntrico ) y una parte que representa el desplazamiento de a : [4]
Factorizando la suma, podemos escribir el polinomio de Lagrange en la llamada primera forma baricéntrica :
Si los pesos se han calculado previamente, esto requiere solo operaciones comparadas para evaluar cada polinomio de base de Lagrange individualmente.
La fórmula de interpolación baricéntrica también se puede actualizar fácilmente para incorporar un nuevo nodo dividiendo cada uno de los , por y construyendo el nuevo como se indicó anteriormente.
Para cualquier porque la función constante es el único polinomio de grado que interpola los datos, podemos simplificar aún más la fórmula baricéntrica dividiendo
Esto se denomina segunda forma o forma verdadera de la fórmula de interpolación baricéntrica.
Esta segunda forma tiene ventajas en cuanto a costo y precisión de cálculo: evita la evaluación de ; el trabajo para calcular cada término en el denominador ya se ha realizado en informática , por lo que calcular la suma en el denominador solo cuesta operaciones de suma; para los puntos de evaluación que están cerca de uno de los nodos , la cancelación catastrófica normalmente sería un problema para el valor ; sin embargo, esta cantidad aparece tanto en el numerador como en el denominador y los dos se cancelan dejando una buena precisión relativa en el resultado final.
El uso de esta fórmula para evaluar en uno de los nodos dará como resultado un valor indeterminado ; Las implementaciones informáticas deben reemplazar dichos resultados por
Cada polinomio de base de Lagrange también se puede escribir en forma baricéntrica:
Una perspectiva desde el álgebra lineal.
Resolver un problema de interpolación conduce a un problema de álgebra lineal que equivale a la inversión de una matriz. Usando una base monomial estándar para nuestro polinomio de interpolación , debemos invertir la matriz de Vandermonde para resolver los coeficientes de . Al elegir una base mejor, la base de Lagrange, simplemente obtenemos la matriz identidad , que es su propia inversa: la base de Lagrange invierte automáticamente el análogo de la matriz de Vandermonde.
Esta construcción es análoga al teorema del resto chino . En lugar de verificar los restos de números enteros módulo números primos, estamos verificando los restos de polinomios cuando se dividen por lineales.
Además, cuando el orden es grande, se puede utilizar la transformación rápida de Fourier para resolver los coeficientes del polinomio interpolado.
Ejemplo
Deseamos interpolar el dominio en los tres nodos :
El polinomio de nodo es
Los pesos baricéntricos son
Los polinomios de base de Lagrange son
El polinomio de interpolación de Lagrange es:
En (segunda) forma baricéntrica,
Notas
La forma de Lagrange del polinomio de interpolación muestra el carácter lineal de la interpolación polinómica y la unicidad del polinomio de interpolación. Por tanto, se prefiere en pruebas y argumentos teóricos. La unicidad también se puede ver en la invertibilidad de la matriz de Vandermonde, debido a que el determinante de Vandermonde no desaparece .
Pero, como se puede ver en la construcción, cada vez que cambia un nodo x k , todos los polinomios de base de Lagrange deben recalcularse. Una mejor forma del polinomio de interpolación para fines prácticos (o computacionales) es la forma baricéntrica de la interpolación de Lagrange (ver más abajo) o polinomios de Newton .
Lagrange y otras interpolaciones en puntos equidistantes, como en el ejemplo anterior, producen un polinomio que oscila por encima y por debajo de la función verdadera. Este comportamiento tiende a crecer con el número de puntos, dando lugar a una divergencia conocida como fenómeno de Runge ; el problema puede eliminarse eligiendo puntos de interpolación en los nodos de Chebyshev . [5]
Al interpolar una función dada f por un polinomio de grado k en los nodos obtenemos el resto que se puede expresar como [6]
¿Dónde está la notación para diferencias divididas ? Alternativamente, el resto se puede expresar como una integral de contorno en un dominio complejo como
El resto puede vincularse como
Derivación[7]
Claramente, es cero en los nodos. Para encontrar en un punto , defina una nueva función y elija dónde está la constante que debemos determinar para un punto determinado . Elegimos que tenga ceros (en todos los nodos y ) entre y (incluidos los puntos finales). Suponiendo que es -veces diferenciable, ya que y son polinomios, y por tanto, son infinitamente diferenciables, será -veces diferenciable. Según el teorema de Rolle , tiene ceros, tiene ceros... tiene 1 cero, digamos . Escribiendo explícitamente :
(Porque el poder más alto de in es )
La ecuación se puede reordenar como
Desde que tenemos
Derivados
La d -ésima derivada de un polinomio de interpolación de Lagrange se puede escribir en términos de las derivadas de los polinomios básicos,
Recuerde (ver § Definición anterior) que cada polinomio de base de Lagrange es
Tenga en cuenta que todas estas fórmulas para derivadas no son válidas en un nodo o cerca de él. Un método para evaluar todos los órdenes de derivadas de un polinomio de Lagrange de manera eficiente en todos los puntos del dominio, incluidos los nodos, es convertir el polinomio de Lagrange a la forma de potencia y luego evaluar las derivadas.
^ Lagrange, Joseph-Louis (1795). "Leçon Cinquième. Sur l'usage des courbes dans la solucion des problèmes". Leçons Elémentaires sur les Mathématiques (en francés). París.Republicado en Serret, Joseph-Alfred , ed. (1877). Obras de Lagrange . vol. 7. Gauthier-Villars. págs. 271–287.Traducido como "Conferencia V. Sobre el empleo de curvas en la solución de problemas". Conferencias sobre Matemática Elemental . Traducido por McCormack, Thomas J. (2ª ed.). Corte abierta. 1901, págs. 127-149.
^ Meijering, Erik (2002). "Una cronología de la interpolación: desde la astronomía antigua hasta el procesamiento moderno de señales e imágenes" (PDF) . Actas del IEEE . 90 (3): 319–342. doi :10.1109/5.993400.
^ Berrut, Jean-Paul ; Trefethen, Lloyd N. (2004). "Interpolación baricéntrica de Lagrange" (PDF) . Revisión SIAM . 46 (3): 501–517. Código Bib : 2004SIAMR..46..501B. doi : 10.1137/S0036144502417715 .
^ Quarteroni, Alfio ; Saleri, Fausto (2003). Computación Científica con MATLAB. Textos de ciencia e ingeniería computacional. vol. 2. Saltador. pag. 66.ISBN978-3-540-44363-6..
^ Abramowitz, Milton ; Stegun, Irene Ann , eds. (1983) [junio de 1964]. "Capítulo 25, ecuación 25.2.3". Manual de funciones matemáticas con fórmulas, gráficas y tablas matemáticas . Serie de Matemáticas Aplicadas. vol. 55 (Novena reimpresión con correcciones adicionales de la décima impresión original con correcciones (diciembre de 1972); primera ed.). Washington DC; Nueva York: Departamento de Comercio de los Estados Unidos, Oficina Nacional de Normas; Publicaciones de Dover. pag. 878.ISBN978-0-486-61272-0. LCCN 64-60036. SEÑOR 0167642. LCCN 65-12253.
^ "Interpolación" (PDF) .
enlaces externos
La implementación del algoritmo Wikibook tiene una página sobre el tema: Interpolación polinomial
ALGLIB tiene implementaciones en C++/C#/VBA/Pascal.
GSL tiene un código de interpolación polinomial en C
SO tiene un ejemplo de MATLAB que demuestra el algoritmo y recrea la primera imagen de este artículo.
Método de interpolación de Lagrange: notas, PPT, Mathcad, Mathematica, MATLAB, Maple Archivado el 1 de septiembre de 2006 en Wayback Machine en el Holistic Numerical Methods Institute.
Polinomio de interpolación de Lagrange en www.math-linux.com