|MATLAB Function Reference|
Numerically evaluate integral, adaptive Simpson quadrature
Quadrature is a numerical method used to find the area under the graph of a function, that is, to compute a definite integral.
q = quad(fun,a,b)
approximates the integral of function
b to within an error of 10-6 using recursive adaptive Simpson quadrature.
fun accepts a vector
x and returns a vector
y, the function
fun evaluated at each element of
q = quad(fun,a,b,tol)
uses an absolute error tolerance tol instead of the default which is
1.0e-6. Larger values of
tol result in fewer function evaluations and faster computation, but less accurate results. In MATLAB version 5.3 and earlier, the
quad function used a less reliable algorithm and a default relative tolerance of
q = quad(fun,a,b,tol,trace)
trace shows the values of
[fcnt a b-a Q] during the recursion.
provides for additional arguments
q = quad(fun
p1,p2,... to be passed directly to function
fun(x,p1,p2,...). Pass empty matrices for
trace to use the default values.
[q,fcnt] = quad(...)
returns the number of function evaluations.
quadl may be more efficient with high accuracies and smooth integrands.
fun can be
quad implements a low order method using an adaptive recursive Simpson's rule.
quad may issue one of the following warnings:
'Minimum step size reached' indicates that the recursive interval subdivision has produced a subinterval whose length is on the order of roundoff error in the length of the original interval. A nonintegrable singularity is possible.
'Maximum function count exceeded' indicates that the integrand has been evaluated more than 10,000 times. A nonintegrable singularity is likely.
'Infinite or Not-a-Number function value encountered' indicates a floating point overflow or division by zero during the evaluation of the integrand in the interior of the interval.
@ (function handle)
 Gander, W. and W. Gautschi, "Adaptive Quadrature - Revisited", BIT, Vol. 40, 2000, pp. 84-101. This document is also available at http:// www.inf.ethz.ch/personal/gander.