CoCalc Public Filestmp / TrapezoidRule.ipynbOpen in with one click!
Authors: Harald Schilly, ℏal Snyder, William A. Stein

Basic Numerical Integration: the Trapezoid Rule

A simple illustration of the trapezoid rule for definite integration:

abf(x)dx12k=1N(xkxk1)(f(xk)+f(xk1)). \int_{a}^{b} f(x)\, dx \approx \frac{1}{2} \sum_{k=1}^{N} \left( x_{k} - x_{k-1} \right) \left( f(x_{k}) + f(x_{k-1}) \right).
First, we define a simple function and sample it between 0 and 10 at 200 points

In [1]:
%matplotlib inline import numpy as np import matplotlib.pyplot as plt
In [2]:
def f(x): return (x-3)*(x-5)*(x-7)+85 x = np.linspace(0, 10, 200) y = f(x)

Choose a region to integrate over and take only a few points in that region

In [3]:
a, b = 1, 9 xint = x[np.logical_and(x>=a, x<=b)][::30] yint = y[np.logical_and(x>=a, x<=b)][::30]

Plot both the function and the area below it in the trapezoid approximation

In [5]:
plt.plot(x, y, lw=2) plt.axis([0, 10, 0, 140]) plt.fill_between(xint, 0, yint, facecolor='gray', alpha=0.4) plt.text(0.5 * (a + b), 30,r"$\int_a^b f(x)dx$", horizontalalignment='center', fontsize=20);
{"metadata":{},"output_type":"display_data","png":"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\nrkJggg==\n","text":["<matplotlib.figure.Figure at 0x7ff9b2045650>"]}

Compute the integral both at high accuracy and with the trapezoid approximation

In [6]:
from __future__ import print_function from scipy.integrate import quad, trapz integral, error = quad(f, 1, 9) print("The integral is:", integral, "+/-", error) print("The trapezoid approximation with", len(xint), "points is:", trapz(yint, xint))
The integral is: 680.0 +/- 7.54951656745e-12 The trapezoid approximation with 6 points is: 621.286411141
In [ ]: