使用Python评估x、y、z的笛卡尔积上的3D多项式,系数为二维数组
要评估x、y、z笛卡尔积上的三维多项式,可以使用Python中的polynomial.polygrid3d(x, y, z)方法。该方法返回二维多项式在x和y笛卡尔积上的点的值。
第一个参数x、y、z是在x、y和z笛卡尔积上的点处计算的三维序列。如果x、y或z是列表或元组,则首先将其转换为ndarray;否则,保持不变,如果它不是ndarray,则将其视为标量。
第二个参数c是一个系数数组,其顺序使得i、j次项的系数包含在c[i,j]中。如果c的维数大于二,则其余索引枚举多个系数集。如果c的维数小于三,则会隐式地将其形状附加为3D。结果的形状将是c.shape[3:] + x.shape + y.shape + z.shape。
步骤
首先,导入所需的库:
import numpy as np from numpy.polynomial.polynomial import polygrid3d
创建一个二维系数数组:
c = np.arange(4).reshape(2,2)
显示数组:
print("Our Array...\n",c)
检查维度:
print("\nDimensions of our Array...\n",c.ndim)
获取数据类型:
print("\nDatatype of our Array object...\n",c.dtype)
获取形状:
print("\nShape of our Array object...\n",c.shape)
要评估x、y、z笛卡尔积上的三维多项式,可以使用Python中的polynomial.polygrid3d(x, y, z)方法。该方法返回二维多项式在x和y笛卡尔积上的点的值:
print("\nResult...\n",polygrid3d([1,2],[1,2],[1,2],c))
示例
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))
输出
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.]]
广告