How do I plot a function which depends on a changing variable?
2 views (last 30 days)
Show older comments
So I have to plot the movement of a spring once let go for -2<t<20 given yo=5(distance the spring is stretched initially), w=5(angular frequency), k=0.1/s. It has to be done using a for loop and if statements.
I am new to matlab so I don't know what to do from here. Thank you.
Here's the code I have:
t = -2;
yo = 5;
w = 5;
k = 0.1;
for t = -2:20
if t < 0
y = -yo;
elseif t < 10
y = -yo*(cos(w*t));
else
y = -yo*(cos(w*t))*exp(-k*(t-10));
end
t = t + 0.1;
end
0 Comments
Accepted Answer
Jim Hokanson
on 5 Dec 2017
You could use something like animatedline if you want to calculate a single point and add it to a graph. If you want to use a loop the more typical approach is to initialize t and y, then loop over t and update y.
t_all = -2:0.1:20;
y = zeros(1,length(t_all));
for i = 1:length(t_all)
t = t_all(i);
y(i) = ...
end
plot(t_all,y)
0 Comments
More Answers (0)
See Also
Categories
Find more on Animation 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!