stringtranslate.com

Interpolación trigonométrica

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 determinados. 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

Esta expresión contiene 2 K + 1 coeficientes, a 0 , a 1 , … a K , b 1 , …, b K , y queremos 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

(Obsérvese que, en general, no requerimos que estos puntos estén equidistantes.) El problema de interpolación ahora consiste en encontrar coeficientes tales que el polinomio trigonométrico p satisfaga 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 como donde 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 polinómica en el círculo unitario . La existencia y unicidad de la interpolación trigonométrica ahora se derivan inmediatamente de los resultados correspondientes de 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. 156 de interpolación utilizando 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 existir o no si N >2 K +1 dependiendo del conjunto particular de puntos de datos). Además, el polinomio de interpolación es único si y sólo 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 es verdadera.

Número impar de puntos

Si el número de puntos N es impar, digamos N=2K+1 , al aplicar la fórmula de Lagrange para la interpolación polinomial a la formulación polinómica en el plano complejo se obtiene que la solución se puede escribir en la forma

dónde

El factor en esta fórmula compensa el hecho de que la formulación del plano complejo también contiene potencias negativas de y, por lo tanto, no es una expresión polinómica en . La exactitud de esta expresión se puede verificar fácilmente observando que y que es una combinación lineal de las potencias correctas de . Al usar la identidad

el coeficiente se puede escribir en la forma

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 polinómica a la formulación polinómica en el plano complejo se obtiene que la solución se puede escribir en la forma

dónde

Aquí las constantes se pueden 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 exigir que la frecuencia más alta tenga la forma a veces constante , es decir, el término desaparece, pero en general se puede elegir que la fase de la frecuencia más alta sea . Para obtener una expresión para , obtenemos usando ( 2 ) que ( 3 ) se puede escribir en la forma

Esto produce

y

Tenga en cuenta que se debe tener cuidado para evitar infinitos causados ​​por ceros en los denominadores.

Nodos equidistantes

Es posible una mayor simplificación del problema si los nodos son equidistantes, es decir

ver Zygmund para más detalles.

Número impar de puntos

Una mayor simplificación mediante el uso de ( 4 ) sería un enfoque obvio, pero obviamente está involucrado. Un enfoque mucho más simple es considerar el núcleo de Dirichlet.

donde es extraño. Se puede ver fácilmente que es una combinación lineal de los poderes correctos y satisface

Dado que estas dos propiedades definen de forma única los coeficientes en ( 5 ), se deduce que

Aquí, la función sinc previene cualquier singularidad y está definida por

Número par de puntos

Incluso , definimos el núcleo de Dirichlet como

Nuevamente, se puede ver fácilmente que es una combinación lineal de las potencias correctas 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 tampoco contiene el . Finalmente, observe 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

Puede encontrar una implementación de MATLAB de lo anterior aquí y viene dada por:

función  P = triginterp ( xi,x,y ) % TRIGINTERP Interpolación trigonométrica. % Entrada: % puntos de evaluación xi para el interpolador (vector) % x nodos de interpolación equiespaciados (vector, longitud N) % valores de interpolación y (vector, longitud N) % Salida: % Valores P del interpolador trigonométrico (vector) N = longitud ( X ); % Ajusta el espaciado de la variable independiente dada. h = 2 / norte ; 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 ); fin                         función  tau = trigcardinal ( x,N ) ws = advertencia ( 'off' , 'MATLAB:divideByZero' ); % La forma es diferente para N par e impar. if rem ( N , 2 ) == 1 % impar tau = sin ( N * pi * x / 2 ) ./ ( N * sin ( pi * x / 2 )); else % par tau = sin ( N * pi * x / 2 ) ./ ( N * tan ( pi * x / 2 )); advertencia final ( ws ) tau ( x == 0 ) = 1 ; % valor fijo en x=0                    

Relación con la transformada discreta de Fourier

Es especialmente importante el caso especial en el que los puntos x n están igualmente espaciados. En este caso, tenemos

La transformación que asigna los puntos de datos y n a los coeficientes a k , b k se obtiene 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 coseno correspondiente a la frecuencia de Nyquist ).

El caso de la interpolación sólo coseno para puntos equidistantes, correspondiente a una interpolación trigonométrica cuando los puntos tienen simetría par , fue tratado por Alexis Clairaut en 1754. En este caso la solución equivale a una transformada discreta de coseno . La expansión solo seno para puntos equidistantes, correspondiente a simetría impar, fue resuelta por Joseph Louis Lagrange en 1762, cuya solución es una transformada seno discreta . El polinomio de interpolación de coseno y seno 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 preocupados por 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 la 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 calcular con funciones, utiliza interpolación trigonométrica y expansiones de Fourier para calcular 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

enlaces externos