Hi everyone,
Suppose that a FFT object has been defined and the fifo array stores 1024 time domain signal points. The first 1024 elements of fftData array are the same as the fifo array and the last 1024 elements of fftData array are all zeros:
dsp::FFT forwardFFT(10);
float fifo [1024];
float fftData [2048];
After the call of function performFrequencyOnlyForwardTransform (fftData): FFT.performFrequencyOnlyForwardTransform (fftData), what contents of each fftData array element? is each elementās value represents a frequency componentās magnitude? If so,what is that magnitudeās corresponding frequency value?
Any updates ? Is it possible that the fftData array after the FFT applying FFT.performFrequencyOnlyForwardTransform has in the first 1024 samples the amplitude and in the last 1024 samples the phase of the frequency samples?
I cannot understand why bother providing an array defined as fftData [2*fftSize] with double the size of fftSize , if this method provides as output only the magnitude of the frequencies?
A single size array should be enough.
This is because some of the underlying FFT implementations need to compute the complex output vector as an intermediate computation step before reducing this output down to the absolute values