Storing values from a loop in an array

14 ビュー (過去 30 日間)
Jamie
Jamie 2025 年 4 月 22 日
コメント済み: Jamie 2025 年 4 月 22 日
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!

採用された回答

Matt J
Matt J 2025 年 4 月 22 日
編集済み: Matt J 2025 年 4 月 22 日
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);
  1 件のコメント
Jamie
Jamie 2025 年 4 月 22 日
Hi Matt,
Thanks, worked like a charm!

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeLoops and Conditional Statements についてさらに検索

タグ

製品


リリース

R2024b

Community Treasure Hunt

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

Start Hunting!

Translated by