Application Center - Maplesoft

App Preview:

Billiard ball dynamics

You can switch back to the summary page by clicking here.

Learn about Maple
Download Application


 

Image 

Billiard Ball Dynamics 

A.C. Baroudy
acbarou@inco.com.lb
 

                                                                        Introduction

The dynamics involved in the motion of the billiard ball is part of the rotation dynamics.
This is where angular momentum L, angular acceleration α, and torque Γ are used.
Note that the torque is the equivalent of the force F =
ma so it is expressed as Γ =Iα
where I is the
mass moment of inertia (equivalent to the mass m in F = ma) about a
given axis of rotation and α the angular acceleration equivalent to the linear acceleration
a.
The ball spin and forward translation depend on the point of impact of the cue on the ball as related to the center of mass(
CM):
Considering only shots where the cue hits the ball always in its
vertical median plane and in a horizontal direction we state a few facts about the motion of the ball in this setting, there explanation will follw the dynamics of the ball:

     
1- If the cue hits the ball in the direction of the center of the ball this latter
           will go on
sliding and rolling for a certain time then rolling alone.
     
2- If the cue hits the ball well above the ball center then the ball will have say, a CW spin
          and a forward sliding motion
.
     
3- If the cue hits the ball well below the ball center then the ball will have a CCW
          spin and a forward sliding motion.
     
