python中使用scipy.integrate求积分、二重积分、三重积分
import numpy as np
from scipy.integrate import tplquad,dblquad,quad
#积分
val1,err1=quad(lambda x:np.sin(x),#函数
0,#x下界0
np.pi)#x上界pi
print ('积分结果:',val1)
#二重积分
val2,err2=dblquad(lambda y,x:np.sin(x)*np.cos(y),#函数
0,#x下界0
np.pi,#x上界pi
lambda x:x**2,#y下界x^2
lambda x:2*x)#y上界2*x
print ('二重积分结果:',val2)
#三重积分
val3,err3=tplquad(lambda z,y,x:1/(np.sqrt(x+y**2+z**3)),#函数
0,#x下界0
1,#x上界1
lambda x:-x,#y下界-x
lambda x:x,#y上界x
lambda x,y:np.sin(x),#z下界sin(x)
lambda x,y:x+2*y)#z上界x+2*y
print ('三重积分结果:',val3)
其运算结果为
积分结果: 2.0
二重积分结果: -0.4989998520503062
三重积分结果: -0.05881880054964517