フィルターのクリア

Why I can not use ( -Inf , Inf) in the Limits of Integral for Inverse Fourier transform of X(w) = 1/(1+j*w) ?

2 ビュー (過去 30 日間)
Mohamad
Mohamad 2020 年 10 月 20 日
編集済み: Mohamad 2020 年 10 月 20 日
% Compute Inverse Fourier transform of X(w)=1/(1+j*w)
Hi , Please I need to peform Inverse Fourier Transform for X(w)=1/(1+j*w) , when I use the limits ( -Inf , Inf) in the integral I get incorrect results for x(t) , I used limits
( -5000 , 5000 I get correct x(t) , so please why I can not use ( -Inf , Inf) ?
Fs=100; % sampling frequency
dT=1/Fs;
t=0:dT:5; % Time vector
L=length(t);
w=linspace(-50,50,L); % Angular frequency range from -50 to 50 rad/sec
f = @(w) (1./(1+j*w).*exp(j*w.*t))/(2*pi); % perform Inverse Fourier Transform Integrand
xt = integral(f,-5000 ,5000,'ArrayValued',true); % perform Numerical integration to compute Inverse Fourier Transform
subplot(211)
plot(t,abs(xt),'LineWidth',1.25) ; grid on ;xlim([ -1 5 ]); ylim([0 1.2]) ; xticks(0:5) ; xlabel('Time in seconds ') ; ylabel('Amplitude') ; title('Inverse Fourier Transform')
ax = gca;
ax.XAxisLocation = 'origin';
ax.YAxisLocation = 'origin';
%% Compare the above result with the analytical solution
%% y(t)=exp(-t)u(t)
yt=exp(-t).*(t>=0);
subplot(212)
plot(t,yt,'LineWidth',1.25) ; grid on ;xlim([ -1 5 ]) ; ylim([0 1.2]) ; xticks(0:5) ; xlabel('Time in seconds ') ; ylabel('Amplitude') ; title('x(t) form analytical solution')
ax = gca;
ax.XAxisLocation = 'origin';
ax.YAxisLocation = 'origin';

回答 (0 件)

カテゴリ

Help Center および File ExchangeDiscrete Fourier and Cosine Transforms についてさらに検索

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by