[英]How to do function composition in Sympy?
我想做一些類似h = f(g(x))
的事情並且能夠區分 h,比如h.diff(x)
。 對於一個像h = cos(x)
這樣的 function 來說,這實際上是可能的,並且文檔說明了這一點。
但是對於 function 組合物來說還不是很清楚。 如果你這樣做了,請給我一個例子或鏈接我到相關文件。
(如果 Sympy 不能做到這一點,你知道有沒有其他的包可以做到這一點,即使它是非 python 的)
謝謝你。
看起來函數組合的工作方式與您期望的一樣:
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))
它被命名為compose
; 雖然,我在文檔中找不到它。
from sympy import Symbol, compose
x = Symbol('x')
f = x**2 + 2
g = x**2 + 1
compose(f,g)
Out: x**4 + 2*x**2 + 4
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.