scipy.integrate.

quadrature#

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

使用固定容差高斯正交计算定积分。

从版本 1.12.0 开始已弃用: 此函数从 SciPy 1.12.0 开始已弃用,并将从 SciPy 1.15.0 中移除。请改用 scipy.integrate.quad

使用绝对容差为 tol 的高斯正交,对从 abfunc 进行积分。

参数:
func函数

要积分的 Python 函数或方法。

a浮点数

积分下限。

b浮点数

积分上限。

args元组,可选

要传递给函数的额外参数。

tol, rtol浮点数,可选

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

maxiter整数,可选

高斯正交的最大阶数。

vec_func布尔值,可选

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

miniter整数,可选

高斯正交的最小阶数。

返回值:
val浮点数

积分的高斯正交近似值(在容差范围内)。

err浮点数

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

另请参阅

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