numpy.polyint#

numpy.polyint(p, m=1, k=None)[源代码]#

返回一个多项式的反导数(不定积分).

备注

这部分是旧的多项式API的一部分.自版本1.4起,新的多项式API定义在 numpy.polynomial 中是首选.差异的总结可以在 过渡指南 中找到.

返回的多项式 pm 反导数 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)

k : m 个标量或标量的列表,可选列表

积分常数.它们按积分顺序给出:对应于最高阶项的常数排在前面.

如果 ``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