Sympy:实值函数的共轭

时间:2014-04-03 07:27:12

标签: python sympy simplify

为什么这不起作用?

In: from sympy import *

    x = symbols('x', real=True)
    f = symbols('f', cls=Function, real=True)
    simplify(f(x)*conjugate(f(x)))

Out: f(x)*conjugate(f(x))

我期待f(x)**2

1 个答案:

答案 0 :(得分:2)

不幸的是,使用Function创建的函数忽略了假设。你需要通过继承Function创建一个函数,比如

In [12]: class f(Function):
   ....:     is_real=True
   ....:

In [13]: f(x)
Out[13]: f(x)

In [14]: f(x).conjugate()
Out[14]: f(x)