matlab中怎样创建一个对角矩阵

想创建一个大型对角矩阵,不知道怎么表示出来,希望高人指点谢谢

材料/工具:电脑、matlab软件

1、首先打开电脑上的“matlab”软件,在命令行窗口输入一个向量n,向量n有4个元素。接着使用diag函数生成对角矩阵。

2、diag(n,k)可以把向量放在第k条对角线上,k为正值,表示右上。k为负值,则表示左下。在命令行输入diag(n,2),即可把向量放在右上的第二条对角线上。

3、在命令行输入diag(n,-2),即可把向量放在左下的第二条对角线上,运行结果。

4、接下来在命令行输入一个矩阵,此处以随机矩阵为例,输入rand(3)生成3*3的随机矩阵A,结果。

5、下面使用diag函数提取矩阵A的对角线元素,对角线元素个数为3,提取的对角线元素。

6、使用命令diag(A,k)即可获得第k条对角线上的元素组成的向量,k为正值,表示右上。

7、k为负值,则表示左下。输入命令diag(A,1)即可获得右上的第1条对角线上的元素。

8、下面输入命令diag(A,-1)即可获得左下的第1条对角线上的元素。具体运行结果。

9、如果要根据矩阵的对角线元素生成对角矩阵,可使用两个diag函数,输入命令diag(diag(A)),即可使用A的对角线元素生成对角矩阵。

10、blkdiag函数可以根据多个矩阵生成准对角矩阵,此处使用rand(3)和ones(2),生成准对角矩阵,运行结果。

温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2017-05-19
楼上的格式有问题
应该是这样:
把对角线左成一个向量x
然后diag(x)即可
比如diag([1,2,3])本回答被网友采纳
第2个回答  2008-10-12
diag(a1,a2,...,an)创建对角阵
a1,a2,...,an是对角元素
第3个回答  2012-09-01
>> diag([1 2])
ans =
1 0
0 2
第4个回答  2008-10-12
刚学习这个软件,还不太了解。我也想知道
相似回答