image thumbnail

Double Fourier Series Surface Plotting

version 1.0.0.0 (11.8 KB) by Howard Wilson
Double Fourier series plots and effects of the number of terms and oscillation smoothing are shown.

1.7K Downloads

Updated 16 Jul 2009

View License

Program FFT2SURF plots double Fourier series representations
for several different surfaces. The figures show effects of
the number of series terms and use of Lanczos sigma factors
to smooth Gibbs oscillations. The Fourier series of a doubly
periodic function with periods px and py has the approximate
form:

f(x,y) = sum( exp(2i*pi/px*k*x)*c(k,m)*exp(2i*pi/py*m*y),...
k=-n:n, m=-n:n)

If the function has discontinuities, a better approximation
can sometimes be produced by using a smoothed function fa(x,y)
obtained by local averaging of f(x,y) as follows:

fa(x,y) = integral(f(x+u,y+v)*du*dv, -s<u<+s, -s<v<+s )/(4*s^2)

where s is a small fraction of min(px,py). Wherever f(x,y) is
smooth, f and fa will agree closely, but sharp edges of f(x,y)
get rounded off in the averaged function fa(x,y). The Fourier
coefficients ca(k,m) for the averaged function are simply
ca(k,m) = c(k,m)*sig(k,m) where the sigma factors sig(k,m) are
sig(k,m) = sin(sin(2*pi*s*k/px)*sin(2*pi*s*m/py)/...
((2*pi*s*k/px)*(2*pi*s*m/py))
( SEE Chapter 4 of 'Applied Analysis' by Cornelius Lanczos )

Cite As

Howard Wilson (2022). Double Fourier Series Surface Plotting (https://www.mathworks.com/matlabcentral/fileexchange/24753-double-fourier-series-surface-plotting), MATLAB Central File Exchange. Retrieved .

MATLAB Release Compatibility
Created with R2007b
Compatible with any release
Platform Compatibility
Windows macOS Linux
Acknowledgements

Inspired: Fourier series with sigma approximation

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!