2014-06-25 44 views
-3

對角矩陣我在JavaScript中的以下矩陣,與庫math.js建模:哪些代碼可以被用來創建在JavaScript

<script src='math.js' src='sylvester.js' type='text/javascript'></script>

var CN = math.matrix([[8], [7],[3],[1]]) 

我想改變這種矩陣爲對角矩陣:
<script src='math.js' src='sylvester.js' type='text/javascript'></script>

var CN = math.matrix([[8,0,0,0], [0,7,0,0],[0,0,3,0], [0,0,0,1]]); 

我找不到個合適的代碼是這樣做的。
有人可以幫我使用適當的代碼嗎?

+6

編程不是關於「查找」代碼,而是寫入代碼。而這個社區是爲開發人員而不是複製人員,對不起。 – zerkms

+0

對於每個元素a [i],用a.length初始化一行零並更新第i個索引處的值。 –

回答

0

要使用math.js從矢量創建對角矩陣,可以使用函數math.diag。首先,雖然你將不得不將輸入矩陣變成一個向量,如下所示:

var A = [[8], [7], [3], [1]]; 
var B = math.transpose(A); // B = [[8, 7, 3, 1]] 
var C = math.squeeze(B); // C = [8, 7, 3, 1] 
var D = math.diag(C);  // D = [[8,0,0,0], [0,7,0,0],[0,0,3,0], [0,0,0,1]] 
+0

謝謝,這對我幫助很大! – user3775012

相關問題