使用Python和3D系数数组评估二维勒让德级数在(x, y)点的值
要评估在点x,y处的二维勒让德级数,请使用Python NumPy中的polynomial.legendre.legval2d()方法。该方法返回由x和y的对应值对组成的点处的二维勒让德级数的值。
第一个参数是x,y。二维级数在点(x, y)处进行评估,其中x和y必须具有相同的形状。如果x或y是列表或元组,则首先将其转换为ndarray,否则保持不变,如果它不是ndarray,则将其视为标量。
第二个参数是c。系数数组,其排序方式为:多度为i,j的项的系数包含在c[i,j]中。如果c的维度大于二,则其余索引枚举多组系数。
步骤
首先,导入所需的库:
import numpy as np from numpy.polynomial import legendre as L
创建一个3D系数数组:
c = np.arange(24).reshape(2,2,6)
显示数组:
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处的二维勒让德级数,请使用Python NumPy中的polynomial.legendre.legval2d()方法:
print("\nResult...\n",L.legval2d([1,2],[1,2],c))
示例
import numpy as np from numpy.polynomial import legendre as L # Create a 3D array of coefficients c = np.arange(24).reshape(2,2,6) # 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 2D Legendre series at points x, y, use the polynomial.legendre.legval2d() method in Python Numpy print("\nResult...\n",L.legval2d([1,2],[1,2],c))
输出
Our Array... [[[ 0 1 2 3 4 5] [ 6 7 8 9 10 11]] [[12 13 14 15 16 17] [18 19 20 21 22 23]]] Dimensions of our Array... 3 Datatype of our Array object... int64 Shape of our Array object... (2, 2, 6) Result... [[ 36. 108.] [ 40. 117.] [ 44. 126.] [ 48. 135.] [ 52. 144.] [ 56. 153.]]
广告