matlab中的diag(diag(a))是什么意思
发布网友
发布时间:2023-02-09 07:18
我来回答
共2个回答
热心网友
时间:2023-02-09 08:48
取出a阵的对角元,然后构建一个以a对角元为对角的对角矩阵。
A =
1 2
3 4
>> diag(diag(A))
ans =
1 0
0 4
matlab中diag用法:
= diag(v,k)
以向量v的元素作为矩阵X的第k条对角线元素,当k=0时,v为X的主对角线;当k>0时,v为上方第k条对角线;当k<0时,v为下方第k条对角线。
例:
>> v=[1 2 3];
>> x=diag(v,-1)
x =
0 0 0 0
1 0 0 0
0 2 0 0
0 0 3 0
下面不知是否是你想要的:
>> clear
>> v(1)=1;
>> n=5;%可以安自己需求
>> v(2:n)=2;
>> x=diag(v,-1)
x =
0 0 0 0 0 0
1 0 0 0 0 0
0 2 0 0 0 0
0 0 2 0 0 0
0 0 0 2 0 0
0 0 0 0 2 0
热心网友
时间:2023-02-09 10:06
diag(a) 是取出a的对角线元素
具体用法见下文