Как рассчитать (символический) градиент многомерной функции в sympy?
Очевидно, я мог бы вычислить производную отдельно для каждой переменной, но есть ли векторизованная операция, которая делает это?
Например
m=sympy.Matrix(sympy.symbols('a b c d'))
Теперь для i=0..3 я могу сделать:
sympy.diff(np.sum(m*m.T),m[i])
который будет работать, но я скорее сделаю что-то вроде:
sympy.diff(np.sum(m*m.T),m)
Что не работает ("AttributeError: ImmutableMatrix не имеет атрибута _diff_wrt").
m
будет приниматься как переменная, а она не знает, как это сделать. Просто используйте понимание списка вместоm
. - person asmeurer   schedule 17.01.2014