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;

 Réponse acceptée

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 commentaires

Thank you, this worked!
As always, my pleasure!

Connectez-vous pour commenter.

Plus de réponses (0)

Produits

Version

R2021b

Community Treasure Hunt

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

Start Hunting!

Translated by