4- If R is the radius of the bal and the cue hits the ball at Typesetting:-mrow(Typesetting:-mo( R  above the ball center, then the ball will have say, a CW spin
          causing a forward rolling with no sliding
.
         Here we have Typesetting:-mrow(Typesetting:-mover(Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi( at any time i.e.Typesetting:-mrow(Typesetting:-mover(Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi(
(along +x) & Typesetting:-mrow(Typesetting:-mo( (along -x)
          We will see why later on.
     
5- If the cue hits the ball at  Typesetting:-mrow(Typesetting:-mo( R below the ball center then the ball will have say, a CCW spin
          and a forward rolling with  sliding
. Here we have Typesetting:-mrow(Typesetting:-mover(Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi( at any time.
          Both being along +x
 

Our problem is to analyse the motion of a cue ball where:
1-
M is the ball's mass and its mass moment of inertia = I = Typesetting:-mrow(Typesetting:-mfrac(Typesetting:-mn( around an axis passing through its center of mass.
2- Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi( is the initial angular velocity.
The shot being well above the critical point Typesetting:-mrow(Typesetting:-mo(R from the center of the ball.
3- Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi( being the coefficient of kinetic friction.
4- Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi( forward initial velocity of
CM.
As stated above we consider only shots where the cue hits the ball always in its vertical median plane and in a horizontal direction.
To be more specific the cue has just hit the ball
well above the Typesetting:-mrow(Typesetting:-mo(R critical distance above the center of mass.
In this case at
P, point of contact of the ball with the table, we must have : Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi( i.e. the translation velocity is less than the velocity of rotation. See equation (8') below.
As for the direction of Typesetting:-msub(Typesetting:-mi( it is the same as +x while that of Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi( it is along -x in this setting.   
Our coordinates are the principal axes with CM being the origin O. This right hand triade is considered as fixed in space:
                                                    ** the x-axis along the forward translation,
                                                    ** the y-axis to the left of x-axis,
                                                    ** the z-axis directed upward.
The ball, as we mentioned above, will have a
spin and a sliding motion at the very start.
The friction force ℱ,
according to the law of kinetic, acts in a direction opposite to Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi( the velocity of P.  
This force will operate until  Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi( = Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi( =
0 then it vanishes, where Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi( = translation velocity of CM & P, & Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi( = rotation velocity at P.

We propose to :
1- find the forward accelration a and the angular acceleration α before the pure rolling occurs,
2- find the distance d the ball has to travel till the friction force ℱ vanishes
    i.e. the moment when the sliding ceases and the ball has a pure rolling motion where
v = Rω.   
3- find the work done by the friction force of sliding ℱ on the ball.
4- find the magic number Typesetting:-mrow(Typesetting:-mo(R. 

Finding the equations of motion 

The forces acting on the ball at P are:
a- the weight = -Mg along -z,
b- the normal force of contact at P =  along +z,
c- the horizontal force of contact at P = force of friction = ℱ,
   it is always acting to oppose point
P velocity Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi( hence it is along +x in the present setting.
Then we have :
1- along z-axis:                                                  -Mg+ = 0,
since the ball CM has no vertical acceleration.
This gives                                                  
      = Mg.
2- along x-axis:                                                ℱ= Ma = MTypesetting:-mrow(Typesetting:-msub(Typesetting:-mover(Typesetting:-mrow(Typesetting:-msub(Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi(.                           (1)

Now the kinetic coefficient of friction is defined as the ratio of the two forces of contact involved in the friction: the
horizontal ℱ and the normal  i.e. Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi( = Typesetting:-mrow(Typesetting:-mfrac(Typesetting:-mi( = Typesetting:-mrow(Typesetting:-mfrac(Typesetting:-mi(, thus we have:
                                                                       
a =  Typesetting:-msub(Typesetting:-mi(g.                                      (2)
The ball can rotate around any axis through its CM. Since ℱ has a moment arm relative to CM = R then a torque is present.
In vector notation this torque is Typesetting:-mrow(Typesetting:-mi(= Typesetting:-mrow(Typesetting:-mo(
.
Thus it is
negative in the direction of -y with magnitude:
                                                 Γ = Typesetting:-mrow(Typesetting:-mi( =
Rℱ = RMTypesetting:-msub(Typesetting:-mi(g =Iα = Typesetting:-mrow(Typesetting:-mfrac(Typesetting:-mn(α .
and
                                                                     α = Typesetting:-mrow(Typesetting:-mover(Typesetting:-mi( = Typesetting:-mrow(Typesetting:-mo(Typesetting:-mrow(Typesetting:-mfrac(Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi(                         
(3)
The two equations:
                                                                  I-    ℱ =
M Typesetting:-msub(Typesetting:-mi(gTypesetting:-mrow(Typesetting:-mover(Typesetting:-mi(,
                                                                 II-   Γ=Typesetting:-mrow(Typesetting:-mo(Typesetting:-mrow(Typesetting:-mfrac(Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi(
define the motion of the ball.
It is interesting to note how the angular velocity ω and the angular acceleration Typesetting:-mrow(Typesetting:-mover(Typesetting:-mi( are of opposite directions. The torque inherits the direction of the angular acceleration!

From the above two equations we get the acceleration of  contact point P:
Starting with Typesetting:-mrow(Typesetting:-msub(Typesetting:-mrow(Typesetting:-mover(Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi(
we get :
Typesetting:-mrow(Typesetting:-msub(Typesetting:-mrow(Typesetting:-mover(Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi( = Typesetting:-msub(Typesetting:-mi(gTypesetting:-mrow(Typesetting:-mo(Typesetting:-mrow(Typesetting:-mo(Typesetting:-mrow(Typesetting:-mfrac(Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi(
                                                  Typesetting:-mrow(Typesetting:-msub(Typesetting:-mrow(Typesetting:-mover(Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi(Typesetting:-msub(Typesetting:-mi(g Typesetting:-mover(Typesetting:-mi(+ Typesetting:-mrow(Typesetting:-mo(Typesetting:-mrow(Typesetting:-mo(Typesetting:-mrow(Typesetting:-mover(Typesetting:-mi(= Typesetting:-mrow(Typesetting:-mo(Typesetting:-mrow(Typesetting:-mo(Typesetting:-mrow(Typesetting:-mover(Typesetting:-mi(,                 
(3.0)
hence the acceleration of point
P has the same direction as that of ℱ which, as we know, is along +x & opposite to that of Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi(.
Thus at time t, Typesetting:-msub(Typesetting:-mi( is negative along -x :
                                                                  Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi(Typesetting:-mrow(Typesetting:-mo(Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi(  
where  Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi( since in the present setting, as we stated above,  we have  Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi( & Typesetting:-msub(Typesetting:-mi( is negative .
Hence:                                                     Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi(Typesetting:-mrow(Typesetting:-mo(Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi(                    
(3.1)
If we call Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi( the rotation velocity & Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi( the translation velocity then:
Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi( =  Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi(Typesetting:-msub(Typesetting:-mi(g
t →            Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi( Typesetting:-mrow(Typesetting:-mo(Typesetting:-msub(Typesetting:-mi(g t                                 (3.11)                        
and from Typesetting:-mrow(Typesetting:-mi(Typesetting:-mrow(Typesetting:-mo(
t  we get
                                                                ω
R = Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi(Typesetting:-mrow(Typesetting:-mi(Typesetting:-mrow(Typesetting:-mfrac(Typesetting:-mn(.                          (3.12)         
Hence (3.1) becomes::
                                                    Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi(,           
(3.2)
i.e.                                                            Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi(                     
(3.3)
Note that (3.2) is valid as long as t is still less than the time when Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi(. This time = Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi( is obtained from (3.1) by setting Typesetting:-msub(Typesetting:-mi(  equal to 0.
It is                                                             Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi(.                          
(3.4)
From that point on we must have:
                                             Typesetting:-mrow(Typesetting:-mfenced(Typesetting:-mrow(Typesetting:-mi( .
 

Finding the distance d 

II- To find the distance d we start with equation (3.4) which gives the time when ℱ vanishes.
The time is the upper limit of the integration of Typesetting:-mrow(Typesetting:-mi( :
d = Typesetting:-mrow(Typesetting:-msubsup(Typesetting:-mo( = Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi( Typesetting:-mrow(Typesetting:-mo(Typesetting:-msub(Typesetting:-mi(g Typesetting:-mrow(Typesetting:-msubsup(Typesetting:-mi(.
Substituting the value of
t from (3.4) in the above equation we get the required distance:
                            
d = Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi( + Typesetting:-mrow(Typesetting:-mo(Typesetting:-msub(Typesetting:-mi(g Typesetting:-mrow(Typesetting:-mfrac(Typesetting:-mn(Typesetting:-mrow(Typesetting:-msup(Typesetting:-mfenced(Typesetting:-mrow(Typesetting:-mfrac(Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi(              (5)  

The work done by ℱ on the ball 

The work done by ℱ on the ball is the difference between the initial energy Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi( and the sum of the rotation energy Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi( & the translation energy Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi( of the  ball.
We need to get
ω & v at  Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi(  i.e. when ℱ vanishes and Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi( = ωR.
From (3.12) we have ω
R = Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi(Typesetting:-mrow(Typesetting:-mi(Typesetting:-mrow(Typesetting:-mo(t . We substitute the value of t = Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi( in it then solve for ω .
We get                                              ω =  Typesetting:-mrow(Typesetting:-mfrac(Typesetting:-mn(.
Since Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi(
= ωR  at t = Typesetting:-msub(Typesetting:-mi( then we use it instead of getting v from (3.11).
Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi(
+  Typesetting:-mrow(Typesetting:-mfrac(Typesetting:-mn(
Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi(
Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi(
Work of ℱ on the ball: Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi( =
Typesetting:-mrow(Typesetting:-mfrac(Typesetting:-mn( + Typesetting:-mrow(Typesetting:-mfrac(Typesetting:-mn(Typesetting:-mrow(Typesetting:-mo(        
(6) 

The particular point located at Typesetting:-mrow(Typesetting:-mo(R  

Why hitting the ball with the cue at this level will send the ball into pure rolling with no sliding?
To understand this situation we must remember that with pure rolling the point of contact
P on the table moves along the rim of the ball the same distance as the center of the ball moves forward in any given time, in other words the point of contact must have the same mgnitude for these two velocities but opposite in direction. Hence we must have in case of rolling without slipping Typesetting:-mrow(Typesetting:-mover(Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi( thus the condition for pure rolling is that the velocity of the point of contact Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi(.
We need to get a relation between the velocity of translation and that of rotation by using the concept of angular momentum, linear momentum & the associated impulses.
We consider the ball as being hit by the cue at a height
h above the point of contact P.
Our coordinates are
x-axis along the direction of translation ,
y-axis parallel to the axis of rotation and
z-axis is passing through the center of the ball and upward positive.
 


I- The linear momentum and the impulse of F 

Here the impulse Typesetting:-mrow(Typesetting:-mi(of the impact force F for a short time Δt is equal to the change in linear momentum from MTypesetting:-mrow(Typesetting:-msub(Typesetting:-mi( to MTypesetting:-mrow(Typesetting:-msub(Typesetting:-mi( :
Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi( i.e. →                                 Typesetting:-mrow(Typesetting:-mi(.
Integrating this last equation from Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi(to Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi( we get :
                                                                     Typesetting:-mrow(Typesetting:-mi( .                    
(6')

Since Δt is very small of the order of 0.01 second and at t = 0, Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi( = 0, then Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi( is the
initial velocity at the end of the impact. We call it Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi( and we have:
                                                                        Typesetting:-mrow(Typesetting:-msub(Typesetting:-mrow(Typesetting:-mi( .                                
(6")  
Since the translation is along x-axis and
F = Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi(Typesetting:-mrow(Typesetting:-mover(Typesetting:-mi(then equation (6") is the only scalar equation for the linear momentum at the very start:
                                                                    Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi(.                                     
(6"') 


II- The angular momentum and the impulsive torque 

For the angular momentum of the ball we need the arm moment of the force delivered by the cue.
It is ( h - R ) where h is the height above contact point P.
The change Δ
L in the angular momentum (L) :
ΔL =  
angular impulse = ΓΔt
ΔL = product of the torque and the interval of time during which the torque is acting. 

III- Finding the torque Γ and its impulse 

Note that F the impulsive force is along +x-axis and ( h - R ) as a vector is in the direction of +z ( upward ) so that the cross product Typesetting:-mrow(Typesetting:-mfenced(Typesetting:-mrow(Typesetting:-mi( is a vector in the direction of +y. This indicates that we take the change in the angular momentum along y-axis. Here, however, ω is a vector already along y-axis & the mass moment of inertia I around y-axis still has the same expression as used above, thus the component of on y-axis equal and the change in angular momentum Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi( is:
                                   Typesetting:-mrow(Typesetting:-mo( .
Since at t = 0, Typesetting:-mrow(Typesetting:-mo(= 0 then :
                                       Typesetting:-mrow(Typesetting:-mo(.                                       
(7)
Since Δt is very small of the order of 0.01 second and at t = 0, Typesetting:-msub(Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi( = 0 then Typesetting:-mrow(Typesetting:-msub(Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi( is the
angular velocity at the end of the impact. We call it Typesetting:-mrow(Typesetting:-mo( and we have:
                                                           Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi( .                              
(7')
To compare these two velocities we multiply both sides of (6"') by the factor (h - R) and equate the LHS of the result to the LHS of (7') :
Typesetting:-mrow(Typesetting:-mi(Typesetting:-mrow(Typesetting:-mfrac(Typesetting:-mn(,
                                           Typesetting:-mrow(Typesetting:-mo(                                                    
(8)

                                          Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi(                                                 
(8')
This last equation shows that Typesetting:-mrow(Typesetting:-mfrac(Typesetting:-mn( i.e. Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi( when Typesetting:-mrow(Typesetting:-mi(", mathvariant = "normal", fence = "false", separator = "false", stretchy = "false", symmetric = "fal..." align="center" border="0"> .
The velocity of the point of contact
P:
1- when
h > Typesetting:-mrow(Typesetting:-mfrac(Typesetting:-mrow(Typesetting:-mn(, is  Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi( and it is, like Typesetting:-mi(,  negative along -x with Typesetting:-mrow(Typesetting:-mfenced(Typesetting:-mrow(Typesetting:-mi(", mathvar..." align="center" border="0"> ,
2- when Typesetting:-mrow(Typesetting:-mo( < Typesetting:-mrow(Typesetting:-mo(, is  Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi( and it is, like Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi(,
positive along +x with Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi(.  
** Hence for h R  we have using (4.2) & (4.3):
                                              Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi(Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi( ,               
(9)
and at t = 0 i.e. just at the end of the impact we have:
                                                             Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi(                                   
(9')
** When h < R we need recalculate the torque and use Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi( since for h < R
both Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi( are positive in the direction of +x.
The torque is Typesetting:-mrow(Typesetting:-mfenced(Typesetting:-mrow(Typesetting:-mi( = Typesetting:-mrow(Typesetting:-mfenced(Typesetting:-mrow(Typesetting:-mfenced(Typesetting:-mrow(Typesetting:-mi( hence it is along -y.
Thus we need take the change in angular momentum along -y.
It just happend that when
h < R ,Typesetting:-mrow(Typesetting:-mover(Typesetting:-mi( is already along -y so that the impulsive
torque integral Typesetting:-mrow(Typesetting:-msubsup(Typesetting:-mo( and the change in angular momentum Typesetting:-mrow(Typesetting:-mo( are related
by the same equation (7) except that we use
(R - h ) here instead of ( h - R ).
Using  Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi(  as we said above we get  
Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi( .
This leads to the same formula as (9)  & (9') above.
Thus equations (9) & (9') for Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi( are valid for all cases of h i.e. h ⩾ R or h ⩽ R giving Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi( at t = t and t = 0 respectively.
As a check for the correctness of (9') we see that :
** for h = Typesetting:-mrow(Typesetting:-mo(, Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi( which is correct since from the start i.e. end of impact, both Typesetting:-msub(Typesetting:-mi( and Typesetting:-msub(Typesetting:-mi(
    are
equal but opposite in direction thus Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi( .
** for
h = Typesetting:-mrow(Typesetting:-mo(, Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi( which is also correct since in this case both Typesetting:-msub(Typesetting:-mi( and Typesetting:-msub(Typesetting:-mi(
    are
equal and in the same direction thus Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi( = Typesetting:-mrow(Typesetting:-mn(
** for h = R, Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi( which is correct since there is no torque & Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi( is P's only velocity.
As we said above, for pure rolling to set in from the start, Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi(must be equal to zero i.e. Typesetting:-mrow(Typesetting:-mi( ( by setting equation(9') = 0) .Hence the cue must hit the ball at the particular point located Typesetting:-mrow(Typesetting:-mfrac(Typesetting:-mn( above CM!
 

Predicting the behavior of the ball from equation (9) & Typesetting:-mrow(Typesetting:-mover(Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi( = Typesetting:-mrow(Typesetting:-mo(  

The behavior of the ball can be predicted from
equation (9) and:
                                                                         Typesetting:-mrow(Typesetting:-mover(Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi( = Typesetting:-mrow(Typesetting:-mo(                              
(10)
as well as the law of kinetic friction as long as there is a slipping between the ball and the table. This law tells us that ℱ acts in a direction opposite the velocity Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi( of the point of contact
P.
Note that Typesetting:-mrow(Typesetting:-mover(Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi( = Typesetting:-mrow(Typesetting:-mo( equals the algebraic sum of both velocities at
P at any time.
Eight cases are to be considered. See
Figure-1: 

I- h = Typesetting:-mfrac(Typesetting:-mrow(Typesetting:-mn( where Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi(: 

From (9) we have
Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi( = 0  hence  ℱ = 0.
Motion from the start is a pure rolling.
 

II- High shot when h > Typesetting:-mfrac(Typesetting:-mrow(Typesetting:-mn( where Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi(: 


From (9) we have
Typesetting:-msub(Typesetting:-mi( < 0  hence along -x & ℱ along +x.
Motion from the start: rolling  + sliding.
ℱ will increase Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi( & decrease Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi( till we have Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi( = Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi( = 0. At this moment the ball is in pure rolling.
 


III- Low shot when R < h < Typesetting:-mfrac(Typesetting:-mrow(Typesetting:-mn( where Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi(: 

From (9) we have
Typesetting:-msub(Typesetting:-mi( > 0  along +x & ℱ along -x.
Motion from the start: rolling  + sliding.
ℱ will increase Typesetting:-msub(Typesetting:-mi( & decrease Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi( till we have Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi( = Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi( = 0. At this moment the ball is in pure rolling.
 


IV- h = R where Typesetting:-mrow(Typesetting:-msub(Typesetting:-mrow(Typesetting:-mover(Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi(: 

From (9) we have
Typesetting:-msub(Typesetting:-mi( = Typesetting:-msub(Typesetting:-mi( = 0, hence along +x & ℱ along -x.
Motion from the start: sliding.
ℱ will increase Typesetting:-msub(Typesetting:-mi(  & decrease Typesetting:-msub(Typesetting:-mi( so the ball will have rolling & sliding till we have Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi( = Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi( = 0. At this moment the ball is in pure rolling.
 


V- Tangential shot where h = 2R , Typesetting:-mrow(Typesetting:-mover(Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi(: 

Typesetting:-msub(Typesetting:-mi( = Typesetting:-msub(Typesetting:-mi( & Typesetting:-msub(Typesetting:-mi( = 0, hence Typesetting:-msub(Typesetting:-mi( along -x & ℱ along +x.
Motion from the start: rolling .
ℱ will increase Typesetting:-msub(Typesetting:-mi( & decrease Typesetting:-msub(Typesetting:-mi( causing sliding along with the rolling till we have Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi( = Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi( = 0. At this moment the ball is in pure rolling.
 

Image


VI- h = critical point Typesetting:-mfrac(Typesetting:-mrow(Typesetting:-mn( where Typesetting:-mrow(Typesetting:-mover(Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi(: 

From (9) we have
Typesetting:-msub(Typesetting:-mi( = 2 Typesetting:-msub(Typesetting:-mi(& Typesetting:-msub(Typesetting:-mi( = Typesetting:-msub(Typesetting:-mi(, hence along +x & ℱ along -x.
Motion from the start: rolling CCW & sliding.
From (3.1)  Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi(Typesetting:-mrow(Typesetting:-mo(Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi(  we have  Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi(Typesetting:-mrow(Typesetting:-mo(Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi( since both have the same direction along +x while ℱ is along -x. Which at time τ = Typesetting:-mrow(Typesetting:-mfrac(Typesetting:-mrow(Typesetting:-mn( , Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi( Thus the ball keeps rolling and slinding till at time τ it stops.
 


VII- Typesetting:-mfrac(Typesetting:-mrow(Typesetting:-mn(  < h < R and Typesetting:-mrow(Typesetting:-mover(Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi(: 

From (9) we have
Typesetting:-msub(Typesetting:-mi( >0 , hence along +x & ℱ along -x.
Motion from the start: rolling CCW & sliding.
from Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi(Typesetting:-mrow(Typesetting:-mo(Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi( = Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi(Typesetting:-mrow(Typesetting:-mfrac(Typesetting:-mrow(Typesetting:-mn(
ℱ will decrease both Typesetting:-msub(Typesetting:-mi( & Typesetting:-msub(Typesetting:-mi( but Typesetting:-msub(Typesetting:-mi( being smaller than Typesetting:-msub(Typesetting:-mi( becomes 0 first then it reverses its sign where ℱ is causing the ball to turn CW instead of CCW while still increasing it and further decreasing Typesetting:-msub(Typesetting:-mi( till we get the condition for pure rolling Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi( = Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi( = 0.
Here rotation is reversed. 


VIII- h < Typesetting:-mfrac(Typesetting:-mrow(Typesetting:-mn( and Typesetting:-mrow(Typesetting:-mover(Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi(: 

From (9) we have
Typesetting:-msub(Typesetting:-mi( >0 , hence along +x & ℱ along -x.
Motion from the start: rolling CCW & sliding.
from Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi(Typesetting:-mrow(Typesetting:-mo(Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi( = Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi(Typesetting:-mrow(Typesetting:-mfrac(Typesetting:-mrow(Typesetting:-mn(
ℱ will decrease both Typesetting:-msub(Typesetting:-mi( & Typesetting:-msub(Typesetting:-mi( but Typesetting:-msub(Typesetting:-mi( being smaller than Typesetting:-msub(Typesetting:-mi( becomes 0 first then it reverses its sign.
Thus the ball stops advancing and change translation from forward to backward .
ℱ will continue increasing this backward translation while it is reducing Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi( till we get the condition for pure rolling Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi( = Typesetting:-mrow(Typesetting:-msub(Typesetting:-mi( = 0. Note that here the ball doesn't change rotation direction it will continue to do it as it did from the start i.e.CCW.
Here translation is reversed. 

 

References:
1- Coriolis's
Theorie Mathematique des Effets du Jeu de Billiard, 1835, pp:51-56.
2- The problem above, presented in a different form, was taken from:
    
Sears, Zemanski & Young's University Physics, p: 248, Problem # 9-83.
    It was a Challenge problem, which once I solved, helps me a great deal to understand  
    the dynamics of the billiard ball.
3- Barger & Olsson's
Classical Mechanics, pp 186-188, for the critical point Typesetting:-mrow(Typesetting:-mo(R.
4- Synge & Griffith's
Principles of Mechanics, pp 399-402, for the general motion of a billiard ball.

 

 

                              Using Maple to animate the ball for the case considered :
                                          the cue hits the ball well above h=7/5R


I have to consider the ball as rolling and advancing. To show the slipping I used two rays :
- one
blue for the real rotation and
- one
black to show the advancing as measured along perimeter of the ball represented as a circle.
Then at time Typesetting:-mrow(Typesetting:-mo( we get the ball rolling with a constant velocity which is the velocity of either rolling or advancing ( they are equal from that instant on ) where I used only one ray ( a
black one ) to show the rolling with no slipping.
Note that until we reach Typesetting:-mrow(Typesetting:-mo(, friction force is operating to reduce the rolling velocity and to increase that of the advancing till both become equal than it disappears. In the present situation the rolling is well in advance from the start. The calculation below are also done to show how much rotation due to rolling and the advance get once we reach Typesetting:-mrow(Typesetting:-mo(.
The problem was to get an acceptable value for R i.e. around 0.025 meter= 2.5cm and v0 =6Pi. Increasing the time of rolling on the graph makes the bal smaller. This is entered in the proc as: k_vals:=seq(k*t_final*2/20,k=0..20): where the total time for the graph is double of the Typesetting:-mrow(Typesetting:-mo(. We can make it three times or four time greater.This will, of course, gives us a smaller size ball because the x-scale being increased then the size of the ball on the y-axis will decrease.
 

> restart: with(plots): with(plottools):
 

> omega0:=5/2*v0*(h-R)/R^2;
 

`+`(`/`(`*`(`/`(5, 2), `*`(v0, `*`(`+`(h, `-`(R))))), `*`(`^`(R, 2)))) (1)
 

> vx:=v0+mu*g*t;
 

`+`(v0, `*`(mu, `*`(g, `*`(t)))) (2)
 

> vr:=omega0*R-5/2*mu*g*t;
 

`+`(`/`(`*`(`/`(5, 2), `*`(v0, `*`(`+`(h, `-`(R))))), `*`(R)), `-`(`*`(`/`(5, 2), `*`(mu, `*`(g, `*`(t)))))) (3)
 

> T:=t->v0*t+1/2*mu*g*t^2;
 

proc (t) options operator, arrow; `+`(`*`(v0, `*`(t)), `*`(`/`(1, 2), `*`(mu, `*`(g, `*`(`^`(t, 2)))))) end proc (4)
 

> theta:=t->omega0*t-1/2*5/2*mu*g*t^2;
 

proc (t) options operator, arrow; `+`(`*`(omega0, `*`(t)), `-`(`*`(`/`(5, 4), `*`(mu, `*`(g, `*`(`^`(t, 2))))))) end proc (5)
 

> R:=0.025;h:=8/5*R;v0:=3.5*Pi;mu:=0.5;g:=10;
 

 

 

 

 

0.25e-1
0.4000000000e-1
`+`(`*`(3.5, `*`(Pi)))
.5
10 (6)
 

> t_final:=evalf(2/7*(omega0*R-v0)/(mu*g));
 

.3141592654 (7)
 

> t:=t_final;
 

.3141592654 (8)
 

> evalf([vx,vr]);
 

[12.56637062, 12.56637061] (9)
 

> evalf([T(t),theta(t),theta(t)/T(t)]);
 

[3.701101652, 206.6448422, 55.83333332] (10)
 

> V:=v0+mu*g*t_final;
 

`+`(`*`(3.5, `*`(Pi)), 1.570796327) (11)
 

> t_final:= 0.01*floor(100*t_final);
 

.31 (12)
 

> billiard:=proc(t0)
 

> local cir,ray,ray1,ray2,t,Dt;
 

> t:=t0;
 

>      if t0 <= t_final then
 

>         cir:= t-> circle([1+T(t),1],1,color=red,thickness=3):
 

>         ray1:=t-> plot([[1+T(t),1],[1+T(t)+cos(-theta(t)-Pi/2),1+sin(-theta(t)-Pi/2)]]
 

>         ,color=blue,thickness=3):
 

>         ray2:= t->plot([[1+T(t),1],[1+T(t)+cos(-T(t)-Pi/2),1+sin(-T(t)-Pi/2)]]
 

>         ,color=black,thickness=1):
 

>         display(cir(t),ray1(t),ray2(t),scaling=constrained);
 

>     elif t0 > t_final then  
 

>         Dt:= t0 - t_final;
 

>         cir:= t->circle([1+T(t)+V*Dt,1],1,color=red,thickness=3):
 

>         ray:= t->plot([[1+T(t)+V*Dt,1],[1+T(t)+V*Dt+cos(-T(t)-V*Dt-Pi/2)
 

>         ,1+sin(-T(t)-V*Dt-Pi/2)]],color=black,thickness=1):
 

>         display(cir(t),ray(t),scaling=constrained);
 

>  
 

>    fi;
 

> end:
 

> k_vals:=seq(k*t_final*3/20,k=0..20):
 

> to_animate:=[seq(billiard(k),k=k_vals)]:
 

> display(to_animate,insequence=true,scaling=constrained);
 

Plot_2d
 

Legal Notice: The copyright for this application is owned by the author(s). Neither Maplesoft nor the author are responsible for any errors contained within and are not liable for any damages resulting from the use of this material. This application is intended for non-commercial, non-profit use only. Contact the author for permission if you wish to use this application in for-profit activities. 

Image