您好我有一个问题。当我在matlab中计算除法时:x /(pi。^ 2)
syms x
x/(pi.^2)
ans =
(281474976710656*v)/2778046668940015
正确答案是x / 9.8696,那么为什么matlab会给我这个结果呢?
这是一个错误吗?
答案 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