【发布时间】:2014-03-22 00:08:47
【问题描述】:
我已经在 sympylive 和我自己最近的 Anaconda iPython 'sympy version 0.7.4.1' 上尝试过这个,结果相同:
m1,m2,r, F, G = symbols("m_1 m_2 r F_g G")
G = Float("6.67e-8")
rhs = (G * m1 * m2/r**2)
eq = Eq(F, rhs)
print eq
s=solve(eq, m1)
print s
给出了结果:
F_g == 6.67e-8*m_1*m_2/r**2
[14992503.7481259*F_g*r**2/m_2]
我重新运行了程序,只做了一个更改 - 将 e-8 更改为 e-9
G = Float("6.67e-9")
给出了结果
F_g == 6.67e-9*m_1*m_2/r**2
[]
这在带有小型 python 浮点数或 sympy 浮点数的方程中始终如一地发生。
我注意到another report 0.72 版中的基本代数错误,但看到人们将它用于微积分。我是在做一些非常愚蠢的事情,还是这是 sympy 求解器中的错误。如果是错误,我该如何解决?
【问题讨论】:
标签: sympy