numpy.polynomial.polynomial.polyint #

多项式.多项式. polyint ( c , m = 1 , k = [] , lbnd = 0 , scl = 1 , axis = 0 ) [来源] #

对多项式进行积分。

返回lbnd沿axis积分m次的 多项式系数c。在每次迭代中,所得序列 乘以scl并添加积分常数k 。比例因子用于变量的线性变化。 (“买家当心”:请注意,根据人们在做什么,人们可能希望scl 是人们所期望的倒数;有关更多信息,请参阅下面的“注释”部分。)参数c是一个系数数组,沿着每个轴从低到高的程度,例如,[1,2,3] 表示多项式,而 [[1,2],[1,2]] 表示如果 axis=0 则为且 axis=1 为 。1 + 2*x + 3*x**21 + 1*x + 2*y + 2*x*yxy

参数
数组

多项式系数的一维数组,从低到高排序。

m整数,可选

积分顺序必须是正数。 (默认值:1)

k {[],列表,标量},可选

积分常数。第一个零处积分的值是列表中的第一个值,第二个零处积分的值是第二个值,依此类推。如果(默认),所有常量都设置为零。如果,可以给出单个标量而不是列表。k == []m == 1

lbnd标量,可选

积分的下界。 (默认值:0)

scl标量,可选

每次积分后,结果先乘以scl 然后再添加积分常数。 (默认值:1)

int,可选

进行积分的轴。 (默认值:0)。

1.7.0 版本中的新增内容。

返回
阵列

积分的系数数组。

加薪
值错误

如果、、、 或 。m < 1len(k) > mnp.ndim(lbnd) != 0np.ndim(scl) != 0

也可以看看

polyder

笔记

请注意,每次积分的结果都会乘以scl 。为什么这一点值得注意?假设变量发生线性变化\(u = ax + b\)相对于x的积分。然后 \(dx = du/a\),因此需要将scl设置为等于 \(1/a\)- 也许不是人们首先想到的。

例子

>>> from numpy.polynomial import polynomial as P
>>> c = (1,2,3)
>>> P.polyint(c) # should return array([0, 1, 1, 1])
array([0.,  1.,  1.,  1.])
>>> P.polyint(c,3) # should return array([0, 0, 0, 1/6, 1/12, 1/20])
 array([ 0.        ,  0.        ,  0.        ,  0.16666667,  0.08333333, # may vary
         0.05      ])
>>> P.polyint(c,k=3) # should return array([3, 1, 1, 1])
array([3.,  1.,  1.,  1.])
>>> P.polyint(c,lbnd=-2) # should return array([6, 1, 1, 1])
array([6.,  1.,  1.,  1.])
>>> P.polyint(c,scl=-2) # should return array([0, -2, -2, -2])
array([ 0., -2., -2., -2.])