Specific to electromagnetic waves, a simple sine wave carrier is actually a spiral in 3-space. So it's complex. Looking at a 2d projection/slice is sort of ... wrong. The physical reality of radio waves is that they're inherently complex.
You can look at the cover or Rick Lyons' "Understanding Digital Signal Processing" for a picture of this.
https://www.amazon.com/Understanding-Digital-Signal-Processing-3rd/dp/0137027419
Man I forgot about this website. Helped to bounce Oppenheim off this website to just condense it down into something practical
https://www.amazon.com/dp/0137027419
This was also a very practical book. You can probably find the international edition on eBay for cheaper
Understanding digital signal processing by Richard G. Lyons is a great book for beginners and professionals alike.
[Understanding DSP (third edition)](https://smile.amazon.co.uk/Understanding-Digital-Signal-Processing-United/dp/0137027419) by Rick Lyons is very good and very accessible.
Check out these online classes!
Fourier Transform: https://www.udemy.com/share/101ZMO3@IMdarKix6R2BYvVSNZ7WFx1BSX_vPfPe1iKHQEHVR5nVaEMMoBQD_MM6M5VTeyG_TQ==/
Signal Processing: https://www.udemy.com/share/101Yzu3@Zmb9OKmvEULHVq7_Va9f837vkK5oAdgPz_joT11q94jyGSCPAyR0f7t3czHe08Eswg==/
Audio Signal Processing: https://coursera.org/learn/audio-signal-processing
Check out these books!
Understanding Digital Signal Processing: https://www.amazon.com/dp/0137027419/ref=cm_sw_r_cp_api_i_CSQQG1DFRNKYA6KYHZP5
Julius Smith’s DSP series (free online books!): https://ccrma.stanford.edu/~jos/pasp/Book_Series_Overview.html
Although not specifically targeting FPGAs, “Understanding DSP” by Richard Lyons is very good. Very readable.
https://www.amazon.com/dp/0137027419/ref=cm_sw_r_cp_awdb_t1_FQ4ZCbSRHV7QQ
gnuradio would give you the ability to use things like gqrx of course, though with gnuradio you will have to identify a frequency and signal, decipher which modulation/encoding it is, and know how to properly interpret. It's seriously hard. I think you need to narrow down what you want to do, and do it on a per-protocol basis. E.g. I want to listen to NBFM repeaters, bluetooth, wifi, etc., then use specific tools.
Following Mathematica's convention of numbering list elements starting with 1, its i'th element corresponds to frequency:
freq[i] == (i-1) * baseFrequency.
where baseFrequency is equal to 1 / (time of all samples), which is 1 / (numberOfSamples / sampleFrequency). So,
freq[i] == (i-1) * sampleFrequency / numberOfSamples
So that is part of your answer, you can just put in the number and get an answer.
But to really understand it, you need to go a bit deeper.
A discrete signal (i.e., a signal sampled at discrete, equally spaced times) exhibits "aliasing". This means that sinoid signals at frequency f1 and frequency f2 that have identical amplitude and phase are precisely identical, if f1 and f2 are separated by a multiple of the sample frequency (read that a few times, slowly -- it is VERY central to any understanding of the DFT results).
Try, for example, this:
f1[t_] := Sin[440*2*Pi*t] f2[t_] := Sin[(48000*17 + 440)*2*Pi*t] s1 = N[Table[f1[i/48000], {i, 0, 10}]] s2 = N[Table[f2[i/48000], {i, 0, 10}]]
Aliasing means that the calculation given above is a simplified version of what is really going on:
freq[i] == (i-1) * sampleFrequency / numberOfSamples + k * sampleFrequency
This is true for any integer value of k. So the i'th element in the FFT actually corresponds to an infinite number of frequencies in the source signal that was sampled. That's what aliasing is: different frequencies in the source signal all look indistinguishable in the sampled signal.
There is a lot more to this. I highly recommend the following book to gain a deep understanding of what the FFT does, and how you should interpret its results:
http://www.amazon.com/Understanding-Digital-Signal-Processing-3rd/dp/0137027419
That book will give another important piece of the puzzle: what the rightmost elements in the FFT result really mean. Rather than interpreting them as "high" frequencies, it is much more useful to interpret them as negative frequencies. When looked at them in this way, the second element and the last element have the same, but opposite-signed frequencies, as have the third and next-to-last element, and so on. If you grasp that, it becomes obvious why a real valued signal gets this conjugated flipped version of the spectrum.
Hands down, no question, I would recommend Richard Lyons' book FIRST.