2016-02-26 87 views
0

我试图存储值阵列xx并为每个新的循环反复(i)我想(j)除以数值来获取存储在新列(k)改变变量的值,并将其存储在阵列

我的问题是,(j)不会改变每个新的循环迭代,我得到的整个数组相同的值。

任何人都知道如何解决这个问题?

我想在第一列中的变量1/jj=0.01以及用于第二列j=0.02

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 

结果

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 ... 

干杯!

回答

1

您正在使用错误的循环,您不需要第三个循环。只需在开始时创建向量j并在计算中使用值j(k)

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 
相关问题