在Python中计算Legendre级数在点x处的值以及扩展系数数组的每个维度的形状
要在点x处计算Legendre级数,请使用Python Numpy中的polynomial.legendre.legval()函数。第一个参数是x。如果x是一个列表或元组,它将被转化为ndarray,否则它将保持不变并被视为标量。无论哪种情况,x或它的元素必须支持加法和乘法运算。
第二个参数C是一个按系数顺序排列的数组,使得第n次次项的系数包含在c[n]中。如果c是多维的,则其余索引枚举多项式。在二维情况下,系数可以认为是存储在c的列中的。
第三个参数tensor,如果为True,则按需在数组右侧扩展系数数组的形状,每个维度需要扩展1个。标量在此操作中的维数为0。结果是c中的每个系数列在x的每个元素上进行计算。如果为False,则将x广播到评估c的列中。当c是多维时 ,这个关键字非常有用。默认值为True。
步骤
首先,导入所需的库-
import numpy as np
from numpy.polynomial import legendre as L
创建一个多维系数数组-
c = np.arange(4).reshape(2,2)
显示数组-
print("我们的数组...\n",c)
检查维度-
print("\n我们的数组的维度...\n",c.ndim)
获取数据类型-
print("\n我们的数组对象的数据类型...\n",c.dtype)
获取形状-
print("\n我们的数组对象的形状...\n",c.shape)
要在点x处计算Legendre级数,请使用Python Numpy中的polynomial.legendre.legval()函数-
print("\n结果...\n",L.legval([1,2],c, tensor = True))
例子
import numpy as np
from numpy.polynomial import legendre as L
# 创建一个多维系数数组
c = np.arange(4).reshape(2,2)
# 显示数组
print("我们的数组...\n",c)
# 检查维度
print("\n我们的数组的维度...\n",c.ndim)
# 获取数据类型
print("\n我们的数组对象的数据类型...\n",c.dtype)
# 获取形状
print("\n我们的数组对象的形状...\n",c.shape)
# 要在点x处计算Legendre级数,请使用Python Numpy中的polynomial.legendre.legval()函数
print("\n结果...\n",L.legval([1,2],c, tensor = True))
输出
我们的数组...
[[0 1]
[2 3]]
我们的数组的维度...
2
我们的数组对象的数据类型...
int64
我们的数组对象的形状...
(2, 2)
结果...
[[2. 4.]
[4. 7.]]