DSPRelated.com
Forums

What is the meaning of complex values in results from an IFFT?

Started by Daniel Grace December 10, 2013
OK, I understand that when you do an FFT on an array of real values you get an array of complex numbers.  Where each complex number represents a frequency wave (sine), the magnitude representing amplitude of the wave and the argument (angle) representing the phase.  But when you do an IFFT, what does a complex number represent in the output array?  When you are working with IFFTs and audio data should you ignore the imaginary component in the IFFT result (in the time domain) ?
On Tuesday, December 10, 2013 12:55:18 PM UTC-5, Daniel Grace wrote:
> OK, I understand that when you do an FFT on an array of real values you get an array of complex numbers. Where each complex number represents a frequency wave (sine), the magnitude representing amplitude of the wave and the argument (angle) representing the phase. But when you do an IFFT, what does a complex number represent in the output array? When you are working with IFFTs and audio data should you ignore the imaginary component in the IFFT result (in the time domain) ?
To get real frequency values out of the IFFT, your data going in needed to have certain properties. Yes, your data going in to the IFFT needs to be Hermitian if you wish for the result to be purely real. IHTH, Clay
On Tue, 10 Dec 2013 09:55:18 -0800, Daniel Grace wrote:

> OK, I understand that when you do an FFT on an array of real values you > get an array of complex numbers. Where each complex number represents a > frequency wave (sine), the magnitude representing amplitude of the wave > and the argument (angle) representing the phase. But when you do an > IFFT, what does a complex number represent in the output array? When > you are working with IFFTs and audio data should you ignore the > imaginary component in the IFFT result (in the time domain) ?
Check the magnitude of the imaginary part -- if it's small enough to be numeric scrud, then that's probably just what it is. If it's big enough to be significant, then it's a symptom that you're doing something wrong. -- Tim Wescott Wescott Design Services http://www.wescottdesign.com
When you take an FFT of real values, you get something else: conjugate
symmetry. If you want an IFFT output with only real values, the IFFT input
must exhibit conjugate symmetry. 	 

_____________________________		
Posted through www.DSPRelated.com