Labfans是一个针对大学生、工程师和科研工作者的技术社区。 论坛首页 | 联系我们(Contact Us)
MATLAB爱好者论坛-LabFans.com
返回   MATLAB爱好者论坛-LabFans.com > 工程数学软件 > MATLAB论坛
MATLAB论坛 一切MATLAB相关问题在此讨论。
回复
 
主题工具 显示模式
旧 2009-04-02, 15:12   #1
aubrey
初级会员
 
注册日期: 2009-04-02
年龄: 37
帖子: 1
声望力: 0
aubrey 正向着好的方向发展
默认 [求助]关于矩阵运算的问题

请问

e=max(eig(a))
v=null(a-e*eye(length(a)))

v为什么能是最大特征值对应的特征向量取负数呢

没明白第二句话

假设

a=[1,2,3;2,4,5;2,3,5]

a =

1 2 3
2 4 5
2 3 5

>> e=max(eig(a))

e =

9.5712

>> [x,y]=eig(a)

x =

0.3772 0.9409 0.0401
0.6899 -0.0495 -0.8338
0.6178 -0.3350 0.5506


y =

9.5712 0 0
0 -0.1735 0
0 0 0.6023

>> v=null(a-e*eye(length(a)))

v =

-0.3772
-0.6899
-0.6178

能算出来 可是不明白是怎么计算的

c=a-e*eye(length(a))

c =

-8.5712 2.0000 3.0000
2.0000 -5.5712 5.0000
2.0000 3.0000 -4.5712

为什么null以后就变成一个列向量了呢


不知道我说清楚没
aubrey 当前离线   回复时引用此帖
旧 2009-04-03, 09:10   #2
zhang770729
初级会员
 
注册日期: 2008-09-08
年龄: 47
帖子: 9
声望力: 0
zhang770729 正向着好的方向发展
默认 回复: [求助]关于矩阵运算的问题

这是一个线性代数零空间的求解问题,matlab给出的是其中的一个特解而已,后者的解实际上是过坐标原点和上述v单位化坐标的一条直线。所以和正负没有关系。上面c矩阵已经线性相关啦。
zhang770729 当前离线   回复时引用此帖
旧 2009-04-03, 13:14   #3
laosam280
高级会员
 
注册日期: 2008-11-07
住址: 湖南长沙
帖子: 233
声望力: 21
laosam280 正向着好的方向发展
默认 回复: [求助]关于矩阵运算的问题

首先,matlab进行特征值求解的时候是采用的迭代算法。你写的这句话v=null(a-e*eye(length(a))),是用原矩阵去减特征值为对角的矩阵,与matlab定义的求特征向量的式子是相反的,你可以在任意的数值计算的书上找到,顺序是 lamda*E - A,其中lamda是特征值,E是单位矩阵,A是已知矩阵。所以你求得的是负数就不奇怪了。
把v=null(e*eye(length(a))-a),运行一下,结果就如你所期待的。
laosam280 当前离线   回复时引用此帖
旧 2009-04-04, 12:40   #4
麒麟子
普通会员
 
注册日期: 2009-03-25
年龄: 37
帖子: 52
声望力: 18
麒麟子 正向着好的方向发展
默认 回复: [求助]关于矩阵运算的问题

我发了一个线性代数的课件,你看看吧,看了应该能懂,或者直接向我要:lol:
__________________
:水榭焚香听琴事,浪荡江湖不系舟:
感谢请点thanks
麒麟子 当前离线   回复时引用此帖
回复

主题工具
显示模式

发帖规则
不可以发表新主题
不可以发表回复
不可以上传附件
不可以编辑自己的帖子

启用 BB 代码
论坛启用 表情符号
论坛启用 [IMG] 代码
论坛禁用 HTML 代码



所有时间均为北京时间。现在的时间是 17:25


Powered by vBulletin
版权所有 ©2000 - 2025,Jelsoft Enterprises Ltd.