signal fourier transform include unit step function

hey there. the question is this : x(t) = (exp(1)^-t)×u(t) note: u(t) is unit step function that has valeu 1 for (t >= 0) question is calcutlating X(w) the main idea is that (t) is symbol but u(t) only changes the range of fourier integral.
my code :
syms t;
t = linspace(-20, 20, 5000);
u = @(t) (t >= 0);
x = @(t) exp(1).^(-t).*u(t);
x_w = fourier(x(t))
error : check for missing argument or incorrect argument data type in call to function 'fourier'
i found that I can't handle that unit step function in x(t). when i don't have u(t) so I don't need t = linspace...... then every thing works great. but i need to solve this question

 采纳的回答

Try this version of your code:
syms t x(t)
% t = linspace(-20, 20, 5000);
% u = @(t) (t >= 0);
x(t) = exp(-t) * heaviside(t);
x_w = fourier(x(t))
producing:
x_w =
1/(1 + w*1i)
The parts I commented (%) are not necessary here.
.

4 个评论

good job!
is this format correct too?
syms t
x = @(t) exp(-t) * heaviside(t);
x_w = fourier(x(t))
Thank you!
Yes. When I ran it, the result was:
x_w =
1/(1 + w*1i)
This slightlly surprised me, because I did not believe that the Symbolic Math Toolbox recognised anonymous functions.

请先登录,再进行评论。

更多回答(0 个)

类别

帮助中心File Exchange 中查找有关 Fourier Analysis and Filtering 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by