SPHERE_DESIGN_RULE
Hardin and Sloane Spherical Designs


SPHERE_DESIGN_RULE is a FORTRAN90 library which implements a number of Hardin and Sloane "spherical designs", which can be used for numerical quadrature over the surface of a sphere in 3D.

A set of N points on the surface of a 3D sphere is called a spherical T-design if the integral of any polynomial p(x,y,z) of degree at most T over the surface of the sphere is equal to the average value of the polynomial evaluated at the set of points.

Note that the degree of a polynomial in several variables is the highest degree of any of its terms, and that the degree of a term like XAYBZC is A+B+C.

Licensing:

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

Languages:

SPHERE_DESIGN_RULE is available in a FORTRAN90 version.

Related Data and Programs:

CUBE_FELIPPA_RULE, a FORTRAN90 library which returns the points and weights of a Felippa quadrature rule over the interior of a cube in 3D.

PYRAMID_FELIPPA_RULE, a FORTRAN90 library which returns Felippa's quadratures rules for approximating integrals over the interior of a pyramid in 3D.

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

SPHERE_DELAUNAY, a MATLAB program which computes the Delaunay triangulation of points on a sphere.

SPHERE_DESIGN_RULE, a dataset directory which contains files defining 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 over the surface of the unit sphere in 3D.

SPHERE_GRID, a dataset directory which contains grids of points, lines, triangles or quadrilaterals on a sphere;

SPHERE_INTEGRALS, a FORTRAN90 library which defines test functions for integration over the surface of the unit sphere in 3D.

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_STEREOGRAPH, a FORTRAN90 library which computes the stereographic mapping between points on the unit sphere and points on the plane Z = 1; a generalized mapping is also available.

SPHERE_TRIANGLE_QUAD, a FORTRAN90 library which estimates the integral of a function over a spherical triangle.

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

SPHERE_VORONOI_DISPLAY_OPENGL, a C++ program which displays a sphere and randomly selected generator points, and then gradually colors in points in the sphere that are closest to each generator.

SPHERE_VOLUME_QUAD, a FORTRAN90 program which applies a quadrature rule to estimate the volume of the unit 6D sphere;

SPHERE_XYZ_DISPLAY, a MATLAB program which reads XYZ information defining points in 3D, and displays a unit sphere and the points in the MATLAB graphics window.

SQUARE_FELIPPA_RULE, a FORTRAN90 library which returns the points and weights of a Felippa quadrature rule over the interior of a square in 2D.

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

STRIPACK_DELAUNAY, a FORTRAN90 program which reads a set of points on the unit sphere, computes the Delaunay triangulation, and writes it to a file.

STROUD, a FORTRAN90 library which defines quadrature rules for various geometric shapes.

SXYZ_DELAUNAY, a FORTRAN90 program which computes and plots the Delaunay triangulation of points over the surface of the unit sphere in 3D.

SXYZ_VORONOI, a FORTRAN90 library which computes and plots Delaunay triangulations and Voronoi diagrams of points on the sphere.

TETRAHEDRON_FELIPPA_RULE, a FORTRAN90 library which returns Felippa's quadratures rules for approximating integrals over the interior of a tetrahedron in 3D.

TRIANGLE_FELIPPA_RULE, a FORTRAN90 library which returns Felippa's quadratures rules for approximating integrals over the interior of a triangle in 2D.

WEDGE_FELIPPA_RULE, a FORTRAN90 library which returns quadratures rules for approximating integrals over the interior of the unit wedge in 3D.

Reference:

  1. Charles Colbourn, Jeffrey Dinitz,
    The CRC Handbook of Combinatorial Designs,
    CRC Press, 1996.
  2. Ronald Hardin, Neil Sloane,
    McLaren's Improved Snub Cube and Other New Spherical Designs in Three Dimensions,
    Discrete and Computational Geometry,
    Volume 15, 1996, pages 429-441.
  3. Sloane's Spherical Designs Web Page

Source Code:

Examples and Tests:

List of Routines:

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


Last revised on 16 February 2010.