hessian = np.empty((x.ndim, x.ndim) + x.shape, dtype=x.dtype)
for k, grad_k in enumerate(x_grad):
    tmp_grad = np.gradient(grad_k)
for l, grad_kl in enumerate(tmp_grad):
    hessian[(k), (l), :, :] = grad_kl
return hessian
x = np.random.randn(100, 100, 100)
hessian(x)
numpy вторая производная n-мерного массива