SPARSE_GRID_OPEN_DATASET
Sparse Grid from Open 1D Quadrature Rule


SPARSE_GRID_OPEN_DATASET is a C++ program which computes a sparse quadrature rule for an arbitrary spatial dimension, associated with a particular "level" of the Smolyak construction, and based on an open 1D quadrature rule.

The program offers a choice of open 1D quadrature rules to be used:

Usage:

sparse_grid_open_dataset dim_num level_max rule
where

Licensing:

The code described and made available on this web page is distributed under the GNU LGPL license.

Languages:

SPARSE_GRID_OPEN_DATASET is available in a C++ version and a FORTRAN90 version and a MATLAB version.

Related Data and Programs:

CC_DISPLAY, a MATLAB library which can compute and display Clenshaw Curtis grids in two dimensions, as well as sparse grids formed from sums of Clenshaw Curtis grids.

QUADRATURE_RULES, a dataset directory which defines quadrature rules; a number of examples of sparse grid quadrature rules are included.

QUADRULE, a C++ library which defines quadrature rules for various intervals and weight functions.

SGMGA, a C++ library which creates sparse grids based on a mixture of 1D quadrature rules, allowing anisotropic weights for each dimension.

SMOLPACK, a C library which implements Novak and Ritter's method for estimating the integral of a function over a multidimensional hypercube using sparse grids.

SPARSE_GRID_CC_DATASET, a C++ program which creates a sparse grid dataset based on Clenshaw-Curtis rules.

SPARSE_GRID_CLOSED_DATASET, a C++ program which creates a sparse grid dataset based on closed rules (Clenshaw-Curtis, Newton-Cotes-Closed).

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

SPARSE_GRID_F2, a dataset directory which contains sparse grids based on a Fejer Type 2 rule.

SPARSE_GRID_GL_DATASET, a C++ program which creates a sparse grid dataset based on Gauss-Legendre rules.

SPARSE_GRID_HERMITE_DATASET, a C++ program which creates a sparse grid dataset based on Gauss-Hermite rules.

SPARSE_GRID_LAGUERRE_DATASET, a C++ program which creates a sparse grid dataset based on Gauss-Laguerrre rules.

SPARSE_GRID_MIXED, a C++ library which constructs a sparse grid using different rules in each spatial dimension.

SPARSE_GRID_MIXED_DATASET, a C++ program which creates a sparse grid dataset based on a mixture of 1D rules.

SPARSE_GRID_MIXED_GROWTH, a C++ library which creates a sparse grid dataset based on a mixed set of 1D factor rules, and experiments with the use of a linear growth rate for the quadrature rules.

SPARSE_GRID_NCC, a dataset directory which contains sparse grids based on a Newton Cotes closed rule.

SPARSE_GRID_NCO, a dataset directory which contains sparse grids based on a Newton Cotes open rule.

SPARSE_GRID_OPEN, a C++ library which defines define sparse grids based on open nested quadrature rules.

TOMS847, a MATLAB program which uses sparse grids to carry out multilinear hierarchical interpolation. It is commonly known as SPINTERP, and is by Andreas Klimke.

Reference:

  1. Volker Barthelmann, Erich Novak, Klaus Ritter,
    High Dimensional Polynomial Interpolation on Sparse Grids,
    Advances in Computational Mathematics,
    Volume 12, Number 4, 2000, pages 273-288.
  2. Philip Davis, Philip Rabinowitz,
    Methods of Numerical Integration,
    Second Edition,
    Dover, 2007,
    ISBN: 0486453391,
    LC: QA299.3.D28.
  3. Walter Gautschi,
    Numerical Quadrature in the Presence of a Singularity,
    SIAM Journal on Numerical Analysis,
    Volume 4, Number 3, 1967, pages 357-362.
  4. Thomas Gerstner, Michael Griebel,
    Numerical Integration Using Sparse Grids,
    Numerical Algorithms,
    Volume 18, Number 3-4, 1998, pages 209-232.
  5. Prem Kythe, Michael Schaeferkotter,
    Handbook of Computational Methods for Integration,
    Chapman and Hall, 2004,
    ISBN: 1-58488-428-2,
    LC: QA299.3.K98.
  6. Albert Nijenhuis, Herbert Wilf,
    Combinatorial Algorithms for Computers and Calculators,
    Second Edition,
    Academic Press, 1978,
    ISBN: 0-12-519260-6,
    LC: QA164.N54.
  7. Fabio Nobile, Raul Tempone, Clayton Webster,
    A Sparse Grid Stochastic Collocation Method for Partial Differential Equations with Random Input Data,
    SIAM Journal on Numerical Analysis,
    Volume 46, Number 5, 2008, pages 2309-2345.
  8. Thomas Patterson,
    The Optimal Addition of Points to Quadrature Formulae,
    Mathematics of Computation,
    Volume 22, Number 104, October 1968, pages 847-856.
  9. Sergey Smolyak,
    Quadrature and Interpolation Formulas for Tensor Products of Certain Classes of Functions,
    Doklady Akademii Nauk SSSR,
    Volume 4, 1963, pages 240-243.
  10. Dennis Stanton, Dennis White,
    Constructive Combinatorics,
    Springer, 1986,
    ISBN: 0387963472,
    LC: QA164.S79.

Source Code:

Examples and Tests:

F2_D2_LEVEL2 is an example computation based on a Fejer type 2 rule in two dimensions and level 2.

GP_D2_LEVEL2 is an example computation based on a Gauss-Patterson rule in two dimensions and level 2.

NCO_D2_LEVEL2 is an example computation based on a Newton-Cotes Open rule in two dimensions and level 2.

TS_D2_LEVEL4 is an example computation based on a tanh-sinh rule in two dimensions and level 4.

List of Routines:

You can go up one level to the C++ source codes.


Last revised on 23 December 2009.