Bin Freq Magnitude
0 0 (DC) 2.5483305001488234E-16
1 Fs/8 920.0
2 Fs/4 4.0014578493024757E-14
3 3Fs/8 2.2914314707516465E-13
4 Fs/2 (Nyq) 5.658858581079313E-14
5 3Fs/8 2.2914314707516465E-13 # redundant - mirror image of bin 3
6 Fs/4 4.0014578493024757E-14 # redundant - mirror image of bin 2
7 Fs/8 920.0 # redundant - mirror image of bin 1
All the values are effectively 0 apart from bin 1 (and bin 6) which corresponds to a frequency of Fs/8 as expected.
Further research suggests fs is the sampling frequency
Thanks Paul. If I plot above data in frequency domain, I will get a spike at frequency bin 1, whose magnitude will be 920.0. Since the maximum amplitude in input data in our case is 230.0, am I not suppose to see that value as amplitude value for the plotted spike? Is there any relation between these two values?
There's probably a scaling factor of N = 8 in your FFT, and if you're interested in absolute values then you need to either add bin 1 and bin 6 (or just multiply bin 1 by 2). So your magnitude is 920 * 2 / 8 = 230.
What exactly is Fs? The number of samples seems consistent with the results here but then I presume you need to multiply it by something to get it into true units (since the scale of the input isn't specified)
Your output data looks correct. You've calculated the magnitude of the complex FFT output at each frequency bin which corresponds to the energy in the input signal at the corresponding frequency for that bon. Since your input is purely real the output is complex conjugate symmetric and the last 3 output values are redundant. So you have: