用Python中的4D系数数组在点(x,y,z)处评估3D Legendre级数
要在点x,y,z处评估3D Legendre级数,请使用Python Numpy中的polynomial.legendre.legval3d()方法。该方法返回由x,y和z的相应值三元组形成的点上的多维多项式的值。
如果c的维数少于3个,则在其形状中隐式添加1个维度以使其成为3D。结果的形状将为c.shape [3:] + x.shape。第1个参数是x,y,z。在点(x,y,z)处评估三维系列,其中x,y和z必须具有相同的形状。如果x,y或z中的任何一个是列表或元组,则首先将其转换为ndarray,否则它将保持不变,如果它不是ndarray,则将其视为标量。
第2个参数是c。按顺序排列的系数数组,其中多项式i,j,k的项的系数包含在c [i,j,k]中。如果c的维数大于3,则其余维索引列举了多组系数。
步骤
首先,导入必需的库-
import numpy as np
from numpy.polynomial import legendre as L
创建4d系数数组-
c = np.arange(48).reshape(2,2,6,2)
显示数组-
print("我们的数组...\n",c)
检查维度-
print("\n我们数组的维度...\n",c.ndim)
获取数据类型-
print("\n我们数组对象的数据类型...\n",c.dtype)
获取形状-
print("\n我们数组对象的形状...\n",c.shape)
要在x,y,z点处评估3D Legendre级数,请使用Python Numpy中的polynomial.legendre.legval3d()方法-
print("\n结果...\n",L.legval3d([1,2],[1,2],[1,2],c))
例子
import numpy as np
from numpy.polynomial import legendre as L
# 创建4d系数数组
c = np.arange(48).reshape(2,2,6,2)
# 显示数组
print("我们的数组...\n",c)
# 检查维度
print("\n我们数组的维度...\n",c.ndim)
# 获取数据类型
print("\n我们数组对象的数据类型...\n",c.dtype)
# 获取形状
print("\n我们数组对象的形状...\n",c.shape)
# 要在点(x,y,z)处评估3D Legendre级数,请使用Python Numpy中的polynomial.legendre.legval3d()方法
print("\n结果...\n",L.legval3d([1,2],[1,2],[1,2],c))
输出
我们的数组...
[[[[ 0 1]
[ 2 3]
[ 4 5]
[ 6 7]
[ 8 9]
[10 11]]
[[12 13]
[14 15]
[16 17]
[18 19]
[20 21]
[22 23]]]
[[[24 25]
[26 27]
[28 29]
[30 31]
[32 33]
[34 35]]
[[36 37]
[38 39]
[40 41]
[42 43]
[44 45]
[46 47]]]]
我们数组的维度...
4
我们数组对象的数据类型...
int64
我们数组对象的形状...
(2, 2, 6, 2)
结果...
[[ 552. 79447.5 ]
[ 576. 81847.125]]