Anda di halaman 1dari 13

# TOPICS ON SPHERE DISTRIBUTIONS [Latest version of 1998/02/26 by Dave Rusin, rusin@math.niu.edu.

real numbers. We will use the ordinary metric (distance function). Note that we commonly speak of ourselves as living in 3-space. The SPHERE of radius r in R^n is the set of points whose coordinates satisfy x1^2+...+xn^2=r^2; the unit sphere is the sphere of radius 1. Note that I am explicitly assuming all spheres are centered at the origin. The interior of the sphere is called the BALL in R^n; it is the set of points of distance less than r from the origin. (The ball and the sphere are disjoint; their union is sometimes called the n-DISK .) If not otherwise specified we are usually referring to the sphere or ball in R^3. The DIMENSION of a (reasonable) subset of R^n is the number of independent directions one can travel in the set. For example, in the ordinary sphere motion at most points is a combination of movements East and North, so the sphere in R^3 is two-dimensional (not three). The ball in R^n is n-dimensional. Note that the circle is the sphere (of dimension 1) in R^2; the sphere in R^1 is two points (+1 and -1). We often write S^n for the n-dimensional sphere (in R^(n+1).) A LINE is the set of multiples of a point or vector (other than the origin). Note in particular that I am referring only to lines thru the origin. A PLANE is the set of linear combinations of two non-collinear vectors. (Don't call it a SURFACE ; that's usually understood to be anything 2-dimensional, including planes, the 2-sphere, paraboloids, and so on.) Likewise we can take any k linearly independent vectors in R^n and look at all linear combinations of them; this set is called a LINEAR SUBSPACE of R^n and is of dimension k. When k=n-1, the set is called a HYPERPLANE. The focus of this document is on S^2 but from time to time I consider greater generality when it is easy to do so. ============================================================================== Q1. What does it mean to place N points "evenly" on a sphere? Well, what do you want it to mean? Several valid interpretations exist; they lead to slightly different distributions of points. If you want all distances between distinct points in the set to be equal, you can have at most 4 points. Indeed, it's easy to see any 3 equally spaced points mark an equilateral triangle and any 4 must then mark a regular triangular pyramid. You can have a 5th point equidistant from the first 3 (glue two such pyramids face to face) but then the 4th and 5th points are too far apart. But everyone agrees that the vertices of a regular polygon are equally spaced in S^1, so there must be another definition we have in mind. One can ask that every point have some property, such as being equidistant from its nearest neighbor. Such distributions exist -- for example, one can space the points equally along the equator of the sphere. Still, this is not likely to be what we have in mind when we ask for a uniform distribution of the points. One might ask that the points be arranged "symmetrically" on the sphere in some way; in Q3 we'll discuss how to do this, but true symmetry is available only for a few values of N. It is more helpful to measure uniformity not point-by-point but by considering some aggregate measure of the dispersion. For example, we could let D be the minimum distance between any pair of distinct points in the set. This

provides a measurement of how good or poor a distribution we've chosen. For example, four points equally spaced on the equator have D=sqrt(2)=1.41... whereas four points on the pyramid have a larger D=(2/3)sqrt(6)=1.63... So we might ask for an arrangement on the sphere which maximizes D. In general this statement of the problem guarantees a solution exists. Let D be any continuous function of N points on the sphere; then since the sphere is compact, so is the Cartesian product of N copies of it, so that D is a continuous function on a compact set, and so achieves a maximum and a minimum. If D is chosen intelligently, the values of the variables that lead to an extreme value of D will give an arrangement of points which is arguably "uniform". There are some drawbacks with this perspective. For one, the extreme values of D will be attained more than once. (Certainly if D depends symmetrically on the points, any permutation of the N variables will provide another occurrence of the extreme value. Indeed, it is reasonable to consider only functions defined on the symmetric product S^N(S) =(SxSx...xS)/Sym_n rather than on the Cartesian product (SxSx...xS) of N copies of the sphere S) If D is invariant under rotations of the sphere, which is reasonable, then in order to hope to have an isolated extreme configuration, one needs to hold one point fixed at, say, the North pole, and to allow another point to vary only along a meridian attached to the pole. Another obstacle is that there are several natural choices for D, and an arrangement of points which is optimal for one such function need not be optimal for another. Here are some natural choices for D: D1=min_i min_{j<>i} dist( Pi, Pj ) (the function considered above) D2=(1/N) Sum_i min_{j<>i} dist( Pi, Pj ) ("average dist to a neighbor") D3=Sum_i Sum_{i<>j} 1/dist( Pi, Pj ) ("potential energy") If an electron is placed at each of the points, D3 is the sum of the electrostatic potentials at these N electrons; they would tend to spread apart if possible so as to minimize D3. Finally, there is the question of how one would compute an optimal configuration once a decision is made of how optimality would be measured. If D is a differentiable function of the coordinates of the points, then the problem can be solved with Lagrange multipliers, but this is hopelessly cumbersome for any but the smallest values of N and the simplest functions D. Moreover, some of the most natural functions D to take are not differentiable everywhere. We shall return to this in Q5. ============================================================================== Q2. Are there some values of N which are better than others? You bet! As has been pointed out above, values of N <= 4 have very natural solutions. In addition, there are solutions for some N related to the Platonic solids. Here's why. Suppose we had an arrangement of N points with the following property: given any two points there is a rotation of the sphere which (1) carries the one to the other and in the process (2) carries each of the points in the distribution to some other point in the set (possibly itself). These rotations generate a group (a subgroup of SO(3) ) of permutations of the N points; since the only rotation of the sphere which fixes two points not antipodal to each other is the identity (the trivial rotation), the group of all these rotations is finite (unless N=2).

