我有一个二次方程组:
(6.3205-x)**2+(-0.0347-y)**2-(1.4869)**2 = 0
(8.3769-x)**2+(-0.6242-y)**2-(0.8459)**2 = 0
我正在寻找一种使用Python解决它的聪明方法。有什么建议我应该去哪个图书馆?
答案 0 :(得分:0)
我建议SymPy(一个象征性的数学库)。它功能强大,但要弄清楚如何使其发挥作用可能需要花费很多精力。
import sympy
x, y = sympy.symbols("x y", real=True)
eq1 = sympy.Eq((6.3205 - x)**2 + (-0.0347 - y)**2, 1.4869**2)
eq2 = sympy.Eq((8.3769 - x)**2 + (-0.6242 - y)**2, 0.8459**2)
sympy.solve([eq1, eq2])
给出了
[
{y: -0.852406950510941, x: 7.56236430542394},
{y: 0.000885037011691020, x: 7.80697412192102}
]