Несложно вычислить частные производные функции в точке относительно первого аргумента, используя функцию SciPy scipy.misc.derivative
. Вот пример:
def foo(x, y):
return(x**2 + y**3)
from scipy.misc import derivative
derivative(foo, 1, dx = 1e-6, args = (3, ))
Но как мне взять производную функции foo
по второму аргументу? Один из способов, который я могу придумать, — создать лямбда-функцию, которая изменяет аргументы вокруг, но это может быстро стать громоздким.
Кроме того, есть ли способ создать массив частных производных по некоторым или всем аргументам функции?