 Can someone explain the procedure in FFT block? Does it perform the same
function as in Matlab? How can we relate this FFT block in gnuradio to
FFT function in matlab?

I have same question.
When I create in GRC a system to check as following:

Constant source(1)—> Vector to stream (1->64) ----> FFT(Reverse,64,
blackmanharris(64))—> throttle(32k) —> complex to mag^2 —> Number
sink ( or file sink and read back in octave)

The result I have is that : 242,38333770 and 63 values near to 0
But in Matlab, the result should be : 1 and 63 values is 0

Can anyone explain it for me?

Duc Toan N. wrote in post #1123456:

I have same question.
When I create in GRC a system to check as following:

Constant source(1)—> Vector to stream (1->64) ----> FFT(Reverse,64,
blackmanharris(64))—> throttle(32k) —> complex to mag^2 —> Number
sink ( or file sink and read back in octave)

The result I have is that : 242,38333770 and 63 values near to 0
But in Matlab, the result should be : 1 and 63 values is 0

Can anyone explain it for me?

I read through the code inside the GNU Radio and the qa_fft.py which is
test file for fft operation, an I found that he FFT block is the same in
Matlab and IFFT is little bit different to Matlab as following:
FFT:
Data source --> gr.fft_vcc(FFT_size, True,[], False,1) —> Destination
is the same result in Matlab
IFFT:
Data souce --> gr.fft_vcc(FFT_size, False,[], False,1)—> Multiple
constant 1/32 —> the same result in Matlab

I hope it is useful.
Cheers,
Toan Nguyen

This forum is not affiliated to the Ruby language, Ruby on Rails framework, nor any Ruby applications discussed here.