Spectral Comparisons and Leakage
- Why doesn't the spectral line (i.e. peak amplitude) for my sinusoidal input match the peak amplitude of the time domain signal?
Why doesn't the spectral line (i.e. peak amplitude) for my sinusoidal input match the peak amplitude of the time domain signal? (These comments assume a single frequency continuous amplitude sinusoidal input signal)
As with all finite FFT signal processing, the data analysis is performed on a discrete portion of the time domain waveform. This portion is often referred to as a record or data frame. The data frame typically consists of 1024, 2048 or more contiguous data points. The frame size is generally a power of 2 in order to utilize certain "fast" or computationally efficient Fourier transform (FFT) modules. The FFT process assumes that the input signal will be synchronous to the input data frame. This means that there must be an integer number of waveform cycles in the data frame. As long as this criteria is met, then all energy of the input sinusoidal signal can be represented at a single FFT line. In this case, the spectral line magnitude will match the peak amplitude of the time domain waveform.
In most real world applications, the input frequency will not be integral to the data frame. In these cases, the energy of the sinusoid will be distributed between several adjacent spectral lines. This effect is often referred to as "leakage". As additional spectral lines are involved, the peak amplitude of the central/main spectral line is decreased from the theoretical value. The effects of leakage must be compensated if the user wishes to compare spectral line amplitudes to input time domain amplitudes accurately. This is especially true when utilizing single tone calibration type signals.
There are two general methods to minimize leakage effects: 1) Synchronous sampling or 2) Spectral windows. The synchronous sampling method requires that the ADC system adjust the data digitizing rate to ensure that the sinusoid is always integral to the data frame. This method usually requires specialized hardware and/or software, and is generally the most accurate for use with harmonic data type sources.
Application of a Spectral window is more commonly utilized due to the simplicity of the implementation. This method is like averaging/adding of adjacent spectral lines in order to compensate for the energy removed/spread from the fundamental frequency component. The spectral windows can be applied in time domain as a tapering function or in the frequency domain as a convolution. One drawback of the spectral windows is how to compensate for the change in signal energy caused by the windowing operation. The compensation for this effect can be selected to be Broadband or Narrowband. Another drawback of spectral windowing is the spreading effect on the spectral lines. Generally this effect is less significant compared to the improvement gained for single spectral line accuracy for peak amplitude measurements.
Once the choice has been made to use/apply a spectral window, then the compensation method must also be selected. Broadband compensation means that the total signal energy (power) is conserved. This means that all spectral lines, when properly summed together, will yield the same input power as in the original time domain signal. In this case, individual spectral lines can not be used as a direct indication of the original sinusoidal amplitude. Narrowband compensation sacrifices the signal power conservation in order to allow the individual spectral lines to reflect the original sinusoidal time domain amplitude.
So, if the spectral amplitudes (of a sinusoid) must be directly related to the time domain signal, then apply a spectral window (such as Hann, Blackman, etc.) and select the Narrowband compensation option. If synchronous sampling is available, then no windows should be applied. If the data is to be utilized remotely, then broadband compensation should be used to ensure that the spectral energy of the input signal is conserved.
Failure to heed the effects of leakage will cause lowering of the spectral line amplitudes relative to the expected theoretical values. Such effects can be as severe as a 3 dB lowering of spectral amplitude results.