Решение четырехвариантной системы неравенств с помощью Solveset - PullRequest
0 голосов
/ 11 июня 2019

Я пытаюсь решить систему неравенств с четырьмя переменными, используя SymPy solveset. Я очень плохо знаком с Python и SymPy. По сути, я надеялся, что этот код выведет диапазоны значений, которые может принимать каждая из этих четырех переменных, так что все элементы в наборе неравенств верны.

from sympy import solveset
from sympy import Symbol

e = Symbol('e')
hA = Symbol('hA')
hB = Symbol('hB')
ed = Symbol('ed')


equations = [((1-ed)*(1-e))/hA>0, ((1-ed)*(1-e))/hA<.03, (ed*e+(1-ed)-e)/hB>.03/.97, e>0, e>1, hA>0, hB>0, hB<1, ed>0, ed<1]

variables = [e,hA,hB,ed]

solveset(equations,variables)

Когда я запускаю это, я получаю:

Traceback (most recent call last):
  File "main.py", line 14, in <module>
    solveset(inequalities,variables)
  File "/home/runner/.local/lib/python3.6/site-packages/sympy/solvers/solveset.py", line 1658, in solveset
    raise ValueError("%s is not a valid SymPy expression" % f)
ValueError: [(1 - e)*(1 - ed)/hA > 0, (1 - e)*(1 - ed)/hA < 0.03, 
(e*ed - e - ed + 1)/hB > 0.0309278350515464, e > 0, 
e > 1, hA > 0, hB > 0, hB < 1, ed > 0, ed < 1] is not a valid SymPy expression

Возможно ли то, что я пытаюсь сделать? Любая помощь будет принята с благодарностью!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...