Well, as it happens, there are not many finite subgroups of SO(3). First, there are all the cyclic subgroups which are sets of rotations with a common axis, as well as the dihedral groups which adjoin one rotation about an axis perpendicular to this one. If this is the symmetry group of your arrangement of points, then all your points lie on one circle (two circles, if you have a dihedral group and a non-equatorial arrangement). The remaining finite subgroups of SO(3) are the symmetry group of the pyramid (isomorphic to Alt(4), it has order 12), the symmetry group of the cube (it's the full symmetric group of order 24, permuting the 4 diagonals) and the symmetry group of the dodecahedron (the symmetric group of order 120). The octahedron is dual to the cube and the icosahedron is dual to the dodecahedron, while the tetrahedron (pyramid) is self-dual. (Here "dual" means vertices of one are midpoints of faces of the other, so dual polyhedra have the same symmetry group.) (For a full analysis of the Platonic solids, see Coxeter, "Introduction to Geometry", Wiley (NY) 1969.) It's not quite true that a set of points permuted by one of these three groups has to be the set of vertices of a Platonic solid (as a glance at a soccer ball [non-US: football] will show). However, a firm insistence that there be sufficient rotations to carry each vertex to any other limits the number of points to 120. So there are only finitely many non-circular arrangements with this high degree of symmetry. Of course, you could relax the condition that there be rotations preserving the set of points which permute the points transitively (any point can be carried to any other one). For example, you could begin with one of the Platonic solids and mark off, say, the midpoint of each edge as well as each of the vertices. (The former need to be scaled of course to make them lie on the sphere.) There is a large collection of figures that exhibit some partial symmetry. In general, the more symmetry you require, the fewer the number of values of N which you can expect to place so symmetrically. If you are working with spheres of a higher dimension, there are more finite groups of rotations; the orbits of a point under these groups will give sets of points which could reasonably be called "uniform". Indeed, given any set of points on a sphere (or any other metric space) you can define the Voronoi region of each point to be the set of elements in the sphere closer to that point than to any other. Then if the rotation group acts transitively on the points, it provides enough motions to show that all the Voronoi regions are congruent. A couple of theorems are relevant here, I guess: first, given any group G there is a group of rotations in SO(n) isomorphic to G as long as n is sufficiently large. Second, given any n there may be infinitely many finite subgroups in SO(n) (as the cyclic subgroups of SO(3) demonstrate) but there are only finitely many quotient groups G / Z(G); that is, the G will have an (Abelian) center of bounded index. Departing from these geometric considerations, we will see in Q4 that some approximate constructions of uniform arrangements are a little easier for some N's than others, so if you have some freedom in the selection of N you can make your job a little easier. ==============================================================================

Q3. How can you describe locations on a sphere, anyway? Clearly any point on a sphere also sits in the ambient Euclidean space, and so may be specified by its ordinary Cartesian coordinates. But these coordinates are bound by the equation of the sphere, and it is sometimes preferable to use coordinates which are unbound. Since the sphere in R^n is (n-1)-dimensional, it is natural to try to parameterize your position with just n-1 variables. This is well known on the ordinary 2-sphere, where we use latitude and longitude. Such parameterizations are possible, although there are some nettlesome points to keep in mind. Ideally, a parameterization of the n-sphere would be a function P defined on a subset of Euclidean space R^n and taking values in the n-sphere, having the following properties: 1) P is continuous (i.e. a continuous change in R^n should yield a continuous change on the sphere. Equivalently, P should be given by (n+1) continuous coordinate functions whose squares sum to 1. ) 2) P is one-to-one: a point on the sphere shouldn't show up more than once during the parameterization. 3) P has a continuous inverse F, that is, a coordinate function which determines for each point in the sphere what values of the parameters are needed to map to that point. The existence of such an F implies P would be onto. 4) P (and/or F) preserves important geometric information like angles or areas (or the n-dimensional equivalents). 5) P (and/or F) is differentiable. Unfortunately, for topological reasons there can be no function P meeting even just (1) (2) and (3). This is well-known to map-makers trying the case n=2: any map of the earth's surface has to rip the surface somewhere. However, there are functions which meet some of these conditions; various ones are appropriate under different conditions. 1. If you only want to parameterize _part_ of the sphere, you can get away with a simple projection: use F(x1,...,x{n+1})=(x1,...,xn) and P(x1,...,xn)=(x1,...,xn, sqrt(1-x1^2-...-xn^2) ). Use the negative square root to parameterize the bottom half of the sphere. If you need to have a parameterization valid a neighborhood of some point on the equator, have F drop out some other coordinate (which P puts back in with a similar square root formula). 2. You can get a correspondence P mapping onto all of the sphere except one point (say, the North pole "NP"); indeed you can define P : R^n --> S-{NP} and an inverse map F going the other way which are continuous, differentiable, one-to-one, and onto. Do this with stereographic projection: place the plane thru the equator of the sphere and draw rays emanating from the North Pole and pointing downward some non-zero amount. Each such ray intersects both the sphere and the plane in one point, and all the points in S-{NP} and R^n are so met. These rays then set up the one-to-one correspondence. The formulas are P(x1,...,xn) = t.(x1,...,xn,0) + (1-t)(0,...,0,1) F(x1,...,x{n+1})= r . (x1, ..., xn) (where (0,...,0,1) is the North Pole on the n-sphere in R^{n+1}.) Here t is chosen to make the distance from the origin be 1 : t=2/(1+x1^2+...+xn^2). Also r is chosen to invert the first formula: r=1/(1-x{n+1})

