What is the problem with my codes? I could not see the plot.
m=0.5;
k=5;
A=0.5;
w0=sqrt(k/m);
t1=1;
while (t1<10)
y1=A*sin(w0*t1);
t1=t1+1;
end
plot(t1,y1)

 采纳的回答

By the time you get to the plot command you only have a single value of t1 and a single value of y1 as you overwrite each of them each time through the while loop. You would be better to use a for loop here, something like:
t1 = 1:10
for i = 1:10
y1(i) = A*sin(w0*t1(i));
end

4 个评论

Thank you! it works. And i should make a plot of the velocity that is first derivative of displacement equation(y1)(A*sin(w0*t1(i))) again 10 times how can i do?
t1 = 1:10
for i = 1:10
y1(i) = A*sin(w0*t1(i));
dy1dt(i) = A*w0*cos(w0*t1(i));
end
Just add
v(i) = A*w0*cos(w0*t1(i));

请先登录,再进行评论。

更多回答(0 个)

类别

帮助中心File Exchange 中查找有关 Loops and Conditional Statements 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by