Re: [討論] 如何將區塊矩陣重排
※ 引述《janghang (人生如戲)》之銘言:
假設我有一些已知的矩陣A、B、C...etc,這些矩陣都是方陣而且維度相同
那我要怎麼排成如下的大矩陣:
[A B C D . . . ]
[B A B C . . . ]
[C B A B C . . ]
[D C B A B C . ]
[. . . . . . . ]
[. . . . . . . ]
(這個大矩陣的對角線元素A)
如果只有A、B、C,是可以用矩陣合併的技巧,拚成[ABC]
[BAB]
[CBA]
但因為有很多個,所以怎麼有系統化的排列呢?
我想用for迴圈,但是一直遇到dimension mismatch的問題
clear all;clc;
A=ones(3,3);
B=2*A;
C=3*A;
D=4*A;
E=5*A;
F=6*A;
G=7*A;
[n m]=size(A);
temp = [A B C D E F G];
Output = A;
for times=1:((7-1)/2) % 7 是指 A-G 7個 matix
X0 = temp( :, 1:(2*times+1)*n );
X1 = X0(:,(n+1):end-n);
Output = [ X0' [ X1; Output; X1(:,end:-1:1) ] X0(:,end:-1:1)' ]
end
試試看吧
--
推
02/08 13:59, , 1F
02/08 13:59, 1F
→
02/08 13:59, , 2F
02/08 13:59, 2F
※ 編輯: peter0318 來自: 140.113.128.199 (02/05 21:07)
推
02/05 21:50, , 3F
02/05 21:50, 3F
→
02/05 21:50, , 4F
02/05 21:50, 4F
→
02/05 22:39, , 5F
02/05 22:39, 5F
討論串 (同標題文章)
完整討論串 (本文為第 2 之 7 篇):