Fourier transform of impulse function
    조회 수: 25 (최근 30일)
  
       이전 댓글 표시
    
I calculated the Fourier transform of a pulse function(figure 1) Using the fft function. However The fft result if kind of weird. Can anyone check if my code is right. //Thanks
clc
clear all
close all
t1=7.0e-08;
sigma=1e-08;
t=linspace(0,4.0000e-7,1000);
P=exp(-(t-t1).^2./sigma.^2);
P_FT=fft(P);                  %fourier transform of P
figure(1)                                     
plot(t*10^6,P);
grid on
xlabel('time[\mus]')
ylabel('amplitude[a.u]')
figure(2)                                     
plot(P_FT);
grid on
채택된 답변
  Star Strider
      
      
 2017년 2월 28일
        
      편집: Star Strider
      
      
 2017년 2월 28일
  
      The Fourier transform of an impulse function is uniformly 1 over all frequencies from -Inf to +Inf. You did not calculate an impulse function.
You calculated some sort of exponential function that will appear as an exponential function in the Fourier transform.
Your slightly modified code:
t1=7.0e-08;
sigma=1e-08;
L = 1000;
t=linspace(0,4.0000e-7,L);
Ts = mean(diff(t));
Fs = 1/Ts;
Fn = Fs/2;
P=exp(-(t-t1).^2./sigma.^2);
P_FT=fft(P)/L;                  %fourier transform of P
Fv = linspace(0, 1, fix(L/2)+1)*Fn; % Frequency Vector
Iv = 1:length(Fv);                  % Index Vector
figure(1)                                     
plot(t*1E+6, P);
grid on
xlabel('time[\mus]')
ylabel('amplitude[a.u]')
figure(2)                                     
plot(Fv, abs(P_FT(Iv))*2);
grid on
The correct representation of the Fourier transform of your signal is in figure(2).
댓글 수: 2
  Star Strider
      
      
 2017년 2월 28일
				I answered you in the email you sent. The essence of that being that you can use Laplace transforms to solve partial differential equations in time-domain and space-domain by converting them to ordinary differential equations in s-domain and space-domain. That is relatively straightforward with Laplace transforms but much more difficult with Fourier transforms, since they can involve complex frequency variables. Those are much more difficult to work with.
I do not understand the problem you want to solve.
추가 답변 (1개)
  Walter Roberson
      
      
 2017년 2월 28일
        plot() with one argument that is complex-valued (hint!) plots real() of the parameter against imag() of the parameter.
댓글 수: 0
참고 항목
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!



