FFT IFFT (single and double spectrum)

29 visualizaciones (últimos 30 días)
ckaeel
ckaeel el 11 de Dic. de 2013
Editada: Muhammad Waqar el 10 de Dic. de 2021
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

Respuestas (2)

Wayne King
Wayne King el 11 de Dic. de 2013
Editada: Wayne King el 11 de Dic. de 2013
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 comentarios
Wayne King
Wayne King el 11 de Dic. de 2013
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 el 12 de Dic. de 2013
The "artificial" signals can be generated in time or frequency domain, while the measured signal is only in frequency domain.

Iniciar sesión para comentar.


Muhammad Waqar
Muhammad Waqar el 10 de Dic. de 2021
Editada: Muhammad Waqar el 10 de Dic. de 2021
Hi there,
Here is a link to an easy-to-use function to perform fft or ifft along with an example:

Categorías

Más información sobre Fourier Analysis and Filtering en Help Center y File Exchange.

Productos

Community Treasure Hunt

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

Start Hunting!

Translated by