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)

 Respuesta aceptada

Alan Stevens
Alan Stevens el 8 de Mayo de 2022

0 votos

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 comentarios

Ömer Fatih Özdemir
Ömer Fatih Özdemir el 8 de Mayo de 2022
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?
Torsten
Torsten el 8 de Mayo de 2022
t1 = 1:10
for i = 1:10
y1(i) = A*sin(w0*t1(i));
dy1dt(i) = A*w0*cos(w0*t1(i));
end
Alan Stevens
Alan Stevens el 8 de Mayo de 2022
Just add
v(i) = A*w0*cos(w0*t1(i));
Ömer Fatih Özdemir
Ömer Fatih Özdemir el 8 de Mayo de 2022
Thank you.

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Loops and Conditional Statements en Centro de ayuda y File Exchange.

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by