SciPy - integration.nquad() 方法

SciPy integrate.nquad() 方法用于求多个变量的积分。在创建程序时,必须将模块称为 scipy.integrate

语法

以下是 SciPy integrate.nquad() 方法的语法 −

scipy.integrate.nquad(custom_func, [[0, 1], [0, 1]])

参数

此方法接受以下参数 −

  • custom_func:此参数为积分工作而定义,在其中执行积分任务(上限下限)。
  • [0, 1]:此参数用于定义上限。
  • [1, 0]:此参数用于定义下限。
  • args = (a, b):如果用户想要更多变量来执行积分工作,则这是一个可选参数。

返回值

该方法返回浮点类型的结果积分值。

示例 1

以下是 SciPy integrate.nquad() 方法的基本示例,说明了两个变量的积分。

import scipy.integrate

def integrand(x, y):
    return x**2 + y**2
    
# 执行 nquad()
res, _ = scipy.integrate.nquad(integrand, [[0, 1], [0, 1]])
print("双重积分结果是 ", res)

输出

上述代码产生以下输出 −

双重积分结果是 0.6666666666666669

示例 2

在这里,我们对三个变量(x、y 和 z)执行积分运算。

import scipy.integrate
def integrand(x, y, z):
    return x + y + z
    
# 执行 nquad()
res, _ = scipy.integrate.nquad(integrand, [[0, 1], [0, 1], [0, 1]])
print("三重积分结果是 ", res)

输出

上述代码产生以下输出 −

三重积分结果是 1.5

示例 3

下面的程序使用多个变量(x、y、a 和 b)计算积分结果。

import scipy.integrate
def integrand(x, y, a, b):
    return a * x + b * y

a = 2
b = 3

# 执行 nquad()
res, _ = scipy.integrate.nquad(integrand, [[0, 1], [0, 1]], args=(a, b))

# 显示结果
print("带有参数 result 的二重积分是 ", res)

输出

上述代码产生以下输出 −

带有参数 result 的二重积分是 2.5

scipy_reference.html