Shifting a Square Wave in Matlab

11 views (last 30 days)
Hello,
I'm having trouble creating a square wave. I have created my square wave using the gensig function but now my goal is to shift the wave over 0.5 units to the left so that it reads 1 from 0 to 0.5.
Can anyone offer any solutions to this or give me advice?
Do I now have to use a different function?
Code:
[u,t]=gensig('square',0.5,5,0.001)
plot (t,u); axis([0 5 -2 2])

Accepted Answer

Walter Roberson
Walter Roberson on 24 Sep 2013
plot(t-0.5, u)

More Answers (1)

Azzi Abdelmalek
Azzi Abdelmalek on 24 Sep 2013
[u,t]=gensig('square',1,5+0.5,0.001)
u=u(t>0.5)
t=t(t<t(end)-0.5)
close
plot(t,u,'r')

Categories

Find more on Line Plots in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!