How to do function composition in Sympy?

て烟熏妆下的殇ゞ 提交于 2019-12-02 00:39:07

问题


I want to do something like h = f(g(x)) and be able to differentiate h, like h.diff(x). For just one function like h = cos(x) this is in fact possible and the documentation makes it clear.

But for function compositions it is not so clear. If you have done this, kindly show me an example or link me to the relevant document.

(If Sympy can't do this, do you know of any other packages that does this, even if it is non-python)

thank you.


回答1:


It seems that function composition works as you would expect in sympy:

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

Or if you prefer

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

Then you can just call diff to get your derivative.

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


来源:https://stackoverflow.com/questions/30637437/how-to-do-function-composition-in-sympy

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!