En matemáticas , la interpolación trigonométrica es la interpolación con polinomios trigonométricos . La interpolación es el proceso de encontrar una función que pasa por algunos puntos de datos dados . Para la interpolación trigonométrica, esta función tiene que ser un polinomio trigonométrico, es decir, una suma de senos y cosenos de períodos dados. Esta forma es especialmente adecuada para la interpolación de funciones periódicas .
Un caso especial importante es cuando los puntos de datos dados están igualmente espaciados, en cuyo caso la solución viene dada por la transformada discreta de Fourier .
Formulación del problema de interpolación
Un polinomio trigonométrico de grado K tiene la forma
( 1 )
Esta expresión contiene 2 coeficientes K + 1, a 0 , a 1 ,… a K , b 1 ,…, b K , y deseamos calcular esos coeficientes para que la función pase por N puntos:
Dado que el polinomio trigonométrico es periódico con período 2π, los N puntos se pueden distribuir y ordenar en un período como
(Tenga en cuenta que no , en general, requieren estos puntos para ser equidistantes.) El problema de interpolación es ahora para encontrar coeficientes de tal manera que los polinomios trigonométricos p satisface las condiciones de interpolación.
Formulación en el plano complejo
El problema se vuelve más natural si lo formulamos en el plano complejo . Podemos reescribir la fórmula de un polinomio trigonométrico comodonde i es la unidad imaginaria . Si establecemos z = e ix , entonces esto se convierte en
con
Esto reduce el problema de la interpolación trigonométrica al de la interpolación polinomial en el círculo unitario . La existencia y unicidad para la interpolación trigonométrica ahora se sigue inmediatamente de los resultados correspondientes para la interpolación polinomial.
Para obtener más información sobre la formulación de polinomios de interpolación trigonométrica en el plano complejo, consulte la pág. 135 de interpolación usando polinomios de Fourier .
Solución del problema
Bajo las condiciones anteriores, existe una solución al problema para cualquier conjunto dado de puntos de datos { x k , y k } siempre que N , el número de puntos de datos, no sea mayor que el número de coeficientes en el polinomio, es decir , N ≤ 2 K +1 (una solución puede o no existir si N > 2 K +1 dependiendo del conjunto particular de puntos de datos). Además, el polinomio de interpolación es único si y solo si el número de coeficientes ajustables es igual al número de puntos de datos, es decir, N = 2 K + 1. En el resto de este artículo, asumiremos que esta condición se cumple.
Número impar de puntos
Si el número de puntos N es impar, digamos N = 2K + 1 , aplicando la fórmula de Lagrange para la interpolación polinomial a la formulación polinomial en el plano complejo se obtiene que la solución se puede escribir en la forma
( 5 )
dónde
El factor en esta fórmula compensa el hecho de que la formulación del plano complejo contiene también poderes negativos de y por lo tanto no es una expresión polinomial en . La exactitud de esta expresión puede verificarse fácilmente observando que y eso es una combinación lineal de los poderes correctos de . Al usar la identidad
( 2 )
el coeficiente se puede escribir en la forma
( 4 )
Número par de puntos
Si el número de puntos N es par, digamos N = 2K , al aplicar la fórmula de Lagrange para la interpolación polinomial a la formulación polinomial en el plano complejo se obtiene que la solución se puede escribir en la forma
( 6 )
dónde
( 3 )
Aquí, las constantes se puede elegir libremente. Esto se debe al hecho de que la función de interpolación ( 1 ) contiene un número impar de constantes desconocidas. Una opción común es requerir que la frecuencia más alta sea de la forma de tiempos constantes, es decir, el término desaparece, pero en general la fase de la frecuencia más alta puede elegirse para ser . Para obtener una expresión para, obtenemos usando ( 2 ) que ( 3 ) se puede escribir en el formulario
Esto produce
y
Tenga en cuenta que se debe tener cuidado para evitar infinitos causados por ceros en los denominadores.
Nodos equidistantes
Es posible simplificar aún más el problema si los nodos son equidistantes, es decir
consulte Zygmund para obtener más detalles.
Número impar de puntos
Una simplificación adicional mediante el uso de ( 4 ) sería un enfoque obvio, pero obviamente está involucrado. Un enfoque mucho más simple es considerar el kernel de Dirichlet
dónde es impar. Se puede ver fácilmente que es una combinación lineal de los poderes correctos de y satisface
Dado que estas dos propiedades definen de forma única los coeficientes en ( 5 ), se sigue que
Aquí, la función sinc evita cualquier singularidad y está definida por
Número par de puntos
Para incluso, definimos el kernel de Dirichlet como
Nuevamente, se puede ver fácilmente que es una combinación lineal de los poderes correctos de , no contiene el término y satisface
Usando estas propiedades, se deduce que los coeficientes en ( 6 ) están dados por
Tenga en cuenta que no contiene el también. Finalmente, tenga en cuenta que la función desaparece en todos los puntos . Por lo tanto, siempre se pueden agregar múltiplos de este término, pero comúnmente se omite.
Implementación
Una implementación de MATLAB de lo anterior se puede encontrar aquí y viene dada por:
función P = triginterp ( xi, x, y ) % TRIGINTERP Interpolación trigonométrica.% Aporte:% xi puntos de evaluación para el interpolante (vector)% x nodos de interpolación equiespaciados (vector, longitud N)Valores de interpolación% y (vector, longitud N)% Producción:Valores de% P del interpolante trigonométrico (vector)N = longitud ( x ); % Ajusta el espaciado de la variable independiente dada.h = 2 / N ; escala = ( x ( 2 ) - x ( 1 )) / h ; x = x / escala ; xi = xi / escala ; % Evaluar interpolante.P = ceros ( tamaño ( xi )); para k = 1 : N P = P + y ( k ) * trigcardinal ( xi - x ( k ), N ); finalfunción tau = trigcardinal ( x, N ) ws = advertencia ( 'apagado' , 'MATLAB: divideByZero' ); La forma% es diferente para N. pares e impares.si rem ( N , 2 ) == 1 % impar tau = sin ( N * pi * x / 2 ) ./ ( N * sin ( pi * x / 2 )); else % even tau = sin ( N * pi * x / 2 ) ./ ( N * tan ( pi * x / 2 )); finaladvertencia ( ws )tau ( x == 0 ) = 1 ; % valor fijo en x = 0
Relación con la transformada discreta de Fourier
El caso especial en el que los puntos x n están igualmente espaciados es especialmente importante. En este caso, tenemos
La transformación que mapea los puntos de datos y n con los coeficientes a k , b k se obtiene a partir de la transformada discreta de Fourier (DFT) de orden N.
(Debido a la forma en que se formuló el problema anteriormente, nos hemos restringido a números impares de puntos. Esto no es estrictamente necesario; para números pares de puntos, se incluye otro término de coseno correspondiente a la frecuencia de Nyquist ).
El caso de la interpolación de solo coseno para puntos igualmente espaciados, correspondiente a una interpolación trigonométrica cuando los puntos tienen simetría uniforme , fue tratado por Alexis Clairaut en 1754. En este caso, la solución es equivalente a una transformada de coseno discreta . La expansión sinusoidal para puntos igualmente espaciados, correspondiente a simetría impar, fue resuelta por Joseph Louis Lagrange en 1762, para lo cual la solución es una transformada sinusoidal discreta . El polinomio de interpolación de seno y coseno completo, que da lugar a la DFT, fue resuelto por Carl Friedrich Gauss en un trabajo inédito alrededor de 1805, momento en el que también derivó un algoritmo de transformada rápida de Fourier para evaluarlo rápidamente. Clairaut, Lagrange y Gauss estaban todos interesados en estudiar el problema de inferir la órbita de planetas , asteroides , etc., a partir de un conjunto finito de puntos de observación; dado que las órbitas son periódicas, una interpolación trigonométrica fue una elección natural. Véase también Heideman et al. (1984).
Aplicaciones en computación numérica
Chebfun , un sistema de software totalmente integrado escrito en MATLAB para computación con funciones, utiliza interpolación trigonométrica y expansiones de Fourier para computación con funciones periódicas. Muchos algoritmos relacionados con la interpolación trigonométrica están disponibles en Chebfun ; varios ejemplos están disponibles aquí .
Referencias
- Kendall E. Atkinson, Introducción al análisis numérico (segunda edición), sección 3.8. John Wiley & Sons, Nueva York, 1988. ISBN 0-471-50023-2 .
- MT Heideman, DH Johnson y CS Burrus, " Gauss y la historia de la transformada rápida de Fourier ", IEEE ASSP Magazine 1 (4), 14-21 (1984).
- GB Wright, M. Javed, H. Montanelli y LN Trefethen, " Extensión de Chebfun a funciones periódicas ", SIAM. J. Sci. Computación. , 37 (2015), C554-C573
- A. Zygmund, Serie trigonométrica , Volumen II, Capítulo X, Cambridge University Press, 1988.