numpy.polynomial.legendre.legval#

polynomial.legendre.legval(x, c, tensor=True)[源代码]#

在点 x 处计算勒让德级数。

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

\[p(x) = c_0 * L_0(x) + c_1 * L_1(x) + ... + c_n * L_n(x)\]

仅当参数 x 是元组或列表时,才会将其转换为数组,否则将其视为标量。无论哪种情况,x 或其元素都必须支持与自身以及与 c 的元素进行乘法和加法运算。

如果 c 是 1 维数组,则 p(x) 将具有与 x 相同的形状。如果 c 是多维的,则结果的形状取决于 tensor 的值。如果 tensor 为真,则形状将为 c.shape[1:] + x.shape。如果 tensor 为假,则形状将为 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 递归,也称为综合除法。