作业帮 > 综合 > 作业

Matlab中eig命令问题

来源:学生作业帮 编辑:搜搜考试网作业帮 分类:综合作业 时间:2024/06/23 21:55:26
Matlab中eig命令问题
定义 A=[1 2 2;2 1 2;2 2 1];
[V,D]=eig(A);
为什么 用命令 D(1,1)==D(2,2) 得到的结果是:
ans=
0
Matlab中eig命令问题
A=[1 2 2;2 1 2;2 2 1];
[V,D]=eig(A)
V =
0.6206 0.5306 0.5774
0.1492 -0.8027 0.5774
-0.7698 0.2722 0.5774
D =
-1.0000 0 0
0 -1.0000 0
0 0 5.0000
>> D(1,1)==D(2,2)
ans =
0
可能是精度问题,请看:
>> format long
>> A=[1 2 2;2 1 2;2 2 1];
>> [V,D]=eig(A)
V =
0.620602439855266 0.530583903178712 0.577350269189626
0.149197919064235 -0.802749430154621 0.577350269189626
-0.769800358919501 0.272165526975909 0.577350269189626
D =
-1.000000000000001 0 0
0 -1.000000000000000 0
0 0 5.000000000000001
如果这样:
>> D(1,1)=1
D =
1.0000 0 0
0 -1.0000 0
0 0 5.0000
>> D(2,2)=1
D =
1.0000 0 0
0 1.0000 0
0 0 5.0000
>> D(1,1)==D(2,2)
ans =
1