2016-02-26 48 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 
相關問題