Storing values from a loop in an array

3 Ansichten (letzte 30 Tage)
Jamie
Jamie am 22 Apr. 2025
Kommentiert: Jamie am 22 Apr. 2025
Hi everyone!
I'm trying to run a loop that saves every value after every iteration until it reaches 0 at which point the loop ends.
My code is as follows:
for y = [y;]
if y>=0
dV_y = (dt/m)*((0.5*rho*C_D*S)-m*g);
dy = dV_y*dt;
y = y+dy;
end
end
The loop runs 1 time and doesn't save it as an array.
Any help will be greatly appreciated, thanks!

Akzeptierte Antwort

Matt J
Matt J am 22 Apr. 2025
Bearbeitet: Matt J am 22 Apr. 2025
N=1e7; %Maximum allowed number of iterations.
ysave=nan(1,N);
for i=1:N
dV_y = (dt/m)*((0.5*rho*C_D*S)-m*g);
dy = dV_y*dt;
y = y+dy;
ysave(i)=y;
if y<0,
break;
elseif i==N
warning 'Stopping threshold was not reached.'
end
end
y=ysave(1:i);

Weitere Antworten (0)

Kategorien

Mehr zu Loops and Conditional Statements finden Sie in Help Center und File Exchange

Tags

Produkte


Version

R2024b

Community Treasure Hunt

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

Start Hunting!

Translated by