Efficient Quadrature Rule Implementation

QUADRULE_FAST is a MATLAB library which implements fast and efficient forms of several popular quadrature rules.

The quadrature rules are defined on the interval [-1,1], and assume there is no additional weighting factor in the data.

The fast implementations are exhibited and discussed in the papers by Trefethen and Waldvogel.


QUADRULE_FAST is available in a MATLAB version.

Related Data and Programs:

CLENSHAW_CURTIS_RULE, a MATLAB program which can compute Clenshaw Curtis rules for 1 dimensional or multidimensional problems.

FELIPPA, a MATLAB library which defines quadrature rules for lines, triangles, quadrilaterals, pyramids, wedges, tetrahedrons and hexahedrons.

PRODUCT_RULE, a MATLAB program which can create a multidimensional quadrature rule as a product of one dimensional rules.

QUADPACK, a FORTRAN90 library which contains a variety of routines for numerical estimation of integrals in 1D.

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, a MATLAB library which contains quadrature rules.

STROUD, a MATLAB library which contains quadrature rules for a variety of unusual areas, surfaces and volumes in 2D, 3D and N-dimensions.


  1. Philip Davis, Philip Rabinowitz,
    Methods of Numerical Integration,
    Second Edition,
    Dover, 2007,
    ISBN: 0486453391,
    LC: QA299.3.D28.
  2. Charles Clenshaw, Alan Curtis,
    A Method for Numerical Integration on an Automatic Computer,
    Numerische Mathematik,
    Volume 2, Number 1, December 1960, pages 197-205.
  3. Lloyd Trefethen,
    Is Gauss Quadrature Better Than Clenshaw-Curtis?,
    SIAM Review,
    Volume 50, Number 1, 2008, pages 67-87.
  4. Joerg Waldvogel,
    Fast Construction of the Fejer and Clenshaw-Curtis Quadrature Rules,
    BIT Numerical Mathematics,
    Volume 43, Number 1, 2003, pages 1-18.

Source Code:

Examples and Tests:

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

Last revised on 06 March 2007.