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

作者:小胖吴 | 创建时间: 2023-05-02
介绍如何使用MATLAB的diag函数进行多种对角线有关操作。...
MATLAB如何获取矩阵对角线以及生成对角矩阵?

操作方法

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

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

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

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

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

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

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

温馨提示

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

更多推荐