I'm very new to digital signal processing, so please let me know if my question doesn't make sense.

I calculated the amplitudes (using the formula : $10 \log_{10}(i^2 + q^2)$) for some IQ data that I recorded using GNU radio. I compare the highest calculated amplitude to the highest amplitude shown when processing the IQ data with a GNURadio fft sink (using peak hold). The numbers are significantly different in some cases.

In one case, the highest amplitude signal I found was +2.98 db. When I process the same data with a GNURadio FFT sink, it shows the highest amplitude as about -0.5 db.

In a second case, the python calculations find an amplitude of -23 db, while GNURadio finds a highest amplitude of about -64 db.

Should I expect the highest FFT amplitude to be similar to the highest amplitude found by calculating it for each IQ sample? I was assuming that the IQ data amplitude and the FFT amplitude would be similar, and I'm not sure if I'm doing something wrong in the IQ amplitude calculation.

Thanks in advance.

  • $\begingroup$ No. Different frequencies will constructively and destructively interfere in the time domain. This is a basic property of waves, be they electromagnetic waves or water waves. $\endgroup$ – Andy Walls Jul 5 '18 at 23:22
  • $\begingroup$ Thank you for the fast response! I think the math is correct (it seems fairly straightforward) but I was surprised to see the difference. I appreciate the help. $\endgroup$ – user2333312 Jul 6 '18 at 1:30

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.