Python使用Scipy求解一重与二重积分实例

白榆
白榆
发布时间:2026-10-13 | 5人浏览过
原创

本文介绍如何利用Python的Scipy库进行数值积分计算。通过具体代码示例,演示如何使用integrate.quad求解一元函数的一重积分,以及如何利用dblquad处理涉及两个变量的二重积分问题,包含完整的函数定义、参数设置及结果解析。

Python求解一元函数积分

首先介绍一元函数的积分计算方法,主要依赖Scipy库中的integrate模块。


from scipy import integrate
def g(x):
  return (1-x**2)**0.5
 
#用integrate下的quad函数可以同时求出积分结果和误差
res,err=integrate.quad(g,-1,1) #-1和1表示积分上下限,如果是正无穷用np.inf
print(res,err)

运行上述代码后,输出结果包含两部分:第一项为积分计算值,第二项为估计的误差值。


1.5707963267948986 1.0002356720661965e-09

Python求解二重积分

若需计算二重积分,例如针对变量t和x的积分运算,可采用以下方法。


import numpy as np
from scipy.integrate import dblquad #dblquad用于二重积分
def main():
  print(dblquad(lambda t,x:np.sin(t)*np.exp(-x*t)/t**5,0.5,0.8,lambda x:0.2,lambda x:0.7))
 
if __name__ == "__main__":
  main()

在上述示例中,被积函数设定为sint*exp(-xt)/t^5。其中,变量t的积分区间为0.5至0.8,变量x的积分区间为0.2至0.7。最终计算结果如下所示:


(10.041536868759145, 1.3645801372419182e-11)

以上即为利用Python求解一重及二重积分的完整示例,供读者参考使用。

相关标签:

本站声明

本文内容仅供参考,不代表本站观点。转载或引用请注明出处。如发现内容问题,请通过联系我们页面反馈。

Python 相关产品和应用

全部下载

专题列表