# ALPERT_RULE Alpert Quadrature for regular, log singular, and power singular functions

ALPERT_RULE is a MATLAB library which has tabulated values that define Alpert quadrature rules of a number of orders of accuracy for functions that are regular, log singular, or power singular.

The rules defined here assume that the integral is to be taken over the interval [0,1]. The interval is divided into N+1 intervals. The leftmost and rightmost intervals are handled in a special way, depending on whether a particular kind of singularity is expected.

A singularity may exist at the left endpoint, x = 0. The cases are:

• regular, no singularity;
• power, the integrand has the form g(x)=x^(-1/2)*phi(x)+psi(x);
• log, the integrand has the form g(x)=phi(x)*log(x)+psi(x);
In case one, the regular Alpert rule is used in both end intervals. In case two, the power singular Alpert rule is used in the leftmost interval. In case three, the log singular Alpert rule is used in the leftmost interval.

### Languages:

ALPERT_RULE is available in a C version and a C++ version and a FORTRAN90 version and a MATLAB version and a Python version.

### Related Data and Programs:

LINE_FEKETE_RULE, a MATLAB library which returns the points and weights of a Fekete quadrature rule over the interior of a line segment in 1D.

LINE_FELIPPA_RULE, a MATLAB library which returns the points and weights of a Felippa quadrature rule over the interior of a line segment in 1D.

LINE_NCC_RULE, a MATLAB library which computes a Newton Cotes Closed (NCC) quadrature rule for the line, that is, for an interval of the form [A,B], using equally spaced points which include the endpoints.

LINE_NCO_RULE, a MATLAB library which computes a Newton Cotes Open (NCO) quadrature rule, using equally spaced points, over the interior of a line segment in 1D.

QUADRATURE_WEIGHTS_VANDERMONDE, a MATLAB library which computes the weights of a quadrature rule using the Vandermonde matrix, assuming that the points have been specified.

TRIANGLE_FEKETE_RULE, a MATLAB library which defines Fekete rules for quadrature or interpolation over a triangle.

VANDERMONDE, a MATLAB library which carries out certain operations associated with the Vandermonde matrix.

### Reference:

SIAM Journal on Scientific Computing,
Volume 20, Number 5, pages 1551-1584, 1999.

### Examples and Tests:

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

Last revised on 23 November 2015.