我正在尝试使用SymPy解决以下非线性方程组:
其中
是未知数(其余为已知参数符号) .
我的代码是:
import sympy as sy
sy.init_printing()
m, v0, k, g, R, u, v = sy.symbols('m v0 k g R u v')
sy.nonlinsolve([0.5*m*v0**2 - m*g*2*R - 0.5*m*v**2 - 0.5*k*m*u**2,
m*v0 - m*v - k*m*u, m*g - m*((u+v)**2)/R], [v0, v, u] )
但是我得到了无限的处理时间,不得不打断内核 . 另外,我知道v0的解决方案是:
有没有更好的方法来解决它?也许是另一个求解器?或者也许有办法让Python检查我的解决方案是否有效?
谢谢 !!!
1 回答
我已经在解决函数中使用了一些添加的标志:
当我做的时候:
有效!!
'force'
和'manual'
标志就行了!