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 的高斯正交,对从 a 到 b 的 func 进行积分。
- 参数:
- 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