stringtranslate.com

Transformada de Chebyshev discreta

En matemáticas aplicadas , una transformada discreta de Chebyshev (DCT) es un análogo de la transformada discreta de Fourier para una función de un intervalo real , que convierte en cualquier dirección entre valores de función en un conjunto de nodos de Chebyshev y coeficientes de una función en base polinómica de Chebyshev . Al igual que los polinomios de Chebyshev, recibe su nombre de Pafnuty Chebyshev .

Los dos tipos más comunes de transformadas discretas de Chebyshev utilizan la cuadrícula de ceros de Chebyshev , los ceros de los polinomios de Chebyshev de primera especie , y la cuadrícula de extremos de Chebyshev , los extremos de los polinomios de Chebyshev de primera especie, que también son los ceros de los polinomios de Chebyshev de segunda especie . Ambas transformadas dan como resultado coeficientes de polinomios de Chebyshev de primera especie.

Otras transformadas de Chebyshev discretas involucran cuadrículas y coeficientes relacionados de polinomios de Chebyshev de segundo, tercer o cuarto tipo.

Transformada discreta de Chebyshev en la red de raíces

La transformada de Chebyshev discreta de u(x) en los puntos viene dada por:

dónde:

donde y de otra manera.

Utilizando la definición de ,

y su transformada inversa:

(Esto sucede con la serie estándar de Chebyshev evaluada en la cuadrícula de raíces).

Esto se puede obtener fácilmente manipulando los argumentos de entrada para realizar una transformada de coseno discreta.

Esto se puede demostrar utilizando el siguiente código MATLAB :

función  a = fct ( f, l ) % x =-cos(pi/N*((0:N-1)'+1/2));f = f ( fin : - 1 : 1 ,:); A = tamaño ( f ); N = A ( 1 ); si existe ( 'A(3)' , 'var' ) && A ( 3 ) ~= 1 para i = 1 : A ( 3 ) a (:,:, i ) = sqrt ( 2 / N ) * dct ( f (:,:, i )); a ( 1 ,:, i ) = a ( 1 ,:, i ) / sqrt ( 2 ); fin de lo contrario a = sqrt ( 2 / N ) * dct ( f (:,:, i )); a ( 1 ,:)= a ( 1 ,:) / sqrt ( 2 ); fin                                 

De hecho, la transformada discreta del coseno (dct) se calcula utilizando un algoritmo de transformada rápida de Fourier en MATLAB.

Y la transformada inversa viene dada por el código MATLAB:

función  f = ifct ( a, l ) % x = -cos(pi/N*((0:N-1)'+1/2)) k = tamaño ( a ); N = k ( 1 );   a = idct ( sqrt ( N / 2 ) * [ a ( 1 ,:) * sqrt ( 2 ); a ( 2 : fin ,:)]);       fin

Transformada de Chebyshev discreta en la red extrema

Esta transformación utiliza la cuadrícula:

Esta transformación es más difícil de implementar mediante el uso de una Transformada Rápida de Fourier (FFT). Sin embargo, se utiliza más ampliamente porque se encuentra en la cuadrícula extrema, que tiende a ser más útil para problemas de valores de contorno. Principalmente porque es más fácil aplicar condiciones de contorno en esta cuadrícula.

En este caso la transformada y su inversa son

donde y de otra manera.

Uso e implementaciones

Los usos principales de la transformada discreta de Chebyshev son la integración numérica, la interpolación y la diferenciación numérica estable. [1] Una implementación que proporciona estas características se proporciona en la biblioteca C++ Boost. [2]

Véase también

Referencias

  1. ^ Trefethen, Lloyd (2013). Teoría de aproximación y práctica de aproximación .
  2. ^ Thompson, Nick; Maddock, John. "Polinomios de Chebyshev". boost.org .