python解不等式方程_在SymPy中一次解决非线性方程组和不等式系统(Solving a system of non linear equations and inequalities at on...

在SymPy中一次解决非线性方程组和不等式系统(Solving a system of non linear equations and inequalities at once in SymPy)

我是SymPy和python的新手,我遇到了一个问题。 我正在尝试解决系统'kunSys':

>>> kunSys

[-w0 + w1 - 8*x1 + 20,

-2*w0 + w2 - 8*x2 + 4,

w0*(-x1 - 2*x2 + 2),

w1*x1,

w2*x2,

w0 >= 0,

w1 >= 0,

w2 >= 0]

使用变量列表'lagVars':

>>> lagVars

(x1, x2, w0, w1, w2)

如您所见,我的系统包含方程和不等式。

试:

>>> solve(kunSys,lagVars)

得到:

NotImplementedError:

inequality has more than one symbol of interest

但是在分别解决方程和不等式时它可以正常工作:

>>> kunSys[:5]

[-w0 + w1 - 8*x1 + 20,

-2*w0 + w2 - 8*x2 + 4,

w0*(-x1 - 2*x2 + 2),

w1*x1,

w2*x2]

>>> solve(kunSys[:5],lagVars)

[(0, 0, 0, -20, -4),

(0, 1/2, 0, -20, 0),

(0, 1, -2, -22, 0),

(2, 0, 4, 0, 4),

(11/5, -1/10, 12/5, 0, 0),

(5/2, 0, 0, 0, -4),

(5/2, 1/2, 0, 0, 0)]

>>> kunSys[5:]

[w0 >= 0, w1 >= 0, w2 >= 0]

>>> solve(kunSys[5:],lagVars)

(0 <= w0) & (0 <= w1) & (0 <= w2) & (w0 < oo) & (w1 < oo) & (w2 < oo)

但这不是一个想要的结果。 我尝试使用solveset()但它似乎也不起作用。 我google了很多,但未能找到答案。

题:

我该如何解决这个系统?

I'm new t

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值