Chebyshev Spectral Differentiation via Fast Fourier Transform
Requires a Wolfram Notebook System
Interact on desktop, mobile and cloud with the free Wolfram Player or other Wolfram Language products.
Consider the function with derivative . This Demonstration uses Chebyshev differentiation via Fast Fourier Transform (FFT) [1] to estimate at the Chebyshev–Gauss–Lobatto points. You can change the number of interior points, . The error (i.e., the difference between the exact and approximate values of ) decreases for large values of .
Contributed by: Housam Binous, Brian G. Higgins, and Ahmed Bellagi (March 2013)
Open content licensed under CC BY-NC-SA
Snapshots
Details
Here are the steps for Chebyshev differentiation via the fast Fourier transform (FFT) [1] algorithm:
1. Take the Chebyshev–Gauss–Lobatto points given by with . These points are the extrema of the Chebyshev polynomial of the first kind, .
2. Calculate and form the vector .
3. Calculate , the real part of the and of .
4. Compute , where ; then calculate where is the inverse fast Fourier transform.
5. Use the vector to evaluate (i.e., the approximate derivative calculated at the Chebyshev–Gauss–Lobatto points) for :
for ,
,
and .
Reference
[1] L. N. Trefethen, Spectral Methods in MATLAB, Philadelphia: SIAM, 2000.
Permanent Citation