numpy.polynomial.polynomial.polygrid2d#

polynomial.polynomial.polygrid2d(x, y, c)[源代码]#

在 x 和 y 的笛卡尔积上计算二维多项式。

此函数返回以下值:

\[p(a,b) = \sum_{i,j} c_{i,j} * a^i * b^j\]

其中点 (a, b) 由从 xa 并从 yb 形成的所有对组成。结果点形成一个网格,x 在第一个维度,y 在第二个维度。

参数 xy 仅在它们是元组或列表时才会被转换为数组,否则它们被视为标量。在这两种情况下,xy 或它们的元素都必须支持与自身以及 c 的元素进行乘法和加法运算。

如果 c 的维度小于两个,则会在其形状后面隐式添加一维,以使其成为二维。结果的形状将是 c.shape[2:] + x.shape + y.shape。

参数:
x, yarray_like, 可兼容对象

xy 的笛卡尔积的点上计算二维序列。如果 xy 是列表或元组,它首先会被转换为 ndarray,否则它将保持不变,并且如果它不是 ndarray,它将被视为标量。

c类数组

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

返回:
valuesndarray, 兼容对象

xy 的笛卡尔积的点上的二维多项式的值。

示例

>>> from numpy.polynomial import polynomial as P
>>> c = ((1, 2, 3), (4, 5, 6))
>>> P.polygrid2d([0, 1], [0, 1], c)
array([[ 1.,  6.],
       [ 5., 21.]])