使用 Sympy 在 Python 中計算偏導數
Neema Muganga
2022年5月17日
偏導數是具有兩個或多個其他變數而不是一個變數的函式的導數。因為函式依賴於幾個變數,所以導數轉換為偏導數。
例如,如果存在函式 f(b,c)
,該函式取決於兩個變數 b
和 c
,其中這兩個變數彼此獨立。然而,該函式部分依賴於 b
和 c
。因此,為了計算 f
的導數,這個導數將被稱為 偏導數
。如果參照 b 對 f 函式進行微分,則將使用 c 作為常數。否則,如果針對 c 對 f 進行微分,則會將 b 作為常數。
在 Python 中,Sympy
模組用於計算數學函式中的偏導數。該模組使用符號來執行所有不同型別的計算。它還可用於求解方程、簡化表示式、計算導數和極限以及其他計算。
Sympy
需要手動安裝才能使用。因此,cd 到你的計算機終端並執行以下命令來安裝 sympy
包。
pip install sympy
要使用
sympy
計算偏導數,你首先需要從符號匯入sympy
包。
計算機評估值的計算與將它們寫在一張紙上的方式不同。因此,這裡的符號將以變數的形式儲存要評估的實際值。因此,在計算過程中,計算機將變數操作為它所附加的值。
現在,讓我們使用以下示例來推導函式的偏導數。
f(a, b, c) = 5ab - acos(c)+ a^2 + c^8b
part_deriv(function = f, variable = a)
將函式微分到其偏導數後的預期輸出是 2*a + 5*b - cos(c)
。
為了評估上述函式的偏導數,我們根據 a
對該函式進行微分,而 b
和 c
將是常數。
from sympy import symbols, cos, diff
a, b, c = symbols('a b c', real=True)
f = 5*a*b - a*cos(c) + a**2 + c**8*b
#differntiating function f in respect to a
print(diff(f, a))
輸出:
2*a + 5*b - cos(c)