numpy.polynomial#

一个用于高效处理多项式的子包。

在这个子包的文档中,“有限幂级数”,即多项式(也简称为“级数”)用多项式系数的 1 维 numpy 数组表示,顺序是从最低阶项到最高阶项。例如,数组 [1,2,3] 表示 P_0 + 2*P_1 + 3*P_2,其中 P_n 是适用于特定模块的 n 阶基多项式,例如,polynomial(它“包装”了“标准”基)或 chebyshev。为了获得最佳性能,对多项式的所有操作(包括在参数处求值)都实现为对系数的操作。其他(特定于模块的)信息可以在相关模块的文档字符串中找到。

此包为六种不同类型的多项式中的每一种提供了便捷类

名称

提供

Polynomial

幂级数

Chebyshev

切比雪夫级数

Legendre

勒让德级数

Laguerre

拉盖尔级数

Hermite

埃尔米特级数

HermiteE

埃尔米特E级数

这些便捷类为创建、操作和拟合具有不同基的多项式的数据提供了一致的接口。便捷类是 polynomial 包的首选接口,并且可以从 numpy.polynomial 命名空间获得。这消除了导航到相应子模块的需要,例如,np.polynomial.Polynomialnp.polynomial.Chebyshev,而不是 np.polynomial.polynomial.Polynomialnp.polynomial.chebyshev.Chebyshev。这些类提供了比每个多项式类型的子模块中定义的特定类型函数更一致和简洁的接口。例如,要将一个 1 阶的切比雪夫多项式拟合到由数组 xdataydata 给出的数据,应使用 fit 类方法

>>> from numpy.polynomial import Chebyshev
>>> xdata = [1, 2, 3, 4]
>>> ydata = [1, 4, 9, 16]
>>> c = Chebyshev.fit(xdata, ydata, deg=1)

而不是 np.polynomial.chebyshev 模块中的 chebyshev.chebfit 函数

>>> from numpy.polynomial.chebyshev import chebfit
>>> c = chebfit(xdata, ydata, deg=1)

有关更多详细信息,请参阅使用便捷类

便捷类#

以下列出了表示各种多项式的类通用的各种常量和方法。在下文中,术语 Poly 表示任何一个便捷类(例如,PolynomialChebyshevHermite 等),而小写 p 表示多项式类的实例

常量#

  • Poly.domain – 默认域

  • Poly.window – 默认窗口

  • Poly.basis_name – 用于表示基的字符串

  • Poly.maxpower – 允许 p**n 的最大值 n

  • Poly.nickname – 打印中使用的字符串

创建#

用于创建多项式实例的方法。

  • Poly.basis(degree) – 给定次数的基多项式

  • Poly.identity() – 对于所有 xp 其中 p(x) = x

  • Poly.fit(x, y, deg) – 次数为 degp,其系数由对数据 xy 的最小二乘拟合确定

  • Poly.fromroots(roots) – 具有指定根的 p

  • p.copy() – 创建 p 的副本

转换#

用于将一种多项式实例转换为另一种的方法。

  • p.cast(Poly) – 将 p 转换为 Poly 类型的实例

  • p.convert(Poly) – 将 p 转换为 Poly 类型的实例或在 domainwindow 之间映射

微积分#

  • p.deriv() – 求 p 的导数

  • p.integ() – 对 p 积分

验证#

  • Poly.has_samecoef(p1, p2) – 检查系数是否匹配

  • Poly.has_samedomain(p1, p2) – 检查域是否匹配

  • Poly.has_sametype(p1, p2) – 检查类型是否匹配

  • Poly.has_samewindow(p1, p2) – 检查窗口是否匹配

其他#

  • p.linspace() – 返回 domain 中等距点的 x, p(x)

  • p.mapparms() – 返回 domainwindow 之间线性映射的参数。

  • p.roots() – 返回 p 的根。

  • p.trim() – 删除尾随系数。

  • p.cutdeg(degree) – 将 p 截断到给定的次数

  • p.truncate(size) – 将 p 截断到给定的大小

配置#

numpy.polynomial.set_default_printstyle(style)

设置多项式字符串表示的默认格式。