FFT IFFT (single and double spectrum)

34 次查看(过去 30 天)
ckaeel
ckaeel 2013-12-11
Dear All,
I'm trying to figure out how it's correct to use the ifft: doubling or not the spectrum. Applying a fft on a signal in time domain will provide a double sided spectrum signal in frequency domain. Then, suppose that I keep only one side of the spectrum (applying all the necessary scaling factors). Later, if I want to go back in time domain, I double again the spectrum and then, using other scaling factors, I apply the ifft transform. Everything works fine.
The problem arises when I have a signal measured in frequency domain. This signal is a complex single sided signal. Do I still have to double its spectrum in order to apply correctly the ifft? The signal is measured using a VNA. The VNA has also the option to evaluate the time signal using an iCZT. I implemented this transform in Matlab and using the measured signal in frequency domain (one sided spectrum) I obtained the same results as the one given by the VNA. I've also used an ifft (and one sided spectrum signal), and again I obtained the same result. My question is: who is right and who is wrong - one side or two side spectrum ?
Regards,
AndMJ

回答(2 个)

Wayne King
Wayne King 2013-12-11
编辑:Wayne King 2013-12-11
What are you doing to the signal that you have to use the inverse Fourier transform?
If you are trying to filter the signal, then it's better to filter a different way.
Scaling the output of fft() is only necessary when you are trying to conserve power or energy and you are throwing away 1/2 the information because your signal is real-valued.
Depending on what you are trying to do, it may be absolutely unnecessary to scale the output.
  3 个评论
Wayne King
Wayne King 2013-12-11
but you've acquired the data in the time domain, so why not use that? Why is there a need to get the time domain data from inverse Fourier transforming the frequency data?
ckaeel
ckaeel 2013-12-12
The "artificial" signals can be generated in time or frequency domain, while the measured signal is only in frequency domain.

请先登录,再进行评论。


Muhammad Waqar
Muhammad Waqar 2021-12-10
编辑:Muhammad Waqar 2021-12-10
Hi there,
Here is a link to an easy-to-use function to perform fft or ifft along with an example:

产品

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by