在Python中评估多维点x处的Legendre系列
要在多维点x处评估Legendre系列,请使用Python NumPy中的polynomial.legendre.legval()方法。第一个参数为x。如果x是一个列表或元组,则会转换为ndarray,否则它将保持不变并被视为标量。在任何情况下,x或其元素必须支持与其本身及c元素相加和相乘。
第二个参数C是一个按顺序排列的系数数组,使得n次项的系数包含在c[n]中。如果c是多维的,则剩余的指标枚举多项式。在二维情况下,可以将系数视为存储在c的列中。
第三个参数tensor,如果为True,则在数组中将系数的形状在右侧扩展为1,每个x的维度一个。标量对于此操作的维度为0。其结果是c中每个系数列都评估x的每个元素。如果为False,则在评估中将x广播到c的列。当c是多维的时,此关键字非常有用。默认值为True。
步骤
首先,导入所需的库-
import numpy as np
from numpy.polynomial import legendre as L
创建系数数组-
c = np.array([1, 2, 3])
显示数组-
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是一个二维数组-
x = np.array([[1,2],[3,4]])
要在多维点x处评估Legendre系列,请使用Python NumPy中的polynomial.legendre.legval()方法-
print("\nResult...\n",L.legval(x,c))
示例
import numpy as np
from numpy.polynomial import legendre as L
# 创建系数数组
c = np.array([1, 2, 3])
# 显示数组
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是一个二维数组
x = np.array([[1,2],[3,4]])
# 要在多维点x处评估Legendre系列,请使用Python NumPy中的polynomial.legendre.legval()方法
print("\nResult...\n",L.legval(x,c))
输出
Our Array...
[1 2 3]
Dimensions of our Array...
1
Datatype of our Array object...
int64
Shape of our Array object...
(3,)
Result...
[[ 6. 21.5]
[46. 79.5]]