Skip to main content
`Ctrl`+`K`

# numpy.polynomial.polynomial.polygrid2d

polynomial.polynomial.polygrid2d(x, y, c)

  Evaluate a 2-D polynomial on the Cartesian product of x and y.

  This function returns the values:

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

  where the points `(a, b)` consist of all pairs formed by taking a from x and b from y. The resulting points form a grid with x in the first dimension and y in the second.

  The parameters x and y are converted to arrays only if they are tuples or a lists, otherwise they are treated as a scalars. In either case, either x and y or their elements must support multiplication and addition both with themselves and with the elements of c.

  If c has fewer than two dimensions, ones are implicitly appended to its shape to make it 2-D. The shape of the result will be c.shape[2:] + x.shape + y.shape.

  Parameters:
    x, y array_like, compatible objects

      The two dimensional series is evaluated at the points in the Cartesian product of x and y. If x or y is a list or tuple, it is first converted to an ndarray, otherwise it is left unchanged and, if it isn’t an ndarray, it is treated as a scalar.

    c array_like

      Array of coefficients ordered so that the coefficients for terms of degree i,j are contained in `c[i,j]`. If c has dimension greater than two the remaining indices enumerate multiple sets of coefficients.

  Returns:
    values ndarray, compatible object

      The values of the two dimensional polynomial at points in the Cartesian product of x and y.

  See also

  `polyval`, `polyval2d`, `polyval3d`, `polygrid3d`

  Examples

      >>> 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.]])