2014-09-04 36 views
-1

我想計算導數,然後求解它何時爲零。使一個象徵函數可調用 - sympy

我正在使用sympy模塊來執行此操作。

r = somefunction(x1,x2) 

使用此函數,我希望能夠調用這兩個矩陣。

r_grad = [r.diff(x1), r.diff(x2)] 
r_hess = [[r.diff(x1,x1), r.diff(x1,x2)],[r.diff(x2,x1), r.diff(x2,x2)]] 

我然後喜歡解決當r_grad [0]和r_grad [1] == 0,並把它插入到所述粗麻布。 如何使這些.diff()符號可調用?

+1

是否試圖找到在來這裏之前的解決方案?谷歌搜索「SymPy評估表達式」在官方文檔中提供了多種方式作爲前幾個命中。 – user2357112 2014-09-04 22:40:29

+1

@ user2357112我的確嘗試找到一個解決方案,但我沒有使用正確的詞組。現在我看了你的建議,我看到了。謝謝。 – bluebird343 2014-09-05 00:11:56

回答

2

SymPy有這些目的的lambdify模塊:

from sympy.utilities.lambdify import lambdify 

func = lambdify((x1, x2), r.diff(x1)) 

func(1, 2) # evaluate the function efficiently at (1, 2) 
相關問題