hypersphere, a Fortran90 code which carries out various operations for an M-dimensional hypersphere, including converting between Cartesian and spherical coordinates, stereographic projection, sampling the surface of the sphere, and computing the surface area and volume.
The information on this web page is distributed under the MIT license.
hypersphere is available in a C version and a C++ version and a Fortran90 version and a MATLAB version and an Octave version and a Python version.
ellipse, a Fortran90 code which carries out geometric calculations for ellipses and ellipsoids, including area, distance to a point, eccentricity, perimeter, points along the perimeter, random sampling, conversion between standard and quadratic forms.
geometry, a Fortran90 code which performs geometric calculations in 2, 3 and M dimensional space.
hypersphere_monte_carlo, a Fortran90 code which applies a Monte Carlo method to estimate the integral of a function on the surface of the unit sphere in M dimensions;
random_data, a Fortran90 code which generates sample points for various probability distributions, spatial dimensions, and geometries, including the M-dimensional cube, ellipsoid, simplex and sphere.
sphere_stereograph, a Fortran90 code which computes the stereographic mapping between points on the unit sphere and points on the plane Z = 1; a generalized mapping is also available
tetrahedron, a Fortran90 code which computes properties of a given tetrahedron.
triangle, a Fortran90 code which computes properties, including angles, area, centroid, circumcircle, edge lengths, incircle, orientation, orthocenter, and quality, of a triangle in 2D.