Plot unit step function

5 views (last 30 days)
Corinne Dale
Corinne Dale on 3 Oct 2018
Commented: Star Strider on 19 Sep 2023
I'm trying to plot the signal u(t)-u(t-1) without heaviside in MATLAB. I've tried to use the if loop but couldn't figure it out.

Accepted Answer

Star Strider
Star Strider on 3 Oct 2018
You can use a ‘logical indexing’ approach:
ustp = @(t) +(t>0); % Simple Unit Step Function
t = linspace(-5, 5);
figure
plot(t, ustp(t)-ustp(t-1))
grid
I will let you figure out how it works.
  3 Comments
Vicky
Vicky on 19 Sep 2023
Can you explain how you wrote "@(t) +(t>0)"? It worked perfectly but I'm unsure what the @ is doing here. Thank you so much!
Star Strider
Star Strider on 19 Sep 2023
@Vicky — That is an anonymous function. It works the same way other functions do, and can be called similarly. The ‘@’ creates its function handle.
See the documentation on Anonymous Functions and What is a Function Handle? for details.

Sign in to comment.

More Answers (0)

Products


Release

R2017a

Community Treasure Hunt

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

Start Hunting!