我的对角矩阵A = diag(a,b,c,d,e,f)
是 6x6 矩阵。由此我想要通过以下方式指定 4x6 矩阵:
B(1, :) = [a b 0 0 0 0]
B(2, :) = [0 0 c 0 0 0]
B(3, :) = [0 0 0 d e 0]
B(4, :) = [0 0 0 0 0 f]
我的逻辑是这样的:添加索引未除以3的两行并将其放在这两行的第一行...然后删除所有带偶数索引的行。
答案 0 :(得分:1)
一个简单的for
- 循环会这样做:
diagvalues = [10:15];
A = diag(diagvalues);
B=[];
for i = 1:length(diagvalues)
if mod(i,3) == 1
B(size(B,1)+1,:) = A(i,:) + A(i+1,:);
elseif mod(i,3) == 0
B(size(B,1)+1,:) = A(i,:);
end
end
您可以根据需要更改诊断向量。