numpy.polynomial.hermite_e.hermeval#

polynomial.hermite_e.hermeval(x, c, tensor=True)[source]#

在点 x 处计算埃尔米特E级数。

如果 c 的长度为 n + 1,则此函数返回以下值:

\[p(x) = c_0 * He_0(x) + c_1 * He_1(x) + ... + c_n * He_n(x)\]

参数 x 仅当其为元组或列表时才转换为数组,否则将其视为标量。在任何一种情况下,x 或其元素都必须支持与自身以及与 c 元素的乘法和加法。

如果 c 是一个一维数组,则 p(x) 将与 x 具有相同的形状。如果 c 是多维的,则结果的形状取决于 tensor 的值。如果 tensor 为 True,则形状将为 c.shape[1:] + x.shape。如果 tensor 为 False,则 x 会在 c 的列上进行广播以进行计算。请注意,标量的形状为 (,)。

系数中的尾随零将在计算中使用,因此如果关注效率,则应避免使用它们。

参数:
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_e import hermeval
>>> coef = [1,2,3]
>>> hermeval(1, coef)
3.0
>>> hermeval([[1,2],[3,4]], coef)
array([[ 3., 14.],
       [31., 54.]])