# How to write and evaluate definite integrals (in Python, using SymPy)

## Task

The area under a curve can be computed using a definite integral. To compute the area above the $x$ axis and under $f(x)$, from $x=a$ to $x=b$, we write

\[\int_a^b f(x)\;dx.\]How can we write and evaluate definite integrals using software?

Related tasks:

- How to compute the derivative of a function
- How to write and evaluate indefinite integrals
- How to write and evaluate Riemann sums

## Solution

This answer assumes you have imported SymPy as follows.

1
2

from sympy import * # load all math functions
init_printing( use_latex='mathjax' ) # use pretty math output

Letâ€™s compute the area under $\sin x$ from $x=0$ to $x=\pi$.

We use the same technique as in how to write and evaluate indefinite integrals, except that we add the lower and upper bounds together with $x$, as shown below.

1
2
3

var( 'x' )
formula = sin(x)
Integral( formula, (x,0,pi) )

$\displaystyle \int\limits_{0}^{\pi} \sin{\left(x \right)}\, dx$

The above code just displays the definite integral.
To evaluate it, use the `integrate`

command.

1

integrate( formula, (x,0,pi) )

$\displaystyle 2$

Content last modified on 24 July 2023.

See a problem? Tell us or edit the source.

Contributed by Nathan Carter (ncarter@bentley.edu)