SymPy与Mathematica求解v的结果差异问题咨询
关于SymPy与Mathematica求解v的方程结果差异的问题
我编写了如下SymPy代码求解关于变量v的方程:
import sympy as sp # Define symbols l, alpha, x, gamma, r, theta, beta, v = sp.symbols('l alpha x gamma r theta beta v') c = 2.99792458 * 10**8 # Define the equation lhs = l * sp.sin(beta) rhs = sp.sqrt((l * alpha + x * gamma - r * theta) * sp.sqrt(1 - v**2 / c**2)) * \ sp.sqrt((l * alpha - x * gamma + r * theta) / sp.sqrt(1 - v**2 / c**2)) / alpha equation = sp.Eq(lhs, rhs) # Solve the equation for v solution = sp.solve(equation, v) # Print the solution print("Solutions for v:") for sol in solution: print(sol)
运行后未输出v的任何解,但Mathematica可给出v的解:
v -> (√(-8.98755*10^16 l^2 α^2 + 8.98755*10^16 x^2 γ^2 - 1.79751*10^17 r x γ θ + 8.98755*10^16 r^2 θ^2 + 8.98755*10^16 l^2 α^2 Sin[β]^2))/(√(-1. l^2 α^2 + x^2 γ^2 - 2.r x γ θ + r^2 θ^2 + l^2 α^2 Sin[β]^2))
请问是Mathematica存在错误,还是需要更新SymPy库以适配该场景?程序运行正常,但二者输出的v的解不一致。
内容的提问来源于stack exchange,提问作者Parker Emmerson
相关产品推荐
相关产品推荐

