CC_DISPLAY
Display 2D Quadrature Rules


CC_DISPLAY is a MATLAB program which displays the abscissas used in a 2D quadrature rule.

The current version only considers a single Clenshaw Curtis grid, in which the orders of the rule in the X and Y directions may differ.

Eventually, some other variations will be added, in which the points associated with an isotropic Smolyak rule will be displayed, or in which several sets of Clenshaw Curtis grids will be superimposed, or a Gauss-Legendre rule will be displayed.

Licensing:

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

Languages:

CC_DISPLAY is available in a MATLAB version.

Related Data and Programs:

BOX_PLOT, a MATLAB program which can color in specified entries of a checkerboard, corresponding to pairs of integer data.

CIRCLE_GRID_DISPLAY, a MATLAB program which reads a matrix of integers, and draws a corresponding grid of circles filled with color.

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

FEKETE, a MATLAB library which defines a Fekete rule for quadrature or interpolation over a triangle.

GL_DISPLAY, a MATLAB library which displays a single Gauss Legendre product rule quadrature grid in 2D.

GRID_DISPLAY, a MATLAB library which can display a 2D or 3D grid or sparse grid.

GRIDLINES, a MATLAB library which gives the user more control over drawing gridlines on a graph than the builtin "grid on" command.

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

NESTED_SEQUENCE_DISPLAY, a MATLAB program which displays a set of nested sequences.

NINTLIB, a MATLAB library which contains routines for numerical estimation of integrals in multiple dimensions.

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

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.

TENSOR_GRID_DISPLAY, a MATLAB program which can display the grid points of a tensor product rule used for interpolation or quadrature, in 1D, 2D or 3D.

TEST_INT, a MATLAB library which contains a number of functions that may be used as test integrands for quadrature rules in 1D.

TEST_NINT, a MATLAB library which contains a number of functions that may be used as test integrands for quadrature rules in multiple dimensions.

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

Reference:

  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. W Morven Gentleman,
    Algorithm 424: Clenshaw-Curtis Quadrature,
    Communications of the ACM,
    Volume 15, Number 5, May 1972, pages 353-355.
  4. Lloyd Trefethen,
    Is Gauss Quadrature Better than Clenshaw-Curtis?
  5. 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:

CC_GRID displays a single Clenshaw Curtis 2D grid of orders M by N:

CC_GRIDS_MINMAX displays all Clenshaw Curtis grids of orders M by N such that M+N is between Q_MIN and Q_MAX:

CC_LEVELS_MINMAX displays all Clenshaw Curtis grids of levels M by N such that M+N is between LEVEL_MIN and LEVEL_MAX. Note that the order, or number of points, in the one dimensional rules, is related to the one dimensional levels by ORDER=2**LEVEL+1 (except that the LEVEL=0 corresponds to ORDER=1):

CC_GRIDS_CONSTRAINED displays all Clenshaw Curtis grids of orders M by N such that M and N lie between ORDER_MIN and ORDER_MAX, and ALPHA1*M+ALPHA2*N<=Q_MAX:

CC_LEVELS_CONSTRAINED displays all Clenshaw Curtis grids of levels M by N such that M and N lie between LEVELS_MIN and LEVELS_MAX, and ALPHA1*M+ALPHA2*N<=Q_MAX:

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


Last revised on 31 October 2008.