hypersphere_angle_distance, a Python code which considers the problem of describing the typical value of the angle between a pair of points randomly selected on the unit hypersphere in M dimensions. Since by symmetry, this will be zero, we instead look at the average of the absolute value of the dot product, and the corresponding angle. In dimension 1, we have average dot product of 1, and angle 0. As the dimension increases, the average dot product rapidly decreases to 0, while the average angle goes to 90 degrees.


The computer code and data files made available on this web page are distributed under the MIT license


hypersphere_angle_distance is available in a MATLAB version and an Octave version and a Python version.

Related Data and Programs:

hypersphere, a Python 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.

python_distance, a Python code which estimates the typical distance between a pair of points randomly selected from the surface or interior of a geometric object such as a circle, disk, sphere, cube.

Source Code:

Last revised on 26 December 2022.