声振论坛

 找回密码
 我要加入

QQ登录

只需一步,快速开始

查看: 1879|回复: 2

[编程技巧] MATLAB求矩阵特征值排列问题

[复制链接]
发表于 2010-7-14 11:29 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?我要加入

x
我用MATLAB求矩阵特征值和特征向量显示如下
evects =

[            .2180,   -.2003-1.566*i,            .7613,   -.2003+1.566*i]
[           -2.109,    .6427+1.521*i,            .7772,    .6427-1.521*i]
[        -.2140e-2, .2589+.8416e-1*i,       -.2919, .2589-.8416e-1*i]
[           -6.379,    1.849+3.373*i,            .4653,    1.849-3.373*i]
evalue =

[            -2.815,                0.,                        0.,                0          .]
[                0., -.9570e-5+.7971*i,                0.,                 0           ]
[                0.,                0.,                    -9.185,                0.          ]
[                0.,                0.,                           0.,  -.9570e-5-.7971*i]
它是怎么排列的呢,我想让它如下显示怎么办
evalue =
        0 - 0.7971i        0                  0                       0         
        0                  0 + 0.7971i        0                       0         
        0                  0                 -2.8150                   0         


        0                  0                        0                -9.1850         
就是先显示复数形式的,因为下面我要用这个函数
[evects,evalue]=cdf2rdf(evects,evalue),像第一种那样是不行的,请高手指教,谢谢
回复
分享到:

使用道具 举报

发表于 2010-7-15 12:47 | 显示全部楼层
用sort 函数
[v,d] = eig(k,m);   %eig函数求解特征值问题
tempd=diag(d);               %记录特征值
[nd,sortindex]=sort(tempd);  %对特征值排序
v=v(:,sortindex);            %特征向量排序
 楼主| 发表于 2010-7-15 15:44 | 显示全部楼层

回复 沙发 wei_x 的帖子

研究中,谢谢
您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

QQ|小黑屋|Archiver|手机版|联系我们|声振论坛

GMT+8, 2024-11-16 16:02 , Processed in 0.072828 second(s), 17 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表