12

I'm a software engineer working on DSP for the first time.

I'm successfully using an FFT library that produces frequency spectrums. I also understand how the FFT works in terms of its inputs and outputs, in particular the contents of the two output arrays: enter image description here

Now, my problem is that I'm reading some new research reports that suggest that I extract: "the energy, variance, and sum of FFT coefficients".

  1. What are the 'FFT coefficients'? Are those the values of the Real and Imaginary arrays shown above, which (from my understanding) correspond to the amplitudes of the constituent cosine and sine waves?

  2. What is the 'energy' of the FFT coefficients? Is that terminology from statistics or from DSP?

stackoverflowuser2010
  • 38,621
  • 48
  • 169
  • 217

2 Answers2

8
  1. You are correct. FFT coefficients are the signal values in the frequency domain.
  2. "Energy" is the square modulus of the coefficients. The total energy (sum of square modulus of all values) in either time or frequency domain is the same (see Parseval's Theorem).
Pablo
  • 8,644
  • 2
  • 39
  • 29
5

The real and imaginary arrays, when put together, can represent a complex array. Every complex element of the complex array in the frequency domain can be considered a frequency coefficient, and has a magnitude ( sqrt(R*R + I*I) ). Parseval's theorem says that the sum of all the Frequency domain complex vector magnitudes (squared) is equal to the energy of the time domain signal (which may require a scaling factor involving the FFT length, depending on your particular DFT/FFT library implementation).

One example of a time domain signal is voltage on a wire, which when measured in Volts times Amps into Ohms represents power, or over time, energy. Probably the word "energy" in the strictly numerical case is derived from historical usage from physics or engineering, where the numbers meant something that could burn your fingers.

hotpaw2
  • 70,107
  • 14
  • 90
  • 153
  • Thanks for the reply. I understand your statement "the sum of all the Frequency domain complex vector magnitudes is equal to the energy of the time domain signal". However, then, why would the research report say that they are using "the energy, variance, and sum of FFT coefficients"? Aren't the energy and sum of FFT coefficients the same? – stackoverflowuser2010 Aug 26 '11 at 17:35
  • No. The energy is the sum of the *squared modulus* of the coefficients. This is different to just the sum of the coefficients. It's hard to comment on what this research report is trying to say without more context. – Speedy Aug 28 '11 at 10:55
  • Yup. You have to square the voltage or spectral magnitudes to get the power into a constant load impedance, then scale. – hotpaw2 Aug 28 '11 at 17:14