The above demonstration illustrates the dynamics of a rigid sphere on a hard frictional surface with friction coefficient $\mu$. I started thinking about this problem after a discussion with students about the following problem. Imagine a spinning sphere (where the rotation axis of the sphere is in the plane of the surface) is dropped from a short distance onto the surface with no initial center of mass velocity. How long does it take to roll without slipping? I worked on this problem before and had a nice demonstration of it to aid my thinking, but I thought the generalization would be very difficult.

Later in the day, my friends Rich C and Howard A and I talked about what would happen when a ball that was spinning at a $45^\circ$ angle with respect to the perpendicular was dropped on the surface. Eventually with enough thinking, we determined the initial velocity of the contact point and I convinced myself that the ball would, seemingly paradoxically, move in a straight line.

Over the next few days, I convinced myself and eventually worked out the following:

- The force and torque on the sphere is set by the initial velocity of the center of mass and the initial angular velocity and
*remains constant relative to the space coordinates while the sphere is slipping.* - Since the force and torque are in the plane (the black and red arrows in the plane at the origin in the demonstration), the initial angular velocity component perpendicular to the surface never changes. A ball that is perfectly spinning like a top won't move.
- The velocity of the contact point is composed of two velocities: the center of mass velocity and the velocity of the contact point relative to the body. These two vectors change according to the force and torque (perpendicular to each other), but they seemingly collude to eventually produce a zero velocity of the contact point relative to the surface (shrinking blue vector) at the point of rolling without slipping. This seems like magic to see happening, but Rich had a good explanation of why this would happen. More on that later.
- Since the force and torque are constant from the very beginning of the problem, both the center of mass velocity and angular momentum vector change according to KINEMATICS. That's all! The velocity changes linearly (2D kinematics) and the angular velocity changes linearly (2D kinematics). The only complication is integrating the Euler angles forward. Originally I had thought to express all force and torque laws in terms of the Euler angles. This lead to 6 terrible coupled nonlinear second-order differential equations that gave me stability problems due to the coordinate singularities. I eventually realized that (just like the Hamiltonian approach) I could solve for the velocity dynamics first, then extract the Euler angles later.
- The time-till-rolling can be calculated by evaluating the cross product of the center of mass velocity (a linear function of time) and the relative velocity with respect to the body (a linear function of time). There is no real reason to do the cross product, but when they are antiparallel, the velocity of the contact point relative to the surface is zero. The cross product is just a nice way to get a scalar from vectors and to do the derivation without dealing with magnitudes of vectors (which are ugly).
- The torque and force laws must be done in the space frame since the center of mass is accelerating and therefore a non inertial frame.

$$t_{\textrm{roll}} = \frac{-v_x \omega_x - v_y \omega_y}{\mu \left( \beta f_y v_x - \beta f_x v_y + f_x \omega_x + f_y \omega_y \right)}$$

After the slipping phase, the sphere rolls without slipping and travels in a straight line.

Some comments about the simulation:

- $\mu$ is the frictional coefficient.
- $\beta = \frac{m r^2}{I}$ is the ratio of mass times the radius squared of the sphere and the moment of inertia.
- $mag$ and $\theta \phi$ are the magnitude and direction of the initial angular velocity (black vector attached to the sphere's center). Horizontal is $\theta$ and vertical is $\phi$ of the spherical coordinates of the angular velocity vector.
- $v_0$ is the initial velocity of the center of mass. Centered in the square is (0,0).
- The track of the sphere over the surface is plotted in red while it is slipping and blue when it is rolling without slipping.
- The simulation time is displayed in the graphic. You can speed up and slow down the simulation by pressing the double up and double down arrows next to the time slider.

Further comment about the center of mass and the velocity of the point relative to the body colluding to cancel:

Rich suggested that from the ball's perspective, the dynamics should be the same as a ball being held by pincers (or pads or parallel compacting planes) on top and on bottom. Since in this instance, the relative velocity of the contact point(s) is the same as a plane (or two compacting parallel planes), the direction of each force will remain the same throughout the dynamics. There is no way for the pincers or planes to do anything other than slow the ball down in the direction that it sees. The advantage of the pads is that now there is no center of mass velocity and it the angular velocity slowly adjusts so that there is no motion at the contact points and thus the ball ends up spinning around the line connecting the contact points.

Rich suggested that from the ball's perspective, the dynamics should be the same as a ball being held by pincers (or pads or parallel compacting planes) on top and on bottom. Since in this instance, the relative velocity of the contact point(s) is the same as a plane (or two compacting parallel planes), the direction of each force will remain the same throughout the dynamics. There is no way for the pincers or planes to do anything other than slow the ball down in the direction that it sees. The advantage of the pads is that now there is no center of mass velocity and it the angular velocity slowly adjusts so that there is no motion at the contact points and thus the ball ends up spinning around the line connecting the contact points.