SciPy - integrate.dblquad() Method



The SciPy integrate.dblquad() is used to calculate the double numerical integration which means it accept two variables say(x, y) to work on. A calculation of two variable used in linear algebra mathematics.

Syntax

Following is the syntax of the SciPy integrate.dblquad() method −

dblquad(func, a, b, lambda x: 0, lambda x: 1)

Parameters

This method accept the following parameter −

  • func: This parameter is used to work with integrals.
  • a: The integer value is passed to this parameter(limit of integration in x).
  • b: The integer value is passed to this parameter(limit of integration in x).
  • lambda x: 0: This parameter is used to represent the lower limit of integration for inner integer variable as y(0) with respect to x.
  • lambda x: 1: This parameter is used to represent the upper limit of integration for inner integer variable as y(1) with respect to x.

Return value

This method returns the result in form of float values.

Example 1

Following is the basic example that shows the usage of integrate.dblquad() method.

from scipy import integrate

# define the function 
def fun(x, y):
    return x + y

# perform the operation using dblquad()
res, err = integrate.dblquad(fun, 0, 1, lambda x: 0, lambda x: 1)

# display the result
print("The result is ", res)
print("The estimated error is ", err)

Output

The above code produces the following output −

The result is  1.0
The estimated error is  1.662923778137264e-14

Example 2

Here, we perform the double integration of function f(x,y) = x.y over the region covered x and the x is ranges between the interval 0 and 1.

from scipy.integrate import dblquad

# define the function 
def fun(x, y):
    return x * y

# perform the operation using dblquad()
res, err = dblquad(fun, 0, 1, lambda x: x**2, lambda x: x)

# display the result
print("The result is ", res)
print("The estimated error is ", err)

Output

The above code produces the following output −

The result is  0.04166666666666666
The estimated error is  1.0313680578775149e-15

Example 3

Below is the another demonstration of dblquad() to perform the task with three variable say(x, y, z) and calculate the result with the help of lambda function.

Mathematically, it is represented by f(x,y) = c(x+y) over a region x and have range interval.

from scipy.integrate import dblquad

# define the function 
def fun(x, y, c):
    return c * (x + y)

c = 2

# perform the operation using dblquad()
res, err = dblquad(fun, 0, 2, lambda x: 1, lambda x: 3, args=(c,))

# display the result
print("The result is ", res)
print("The estimated error is ", err)

Output

The above code produces the following output −

The result is  24.0
The estimated error is  2.6645352591003757e-13
scipy_reference.htm
Advertisements