Quantcast
Viewing latest article 9
Browse Latest Browse All 17

The trajectory of a bouncing ball

You can also view this article at my Github Pages website (the formatting might be better there).

Consider an idealized model of a ball bouncing on the ground, where the ball is falling along a line normal to the ground, so that it remains on this line as it bounces, allowing us to treat its position and velocity as one-dimensional quantities. The only force acting on the ball while it is in the air is gravity, which subjects it to a constant downwards acceleration Image may be NSFW.
Clik here to view.
g
. When the ball hits the ground, it is instantaneously deflected upwards, resulting in its velocity being scaled by a factor of Image may be NSFW.
Clik here to view.
-R
, where Image may be NSFW.
Clik here to view.
R
is a constant strictly between 0 and 1 (the coefficient of restitution, or to put it in more ordinary terms, the “amount of bounciness”).

At what point does the ball stop bouncing?

The answer I expected was that the ball would never stop bouncing. I thought it would keep bouncing forever, with the bounces getting smaller and smaller in height, to a point where they were practically negligible, but I didn’t think there would be any definite point where it would stop altogether.

But it turns out that this is incorrect. While the ball does indeed bounce an infinite number of times, with the bounces getting smaller and smaller in height, that doesn’t mean it keeps bouncing forever. The bounces get smaller and smaller not only in height, but also in duration, and the sum of their durations converges to a finite limit, meaning there is a time Image may be NSFW.
Clik here to view.
T
such that the sum of their durations is always less than, but can be made arbitrarily close to Image may be NSFW.
Clik here to view.
T
. You can even calculate Image may be NSFW.
Clik here to view.
T
using the following formula:

Image may be NSFW.
Clik here to view.
\displaystyle\label{time-bouncing-stops} T = t_1 - \frac {2 u_1} {g(1 - R)} \quad (1)

Here, Image may be NSFW.
Clik here to view.
t_1
is the time at which the first bounce begins and Image may be NSFW.
Clik here to view.
u_1
is the velocity of the ball at the start of this first bounce. (The formula does require you to know Image may be NSFW.
Clik here to view.
t_1
and Image may be NSFW.
Clik here to view.
u_1
; it is possible to calculate Image may be NSFW.
Clik here to view.
t_1
and Image may be NSFW.
Clik here to view.
u_1
from the ball’s initial position and velocity, but the formula is a lot simpler and easier to understand if it’s left in terms of Image may be NSFW.
Clik here to view.
t_1
and Image may be NSFW.
Clik here to view.
u_1
rather than those initial values.)

Here’s how this formula can be derived. First, observe that between one bounce and the next, the ball moves with a constant acceleration Image may be NSFW.
Clik here to view.
g
. Also, the ball’s position (or rather, the position of its bottom point) at the start of the bounce will be the position of the ground, which we’ll write as Image may be NSFW.
Clik here to view.
h
. So if we consider a bounce starting at a time Image may be NSFW.
Clik here to view.
t_0
, where the ball has velocity Image may be NSFW.
Clik here to view.
u_0
as it begins the bounce, the ball’s velocity Image may be NSFW.
Clik here to view.
v
and position Image may be NSFW.
Clik here to view.
s
at any subsequent time Image may be NSFW.
Clik here to view.
t
before the next bounce will be given by the equations

Image may be NSFW.
Clik here to view.
\displaystyle \begin{aligned} v &= u_0 + g(t - t_0), \\ s &= h + u_0(t - t_0) + \frac {g(t - t_0)^2} 2. \end{aligned}

The next time the ball bounces, its position will be Image may be NSFW.
Clik here to view.
h
again, so to find the time the current bounce ends and the next bounce begins, we should solve the equation Image may be NSFW.
Clik here to view.
s = h
. Using the equation for Image may be NSFW.
Clik here to view.
s
above, we can write Image may be NSFW.
Clik here to view.
s = h
as an equivalent quadratic equation in Image may be NSFW.
Clik here to view.
t - t_0
:

Image may be NSFW.
Clik here to view.
\displaystyle \frac {g(t - t_0)^2} 2 + u_0(t - t_0) = 0.

Since this equation has no constant term, it can be easily solved by factorising the LHS:

Image may be NSFW.
Clik here to view.
\displaystyle (t - t_0)\left( \frac {gt} 2 + u_0 \right) = 0

From this we see that Image may be NSFW.
Clik here to view.
s = h
when Image may be NSFW.
Clik here to view.
t = t_0
(which we already knew) and also that Image may be NSFW.
Clik here to view.
s = h
when

Image may be NSFW.
Clik here to view.
\displaystyle t = t_0 - \frac {2u_0} g.

This Image may be NSFW.
Clik here to view.
t
is greater than Image may be NSFW.
Clik here to view.
t_0
, since the ball moves away from the ground as it bounces, so the velocity Image may be NSFW.
Clik here to view.
u_0
at the start of the current bounce is nonzero and has the opposite sign to Image may be NSFW.
Clik here to view.
g
. Hence we can interpret Image may be NSFW.
Clik here to view.
t
as the time of the next bounce. Accordingly, the duration of the current bounce is Image may be NSFW.
Clik here to view.
t - t_0 = -2u_0/g
. Furthermore, substituting Image may be NSFW.
Clik here to view.
t = t_0 - 2u_0/g
into the equation for Image may be NSFW.
Clik here to view.
v
gives us that the velocity at the end of the bounce is Image may be NSFW.
Clik here to view.
-u_0
(this is also obvious if you visualize the bounce as a parabola). Hence the velocity at the start of the next bounce will be Image may be NSFW.
Clik here to view.
Ru_0
.

To summarize: if the ball has velocity Image may be NSFW.
Clik here to view.
u_0
at the start of a bounce, then the duration of the bounce will be Image may be NSFW.
Clik here to view.
-2u_0/g
and the velocity of the start of the next bounce will be Image may be NSFW.
Clik here to view.
Ru_0
.

If we now consider the full sequence of bounces, we have that the velocities at the start of each bounce are in a geometric progression. So we can give a general formula for the velocity Image may be NSFW.
Clik here to view.
u_n
at the start of the Image may be NSFW.
Clik here to view.
n
th bounce (for Image may be NSFW.
Clik here to view.
n \ge 1
):

Image may be NSFW.
Clik here to view.
\displaystyle u_n = R^{n - 1} u_1.

Accordingly, the duration of the Image may be NSFW.
Clik here to view.
n
th bounce will be Image may be NSFW.
Clik here to view.
-2 u_n/g = -2 R^{n - 1} u_1/g
. Hence the total time taken by the first Image may be NSFW.
Clik here to view.
n
bounces (not including any time before the first bounce) will be

Image may be NSFW.
Clik here to view.
\displaystyle \left( -\frac {2 u_1} g \right) + \left( -\frac {2 R u_1} g \right) + \dotsb + \left( -\frac {2 R^{n - 1} u_1} g \right),

This is a geometric series, which can also be written as

Image may be NSFW.
Clik here to view.
\displaystyle -\frac {2u_1(1 - R^n)} {g(1 - R)}.

Given that Image may be NSFW.
Clik here to view.
0 < R < 1
, we can take the limit as Image may be NSFW.
Clik here to view.
n
approaches infinity, giving us the following expression for the total duration of the bounces:

Image may be NSFW.
Clik here to view.
\displaystyle -\frac {2u_1} {g(1 - R)}.

The Image may be NSFW.
Clik here to view.
t_1
term in (1) comes from the fact that there’s also some time before the first bounce.

What about Image may be NSFW.
Clik here to view.
t_1
and Image may be NSFW.
Clik here to view.
u_1
? How do we calculate them? It’s not that much more complicated. We use the same quadratic equation as before, only now the ball’s initial position is not necessarily Image may be NSFW.
Clik here to view.
h
, but some arbitrary Image may be NSFW.
Clik here to view.
r
. If we say that the positive direction is upwards, then we can assume that Image may be NSFW.
Clik here to view.
h \le r
, because the ball can’t be below the ground. We also have an arbitrary initial velocity Image may be NSFW.
Clik here to view.
u
, and this doesn’t have to be positive like the velocity at the start of a bounce. It can be negative, positive or zero. So the equations of motion for the ball from time 0 up to the time the first bounce begins are:

Image may be NSFW.
Clik here to view.
\displaystyle \begin{aligned} v &= u + gt, \\ s &= r + ut + \frac {gt^2} 2. \end{aligned}

The equation Image may be NSFW.
Clik here to view.
s = h
now comes out as the quadratic equation

Image may be NSFW.
Clik here to view.
\displaystyle \frac {gt^2} 2 + ut + r - h = 0.

The discriminant of this equation is

Image may be NSFW.
Clik here to view.
\displaystyle \Delta = u^2 - 2g(r - h).

Since Image may be NSFW.
Clik here to view.
h \le r
and Image may be NSFW.
Clik here to view.
g 0
and Image may be NSFW.
Clik here to view.
g < 0
, we have Image may be NSFW.
Clik here to view.
\tau_2 0
, this means that Image may be NSFW.
Clik here to view.
\tau_1 \ge -2u/g > 0
and Image may be NSFW.
Clik here to view.
\tau_2 \le 0
. If Image may be NSFW.
Clik here to view.
u < 0
, this means that Image may be NSFW.
Clik here to view.
\tau_1 \ge 0
and Image may be NSFW.
Clik here to view.
\tau_2 \le -2u/g < 0
. Whatever the case, we have that Image may be NSFW.
Clik here to view.
\tau_1
is non-negative and Image may be NSFW.
Clik here to view.
\tau_2
is non-positive. So we can interpret the two roots as endpoints of a “0th bounce” which is already in progress initially.

