我正在尝试采用一个函数的梯度,在该函数中我分别分配numpy数组元素(将局部力分配给FEA中的全局力矢量),但这似乎破坏了Autograd -如果我使用{{1 }}对于全局数组,我得到np.zeros
,而如果我使用ValueError: setting an array element with a sequence
,我得到np.empty
。
示例:
NotImplementedError: VJP of empty_like wrt argnums (0,) not defined
给出错误:
import autograd.numpy as np
from autograd import jacobian,grad
def test(input):
a = np.empty_like(input)
a[:] = input[:]
grad(test)(np.array([0.]))
有没有办法在按元素组装的numpy数组上使用Autograd?