yn120 发表于 2009-11-16 12:18

MATLAB ecel的错误

在matlab中求下列11阶下三角方阵的行列式出现BUG:正确应该为0,而结果为  -246.不知是什么原因?
b=[1           0           0           0           0           0           0           0           0           0           0
   -70           1           0           0           0           0           0           0           0           0           0
   -66         -70           1           0           0           0           0           0           0           0           0
   -63         -67         -72           1           0           0           0           0           0           0           0
   -59         -61         -64         -66           1           0           0           0           0           0           0
   -59         -59         -61         -62         -69           1           0           0           0           0           0
   -59         -59         -59         -60         -66         -71           1           0           0           0           0
   -61         -59         -59         -59         -63         -67         -71           1           0           0           0
   -64           9         -59         -59         -61         -64         -67         -71           1           0           0
   -71         -66         -62         -60         -59         -60         -62         -64         -68           0           0
    0         -69         -65           0         -59         -59         -60         -62         -65        1231           1]
d=det(b)

buct 发表于 2009-11-16 17:33

可能是病态矩阵 maltab不一定是对的 问问学数学的专业人士

厚积薄发 发表于 2009-11-19 18:00

我测试了一下,问题出在b(11,10)=1231上,当适当的改变这个数时候,det(A)可能等于0

yn120 发表于 2009-11-19 22:43

看来,matlab软件,包含excel(也有同样错误):在数值计算中含有BUG,我不知道将来好能不能相信这些应用软件,是不是开发者为防止盗版故意留下BUG。这么简单的行列式运算都会出现问题。
页: [1]
查看完整版本: MATLAB ecel的错误