SciPy - integrate.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
    
# perform the nquad()
res, _ = scipy.integrate.nquad(integrand, [[0, 1], [0, 1]])
print("The double integral result is ", res)

输出

上述代码生成以下输出:

The double integral result is  0.6666666666666669

示例 2

在此,我们对三个变量(x、y 和 z)执行积分操作。

import scipy.integrate
def integrand(x, y, z):
    return x + y + z
    
# perform the nquad()
res, _ = scipy.integrate.nquad(integrand, [[0, 1], [0, 1], [0, 1]])
print("The triple integral result is ", res)

输出

上述代码生成以下输出:

The triple integral result is  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

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

# display the result
print("The double integral with parameter result is ", res)

输出

上述代码生成以下输出:

The double integral with parameter result is  2.5
scipy_reference.htm
广告