How to update automatically the size of the output array in workspace after each code run?

When i run the code for the first time with the specified condition i get the solution (desiredLLP and desiredPV) which are 1x144 arrays (144 solutions).
If I change the conition in the highlithed if loop and make the interval smaller, I got for example 20 solutions but the problem is that the desiredLLP and desiredPV in workspace don't change their size to 1x20; they keep the size 1x144, so i get the first 20 solutions corrent, and the remaining elements of the array are values from the previous solution unless I delete the arrays manually from workspace before running the code.
This is the first problem. The second one, if i make the condition " if LLP(m)==0.5 "or any other value which is whithin the limits, I get the error "Undefined function or variable 'desiredLLP' " It worls only with the condition >=, <=, < or >

 Accepted Answer

desiredLLP = []; desiredPV = [];
before the for m loop.

4 Comments

Yes, suppose that no entries of LLP were between 0.5 and 0.51 then the arrays are going to come out empty.
Have you considered not using a loop at all?
mask = LLP >= 0.5 & LLP <= 0.51;
desiredLLP = LLP(mask);
deisredPV = Npv(mask);
This code without loop worked perfectly. Would you please explain it?
Thank you very much for your support.

Sign in to comment.

More Answers (0)

Categories

Find more on Mathematics in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!