Pi,Matlab符号数学工具箱有bug吗?

时间:2012-10-16 18:20:58

标签: matlab symbolic-math

您好我有一个问题。当我在matlab中计算除法时:x /(pi。^ 2)

syms x
x/(pi.^2)
ans =
(281474976710656*v)/2778046668940015

正确答案是x / 9.8696,那么为什么matlab会给我这个结果呢?

这是一个错误吗?

2 个答案:

答案 0 :(得分:9)

您必须使用vpa()命令“变量精度算术”。检查此代码:

syms x real;       % define x as a real symbolic variable (not a complex variable)
vpa( x/(pi.^2), 5) % second argument define number of significant digits

对于涉及pi的三角表达式,有时定义sym('pi')是好的:

syms x real;
pi_s = sym('pi');
expr = x/pi_s^2

我尝试在使用符号工具箱时始终使用'真实'标签。如果你不使用它,你会看到许多复杂的共轭和其他对你的问题不重要的事情,因为x可能是真正的变量。

希望这有帮助,

答案 1 :(得分:2)

不,这不是一个错误:

2778046668940015/281474976710656 = 9.8696