Simpson’s 3/8 Rule for Numerical Integration

Numerical Methods

Source inspiration: (Mathew 2000-2019).

Description

Composite Simpson’s 3/8 rule applies cubic interpolation on blocks of three subintervals. With \(h=(b-a)/n\) and \(n\) divisible by 3, \[ S^{3/8}_n = \frac{3h}{8}\left[f(x_0)+f(x_n)+3\sum_{i\not\equiv 0\,(\mathrm{mod}\,3)} f(x_i)+2\sum_{i\equiv 0\,(\mathrm{mod}\,3),\,0<i<n} f(x_i)\right]. \]

The method is fourth-order accurate for smooth integrands, \(S^{3/8}_n - I = O(h^4)\), and can be viewed as a higher-order refinement of trapezoidal geometry using piecewise cubic panels.

Animations

Each animation below shows the Simpson’s 3/8 rule diagram over \([0,2]\) for \(y = e^{-x}\sin(8x^{2/3})+1\). Each frame recomputes the approximation across the full interval with a denser partition where \(n\) remains a multiple of 3.

Julia source scripts that generated these animations are linked under each case.

Case 1 — Composite Simpson’s 3/8 Rule, \(f(x)=e^{-x}\sin(8x^{2/3})+1\) on \([0,2]\)

Behavior: Piecewise cubic panels over triplets of subintervals are rebuilt at increasing density. The approximation converges rapidly with fourth-order global error.

Julia source

Simpson’s 3/8 Rule animation over [0,2] with full-interval density refinement: each frame updates piecewise cubic panels and the global approximation

Legacy note: the archived animation HTML exists, but the referenced Simpsonaa.gif is missing in the snapshot; this reconstruction follows the module formulas and visual conventions.

Derivation Notes (Planned)

Short derivations will be added to explain the core equations and assumptions.

Worked Example (Planned)

A compact numerical example with intermediate steps will be included.

Implementation Notes (Planned)

Implementation details, numerical stability notes, and practical pitfalls will be added.

References

Mathew, John H. 2000-2019. Numerical Analysis - Numerical Methods Modules. https://web.archive.org/web/20190808102217/http://mathfaculty.fullerton.edu/mathews/n2003/NumericalUndergradMod.html.