In particular, we have that the time the first bounce starts, Image may be NSFW.
Clik here to view.
t_1
, is the time the 0th bounce ends, Image may be NSFW.
Clik here to view.
\tau_1
. That is:

Image may be NSFW.
Clik here to view.
\displaystyle t_1 = -\frac {u + \sqrt \Delta} g = -\frac {u + \sqrt{u^2 - 2g(r - h)}} g.

As for Image may be NSFW.
Clik here to view.
u_1
, we can substitute Image may be NSFW.
Clik here to view.
t = t_1
into the equation Image may be NSFW.
Clik here to view.
v = u + gt
to get the velocity at the end of the 0th bounce: Image may be NSFW.
Clik here to view.
-\sqrt \Delta
. The velocity at the start of the 1st bounce will be this scaled by Image may be NSFW.
Clik here to view.
-R
, i.e.

Image may be NSFW.
Clik here to view.
\displaystyle u_1 = R \sqrt \Delta.

I started investigating this problem because I wanted to program a simulation of a ball bouncing on the ground. For this purpose, it would be ideal to have a function which, given a time Image may be NSFW.
Clik here to view.
t
, tells you what the ball’s position will be. The derivations above already give us almost all the information we need to do this. The only missing thing is a way to determine what number bounce is in progress at time Image may be NSFW.
Clik here to view.
t
. For every integer Image may be NSFW.
Clik here to view.
n
, let

Image may be NSFW.
Clik here to view.
\displaystyle t_n = t_1 - \frac {2u_1(1 - R^{n - 1})} {g(1 - R)},

so that Image may be NSFW.
Clik here to view.
t_n
is the time the Image may be NSFW.
Clik here to view.
n
th bounce starts. Given a time Image may be NSFW.
Clik here to view.
t \ge t_1
, we want to find the unique integer Image may be NSFW.
Clik here to view.
n
such that Image may be NSFW.
Clik here to view.
t_n \le t < t_{n + 1}
. Well, this chain of inequalities can also be written as

Image may be NSFW.
Clik here to view.
\displaystyle t_1 - \frac {2u_1(1 - R^{n - 1})} {g(1 - R)} \le t < t_1 - \frac {2u_1(1 - R^n)} {g(1 - R)}.

Doing some rearrangement, using the facts that Image may be NSFW.
Clik here to view.
-u_1/g
and Image may be NSFW.
Clik here to view.
1 - R
are positive, we get the equivalent inequality

Image may be NSFW.
Clik here to view.
\displaystyle 1 - R^{n - 1} \le -\frac {g(t - t_1)(1 - R)} {2u_1} < 1 - R^n.

If we subtract each part of this chain of inequalities from 1, and then take its logarithm in base Image may be NSFW.
Clik here to view.
R
, the order of the parts is preserved (because these two functions are both strictly decreasing, given that Image may be NSFW.
Clik here to view.
R < 1
, and hence their composition is strictly increasing). So the chain of inequalities can also be written as

Image may be NSFW.
Clik here to view.
\displaystyle n - 1 \le \log_R \left( 1 + \frac {g(t - t_1)(1 - R)} {2u_1} \right) < n.

Now for each real number Image may be NSFW.
Clik here to view.
x
, the “floor-plus-one” Image may be NSFW.
Clik here to view.
\lfloor x \rfloor + 1
of Image may be NSFW.
Clik here to view.
x
is the unique integer Image may be NSFW.
Clik here to view.
n
such that Image may be NSFW.
Clik here to view.
n - 1 \le x < n
; hence we can conclude that

Image may be NSFW.
Clik here to view.
\displaystyle n = \left \lfloor \log_R \left( 1 + \frac {g(t - t_1)(1 - R)} {2u_1} \right) \right \rfloor + 1.

It is then straightforward to give a formula for Image may be NSFW.
Clik here to view.
s
, using the fact that the Image may be NSFW.
Clik here to view.
n
th bounce starts at time Image may be NSFW.
Clik here to view.
t_n
, and the ball’s velocity as it begins this bounce is Image may be NSFW.
Clik here to view.
u_n
.

Image may be NSFW.
Clik here to view.
\displaystyle s = h + u_n (t - t_n) + \frac {g(t - t_n)^2} 2.

Here’s a graph of the trajectory defined by this function, made in Desmos:

Image may be NSFW.
Clik here to view.

The vertical line is where the bouncing stops.

If you go to the Github Pages version of this article, you can also see what the simulation looks like (WordPress won’t let me put a video here). The code for it is on Github.


Viewing latest article 9
Browse Latest Browse All 17

Trending Articles