文章目录
- 示例
- 完整参数
- weight参数
示例
quad
是scipy.integrate
中最常用的积分函数,示例如下
import numpy as np
from scipy.integrate import quad
func = lambda x: x**2
quad(func, 0, 4)
# (21.333333333333332, 2.3684757858670003e-13)
quad(np.sin, 0, np.pi)
# (2.0, 2.220446049250313e-14)
在上面的代码中,func
为待积分函数,后面紧跟着的两个参数表示积分的下界和上界。返回值有二,分别为积分结果和计算误差。
用于测试的两个函数的解析形式如下,可见计算结果吻合。
完整参数
quad
的完整参数如下
scipy.integrate.quad(func, a, b, args=(), full_output=0, epsabs=1.49e-08, epsrel=1.49e-08, limit=50, points=None, weight=None, wvar=None, wopts=None, maxp1=50, limlst=50, complex_func=False)
其中,
args
为func
函数中,除待求积分参数之外的其他参数epsabs, epsrel
分别为绝对和相对误差limit
自适应算法中子区间的个数points
断点位置weight, wvar
定义域区间内的权重类型和权重wopts, maxp1
切比雪夫矩及其上限
weight参数
其中,weight
和wvar
参数的具体取值如下。
weight | wvar | 函数 |
---|---|---|
“cos” | ||
“sin” | ||
“alg” | ||
“alg-loga” | ||
“alg-logb” | ||
“alg-log” | ||
“cauchy” |
其中,
设func
为,若
weight
参数为cos
,而wvar
取值为,则实际计算的积分表达式为
示例如下
func = lambda x : x
quad(func, 0, np.pi)
# (4.934802200544679, 5.478731025015592e-14)
quad(func, 0, np.pi, weight='cos', wvar=1)
# (-1.9999999999999993, 1.926079284799239e-13)
文章出处登录后可见!
已经登录?立即刷新