用SymPy(Python)求解非线性符号方程组

时间:2018-05-11 10:50:54

标签: python sympy

我试图使用SymPy解决以下非线性方程组:

enter image description here

其中enter image description here是未知数(其余为已知参数符号)。

我的代码是:

 $data= "2010-03-21";
 $newDate = date("d-m-Y", strtotime($data));

但是我获得了无限的处理时间并且必须中断内核。 另外,我知道v0的解决方案是:

enter image description here

有没有更好的方法来解决它?也许是另一个求解器? 或者也许有办法让Python检查我的解决方案是否有效?

谢谢!!!

1 个答案:

答案 0 :(得分:1)

我已经在解决函数中使用了一些添加的标志:

当我这样做时:

import sympy as sy
sy.init_printing()

m, v0, k, g, R, u, v = sy.symbols('m v0 k g R u v')   #Define Symbols

sy.solve((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,u,v] ,
         force=True, manual=True, set=True)

有效!! 'force''manual'标志就行了!