Estimate Integrals over Spherical Triangles

SPHERE_TRIANGLE_QUAD is a MATLAB library which estimates the integral of a scalar function F(X,Y,Z) over a spherical triangle on the unit sphere.

Three methods of estimation are very crude and cannot be improved:

One method of estimation uses random sampling, the Monte Carlo method, whose accuracy can be improved by increasing the number of sample points.

Another method is based on the centroid rule, but allows the user to decompose the original spherical triangle into collection of smaller triangles. The accuracy of the estimate should improve as the size of these triangles decreases.


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


SPHERE_TRIANGLE_QUAD is available in a C version and a C++ version and a FORTRAN77 version and a FORTRAN90 version and a MATLAB version.

Related Data and Programs:

RANDOM_DATA, a MATLAB library which generates sample points for various probability distributions, spatial dimensions, and geometries;

SPHERE_GRID, a MATLAB library which provides a number of ways of generating grids of points, or of points and lines, or of points and lines and faces, over the unit sphere.

SPHERE_QUAD, a MATLAB library which approximates an integral over the surface of the unit sphere by applying a triangulation to the surface;

SPHERE_TRIANGLE_MONTE_CARLO, a MATLAB library which estimates the integral of a function over a spherical triangle using the Monte Carlo method.

STROUD, a MATLAB library which approximates the integral of a function on the surface or in the interior of a variety of geometric shapes.


Source Code:

Examples and Tests:

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

Last revised on 23 April 2014.