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 a_{1}, a_{2},... a_{k}, 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 secondorder 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 v_{1}, v_{2},..,v_{k} is simply the quantity G = (v_{1}v_{2} ... v_{k})^{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(a_{j}), 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 reorientation of the sphere after rolling along the curve from L_{0} to L_{1} 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 noncommuting 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 noncommuting "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 P_{1} and P_{2} on a closed loop, and let A denote the rotation matrix given by rolling the sphere (clockwise) along the curve from P_{1} to P_{2}, and B the rotation matrix given by rolling on from P_{2} around the rest of the loop to P_{1}, then the net reorientation going clockwise around the loop from P_{1} to P_{1} is AB, whereas the net reorientation going clockwise around the loop from P_{2} to P_{2} is BA, which need not equal AB for general paths. 

Nevertheless, the above formulas are applicable to rolling along a restricted class of selfsimilar 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 reorientation of the sphere, and the cases where (for closed loops) the net reorientation 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 pathlength 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 L_{0} to L_{1} 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 L_{0} = 0 and L_{1} = 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. 
