This experiment gave me an opportunity for relearning concepts of structures in C as I looked for methods to represent complex numbers in a C program other than using arrays. The resulting code was generalized and could be used for any arbitrary value of N.
Using structures for performing operations on complex numbers made programming this experiment relatively simpler. I have used recursion in the FFT function which makes it functional for any radix-2 value of N, unlike the example codes provided, which had separate functions for different values of N. Because of this, the input signal of any length has to be first converted into a radix-2 form by appending the necessary amount of 0's and then calculating FFT. IFFT simply uses FFT for its calculation.
ReplyDeleteIt is used over DTFT because the inverse of DFT can be calculated, but not of DTFT.
DFT is used to obtain the frequency response of any time domain signal but FFT is used practically for fast computation.
ReplyDeleteDFT is practically used because its the sampled version(in frequency-domain) of DTFT , and computers can only handle finite values. It is Good that you are writing generalized code!
ReplyDeleteDFT always give periodic results and increasing the length by zero padding of the signal gives a better approximation of signal and resolution of spectrum increases
ReplyDelete
ReplyDeleteIt's a useful program for testing and understanding the DFT process