sympy中的其他简化

时间:2018-10-15 08:50:05

标签: python sympy symbolic-math

我目前正在尝试找到一种方法,可以向sympy添加其他简化规则,该规则可以自动应用。我相信应该有一种使用Assumptions模块添加它们的方法,但是我无法从文档中弄清楚如何做到这一点,该文档主要涵盖了is_positive或{{1 }}。

以下是我正在处理的那种假设的一些示例:

  • 我有一些变量is_real,这些变量只能采用值c1,c2,...+1,而没有其他值。因此,无论何时我只要有-1或类似词,我都可以删除它。

  • 有一组变量c1**2,这些变量总和不能大于另一个变量w1,w2,w3,...。因此,只要我有类似d这样的表达式,我就知道它必须是肯定的。

当然,我总是可以采用任何表达式,然后在表达式树上应用简化的表达式,这与这些假设相符。但是,这确实很复杂,并且导致sympy函数花费的时间超过了应有的时间。例如。我正在计算涉及这些变量的矩阵的行列式,并且结果表达式(在简化之前)非常长。经过进一步简化后,它只有很少的术语。因此,如果sympy能够在行列式的计算过程中已经执行这些简化以加速所有操作,那就太好了。同样,我必须计算许多涉及这些变量的矩阵逆,因此在计算逆过程时简化它们会很好。

是否有关于如何添加此类其他简化规则的教程?

0 个答案:

没有答案