多语言展示
当前在线:888今日阅读:113今日分享:31

MATLAB如何获取矩阵对角线以及生成对角矩阵?

介绍如何使用MATLAB的diag函数进行多种对角线有关操作。
工具/原料

MATLAB 2016a

方法/步骤
1

首先,对于一个给定的向量v,使用diag(v)可以根据该向量构造对角矩阵,如图。

2

使用diag(v,k)则可以把向量放置在第k条对角线上。k为正数表示右上,负数表示左下。

3

如果对于一个矩阵A使用diag(A),则会进行“相反”的操作:返回对角线元素组成的向量。

4

使用diag(矩阵,k)以获得第k条对角线上的元素组成的向量。

5

综上所述,如果我们要根据对角线元素生成矩阵,只需要嵌套两个diag函数即可。如图,diag(diag(C))

6

如果我们要求矩阵的迹,可以使用trace(C),也可以使用sum(diag(C))

7

如果我们要根据多个矩阵生成准对角矩阵,应该使用blkdiag(矩阵1,矩阵2...)

注意事项

如果要用diag生成矩阵,则第一个参数必须是向量,如果要获取对角线,则第一个参数必须是二维矩阵。

推荐信息