smiff
smiff

Reputation: 5

Changing variable value after each loop interation and store them in array

I'm trying to store values in array xx and for each new loop iteration (i) I want the values divided by (j) to get stored in a new column (k).

My problem is that the (j) don't change for each new loop iteration and I get the same values for the entire array.

Any one knows how to solve this?

I want the variable 1/j in the first column to be j=0.01 and for the second column j=0.02 etc.

  for i= 1:1:61
      for k=1:1:8
          for j=0.01:0.01:0.08'
              xx(i,k) = nthroot(Q(i)/((1/j)*B*(S0^(1/2))),5/3);
          end  
      end    
  end

result

xx =

0.7841    0.7841    0.7841    0.7841    0.7841    0.7841    0.7841    0.7841
0.7841    0.7841    0.7841    0.7841    0.7841    0.7841    0.7841    0.7841
0.7841    0.7841    0.7841    0.7841    0.7841    0.7841    0.7841    0.7841
0.7841    0.7841    0.7841    0.7841    0.7841    0.7841    0.7841    0.7841
0.7841    0.7841    0.7841    0.7841    0.7841    0.7841    0.7841    0.7841
0.7841    0.7841    0.7841    0.7841    0.7841    0.7841    0.7841    0.7841
0.7841    0.7841    0.7841    0.7841    0.7841    0.7841    0.7841    0.7841
0.8302    0.8302    0.8302    0.8302    0.8302    0.8302    0.8302    0.8302
0.8747    0.8747    0.8747    0.8747    0.8747    0.8747    0.8747    0.8747
0.9177    0.9177    0.9177    0.9177    0.9177    0.9177    0.9177    0.9177
0.9594    0.9594    0.9594    0.9594    0.9594    0.9594    0.9594    0.9594
1.0000    1.0000    ... 

Cheers!

Upvotes: 0

Views: 61

Answers (1)

Puck
Puck

Reputation: 2120

You are using wrongly the loops, you don't need the third loop. Just create the vector j at beginning and use the value j(k) in your computation.

j=0.01:0.01:0.08;
for i= 1:1:61
    for k=1:1:8
        xx(i,k) = nthroot(Q(i)/((1/j(k))*B*(S0^(1/2))),5/3);  
    end    
end

Upvotes: 1

Related Questions