Iterate values into array

Hi folks,
I have this data,
time = tbl.time;
Vv1 = tbl.Vv1;
Vv2 = tbl.Vv2;
IR6 = tbl.IR6;
f = [];
R = [];
Ratio = [];
L=[];
M=[];
for x = 3:height(Vv1)
G = tbl.Vv2(x)/tbl.IR6(x);
R(x) =[G];
Ratio = R(x);
end
xold=1
for i=1:length(Ratio);
xnew = ((xold-xold^2)*Ratio(i)) ;
L(i)=xnew;
M(i)=xold;
xold=xnew;
end
but for some reason each iteration of xnew and xold arent added to L or M ?

3 Comments

If you provide tbl within a mat file it will be much easier to troubleshoot.
xold=1
for i=1:length(Ratio);
xnew = ((xold-xold^2)*Ratio(i)) ;
The above line gives xnew as zero.....this what you want? You need to rethink on your logic.
for x = 3:height(Vv1)
G = tbl.Vv2(x)/tbl.IR6(x);
R(x) =[G];
Ratio = R(x);
end
The above lines, you need not to use loop.
I don't think either of these loops is necessary. Edward, you should try to rewrite your code with vectorixed operations, it will be faster, shorter, easier to read, and easier to debug.

Sign in to comment.

Answers (0)

Categories

Find more on Loops and Conditional Statements in Help Center and File Exchange

Tags

Asked:

on 2 Nov 2020

Commented:

on 20 Nov 2020

Community Treasure Hunt

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

Start Hunting!