I used the Matlab function
fft but I am not sure which function is the correct inverse to go back to the time domain.
Yes it is ifft(). If it is non radix two, the algorithm that is implemented would be DFT.
You can write the equation of the IFFT with normalizing factor (1/sqrt(N)) instead of (1/N), then you have to multiply the time domain counterpart with sqrt(N).
2$\begingroup$ The DFT is never implemented directly when the function
fft()is called. There are many special algorithms implemented for all possible FFT lengths. Some are slower (e.g. for prime lengths) and some are faster (e.g. powers of 2), but all are faster than a direct implementation of the DFT. $\endgroup$– Matt L.Jan 23, 2015 at 10:03
1$\begingroup$ @MattL.m=, thanks for the endorsement above. it's not worth an answer because maybe the question should be closed. anyway, just for the sake of semantics, i think you should change "directly" to "naïvely". all FFTs are DFTs. not all DFTs are FFTs. $\endgroup$ Jan 23, 2015 at 21:12
1$\begingroup$ @robertbristow-johnson: Yeah, you know what I mean, just implementing the DFT sum as it is. I can't change the comment anymore, could just delete and re-write it, but I guess people know now what I meant. $\endgroup$– Matt L.Jan 25, 2015 at 9:43