MATLAB Answers


FFT of wave packet, strange phase behaviour

Asked by David
on 18 Nov 2015
I'm computing the fft of a wave packet (centred at t= 0, odd number of entries!) to determine its frequency and phase. For this example I created a packet with a frequency of 10Hz and a phase of 1*pi. Waveform plot:
When plotting the fft results I can easily spot the frequency but two things bewilder me:
  1. The phase results of the fft jumps continuously between 2*pi and -2*pi.
  2. The amplitude also jumps between 0 and positive values. I would expect a lorentz peak centred at my frequency and continuously going down with its width being a measurement for the decay time of the waveform.
Anyone have an explanation for these two things? Is there an error in my code?
Y3 = fftshift(fft(ifftshift(waveform)));
plot(fVals, abs(Y3));
plot(fVals, angle(Y3));
Thanks in advance!
Fourier Transform Left side is the absolute value of the fourier transform. Right side is the angle.


Sign in to comment.

0 Answers