2012-09-26 82 views
3

我正在嘗試使用for循環來爲某些變量分配一些矩陣。但我無法意識到這一點。我大概知道哪裏是我的錯,但我不知道是否有克服它如何爲變量分配一個矩陣?變量可以是一個矩陣變量嗎?


N = 10; 

for i = 1:1:N 

    P(i) = [x(i)^2 x(i)*y(i); 
     x(i)*y(i) y(i)^2]; 
end 

K = blkdiag(P); 

我想要分配矩陣P(I),然後用這些辦法P(i)創建一個塊對角矩陣。 但似乎我不能這樣做。有沒有其他的方法來創建這樣的塊對角矩陣?

回答

5

您可以使用一個單元陣列此:

for i = 1:10 
    P{i} = [x(i)^2 x(i)*y(i); 
      x(i)*y(i) y(i)^2]; 
end 
K = blkdiag(P{:}); 
+0

是的,它的作品!非常感謝! – user1698906