# Evaluate a 3-D polynomial on the Cartesian product of x, y, z with 2d array of coefficient in Python

To evaluate a 3-D polynomial on the Cartesian product of x, y, z, use the polynomial.polygrid3d(x, y, z) method in Python. The method returns the values of the two dimensional polynomial at points in the Cartesian product of x and y.

The 1st parameter, x,y,z are the three dimensional series is evaluated at the points in the Cartesian product of x, y, and z. If x,y, or z 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.

The 2nd parameter, c is an 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. If c has fewer than three dimensions, ones are implicitly appended to its shape to make it 3-D. The shape of the result will be c.shape[3:] + x.shape + y.shape + z.shape.

## Steps

At first, import the required library −

import numpy as np
from numpy.polynomial.polynomial import polygrid3d

Create a 2d array of coefficients −

c = np.arange(4).reshape(2,2)

Display the array −

print("Our Array...\n",c)

Check the Dimensions −

print("\nDimensions of our Array...\n",c.ndim)

Get the Datatype −

print("\nDatatype of our Array object...\n",c.dtype)

Get the Shape −

print("\nShape of our Array object...\n",c.shape)

To evaluate a 3-D polynomial on the Cartesian product of x, y, z, use the polynomial.polygrid3d(x, y, z) method in Python. The method returns the values of the two dimensional polynomial at points in the Cartesian product of x and y −

print("\nResult...\n",polygrid3d([1,2],[1,2],[1,2],c))

## Example

import numpy as np
from numpy.polynomial.polynomial import polygrid3d

# Create a 2d array of coefficients
c = np.arange(4).reshape(2,2)

# Display the array
print("Our Array...\n",c)

# Check the Dimensions
print("\nDimensions of our Array...\n",c.ndim)

# Get the Datatype
print("\nDatatype of our Array object...\n",c.dtype)

# Get the Shape
print("\nShape of our Array object...\n",c.shape)

# To evaluate a 3-D polynomial on the Cartesian product of x, y, z, use the polynomial.polygrid3d(x, y, z) method in Python
print("\nResult...\n",polygrid3d([1,2],[1,2],[1,2],c))

## Output

Our Array...
[[0 1]
[2 3]]

Dimensions of our Array...
2

Datatype of our Array object...
int64

Shape of our Array object...
(2, 2)

Result...
[[17. 28.]
[28. 46.]]