Why these two codes produce different graphs? How can I make the second graph be like the first?

2 visualizzazioni (ultimi 30 giorni)
Why these two codes produce different graphs? How can I make the second graph be like the first?
1st:
t=0:0.3:10;
step(c2d(tf(1,[1 1]),0.3),t);
2nd:
t=0:0.3:10;
[y,t]=step(c2d(tf(1,[1 1]),0.3),t);
plot(t,y)

Risposta accettata

Arnaud Miege
Arnaud Miege il 17 Giu 2011
Fangjun's correct. To get the same plot, use stairs:
stairs(t,y)
HTH,
Arnaud

Più risposte (1)

Fangjun Jiang
Fangjun Jiang il 17 Giu 2011
The results are same if you see it like this.
figure;
plot(t,y,'+');
I think the reason is: you are calculating the step response of a discrete system so the plot shown in your first step() line shows the results as the value at every discrete time step. The plot shown in your plot() line is interpreted by the plot() command.
See also
step(tf(1,[1 1]),t)

Categorie

Scopri di più su Line Plots in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by