You are now following this Submission
- You will see updates in your followed content feed
- You may receive emails, depending on your communication preferences
This function computes the integral "I" via Simpson's rule in the interval [a,b] with n+1 equally spaced points
Syntax: I = simpsons(f,a,b,n)
Where,
f= can either be an anonymous function (e.g. f=@(x) sin(x)) or a vector containing equally spaced values of the function to be integrated
a= Initial point of interval
b= Last point of interval
n= # of sub-intervals (panels), must be integer
Written by Juan Camilo Medina - The University of Notre Dame
09/2010 (copyright Dr. Simpson)
Example 1:
Suppose you want to integrate a function f(x) in the interval [-1,1].
You also want 3 integration points (2 panels) evenly distributed through the
domain (you can select more point for better accuracy).
Thus:
f=@(x) ((x-1).*x./2).*((x-1).*x./2);
I=simpsons(f,-1,1,2)
Example 2:
Suppose you want to integrate a function f(x) in the interval [-1,1].
You know some values of the function f(x) between the given interval,
those are fi= {1,0.518,0.230,0.078,0.014,0,0.006,0.014,0.014,0.006,0}
Thus:
fi= [1 0.518 0.230 0.078 0.014 0 0.006 0.014 0.014 0.006 0];
I=simpsons(fi,-1,1,[])
note that there is no need to provide the number of intervals (panels) "n",
since they are implicitly specified by the number of elements in the vector fi
Cite As
Juan Camilo Medina (2026). Simpson's Rule Integration (https://ch.mathworks.com/matlabcentral/fileexchange/28726-simpson-s-rule-integration), MATLAB Central File Exchange. Retrieved .
Acknowledgements
Inspired: simpsonQuadrature, Simpson's 1/3 and 3/8 rules
Categories
Find more on Numerical Integration and Differential Equations in Help Center and MATLAB Answers
General Information
- Version 1.6.0.0 (1.71 KB)
MATLAB Release Compatibility
- Compatible with any release
Platform Compatibility
- Windows
- macOS
- Linux
