numpy.polynomial.hermite.hermval#
- polynomial.hermite.hermval(x, c, tensor=True)[source]#
在点 x 处计算埃尔米特级数。
如果 c 的长度为
n + 1
,此函数返回以下值\[p(x) = c_0 * H_0(x) + c_1 * H_1(x) + ... + c_n * H_n(x)\]参数 x 仅当为元组或列表时才转换为数组,否则将其视为标量。在任何一种情况下,x 或其元素都必须支持与自身以及与 c 的元素进行乘法和加法运算。
如果 c 是一维数组,则
p(x)
将与 x 具有相同的形状。如果 c 是多维的,则结果的形状取决于 tensor 的值。如果 tensor 为 True,则形状将为 c.shape[1:] + x.shape。如果 tensor 为 False,则形状将为 c.shape[1:]。请注意,标量的形状为 (,).。系数中的尾随零将在计算中使用,因此如果效率是考虑因素,则应避免使用它们。
- 参数:
- x类数组对象,兼容对象
如果 x 是列表或元组,则将其转换为 ndarray,否则保持不变并视为标量。在任何一种情况下,x 或其元素都必须支持与自身以及与 c 的元素进行加法和乘法运算。
- c类数组对象
系数数组,其顺序使得 n 次项的系数包含在 c[n] 中。如果 c 是多维的,则其余索引枚举多个多项式。在二维情况下,系数可以视为存储在 c 的列中。
- tensor布尔值,可选
如果为 True,则系数数组的形状会在右侧用 1 扩展,x 的每个维度对应一个 1。标量在此操作中维度为 0。结果是 c 中的每列系数都会针对 x 的每个元素进行计算。如果为 False,则 x 会在 c 的列上进行广播以进行计算。当 c 是多维时,此关键字很有用。默认值为 True。
- 返回:
- valuesndarray,代数对象
返回值的形状如上所述。
另请参阅
注释
此计算使用 Clenshaw 递归,也称为综合除法。
示例
>>> from numpy.polynomial.hermite import hermval >>> coef = [1,2,3] >>> hermval(1, coef) 11.0 >>> hermval([[1,2],[3,4]], coef) array([[ 11., 51.], [115., 203.]])