Rolling Spheres and Cones


Consider a sphere of unit radius rolling (at a constant rate, without slipping or spinning) clockwise around a circle of radius R on a flat plane. For what values of R will the sphere periodically be returned to its initial configuration (position and orientation)? We can show that the sphere's configuration will be periodic if and only if



where q is a rational number greater than 1. Also, q is the ratio of the plane circle's circumference to the circumference of the circular locus of contact points on the sphere. Thus, if q = m/n the sphere will resume its initial configuration every n times around

the circle. As an example, setting q = 13/7, we find that a unit sphere rolling around a plane circle of radius  will return to its initial configuration every 7 times around the circle. Obviously the smallest circle that has a period of 1 (i.e., for which the sphere's configuration repeats with each trip around the circle) has a radius of  = 1.73205..., whereas the smallest circle with a period of 2 has a radius of /2 = 1.11803... In general, the smallest circle with period n has radius .


The equation  can be derived very simply if we recognize that the pure rolling motion of a sphere in a circular path on the plane is identical to the motion of a sphere inscribed in a cone rolling on the plane, as illustrated below.



The circular locus of contact points is just the points of tangency between the sphere and the cone, and the relations between R and the circumference of that contact circle can be inferred directly from the diagram. Incidentally, this shows that for a "right" cone – which means the sphere and the plane circle have the same radius - the ratio of contact circumferences is



so the sphere will never return precisely to its initial configuration.


Now consider an arbitrary curve drawn on a flat surface, and a sphere rolling (without slipping or spinning) along this curve. We can parameterize the curve by giving the tangent angle a (relative to an arbitrarily chosen axis) as a function of the distance along the curve. If the sphere rolls along a straight line with angle a for a finite distance L, the change in the orientation of the sphere is given by multiplying the initial orientation by the rotation matrix



where c = cos(a), s = sin(a), C = cos(L/r), and S = sin(L/r) and r is the radius of the sphere.


The net change in orientation after the sphere has rolled along k linear segments, each of length L with the path angles a1, a2,... ak, is given by the matrix product



As L approaches the infinitesimal dL we see that S goes to dL/r and C differs from 1 by only a second-order term in (dL/r), so the infinitesimal rotation matrix is



For a unit circle path (i.e., R = 1) we have L = a, and therefore dL = da. If we take an arc of angular size q on this path, and divide it into n equal segments, we have da = q/n, and for the kth segment we have a = kq/n. Making these substations into (3) and evaluating the product m(kq/n) for k = 1 to n in the limit as n goes to infinity, we find that the net effect of rolling a sphere of radius r = 1/ all the way around a unit circle is the identity matrix. In other words, the sphere is returned to its original orientation, in agreement with the fact that a unit sphere rolling once around a circle of radius R =  is returned to its original orientation, as we saw previously.


We would like to have a simple expression for products of matrices in the limit as the individual path lengths become vanishingly small and k goes to infinity. To do this we might recall a similar situation with respect to products of real numbers. For example, consider how we would determine the geometric mean of the real numbers between 0 and 1. The geometric mean G of a finite set of values v1, v2,..,vk is simply the quantity G = (v1v2 ... vk)1/k, so the natural logarithm of G is



This makes it clear that the logarithm of the geometric mean of a continuous function v(x) from x = a to b is



For the simple case v(x) = x with x between 0 and 1 this gives ln(G) = -1, and so the geometric mean of the real numbers from 0 to 1 is G = 1/e.


Now, by analogy, it might be tempting to suppose that the logarithm of M(net) in (2) is just the sum of the logarithms of the matrices M(aj), j = 1, 2, .., k. If this were true, we could proceed to the continuous case, letting m(a) denote the infinitesimal rotation matrix for an incremental movement along the path, and we would have



which would imply that the net re-orientation of the sphere after rolling along the curve from L0 to L1 is given by the exponential of this ln(M(net)). However, this assumes the logarithmic property log(AB) = log(A) + log(B) applies to matrices, which is not generally true, because the logarithmic property does not apply to non-commuting entities - such as general 3D rotation matrices. To see this, notice that exp(A)exp(B) does not generally equal exp(A+B), because this would imply exp(A)exp(B) = exp(B)exp(A).


In view of this, it seems that some sort of non-commuting "addition" would be needed in order to recapture the familiar logarithmic property for arbitrary matrices. It would then be necessary to define the analogous "ordered" integration, so the integral along a path between any two points would depend on the direction in which the path was traversed. Furthermore, the net effect of rolling once around a given closed path will generally depend on the starting point, because if we consider two points P1 and P2 on a closed loop, and let A denote the rotation matrix given by rolling the sphere (clockwise) along the curve from P1 to P2, and B the rotation matrix given by rolling on from P2 around the rest of the loop to P1, then the net re-orientation going clockwise around the loop from P1 to P1 is AB, whereas the net re-orientation going clockwise around the loop from P2 to P2 is BA, which need not equal AB for general paths.


Nevertheless, the above formulas are applicable to rolling along a restricted class of self-similar curves (such as straight lines), so it's interesting to develop the formulas for rolling along an arbitrary path based on the premise (which admittedly has only limited validity) that the logarithmic property applies to the rotation matrices. We could also consider the cases where rolling along a given path length yields the same re-orientation of the sphere, and the cases where (for closed loops) the net re-orientation around the loop is independent of the starting point. For example, this condition is true for perfectly circular paths on the plane.


Notice that the infinitesimal rotation matrix (3) can be split into two parts



This fits nicely with the power series expansion for the logarithm



Letting "I" denote the identity matrix, and u(a) denote the right hand matrix in (4), we can write



so all terms after the first are second or higher order in dL/r. Thus, in the limit as dL → 0 we have simply ln(m) = u(a)/r dL. As a result, if L is the path-length parameter of a plane curve that makes an angle a(L) relative to some arbitrary axis, then (under the assumption of the logarithmic property) the net rotation of a sphere rolling along that curve from L0 to L1 is given by the matrix



If a(L) is constant we recover equation (1) for finite rolling along a straight line. Note that these rotations are indeed commutative, so the formula is applicable. On the other hand, if we take a(L) = L (yielding a circular path of radius R = 1) and evaluate (7) for this case (with L0 = 0 and L1 = q), we arrive at the net rotation



Unfortunately, due to the inapplicability of the logarithmic property for matrices, this does not correspond to the actual rotation of a sphere rolling around a circular path, as can be seen from the fact that it gives the identity rotation whenever q = 2p, regardless of the value of r, which (as we saw previously) is not correct.


Return to MathPages Main Menu