2
A
回答
1
實施例如何使用的任意數量的使用blkdiag輸入矩陣:
m = {[1,2; 3, 4]; [10, 11, 12; 13, 14, 15; 16, 17, 18]}; %cell array of matrices
A = blkdiag(m{:})
然後,您可以通過複製矩陣進大矩陣A
for(i=1:k-1)
row_begin = 1 + (i-1)*n;
row_end = row_begin + n - 1;
col_begin = 1 + i*n;
col_end = col_begin + n - 1;
A(row_begin:row_end, col_begin:col_end) = B
end
等等
如果你的矩陣是非常大,但非常稀疏,你的算法保留稀疏,你可以考慮構建sparse matrix。
+0
嗨,謝謝你的解決方案,但是你錯過了C_n第一列。什麼是最好的做法? – user3701257
+0
看看我如何做B,你應該能夠弄清楚 –
相關問題
- 1. MATLAB - 用子矩陣創建矩陣
- 2. Hudson的經驗 - 建築矩陣項目
- 3. Matlab - 矩陣陣列
- 4. 從MATLAB矩陣陣列創建對角線矩陣
- 5. 在MATLAB矩陣
- 6. Matlab大矩陣
- 7. 在matlab中創建塊三對角矩陣
- 8. 從MATLAB中的矩陣和矢量創建三維矩陣
- 9. 矩陣矩陣在Matlab中的數組?
- 10. Matlab:重塑矩陣來分隔矩陣
- 11. 循環陣列矩陣matlab
- 12. 乘法矩陣Matlab
- 13. Matlab 3D矩陣圖
- 14. MATLAB矩陣變換
- 15. 矩陣生成MATLAB
- 16. cellarray在矩陣matlab
- 17. MATLAB矩陣運算
- 18. Matlab生成矩陣
- 19. MATLAB - 矩陣組合
- 20. MATLAB矩陣問題
- 21. 矩陣計算MATLAB
- 22. 如何在Matlab中從矩陣(塊)和數字(重複次數)創建塊矩陣?
- 23. 從Matlab中的矩陣構建地圖
- 24. MATLAB矢量創建一個矩陣
- 25. 建立一個矩陣,在MATLAB
- 26. MATLAB矩陣建設的意見
- 27. 在MATLAB中創建符號矩陣R2009b
- 28. Matlab-創建細胞混淆矩陣
- 29. 創建這個矩陣在MATLAB
- 30. MATLAB:從循環值創建矩陣?
'out = blkdiag(m1,m2,m3,m4,...),'並從那裏閱讀'blkdiag'的文檔http://www.mathworks.com/help/matlab/ref/blkdiag .html – bla
@bla但'k'各不相同,所以當你不知道'k'時,如何使用'blkdiag(m1,m2,m3,...)'這一行? – user3701257
創建一個單元格數組並用k遍歷它也可以。關鍵是你做'A =零(k * n,k * n)',然後在適當的地方複製東西。如果你正在做'A = [A,blah];'這樣的東西,效率會很低 –