分享

Matlab中的diag函数用法

 飘渺o40uv5vs24 2023-02-10 发布于湖北

Matlab中的diag、tril、triu函数用法


1.diag函数生成对角矩阵

>> diag([1,2,3,4])	%默认是主对角线,列向量行向量都行

ans =

     1     0     0     0
     0     2     0     0
     0     0     3     0
     0     0     0     4
v:从主对角线位移,正表示上移
>> v = 1;
>> X = diag([1,2,3],v)

X =

     0     1     0     0
     0     0     2     0
     0     0     0     3
     0     0     0     0

2.diag函数读取矩阵对角线

>> diag(ans)	%接上

ans =

     1
     2
     3
     4
v:从主对角线位移,正表示上移
A =

     1     2     3
     4     5     6
     7     8     9
    11    12    13

>> v = 1;
>> diag(A,v)

ans =

     2
     6

3. tril与triu

这两个函数与diag用法相似,但不能生成矩阵

A =

     1     2     3
     4     5     6
     7     8     9
% 抽取矩阵的上三角【tri表示三角,u是up表示上】
>> triu(A)

ans =

     1     2     3
     0     5     6
     0     0     9
% 抽取矩阵的下三角【tri表示三角,l是low表示下】
>> tril(A)

ans =

     1     0     0
     4     5     0
     7     8     9

总结:

生成矩阵 diag(向量,位移)
读取矩阵 diag(矩阵,位移)【返回行向量】
抽取矩阵A对角线成新矩阵:diag(diag(A))

抽取矩阵 tril(矩阵,位移)【triu同理】

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多