numpy.polyint#
- numpy.polyint(p, m=1, k=None)[source]#
返回多项式的反导数(不定积分)。
注意
这构成了旧多项式 API 的一部分。从 1.4 版开始,建议使用在
numpy.polynomial
中定义的新多项式 API。在 转换指南 中可以找到差异的总结。返回的 m 阶反导数 P 多项式 p 满足 \(\frac{d^m}{dx^m}P(x) = p(x)\),并定义到 m - 1 个积分常数 k。常数确定低阶多项式部分
\[\frac{k_{m-1}}{0!} x^0 + \ldots + \frac{k_0}{(m-1)!}x^{m-1}\]的 P,以便 \(P^{(j)}(0) = k_{m-j-1}\)。
- 参数:
- parray_like 或 poly1d
要积分的多项式。序列被解释为多项式系数,参见
poly1d
。- mint,可选
反导数的阶数。(默认值:1)
- km 个标量的列表或标量,可选
积分常数。它们按积分顺序给出:对应于最高阶项的常数排在前面。
如果为
None
(默认值),则假定所有常数都为零。如果 m = 1,则可以给出单个标量而不是列表。
另请参阅
polyder
多项式的导数
poly1d.integ
等效方法
示例
反导数的定义属性
>>> import numpy as np
>>> p = np.poly1d([1,1,1]) >>> P = np.polyint(p) >>> P poly1d([ 0.33333333, 0.5 , 1. , 0. ]) # may vary >>> np.polyder(P) == p True
积分常数默认为零,但可以指定
>>> P = np.polyint(p, 3) >>> P(0) 0.0 >>> np.polyder(P)(0) 0.0 >>> np.polyder(P, 2)(0) 0.0 >>> P = np.polyint(p, 3, k=[6,5,3]) >>> P poly1d([ 0.01666667, 0.04166667, 0.16666667, 3. , 5. , 3. ]) # may vary
请注意 3 = 6 / 2!,并且常数按积分顺序给出。最高阶多项式项的常数排在前面
>>> np.polyder(P, 2)(0) 6.0 >>> np.polyder(P, 1)(0) 5.0 >>> P(0) 3.0