可以对影响简化过程的SymPy符号施加约束吗?

问题描述

是否可以实例化SymPy符号,以便将它们解释为处于指定间隔内?

实例化两个SymPy符号

x = symbols('x',real=True)
R = symbols('R',nonnegative=True)

,然后取其平方的平方根。 sqrt(x**2)正确返回| x |。 SymPy足够聪明,可以意识到采用非负数量的绝对值会返回相同的数量,因此sqrt(R**2)返回R而不是| R |。行为上的差异可追溯到R的非负实例化。

假设我们有一个实符号theta。然后sqrt(sin(theta)**2)返回|sinθ|。有没有一种方法可以告诉SymPy theta的值在0和pi之间,从而导致sin(theta)的非负性? SymPy然后会返回简单的sin(theta)来响应sqrt(sin(theta)**2)吗?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)