stringtranslate.com

Transformada discreta de Chebyshev

En matemáticas aplicadas , una transformada discreta de Chebyshev (DCT) es análoga a 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 polinomial de Chebyshev . Al igual que los polinomios de Chebyshev, lleva el 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 clase y la cuadrícula de extremos de Chebyshev , los extremos de los polinomios de Chebyshev de primera clase, que también son los ceros de los polinomios de Chebyshev de segunda especie . Ambas transformadas dan como resultado coeficientes de polinomios de Chebyshev del primer tipo.

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

Transformada discreta de Chebyshev en la cuadrícula de raíces

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

dónde:

dónde y de otra manera.

Usando 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 en una transformada de coseno discreta.

Esto se puede demostrar usando 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 ); norte = un ( 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 más 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 rápido de transformada 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 ); norte = k ( 1 );   a = idct ( sqrt ( N / 2 ) * [ a ( 1 ,:) * sqrt ( 2 ); a ( 2 : fin ,:)]);       fin

Transformada discreta de Chebyshev en la cuadrícula 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 usa más ampliamente porque es en la cuadrícula extrema la que tiende a ser más útil para problemas de valores en la frontera. Principalmente porque es más fácil aplicar condiciones de contorno en esta cuadrícula.

En este caso la transformada y su inversa son

dónde 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] En la biblioteca C++ Boost se proporciona una implementación que proporciona estas características . [2]

Ver también

Referencias

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