在Python中,对点x和每个维度的x的系数数组的形状进行扩展,评估Chebyshev系列
要在点x处评估Chebyshev系列,请使用Python Numpy中的chebyshev.chebval()方法。 第一个参数x,如果x是一个列表或元组,则转换为ndarray,否则将保持不变并视为标量。在任一情况下,x或其元素必须支持用它们自己和c的元素相加和相乘。
第二个参数C,一个按照排序系数的数组,使得度数n的项的系数包含在c [n]中。如果c是多维的,则其余索引枚举多个多项式。在二维情况下,可以认为系数存储在c的列中。
第三个参数tensor,如果为True,则在右侧使用1扩展系数数组的形状,每个x的维度一个。此操作的标量维度为0。结果是c中每个系数列都针对x的每个元素进行评估。如果为False,则在评估时会向c的列广播x。当c是多维的时,此关键字很有用。默认值为True。
步骤
首先,导入所需的库-
import numpy as np
from numpy.polynomial import chebyshev as C
创建一个多维数组的系数-
c = np.arange(6).reshape(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处评估Chebyshev系列,请使用chebyshev.chebval()方法-
print("\nResult (chebval)...\n",C.chebval([1,2],c,tensor=True))
示例
import numpy as np
from numpy.polynomial import chebyshev as C
# 创建一个多维数组的系数
c = np.arange(6).reshape(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处评估Chebyshev系列,请使用Python Numpy中的chebyshev.chebval()方法
print("\nResult (chebval)...\n",C.chebval([1,2],c,tensor=True))
输出
Our Array...
[[0 1 2]
[3 4 5]]
Dimensions of our Array...
2
Datatype of our Array object...
int64
Shape of our Array object...
(2, 3)
Result (chebval)...
[[ 3. 6.]
[ 5. 9.]
[ 7. 12.]]