Thursday, January 15, 2009

Bounce a Ball

As I was reading through my feeds today, one of my teacher blogs (not actually ever my teacher) stuck out to me. Kate relates a problem where she had her students try and mark a place on the wall to bounce a ball into the hands of another student (or close enough to catch). At the end, she says she might post a solution in a few days, but I thought I would take a crack at it first.

Granted, my solution isn't really for the problem as she presents it. I also realize that trying to solve any problem with two bounces off the wall and the floor, and in three dimensions, was going to get very ugly, very fast. I am instead solving the somewhat easier problem of:
Given the position of a mark on the floor and another student, in two dimensions, what is the velocity vector required to get the ball to bounce off the floor and land in their hands from a fixed initial position?

Of course, we're going to make all kinds of grandiose assumptions about zero air friction, 100% elastic bounce off the floor, etc, because this is math, not real life (As an engineer, I live to suffer the consequences of this reality).

All that we are given is our initial position (x0, y0), the position of the mark on the floor (Fx, Fy), and the position of the other student's hands (Sx, Sy).

We need to find the velocity vector V = 〈Vx, Vy

  • There is no acceleration in the horizontal direction
  • Acceleration in the vertical direction is 9.8 ms2 downwards
  • The ball is essentially a point mass
  • There is no friction or energy lost due to bouncing.
  • The student will catch the ball regardless of the direction it is moving, as long as it passes through the point (Sx, Sy).
Which means that after you do the integration, the position of the ball (x, y) as a function of time (t) is:
x = x0 + Vx t
y = y0 + Vy t - 4.9 ms2 t2

Along with the two dimensions of the velocity vector, we're also going to need to know the times when the ball bounces (tb) and when it is caught (tc). This means we're going to need four equations.

The first two for when the ball hits the floor are fairly trivial:
Fx = x0 + Vx tb
Fy = y0 + Vy tb - 4.9 ms2 tb2

Yeah! Basic ballistic motion! Now as for when the ball is actually caught, this is where it starts to get gnarly. When the ball bounces (at time tb), its vertical velocity simply reverses (∴ the new velocity is -[Vy - 9.8 ms2 tb]):
Sx = x0 + Vx tc
Sy = Fy - [Vy - 9.8 ms2 tb] tc - 4.9 ms2 tc2

Yikes... But on the bright side, we now have four equations, and four unknowns (tb, tc, Vx, and Vy), so we can solve this! Solving the x position equations for t is fairly easy, and can be used to substitute out both of the t variables right away:
tb = [Fx - x0] ⁄ Vx
tc = [Sx - x0] ⁄ Vx

And by luck, solving the new equation for when the ball bounces for Vy is fairly easy. So here is the two equations we're left with to solve for V:
Click to enlarge.

So I'll leave substituting the first equation into the second and solving what looks to quite possibly the worst quadratic function ever for Vx as a problem for the reader (read: I'm freakin not going to do it!). Of course, these two equations should still work fine if you give it an impossible setup (mark and student on opposite sides, student in front of mark, etc), it'll just start giving you solutions that are complex.

Can you appreciate why I didn't want to do it in three dimensions with two bounces? I still think this is a fairly honorable hack at the problem.


  1. My goodness, Ken. I'm speechless. The phrase "after the integration" pretty much guarantees this isn't how we approached it, but I'm impressed by your analysis.

  2. Oh, Kenneth. Honey. You do math... *whisper* for fun. I love you despite this.