将功能的计算结果分配给功能

时间:2015-03-31 09:58:38

标签: python fft sympy

我在这里看了几个关于SO的问题,但我找不到解决这个问题的方法:
我与fourier_transform(exp(-tau*abs(t)), t, w)同情地计算了一个傅里叶变换。我使用tau分配了twtau, t, w = symbols('tau t w')。如何将FT的结果放入函数中,例如

之类的东西
g(tau, w) = fourier_transform(exp(-tau*abs(t)), t, w)

?当我这样写时,我收到错误can't assign to function call。当我这样做时

g = fourier_transform(exp(-tau*abs(t)), t, w)

然后我不能用g(tau, w)或类似的东西来调用它(通常)。有没有办法做到这一点? 编辑:我想要的最终结果是:

g(tau, w) = 2*tau/(tau**2 + 4*pi**2*w**2)

我可以使用(f.eks)g简单地拨打g(2, 3) 编辑II:Python调用:

>>> fourier_transform(exp(-tau*abs(t)), t, w)
2*tau/(tau**2 + 4*pi**2*w**2)

2 个答案:

答案 0 :(得分:1)

所以你创建你的g方法并在g方法中使用fourier_transform,如下所示:

但你必须提供t

def g(tau, w):
    return fourier_transform(exp(-tau*abs(t)), t, w)

答案 1 :(得分:1)

如果你想要一个内联解决方案,你可以使用lambda来接近:

g = lambda tau,w: ourier_transform(exp(-tau*abs(t)), t, w)

假设t是一个局部变量。

顺便说一句,您也可以使用标准函数定义,但从不尝试将函数定义为变量。