scipy.integrate.

求积法#

scipy.integrate.quadrature(func, a, b, args=(), tol=1.49e-08, rtol=1.49e-08, maxiter=50, vec_func=True, miniter=1)[源代码][源代码]#

使用固定容差的Gauss-Legendre求积法计算定积分。

自 1.12.0 版本弃用: 自 SciPy 1.12.0 起,此函数已被弃用,并将在 SciPy 1.15.0 中移除。请改用 scipy.integrate.quad

使用绝对容差 tol 的高斯求积法,从 ab 积分 func

参数:
函数函数

一个要集成的 Python 函数或方法。

a浮动

积分下限。

b浮动

积分上限。

参数tuple, 可选

传递给函数的额外参数。

tol, rtolfloat, 可选

当最后两次迭代之间的误差小于 tol 或相对变化小于 rtol 时,迭代停止。

maxiterint, 可选

高斯积分的最大阶数。

vec_funcbool, 可选

如果 func 处理数组作为参数(是一个“向量”函数),则为真或假。默认是真。

miniterint, 可选

高斯积分的最小阶数。

返回:
val浮动

高斯求积近似(在容差范围内)到积分。

错误浮动

积分最后两次估计的差异。

参见

fixed_quad

固定顺序的高斯求积

quad

使用 QUADPACK 的自适应积分

dblquad

双重积分

tplquad

三重积分

romb

采样数据的积分器

simpson

采样数据的积分器

cumulative_trapezoid

采样数据的累积积分

示例

>>> from scipy import integrate
>>> import numpy as np
>>> f = lambda x: x**8
>>> integrate.quadrature(f, 0.0, 1.0)
(0.11111111111111106, 4.163336342344337e-17)
>>> print(1/9.0)  # analytical result
0.1111111111111111
>>> integrate.quadrature(np.cos, 0.0, np.pi/2)
(0.9999999999999536, 3.9611425250996035e-11)
>>> np.sin(np.pi/2)-np.sin(0)  # analytical result
1.0