I think that I could extend my grid with one row/column at each of the 4 boundaries, duplicate the real boundary on these new boundary points to get a zero derivative boundary for the DCT algorithm. However, I am not sure how to get it working. Another possibility would be to extend my grid in some way that FFT will not create spurious oscillation near the boundaries, but again, I my attempts failed so far.
(newbie) spectral derivative
3 views (last 30 days)
Show older comments
I have data that form a scalar field on a 2D grid, evenly spaced. There is no particular periodicity patern in my data.
I want to calculate the value of the gradient at each grid point with a spectral method in MATLAB. Using simple FFT does not seem to work, especially near the borders (probably because the data are not periodic). I have ears about DCT, but I am not sure.
I would appreciate advice on the best way to do this.
3 Comments
Answers (0)
See Also
Categories
Find more on Fourier Analysis and Filtering in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!