Symmetry of an exponential result from a Fourier transform

  • #1
3
0
I used a matrix to calculate the fourier transform of a lorentzian and it did generate a decaying exponential but that was followed by the mirror image of the exponential going up. I am referring to the real part of the exponential. If I use an fft instead I also see this. Shouldn't the result be just a decaying exponential? Also the fft shows an imaginary component whereas my matrix does not. I don't think there should be an imaginary component since the lorentzian is an even function centered at zero. Perhaps the fft does not treat it as centered at zero. So I have two questions, one is why is the exponential going up in the second half of the real part and why does the fft show an imaginary part that the matrix method does not show?
 

Answers and Replies

  • #2
DrClaude
Mentor
7,497
3,774
I used a matrix to calculate the fourier transform of a lorentzian and it did generate a decaying exponential but that was followed by the mirror image of the exponential going up.
I guess that what you got at the end there is the negative-frequency components. See, e.g.,
https://dsp.stackexchange.com/questions/2818/extracting-frequencies-from-fft

Perhaps the fft does not treat it as centered at zero.
Exactly. It assumes that the first input element is at ##t=0##. If it is not, the result is equivalent to time shifting, which introduces a complex phase. You need to either shift back the complex phase or change the input, starting at ##t=0## and then use the periodicity implied by the Fourier transform to input at a later time the values corresponding to negative times in your case.
https://en.wikipedia.org/wiki/Fourier_transform#Translation_/_time_shifting
 
  • #3
Henryk
Gold Member
252
98
Oh, it's a matter of aliasing. I'm not sure if you heard about Nyquist theorem and that's the key to understand the first part of your question. For a finite set of N sample points, Nyquist theorem will tell you that you have only N/2 frequency components. However, when you do FFT of N points, you get exactly N values. The first half of the data represent the frequency components at 0, 1, 2, 3, etc. multiple of the fundamental frequency (Fundamental frequency is 1/total sampling time). The other half of the data correspond to aliased negative frequency data, that is, the last data point correspond to -1 * fundamental frequency, the second last is -2 fundamental frequency, etc.
That's why you observe the data point decaying for the first half of your spectrum, but exponentially raising in the second half. It is simply the result of frequencies actually decreasing in magnitude as index of array increases.
Similar thing explains why you getting complex values. If you want FFT to give you real values only (as you expect it should be) then, the first data point should be at t = 0, the second at t = dt, third at t = 2dt, etc. The data points at t < 0 should be placed at the end of the array and reflected back in time.
Or,
simply use Matlab FFT function that automatically centers both, time and frequency domain data
 
  • #4
DrClaude
Mentor
7,497
3,774
Oh, it's a matter of aliasing.
I disagree. This does not sound like the result of aliasing.

@Gama: It would be helpful if you could post some figures of what you get.
 

Related Threads on Symmetry of an exponential result from a Fourier transform

  • Last Post
Replies
5
Views
781
Replies
15
Views
1K
Replies
4
Views
6K
  • Last Post
Replies
2
Views
2K
  • Last Post
Replies
4
Views
1K
  • Last Post
Replies
6
Views
8K
  • Last Post
Replies
1
Views
700
  • Last Post
Replies
5
Views
1K
  • Last Post
Replies
5
Views
5K
Top