right edges represent the same points on earth). The Mercator projection is chosen to remove the distortion of angles; thus (locally) the Mercator projection gives an accurate representation of shapes. But the correction used is precisely the inverse of what is needed to correct the |cos(u)| change in area, so that the Mercator projection is wildly inaccurate at portraying areas (especially near the poles). I believe the 'Peters projection' is the name of the map which corrects areas (but which amplifies the distortions of angles, and thus of shapes). 5. If the trigonometric expressions are too computation-intensive, one can use a parameterization requiring only rational functions. Note first that the circle may be parameterized using a variation of stereographic projection: P(t) = ( -2t/(1+t^2) , (1-t^2)/(1+t^2) ) F(x,y)= (y-1) /x Thus, we can replace all sine/cosine pairs with these two functions. For example, the 2-sphere may be parameterized: P(u,v)=( 4uv/[(1+u^2)(1+v^2)], -2u(1-v^2)/[(1+u^2)(1+v^2)], (1-u^2)/(1+u^2) ) F(x,y,z)= ( (z-1)/sqrt(x^2+y^2), (y-1)/x ) For further details, consult an advanced calculus text; look up the change-of-variables theorem, particularly spherical coordinates and the role of the Jacobian (derivative) in determining areas. [I'll add a reference to the mathematics of map-making as soon as I find one.] ============================================================================== Q4. Can you give a quick approximation to a good distribution? Of course. Mark off K equal segments along a meridian using K-1 points plus the two endpoints. These segments have length pi/K. If you swing this around the sphere, you'll mark off K-1 circles. Now, in spherical coordinates, these circles are the points with ui=-pi/2 +i*(pi/K), where i = 1, 2, ..., K-1. They have radius cos(ui), hence length 2pi*cos(ui). Thus you can divide them into about [2pi*cos(ui)]/[pi/K] segments as long as the segments on the meridian. So take Mi to be an integer near 2*K*cos( -pi/2 + i*(pi/K)) = 2*K*sin( i * (pi/K) ), and mark off points that have u=ui and v=j*(2*pi/Mi) for j = 1, 2, ..., Mi. This will give you 2+Sum{i=1,...,K-1} M_i points on the sphere. To within an error less than K-1, this is the same as 2+Sum 2*K*sin( i* pi/K ) = 2 + 2*K*cot( pi / 2K ). For large values of K, this is about (4/pi) K^2. (With an area of 4pi on the whole sphere, this leaves an area of (pi/K)^2 around each point, which is not surprising since initially the points are about pi/K apart on a roughly square grid). If you have the luxury of placing _approximately_ N points on the sphere, begin with K an integer roughly equal to sqrt((pi/4)N), and compute the number of points which would be placed with the method above; you should get about N points. Here are the values I get for the first few K using round() to convert to integers when necessary: for K=1, N=2; for K=2, N=6; then for subsequent K (thru K=22), I get N= 12,22,34,46,82,106,128,156,184,214,248,288,328,368,412,460,510,562,616,... Notice that the first layer around the north pole has about 2Ksin(pi/K) points. For K large, this is about 2*pi = 6.28, so we would take M1=6, and arrange the first circle of points in the "kissing pennies" pattern.

computations. Since the function D I used polls each pair of points to find out the repulsion between them, the running time for one iteration is proportional to N^2. Thus I hardly recommend it for values of N above a couple of hundred if you are using, say, a personal computer. ============================================================================== Q6. What if I want randomly to place points with a uniform distribution? This is perhaps the easiest way: randomly select the Cartesian coordinates independently. Toss out any sets of coordinates which take you outside the sphere (and, should you be so unlucky, any occurrences of the origin). Scale all the remaining points to push them out to the sphere. Another easy way is to use the area-preserving parameterizations of Q3. If you use the cartographer's polar projection (the third parameterization in Q3), you need only select random points in the disk with uniform distribution there, then map each of the selected points onto the sphere. Of course, you'll never hit the North Pole this way, but that event was supposed to occur with probability zero anyway. (The simplest way to select random points in the disk is just to pick the n coordinates separately, each randomly in [-1,1]. Then simply discard the n-tuples not lying in the disk.) You can also use the trigonometric parameterizations of the sphere (the cartographer's cylindrical projections): if you are placing points randomly, the probability that you will have to consider one of the points where the parameterization fails to be one-to-one, or continuous, say, is zero. However, you need to exercise some care for spheres of dimension greater than 1 since in that case, the trig parameterizations are not area-preserving. For example, if you use the spherical coordinates above to parameterize the 2-sphere, and select u and v randomly in their respective intervals, you'll find too many points chosen near the poles. This is because the sets of points with u fixed near +-pi/2 are only _small_ circles; it is not appropriate to select these u's as frequently. Indeed, the frequency with which a given u is selected should be proportional to the circumference of that circle, which is 2pi |cos(u)|. More generally, one can randomly select points in the n-sphere by randomly selecting the n spherical parameters, but always remembering to select each u_i with a frequency proportional to the (i-1)-dimensional measure of the the set of points where u_i is a constant. Fortunately, we know that this set is just an (i-1) sphere whose radius is cos(u_i) and whose measure is then proportional to cos(u_i)^(i-1). Thus the problem of random point selection on the sphere reduces to this question: how can one select values of a variable u from an interval [a,b] so as to achieve a given frequency distribution f? One way is to let C be the cumulative distribution function, C(u)=integral_a^u f(t)dt. (This is the probability that the chosen value will be between a and u.) For then if G is the inverse of this function, then we may select x randomly with uniform distribution across [0,1] and let y=G(x). This is a random variable whose distribution function looks like this: Prob( h < y < h+e ) = Prob( h < G(x) < h+e ) = Prob(C(h) < x < C(h+e) ) which is roughly = Prob( C(h) < x < C(h)+C'(h)e )

using differentials. Well, if x is selected with uniform distribution, this probability is the length of that interval, namely C'(h)e = f(h).e since C'=f. But to say that this original probability is roughly f(h)e is precisely to say that the distribution function for the variable y is f. With the frequency distributions at hand, this is not difficult. The first coordinate u1 is selected uniformly in [0,2 pi). The second coordinate u2 is to have a probability density function cos(u_2) /2 on (-pi/2, pi/2) [The extra factor of 1/2 is just a scaling needed to ensure that the cumulative distribution C(u) ends with C(pi/2) = 1.0]. Indeed, C(u) = (sin(u)+1)/2 has inverse G(w)= arcsin(2w-1), so one can get points uniformly on the 2-sphere using the usual trig parameterization with v selected uniformly in [0, 2pi) and u=arcsin(2w-1) where w is selected uniformly in [0,1]. The Cartesian coordinates are then (sqrt(4x-4x^2).cos(v), sqrt(4x-4x^2).sin(v), 2x-1). With a slight change of variables, this can be viewed as the equal-area cylindrical projection in cartography: you can parameterize the surface of the 2-sphere with coordinates x in [-1, 1] and v in [0,2 pi) in such a way as to preserve area by mapping (x,v) to (sqrt(1-x^2) cos(v), sqrt(1-x^2) sin(v), x). This is the projection which carries points on the sphere (minus the poles) to points on a cylinder wrapped around the equator by shining a light straight out from the axis through the sphere to the cylinder. On the 3-sphere (and higher) the next variable is selected as u3=G(x3) where x3 is selected uniformly in [0,1] and G is the inverse of the function C(u) = (1/2)(u+pi/2+sin(u)cos(u)). The next variable after that is selected similarly using C(u) = ( cos(u) - sin^3(u)/3 - 1/3). And so on. Observe that if C can be computed, it is not solve for its inverse G explicitly. Instead, y=G(x) may be written x=C(y), an equation to is known. This is easily handled with Newton's necessary to be able to each of the computations of be solved for y when x method.

I believe a method of generating numbers randomly with a given distribution is treated in Knuth's Art of Computer Programming. ============================================================================== Q7. Can this be generalized to higher-dimensional spheres? I have melded this into the previous questions -- anyone reading this who can think of questions particular to higher dimensions should let me know what ought to go in here. ============================================================================== Q8. How is this related to collections of linear subspaces? I put this question here because someone asked me recently about how to parameterize the set of planes and other linear subspaces of Euclidean space. I can't quite remember the question, so I'll not make an answer at this point. One comment to make is that points on the sphere (or, more precisely, pairs of antipodal points) correspond to lines through the origin in R^n. The planes in R^n correspond similarly to great circles (circles of maximal circumference). If n=3, the planes can be parameterized in a natural way by finding the line perpendicular to them. If you

trace these correspondences through, you'll see that there is a natural one-to-one correspondence between great circles on the 2-sphere and pairs of antipodal points. You can get the circle from the points as the set of points equidistant from the pair; you can get the pair from the circle as the only points equidistant from all elements of the circle. More generally, there is a correspondence between the k-dimensional and the n-k dimensional subspaces of R^n. The family of all k-dimensional subspaces in R^n (or n-k dimensional subspaces) is known as the Grassmannian manifold; it is indeed a manifold and has dimension k(n-k). When k=1 or k=n-1, this is also known as projective n-1 space; there is a two-to-one mapping S^{n-1} --> RP^{n-1} which simply sends a point to the line it's on (this map sends antipodal points of S^{n-1} to the same element of RP^{n-1} of course. This map turns S^{n-1} into a two-fold cover of RP^{n-1}; for n>2 this is the universal covering of projective space.) This material is often treated in graduate topology courses, particularly in a discussion on vector bundles in an algebraic topology course. You may wish to consult Milnor's book "Characteristic Classes" (Princeton Univ Press), which is however not elementary. ============================================================================== Q9. Where can I get the coordinates of the vertices of the Platonic solids? There are 5 Platonic solids. An interesting but brief discussion (with pictures) may be found, for example, in Gallian's "Contemporary Abstract Algebra", D C Heath 1986. Solid Tetrahedron Cube Octahedron Dodecahedron Icosahedron Number of Vertices 4 8 6 20 12 # Edges 6 12 12 30 30 # Faces 4 6 8 12 20

Notice the duality between certain pairs. Also note that V-E+F=2 in all cases. This is deep, and may be thought of as the first fact in homology theory. I will give coordinates of these points (and in indication of the rest of the structure) in the most compact way I know; if you want the coordinates so that, for example, the North Pole is one of the vertices, you'll have to rotate the coordinates (the BASIC program I include has in it an application of this procedure.) I have scaled the coordinates so that they lie in the unit sphere, but this is not always the prettiest form. I have however set it up so that the coordinates of the dual pairs reflect this duality. Tetrahedron The points are (0,0,1), (1/3)(2sqrt(2), 0, -1), and both points (1/3)(-sqrt(2), +-sqrt(6), -1). All pairs are joined by an edge; all triples (sets of three points) lie on a common face. Cube The 8 points are (+-c, +-c, +-c) where c=1/sqrt(3) and the plus/minus signs may be chosen independently. The 12 edges join pairs of points which have 2 coordinates equal. The 6 faces are quadruples of points for which one of the coordinates is