sympy atan 没有返回确切的值
sympy atan not returning exact value
以下输入,当运行通过sympy
atan(2+sqrt(3))
returns
1.30899693899575
而不是
5π/12
这是为什么?
如果您怀疑结果可以用 pi 表示,您可以尝试 nsimplify
并提示将 pi 作为常量给出。
>>> nsimplify(atan(sqrt(3) + 2), [pi])
5*pi/12
顺便说一句,您可以通过查看 eval
方法的源代码来了解任何三角函数可以识别哪些特殊值。
以下输入,当运行通过sympy
atan(2+sqrt(3))
returns
1.30899693899575
而不是
5π/12
这是为什么?
如果您怀疑结果可以用 pi 表示,您可以尝试 nsimplify
并提示将 pi 作为常量给出。
>>> nsimplify(atan(sqrt(3) + 2), [pi])
5*pi/12
顺便说一句,您可以通过查看 eval
方法的源代码来了解任何三角函数可以识别哪些特殊值。