我有一个看起来像列表值的数据结构,我正在尝试使用 numpy 计算它们的 (x,y) 2d Hermite 函数。我尝试使用尽可能多的 numpy 数组,因为尽快使用 Fortran 可以提高性能(我期望 x 实际上是数千个 3 数组)。具体来说,我的代码如下所示:
x = np.array([[1., 2., 3.], [4., 5., 6.]])
coefs = np.array([[[1., 0.],[0., 1.]], [[0., 1.], [1., 0.]]])
z = np.array([0., 0.])
z[:] = hermval2d(x[:,0], x[:,1], coefs[:])
这会返回有关 hermval2d 形状的错误,根据仅运行 hermval2d 函数而不是分配它:
In [XX]: hermval2d(x[:,0], x[:,1], coefs[:])
Out[XX]:
array([[ 9., 81.],
[ 6., 18.]])
我希望 Hermval2d 是每个 x、y 和系数矩阵的标量,这正是您从 documentation 中所期望的。 。那么我在这里缺少什么?分数是多少?
最佳答案
它就在文档中:)
hermval2d(x, y, c)
[...]
The shape of the result will be c.shape[2:] + x.shape
在您的情况下,这似乎返回为 c 中的每个
.i
个二维数组评估的 x
和 y
的 Hermite 值[:,:,i]
关于python - numpy 中的 Hermite 值数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25250912/