Window functions

Different window functions and their spectrum.

What is the purpose of window functions used in discrete Fourier transform (DFT)? Where to find a good reference discussing different window types?

DFT is a way to transfer discrete time domain data into a frequency spectra. It assumes that the sampling period is an integer multiple of the signal period, as it implicitly assumes periodic signals. Each periodic frequency component will fall in one discrete frequency bin. But in reality, things are never perfect, and small frequency offsets can be present. This can leave a discontinuity between the start and end of the signal, resulting in artifacts.

๐Ÿ”ถ Spectral lackage:

The signal will leak into the surroundings if the signals are not fully periodic. One way to enforce periodicity is to multiply the signal with a symmetric window to suppress the discontinuity.

๐Ÿ’Ž Use a windowing function if there is a discontinuity between the start and the end. Use the rectangular window for single pulses.

๐Ÿ”ถ Amplitude flatness:

If the signal frequency falls in between the discrete frequency bins, the amplitude might appear to be lower. Using now windowing (aka rectangular window) will underestimate the amplitude by 36 % in the worst case. 

๐Ÿ’Ž Using a flat-top window will keep the amplitude error low.

๐Ÿ”ถ Sidelobe suppression:

The presence of a sidelobe will cause artifacts because of signal leakage. There are special windows that have a high sidelobe suppression. But the signal-to-noise ratio defines what sidelobe suppression is reasonable in practice.

๐Ÿ’Ž It is sufficient if the sidelobes are below the noise floor of the measurement.

๐Ÿ”ถ Bandwidth:

Signals within the bandwidth of the window will be summed together. This limits the separability of adjacent signals. At the same time, the noise within the bandwidth will  also be accumulated.

๐Ÿ’Ž Use windows with a narrow bandwidth to reduce the accumulation of noise and enhance the resolution.

As usual, there is always a compromise between the different parameters, and that is the reason for the existence of the different windows.

Read that paper if you are interested in all the details. This publication really helped me to understand the aspects of windowing and covers the topic entirely. I also like that publication, as it provides a quick reference on the properties of the different window functions. It helped me many times over the last decade, and that is why I want to highlight this publication:

Heinzel, G., Rรผdiger, A., & Schilling, R. (2002). Spectrum and spectral density estimation by the Discrete Fourier transform (DFT), including a comprehensive list of window functions and some new flat-top windows. 

๐ŸŒhttps://hdl.handle.net/11858/00-001M-0000-0013-557A-5