数值的精度低,会有误差的。用字母的就好了。
例如下面解同样的精度数值是不一样的。对于字母的函数finverse用两次
会一样;数值的会有累计误差。
p=[1 0 -2 -5]
r=roots(p)
p =
1 0 -2 -5
r =
2.0946
-1.0473 + 1.1359i
-1.0473 - 1.1359i
syms x;
A=solve('x^3-2*x-5')
vpa(A)
ans =
2.0945514815423265914823865405793
1.1359398890889281862454926290294*i - 1.0472757407711632957411932702897
- 1.1359398890889281862454926290294*i- 1.0472757407711632957411932702897