numpy.polynomial.hermite.hermgrid3d#

polynomial.hermite.hermgrid3d(x, y, z, c)[源代码]#

在 x、y 和 z 的笛卡尔积上评估一个 3-D Hermite 级数.

此函数返回值:

\[p(a,b,c) = \sum_{i,j,k} c_{i,j,k} * H_i(a) * H_j(b) * H_k(c)\]

其中点 (a, b, c) 由所有由从 x 中取 a,从 y 中取 b,以及从 z 中取 c 形成的三元组组成.生成的点形成一个网格,其中 x 在第一维度,`y` 在第二维度,`z` 在第三维度.

参数 x, y, 和 z 只有在它们是元组或列表时才会被转换为数组,否则它们会被视为标量.无论哪种情况,`x`, y, 和 z 或它们的元素都必须支持与它们自身以及 c 的元素进行乘法和加法.

如果 c 的维度少于三个,则隐式地在它的形状上追加一以使其成为3维.结果的形状将是 c.shape[3:] + x.shape + y.shape + z.shape.

参数:
x, y, z类似数组的对象, 兼容的对象

三维序列在 x, yz 的笛卡尔积中的点上进行评估.如果 x, yz 是一个列表或元组,它首先被转换为一个 ndarray,否则它保持不变,如果不是一个 ndarray,它被视为一个标量.

carray_like

系数数组按顺序排列,使得度数为 i,j 的项的系数包含在 c[i,j] 中.如果 c 的维度大于两个,则剩余的索引枚举多组系数.

返回:
valuesndarray, 兼容对象

在笛卡尔积 xy 中的点的二维多项式的值.

备注

在 1.7.0 版本加入.

示例

>>> from numpy.polynomial.hermite import hermgrid3d
>>> x = [1, 2]
>>> y = [4, 5]
>>> z = [6, 7]
>>> c = [[[1, 2, 3], [4, 5, 6]], [[7, 8, 9], [10, 11, 12]]]
>>> hermgrid3d(x, y, z, c)
array([[[ 40077.,  54117.],
        [ 49293.,  66561.]],
       [[ 72375.,  97719.],
        [ 88975., 120131.]]])