numpy.polynomial.hermite.hermint

polynomial.hermite.hermint(c, m=1, k=[], lbnd=0, scl=1, axis=0)[源代码]

集成一个Hermite系列。

返回埃尔米特级数系数 c 集成的 m 时代从 lbnd 沿着 axis . 在每次迭代中,结果序列是 倍增的 通过 scl 积分常数, k ,添加。比例因子用于变量的线性变化。(买方注意:请注意,根据所做的,可能需要 scl 与你所期望的相反;更多信息,请参阅下面的注释部分。)参数 c 是沿每个轴从低到高的系数数组,例如, [1,2,3] 表示序列 H_0 + 2*H_1 + 3*H_2 虽然 [[1,2] , [1,2] 代表 1*H_0(x)*H_0(y) + 1*H_1(x)*H_0(y) + 2*H_0(x)*H_1(y) + 2*H_1(x)*H_1(y) 如果轴=0是 x 轴=1 y .

参数
carray_like

埃尔米特级数系数数组。如果c是多维的,则不同的轴对应不同的变量,每个轴的度数由相应的索引给出。

m可选的

整合的顺序,必须是积极的。(默认值:1)

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

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

lbnd标量,可选

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

scl标量,可选

每次集成后,结果是 倍增的 通过 scl 在添加积分常数之前。(默认值:1)

axis可选的

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

1.7.0 新版功能.

返回
S恩达雷

厄米级数积分系数。

加薪
ValueError

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

参见

hermder

笔记

注意,每个集成的结果是 倍增的 通过 scl . 为什么要注意这一点?假设一个人正在做变量的线性变化 u = ax + b 在积分中相对于 x . 然后 dx = du/a ,因此需要设置 scl 等于 1/a -也许这不是人们首先想到的。

还请注意,通常,集成C系列的结果需要“重新投影”到C系列基集上。因此,通常情况下,此函数的结果是“非指导性的”,尽管是正确的;请参见下面的示例部分。

实例

>>> from numpy.polynomial.hermite import hermint
>>> hermint([1,2,3]) # integrate once, value 0 at 0.
array([1. , 0.5, 0.5, 0.5])
>>> hermint([1,2,3], m=2) # integrate twice, value & deriv 0 at 0
array([-0.5       ,  0.5       ,  0.125     ,  0.08333333,  0.0625    ]) # may vary
>>> hermint([1,2,3], k=1) # integrate once, value 1 at 0.
array([2. , 0.5, 0.5, 0.5])
>>> hermint([1,2,3], lbnd=-1) # integrate once, value 0 at -1
array([-2. ,  0.5,  0.5,  0.5])
>>> hermint([1,2,3], m=2, k=[1,2], lbnd=-1)
array([ 1.66666667, -0.5       ,  0.125     ,  0.08333333,  0.0625    ]) # may vary