如何在Sympy中做功能组合?

时间:2015-06-04 07:18:46

标签: python sympy computer-algebra-systems

我想做h = f(g(x))之类的事情,并且能够区分h,例如h.diff(x)。对于像h = cos(x)这样的函数,这实际上是可行的,并且文档清楚地表明了这一点。

但对于功能组合,它并不是那么清楚。如果您已经这样做了,请告诉我一个示例或将我链接到相关文档。

(如果Sympy不能这样做,你知道其他任何包这样做,即使它是非python)

谢谢你。

1 个答案:

答案 0 :(得分:7)

似乎功能组合的工作方式与您期望的一样:

import sympy
h = sympy.cos('x')
g = sympy.sin(h)
g
Out[245]: sin(cos(x))

或者如果您愿意

from sympy.abc import x,y
g = sympy.sin('y')
f = g.subs({'y':h})

然后你可以调用diff来获得你的衍生物。

g.diff()
Out[246]: -sin(x)*cos(cos(x))