MATLAB: Can anyone tell me the syntax to create a new variable in each iteration of for loop

for loopvariable

My aim is to create u_Q1_H1(n) for H=1, u_Q1_H2(n) for H=2…and so on…
for H=1:4
if ((u_Q1(n)*v_Q1(n))> (H*s_U*s_V))
u_Q1_H'num2str(H)'(n)= u_Q1(n);
v_Q1_H'num2str(H)'(n)= v_Q1(n);
end
end

Best Answer

Hi,
I strongly recommend to use cell arrays instead of creating variables that way:
u_Q1_H = cell(1, 4);
v_Q1_H = cell(1, 4);
for H=1:4
if ((u_Q1(n)*v_Q1(n))> (H*s_U*s_V))
u_Q1_H{H}(n)= u_Q1(n);
v_Q1_H{H}(n)= v_Q1(n);
end
end
Assuming there is some loop on n, you should initialize u_Q1_H{H} with zeros.
Titus