# sandia_cubature

sandia_cubature, a MATLAB code which implements quadrature rules for certain multidimensional regions and weight functions.

We consider the following integration regions:

• CN_GEG, the N dimensional hypercube [-1,+1]^N, with the Gegenbauer weight function:
w(alpha;x) = product ( 1 <= i <= n ) ( 1 - x(i)^2 )^alpha;
• CN_JAC, the N dimensional hypercube [-1,+1]^N, with the Beta or Jacobi weight function:
w(alpha,beta;x) = product ( 1 <= i <= n ) ( 1 - x(i) )^alpha * ( 1 + x(i) )^beta;
• CN_LEG, the N dimensional hypercube [-1,+1]^N, with the Legendre weight function:
w(x) = 1;
• EN_HER, the N-dimensional product space (-oo,+oo)^N, with the Hermite weight function:
w(x) = product ( 1 <= i <= n ) exp ( - x(i)^2 );
• EPN_GLG, the positive product space [0,+oo)^N, with the generalized Laguerre weight function:
w(alpha;x) = product ( 1 <= i <= n ) x(i)^alpha exp ( - x(i) );
• EPN_LAG, the positive product space [0,+oo)^N, with the exponential or Laguerre weight function:
w(x) = product ( 1 <= i <= n ) exp ( - x(i) );

The available rules for region EN_HER all have odd precision, ranging from 1 to 11. Some of these rules are valid for any spatial dimension N. However, many of these rules are restricted to a limited range, such as 2 <= N < 6. Some of the rules have two forms; in that case, the particular form is selectable by setting an input argument OPTION to 1 or 2. Finally, note that in multidimensional integration, the dependence of the order O (number of abscissas) on the spatial dimension N is critical. Rules for which the order is a multiple of 2^N are not practical for large values of N. The source code for each rule lists its formula for the order as a function of N.

### Licensing:

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

### Languages:

sandia_cubature is available in a C++ version and a Fortran90 version and a MATLAB version.

### Related Data and Programs:

sandia_rules, a MATLAB library which produces 1D quadrature rules of Chebyshev, Clenshaw Curtis, Fejer 2, Gegenbauer, generalized Hermite, generalized Laguerre, Hermite, Jacobi, Laguerre, Legendre and Patterson types.

stroud, a MATLAB library which defines quadrature rules for a variety of multidimensional reqions.

### Reference:

1. Arthur Stroud,
Approximate Calculation of Multiple Integrals,
Prentice Hall, 1971,
ISBN: 0130438936,
LC: QA311.S85.
2. Arthur Stroud, Don Secrest,