Quadrature Rules

QUADRULE is a MATLAB library which sets quadrature rules, used to approximate the integral of a function over various domains.

QUADRULE returns the abscissas and weights for a variety of one dimensional quadrature rules for approximating the integral of a function. The best rule is generally Gauss-Legendre quadrature, but other rules offer special features, including the ability to handle certain weight functions, to approximate an integral on an infinite integration region, or to estimate the approximation error.


The computer files described and made available on this web page are distributed under the GNU LGPL license.


QUADRULE is available in a C version and a C++ version and a FORTRAN77 version and a FORTRAN90 version and a MATLAB version and a Python version.

Related Data and Programs:

ALPERT_RULE, a MATLAB library which can set up an Alpert quadrature rule for functions which are regular, log(x) singular, or 1/sqrt(x) singular.

CLENSHAW_CURTIS_RULE, a MATLAB library which defines a multiple dimension Clenshaw Curtis quadrature rule.

LINE_FELIPPA_RULE, a MATLAB library which returns the points and weights of a Felippa quadrature rule over the interior of a line segment in 1D.

QUADMOM, a MATLAB library which computes a Gaussian quadrature rule for a weight function rho(x) based on the Golub-Welsch procedure that only requires knowledge of the moments of rho(x).

QUADRATURE_RULES, a dataset directory which contains sets of files that define quadrature rules over various 1D intervals or multidimensional hypercubes.

QUADRATURE_TEST, a MATLAB program which reads the definition of a multidimensional quadrature rule from three files, applies the rule to a number of test integrals, and prints the results.

QUADRULE_FAST, a MATLAB library which defines efficient versions of a few 1D quadrature rules.

TANH_QUAD, a MATLAB library which sets up the tanh quadrature rule;

TEST_INT, a MATLAB library which defines test integrands for 1D quadrature rules.

TOMS351, a FORTRAN77 library which estimates an integral using Romberg integration.

TOMS379, a FORTRAN77 library which estimates an integral.

TOMS418, a FORTRAN77 library which estimates the integral of a function with a sine or cosine factor.

TOMS424, a FORTRAN77 library which estimates the integral of a function using Clenshaw-Curtis quadrature.

TOMS468, a FORTRAN77 library which carries out the "automatic" integration of a function.

TOMS655, a MATLAB library which computes the weights for interpolatory quadrature rule;
this library is commonly called IQPACK;
this is a MATLAB version of ACM TOMS algorithm 655.

TRUNCATED_NORMAL_RULE, a MATLAB program which computes a quadrature rule for a normal probability density function (PDF), also called a Gaussian distribution, that has been truncated to [A,+oo), (-oo,B] or [A,B].

Source Code:

Examples and Tests:

You can go up one level to the MATLAB source codes.

Last revised on 19 November 2015.