同情函数中的假设

时间:2016-11-16 22:12:21

标签: python sympy

使用SymPy,我们可以设置变量假设:

from sympy import *
x = Symbol('x', real=True)
x, re(x), im(x)

结果是:

(x,x,0)

正如所料。但是如果我们尝试为函数做同样的事情:

from sympy import *
x = Symbol('x', real=True)
f = Function('f', real=True)(x)

f, re(f), im(f)

结果是:

(f(x),re(f(x)),im(f(x)))

但我期待的是

(f(x),f(x),0)

问题是:有没有办法让python假定函数的范围是真实的,即

在之前的question中,它已得到部分回答,但如果我们采用衍生工具,我们会再次遇到同样的问题:

from sympy import *
x = Symbol('x', real=True)
class f(Function):
    is_positive = True
df = f(x).diff(x)


df, re(df), im(df)

结果:

(f(x).diff(x),re(f(x).diff(x)),im(f(x).diff(x)))

希望它像

(f(x).diff(x),f(x).diff(x),0)

有办法吗?

0 个答案:

没有答案