SPHERE_TRIANGLE_QUAD
Estimate Integrals over Spherical Triangles


SPHERE_TRIANGLE_QUAD is a FORTRAN90 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.

Licensing:

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

Languages:

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

Related Data and Programs:

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

SPHERE_CVT, a FORTRAN90 library which creates a mesh of well-separated points on a unit sphere using Centroidal Voronoi Tessellations.

SPHERE_DELAUNAY, a FORTRAN90 program which computes and plots the Delaunay triangulation of points on the unit sphere.

SPHERE_DESIGN_RULE, a FORTRAN90 library which returns point sets on the surface of the unit sphere, known as "designs", which can be useful for estimating integrals on the surface, among other uses.

SPHERE_EXACTNESS, a FORTRAN90 program which tests the polynomial exactness of a quadrature rule for the unit sphere;

SPHERE_GRID, a FORTRAN90 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_LEBEDEV_RULE, a FORTRAN90 library which computes Lebedev quadrature rules for the unit sphere;

SPHERE_MONTE_CARLO, a FORTRAN90 library which applies a Monte Carlo method to estimate the integral of a function over the surface of the sphere in 3D;

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

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

SPHERE_VORONOI, a FORTRAN90 program which computes the Voronoi diagram of points on a sphere.

STRIPACK, a FORTRAN90 library which computes the Voronoi diagram or Delaunay triangulation of pointsets on a sphere.

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

XYZ_DISPLAY, a MATLAB program which reads XYZ information defining points in 3D, and displays an image in the MATLAB graphics window.

XYZ_DISPLAY_OPENGL, a C++ program which reads XYZ information defining points in 3D, and displays an image using OpenGL.

Reference:

Source Code:

Examples and Tests:

List of Routines:

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


Last revised on 27 September 2010.