spquad


spquad, a MATLAB code which computes a sparse grid quadrature rule to estimate a multidimensional integral. The quadrature rules created by the program are based on the Clenshaw-Curtis rule. The code is by Greg von Winckel.

The original version of this software is available at the Matlab Central File Exchange: https://www.mathworks.com/matlabcentral/fileexchange/19063-sparse-grid-quadrature/content/spquad.m.

The spquad() function, by default, assumes that the integration region is [-1,+1]^d, where d is the spatial dimension. The function includes an optional argument bpt, which is an array allowing the user to specify the lower and upper endpoints of integration. However, in the experience of the installer, this extra argument does not seem to have the correct effect, resulting in quadrature rules that are not correctly shifted to the new domain. A note has been sent to the author asking for clarification. In the meantime, the user can compute the rule for [-1,+1]^d and use a simple linear transformation to adjust the points and weights to a nondefault integration region.

Licensing:

The information on this web page is distributed under the MIT license.

Languages:

spquad is available in a MATLAB version and an Octave version.

Related Data and Programs:

spquad_test

sandia_sparse, a MATLAB code which computes the points and weights of a Smolyak sparse grid, based on a variety of 1-dimensional quadrature rules.

sgmga, a MATLAB code which creates sparse grids based on a mixture of 1D quadrature rules, allowing anisotropic weights for each dimension.

sparse_grid_cc, a MATLAB code which can define a multidimensional sparse grid based on a 1D Clenshaw Curtis rule.

sparse_grid_gl, a MATLAB code which creates sparse grids based on Gauss-Legendre rules.

sparse_grid_hermite, a MATLAB code which creates sparse grids based on Gauss-Hermite rules.

sparse_grid_hw, a MATLAB code which creates sparse grids based on Gauss-Legendre, Gauss-Hermite, Gauss-Patterson, or a nested variation of Gauss-Hermite rules, by Florian Heiss and Viktor Winschel.

sparse_grid_laguerre, a MATLAB code which creates sparse grids based on Gauss-Laguerre rules.

sparse_grid_mixed, a MATLAB code which creates a sparse grid dataset based on a mixed set of 1D factor rules.

spinterp, a MATLAB code which carries out piecewise multilinear hierarchical sparse grid interpolation; an earlier version of this software is ACM TOMS Algorithm 847, by Andreas Klimke;

Author:

Greg von Winckel

Source Code:


Last revised on 16 January 2022.