I want to draw this step function by script code.

3 次查看(过去 30 天)

回答(2 个)

Chunru
Chunru 2022-8-27
编辑:Chunru 2022-8-29
t = linspace(0,11)';
x = square(t*0.25*2*pi);
min(x)
ans = -1
plot(t,x)
ylim([-1.1 1.1])
% Manually specify the points
t = [0 5 5 7 7 9 9 10];
x = [0 0 1 1 -2 -2 1 1];
figure
plot(t, x);
box on
grid on
ylim([-2.2 1.2])
  3 个评论
Chunru
Chunru 2022-8-27
Then you specify time and amplitude as two vectors.

请先登录,再进行评论。


Sam Chak
Sam Chak 2022-8-27
I'll show you the basic concept of how to construct this 5-sec delayed square wave.
t = linspace(0, 6, 601); % 11 minus 5-sec delayed, need to generate data for nett 6 seconds
f = (2*pi)/4 % angular frequency with a period of 4 seconds
x = sin(f*t); % base function for the signum function to switch
y = 3/2*sign(x) - 1/2; % square wave function
plot(t+5, x, t+5, y) % 5-sec delayed
grid on, xlim([0 12]), ylim([-3 2]), xlabel('t'), ylabel('y(t)')

标签

Community Treasure Hunt

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

Start Hunting!

Translated by