作者sunev (Veritas)
看板MATLAB
标题Re: [讨论] 如何将区块矩阵重排
时间Tue Feb 5 23:30:54 2013
※ 引述《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的问题
t=[A B C D E F G H];
n=8;[a b]=size(A);
t=reshape(t,[a b n]);
ind=hankel([1 n:-1:2],1:n);
t=reshape(t(:,:,ind),[a b n n]);
t=permute(t,[1 3 2 4]);
t=reshpae(t,[a*n b*n]);
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.112.54.158