Array indices must be positive integers or logical values.

for i = 1:dt:tEmpty
heightArray(1,i) = sqrt(h1) - (.5 * k .* timesArray(i))^2;
flowRateArray(1,i) = sqrt(2 * g .* heightArray(1,i));
massFlowRateArray(1,i) = exitHoleArea * p .* flowRateArray(1,i);
end
Here is the Error message I am getting.
Array indices must be positive integers or logical values.
Error in Luke_Witherow_hw4>drainTank_Loop (line 53)
heightArray(1,i) = sqrt(h1) - (.5 * k .* timesArray(i))^2;

 採用された回答

Star Strider
Star Strider 2022 年 2 月 28 日

1 投票

Try this —
iv = 1:dt:tEmpty;
for i = 1:numel(iv)
heightArray(1,i) = sqrt(h1) - (.5 * k .* timesArray(i))^2;
flowRateArray(1,i) = sqrt(2 * g .* heightArray(1,i));
massFlowRateArray(1,i) = exitHoleArea * p .* flowRateArray(1,i);
end
I am guessing that ‘dt’ is not an integer, and that is throwing the error.
.

2 件のコメント

Luke Witherow
Luke Witherow 2022 年 2 月 28 日
Thank you, this worked!
Star Strider
Star Strider 2022 年 2 月 28 日
As always, my pleasure!

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

その他の回答 (0 件)

カテゴリ

製品

リリース

R2021b

タグ

Community Treasure Hunt

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

Start Hunting!

Translated by