scipy.integrate.dblquad¶
- scipy.integrate.dblquad(func, a, b, gfun, hfun, args=(), epsabs=1.49e-08, epsrel=1.49e-08)[源代码]¶
计算二重积分。
返回的双(定)积分
func(y, x)从…x = a..b和y = gfun(x)..hfun(x)。- 参数
- func可调用
至少包含两个变量的Python函数或方法:y必须是第一个参数,x必须是第二个参数。
- a, b浮动
x中的积分极限: a < b
- gfun可调用或浮动
y中的下限曲线,它是一个接受单个浮点参数(X)并返回浮点结果的函数,或者是表示恒定边界曲线的浮点数。
- hfun可调用或浮动
y中的上边界曲线(要求与 gfun )。
- args序列,可选
要传递的额外参数 func 。
- epsabs浮动,可选
绝对公差直接传递给内部一维积分。默认值为1.49e-8。
dblquad试图获得以下精度: ``abs(i-result) <= max(epsabs, epsrel*abs(i))` 哪里i=的内积分func(y, x)从…gfun(x)至hfun(x),以及result是数值近似。看见 epsrel 下面。- epsrel浮动,可选
内部一维积分的相对公差。默认值为1.49e-8。如果
epsabs <= 0, epsrel 必须大于5e-29和50 * (machine epsilon)。看见 epsabs 上面。
- 退货
- y浮动
得到的积分。
- abserr浮动
对误差的估计。
参见
quad单积分
tplquad三重积分
nquadn维积分
fixed_quad定阶高斯求积
quadrature自适应高斯求积
odeintODE积分器
odeODE积分器
simpson采样数据积分器
romb采样数据积分器
scipy.special对于正交多项式的系数和根
示例
的二重积分的计算
x * y**2越过盒子x范围从0到2,并且y范围从0到1。>>> from scipy import integrate >>> f = lambda y, x: x*y**2 >>> integrate.dblquad(f, 0, 2, lambda x: 0, lambda x: 1) (0.6666666666666667, 7.401486830834377e-15)