About FFT of Exponential decay - two-sided
15 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Erick Zhou
am 8 Nov. 2018
Beantwortet: Erick Zhou
am 12 Nov. 2018
Dear Forum
I just do the FFT of a Exponential decay - two-sided
Fs=512;
N=2.^12;
t=[-N/Fs/2:1/Fs:N/Fs/2-1/Fs];
S=exp(-2*abs(t));
The FFT is:
Y = fft(S,N);
Ayy = (abs(Y));
Ayy(1)=Ayy(1)/N;% to get the amplitude of zero frequency component
Ayy(2:end)=Ayy(2:end)/(N/2); %to get the amplitude of other frequencies
Ayy=fftshift(Ayy);
F=([-N/2:N/2-1])*Fs/N;
plot(F,Ayy);
My question is the FFT of the Exponential decay - two-sided is not 4/(4+F.^2)(F is the frequency vector) shown as follows:
F=([-N/2:N/2-1])*Fs/N;
Ground_Truth=4./(4+F.^2);
figure;
plot(Ground_Truth);
The Equations of the Exponential decay-two-sided and its corresponding Fourier transform can be found in the website of "Fourier transform of typical signals" as follows: http://fourier.eng.hmc.edu/e101/lectures/handout3/node3.html
Would you please tell me why "Ayy" is different from "Ground_Truth" according to my Matlab code?
Many Thanks Erick
0 Kommentare
Akzeptierte Antwort
Miriam
am 8 Nov. 2018
Hi Erick,
I think the problem lies in your definition of "Ground_Truth". Based on the website you linked to, it should be defined using angular frequency:
Ground_Truth=4./(4+(2*pi*F).^2);
2 Kommentare
Miriam
am 9 Nov. 2018
Hi Erick,
I would suggest normalizing Ayy as follows (after taking the absolute value):
Ayy = Ayy/max(Ayy);
and removing the other two lines modifying amplitude.
Weitere Antworten (2)
Siehe auch
Kategorien
Mehr zu Discrete Fourier and Cosine Transforms finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!