Есть ли стандартный способ реализации sympy.solve для решения системы уравнений в отношении указанного подмножества свободных символов (т.е. sympy.core.symbol.symbol экземпляры), так что он находит только решения, которые действительны для любого значения, достигнутого свободными символами в уравнениях, которые не были в определенных решениях? То есть я бы хотел, чтобы он не возвращал решения, которые являются действительными только предметом дополнительных ограничений на оставшихся переменных. var1 , так что любое возвращенное решение решает полную систему для всех значений var2 ? Интуитивно понятный < /p>
не обязательно достигает этого, потому что в зависимости от [eqn1, eqn2] он может вернуть решения в var1 , которые только решают систему, подверженную скрытым/нерепортированным ограничениям на var2 .
, в то время как я могу думать о том, чтобы программировать реализацию. Первоначально обнаружив решение и замену обратно в систему уравнений, а затем проверяя, становится ли оно тривиальным), мои обходные пути довольно утомительны и вычислительно тяжелы. Предположительно, это может быть сделано более эффективно, если интегрировать в существующие алгоритмы решающих, поэтому мне интересно, есть ли нет стандартного подхода для этой встроенной в симпи. />
Код: Выделить всё
from sympy import solve, symbols
x,y=symbols('x y')
eqns = [x,y]
solve_variables = [x]
solve(eqns,solve_variables)
возвращает {x: 0} , но {x: 0} только решает систему (x = 0, y = 0) с учетом дополнительного нерепортированного ограничения {y: 0} . Нет никаких решений, которые работают для всех y , поэтому я ищу решающую реализацию, которая возвращает «нет решения» в каком -то формате.
Пример 2:
Код: Выделить всё
from sympy import solve, symbols
x,y=symbols('x y')
eqns = [x,x+y]
solve_variables = [x]
solve(eqns,solve_variables)
возвращает [] . На этот раз результат имеет форму, которую я хочу в целом, то есть, нет решения в x , поскольку нет решения для всех y .
Какова возврата из этих двух примеров представляют собой математически по отношению к их соответствующим системам уравнений, что является различным категорически, что затрудняет реализацию SOLVE в некоторые вычислительные работы по программам. Версия 1.13.3.
Подробнее здесь:
https://stackoverflow.com/questions/796 ... alid-for-a