File Exchange

image thumbnail

rombergQuadrature

version 1.1.0.0 (2.17 KB) by Matthew Kelly
Computes integral of vector functions using Romberg quadrature.

1 Download

Updated 01 Mar 2016

View License

% [x, err] = rombergQuadrature(fun,tSpan,tol)
%
% Compute the integral(fun), over the domain tSpan, to an accuracy of tol,
% using Romberg quadrature. Fully vectorized.
%
% Good for high-accuracy quadrature over smooth vector functions.
%
% If necessary, this function will automatically sub-divide the interval to
% achieve the desired accuracy. This should only occur when fun is stiff or
% non-smooth.
%
% INPUTS:
% fun = vector function to be integrated
% dx = fun(t)
% t = [1, nt] = time vector
% dx = [nx, nt] = function value at each point in t
% tSpan = [tLow, tUpp] = time span (domain) for integration
% tol = [nx,1] = desired error tolerance along each dimension
%
% OUTPUT:
% x = [nx,1] = integral along each dimension
% err = [nx, 1] = error estimate along each dimension
%
% NOTES:
% algorithm from:
% http://www.math.usm.edu/lambers/mat460/fall09/lecture29.pdf
%

Cite As

Matthew Kelly (2019). rombergQuadrature (https://www.mathworks.com/matlabcentral/fileexchange/55703-rombergquadrature), MATLAB Central File Exchange. Retrieved .

Comments and Ratings (0)

Updates

1.1.0.0

Now the rombergQuadrature automatically detects a non-smooth integrand and sub-divides the interval to achieve the desired accuracy.

MATLAB Release Compatibility
Created with R2012a
Compatible with any release
Platform Compatibility
Windows macOS Linux