How to create a matrix with while loop?

11 views (last 30 days)
Teb Keb
Teb Keb on 15 Feb 2022
Commented: Teb Keb on 15 Feb 2022
I have a problem where I have to calculate the time it will take for a fluid to leave a container using while loop and give the results in matrix array at every 0.10 second increments. This is the code I have so far:
v0=20;
A=3000;
t = 0;
m = [];
while vol<0
t=t+0.10;
vol=A-vol0*t;
m = [m;t,vol];
end
Basically my matrix should be something like:
%t %vol
0 2000
0.10 1000
0.20 500
t 0
% until vol becomes 0 and I want to find the time t when it becomes 0.
But somehow my matrix is 0x0. I can only create a matrix if I set the time to be known.
I know that it is inefficient to use while loop for this case. But I want to learn to create a matrix from while loop using this example.
Thank you,

Accepted Answer

KSSV
KSSV on 15 Feb 2022
vol=20;
A=3000;
t = 0;
m = zeros([],2) ;
iter = 0 ;
while vol>0
iter = iter+1;
t=t+0.10;
vol=A-vol*t;
m(iter,:) = [t,vol];
end
m
  3 Comments
Torsten
Torsten on 15 Feb 2022
Edited: Torsten on 15 Feb 2022
Because fluid can only leave the container as long as (while) the fluid volume is > 0, not < 0.

Sign in to comment.

More Answers (0)

Products


Release

R2021b

Community Treasure Hunt

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

Start Hunting!