使用 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)