通过sympy解非线性方程组

时间:2019-11-24 18:26:51

标签: sympy

我有一个ODE系统,想通过使用nonlinsolve()找到平衡点,但是当我通过jubyter或spyder运行它时,程序将继续运行而没有任何结果。

android:drawablePadding="24dp"

是否可以根据参数获得解决方案?

1 个答案:

答案 0 :(得分:1)

如果您乘以所有分母,则您的方程式系统可以重铸为多元多项式系统。以F2为例,这样做

In [26]: F2.as_numer_denom()[0]                                                                                                   
Out[26]: 
s₁⋅x₁⋅(a₁₁⋅h₁₁⋅x₂ + y₂)⋅(a₁₂⋅h₁₂⋅x₂ + r₁) + x₂⋅(-a₁₁⋅x₁⋅y₂⋅(a₁₂⋅h₁₂⋅x₂ + r₁) - a₁₂⋅r₁⋅x₁⋅(a₁₁⋅h₁₁⋅x₂ + y₂) + r₂⋅(a₁₁⋅h₁₁⋅x₂ + y₂
)⋅(a₁₂⋅h₁₂⋅x₂ + r₁)⋅(-N⋅y₁ - η₂⋅x₂ - η₃⋅x₃ - η₄⋅x₄ + x₁))

从这里我们可以看到多项式是5阶的,因为它具有x2**3*N*y1之类的术语,因此从广义上讲,您有7个多项式的系统,而不是低阶的。我希望除非您很幸运,否则将无法使用一般的封闭式解决方案。