Understanding FFT Windows
The Fast Fourier Transform (FFT) is the Fourier Transform of a block of time data points. It represents the frequency composition of the time signal. Figure 2 shows a 10 Hz sine waveform (top) and the FFT of the sine waveform (bottom). A sine wave is composed of one pure tone indicated by the single discrete peak in the FFT with height of 1.0 at 10 Hz.
FFT based measurements are subject to errors from an effect known as leakage. This effect occurs when the FFT is computed from of a block of data which is not periodic. To correct this problem appropriate windowing functions must be applied. The user must choose the appropriate window function for the specific application. When windowing is not applied correctly, then errors may be introduced in the FFT amplitude, frequency or overall shape of the spectrum. This application note describes the phenomenon of leakage, the various windowing functions and their strengths and weaknesses, and examples are given for various applications.
Most dynamic signal analyzers (Figure 1) compute time and frequency measurements. Time measurements include capturing time traces of measured sig-
Figure 1. Dactron FocusTM (left) and the Dactron PhotonTM (right) Dynamic Signal Analyzers Figure 2. Time waveform of sine function (top) and FFT (bottom).
nals, including filtering and statistical measures. Frequency measurements that are computed by most DSAs include Fast Fourier Transform, Power Spectral Density, Frequency Response Functions, Coherence and many more. These signals are computed in the DSP from the digitized time data. Time data is digitized and sampled into the DSP block by block. A block is a fixed number of data points in the digital time record. Most frequency functions are computed from one block of data at a time. A block of data is also called a time record or time window.
The FFT computation assumes that a signal is periodic in each data block, that is, it repeats over and over again and it is identical every time. Note this was the case in Figure 2 because there are an interger number of cycles of the sine wave in the data record. Another type of signal that satisfies the periodic requirement is a transient signal that starts at zero at the beginning of the time window and then rises to some maximum and decays again to zero before the end of the time window.
When the FFT of a non-periodic signal is computed then the resulting frequency spectrum suffers from leakage. Leakage results in the signal energy smearing out over a wide frequency range in the FFT when it should be in a narrow frequency range. Figure 3 illustrates the effect of leakage. The left-top graph shows a 10 Hz sine wave with amplitude 1.0 that is periodic in the time frame. The resulting FFT (bottom-left) shows a narrow peak at 10 Hz in the frequency axis with a height of 1.0 as expected. Note the dB scale is used to highlight the shape of the FFT at low levels. The right-top graph shows a sine wave that is not periodic in the time frame resulting in leakage in the FFT (bottom-right). The amplitude is less than the expected 1.0 value and the signal energy is more dispersed. The dispersed shape of the FFT makes it more difficult to identify the frequency content of the measured signal.
When a Hanning window is applied (top-right), then the leakage is reduced in the FFT (bottom-right). The resulting spectrum is a sharp narrow peak with amplitude of 1.0. Notice that it does not have exactly the same shape as the FFT of the original periodic sine wave in Figure 3, but the amplitude and frequency errors resulting from leakage are corrected. A Windowing function minimizes the effect of leakage to better represent the frequency spectrum of the data.
Figure 4. Comparison of non periodic sine wave and FFT with leakage (left) to windowed sine wave and FFT showing no leakage (right).
Figure 3. Comparison of...