2

我有一个看起来像列表值的数据结构,我正在尝试使用 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 和系数矩阵的标量,这是您对文档的期望。那么我在这里错过了什么?分数是多少?

4

1 回答 1

3

它就在文档中:)

hermval2d(x, y, c)

[...]

结果的形状将是 c.shape[2:] + x.shape

在您的情况下,这似乎返回 Hermite值xy为.ic[:,:,i]

于 2014-08-11T20:07:35.857 回答