Sympy 方程数学等式?

问题描述 投票:0回答:0

我正在尝试比较两个方程,以确定它们在数学上是否等价使用

SymPy
。例如,我有字符串
2y = x^2 + x
,我想看看它在数学上是否等价于
y = x^2 + 2x - x - y
(通过一些基本代数你可以看到它们是等价的)。这不必是数学上严格的,只需处理绝大多数相对简单的情况即可。

我的另一个限制是我不一定知道字符串中存在的变量名称。它可以有 x,它可以有 y,它可以有 t,等等,因为我正在创建一个前端服务,并且我不希望用户必须担心这些定义。

我知道在比较表达式时,最佳实践方法是使用

.equals()
sympify(Ex2 - Ex1)==0
。然而,我认为处理方程时并不那么简单,因为你必须处理比例和其他情况(例如,x=2y 与 2x=4y 相同)。我在网上看到的另一种处理比较表达式的方法是暴力破解一堆数字,看看它是否有效。我将如何在方程中实现这个?特别是因为我不知道变量的名称是什么?有没有办法以编程方式确定变量是什么?

python sympy symbolic-math
© www.soinside.com 2019 - 2024. All rights reserved.