根据矢量填充矩阵的对角线

时间:2015-03-09 22:44:29

标签: matlab matrix

我想变换一个矢量

v = [1,2,3,4]

进入具有如下对角线的矩阵(4x4):

 1  2   3  4
 2  1   2  3
 3  2   1  2    
 4  3   2  1

3 个答案:

答案 0 :(得分:1)

您想要生成Toeplitz matrix,因此您应该使用toeplitz功能。

v = [ 1 2 3 4 ];
out = toeplitz(v)

out =

     1     2     3     4
     2     1     2     3
     3     2     1     2
     4     3     2     1

答案 1 :(得分:0)

如果A是您的4x4阵列,请执行以下操作:

A(1:5:end) = 1:4;

最佳

答案 2 :(得分:0)

v = [1 2 3 4];

A = gallery('circul',v);    
B = triu(A,0)+triu(A,1)';
相关问题