]> Cannon Bounce Puzzle Home

[This page uses XHtml with MathML and will also use SVG eventually. You can also get a straightforward version using HTML]

Bouncing Cannon Balls Puzzle

As if we didn’t need one, a new type of weapon is being designed which transfers the energy from a large moving mass to a much smaller and faster projectile.

The large mass is fired at the smaller projectile at rest in a tube which is closed at the far end. The projectile can bounce off the far end and come back to hit the input mass again, or the far end can be opened letting the projectile out. All collisions are elastic, there is no energy loss.

For each number of hits between the input mass and the projectile, there is a size for the large input mass such that all its energy is transferred to the projectile, which is finally fired at a higher speed.

v1 : v2 : Hits:

The first few optimal input masses and resultant output velocities are as follows:

N m1 m2 v2 v1
1 1 1
2 3+2 2 1+ 2
3 7+4 3 2+ 3
N Number of hits between the input mass and the projectile
m1 Mass fired in
m2 Mass of the projectile
v1 Initial velocity of input mass
v2 Final velocity of projectile

A good guess from a quick inspection might be that the velocity ratio v2 v1 goes up as N1 +N . However it isn't that easy I’m afraid!

So the problem is get a simple formula for the Nth velocity ratio v2 v1 .
The Nth optimal mass ratio m1 m2 is this squared as the energy 12 m v2 is conserved.


Firstly we can consider a bounce of the projectile off the end and then a hit with the input mass as a unit as they always come in pairs, we can treat that the iniial state as having its zero velocity reversed!

To cut through the straightforward dynamics here is how the velocities of the input mass and projectile are changed when the projectle bounces off the end and then collides with the input mass (i.e. v2 v2 first):

v1' = m1 m2 v1 2 m2 v2 m1 +m2

v2' = 2 m1 v1+ m1 m2 v2 m1 +m2

These are got from the conservation of momentum mv and the conservation of energy 12 m v2 .

Thus the velocities are changed by the matrix:

m1 m2 m1 +m2 -2 m2 m1 +m2 2 m1 m1 +m2 m1 m2 m1 +m2

We want the result of applying the matrix N times to v10 to result in 0 v2 i.e. v1' is zero.

In fact this determinant of this matrix is 1 (It had to be because of conservation of energy but it's good to see that it actually is!). Also it can be written as:

d-1 0 0 d × c s s c × d 0 0 d-1


d= m1 m2 4     (Yes that’s right, the fourth root)

c= m1 m2 m1 +m2

s= -2 m1 m2 m1 +m2

So the matrix can be decomposed as:

D-1 R D

Multiplying the matrix N times gives D-1 RN D .

R is a rotation matrix as c2+ s2 is 1 . So N of them are equivalent to rotating by N times the amount. To get the final v1' equal to zero we need the cosine of the rotation to be zero.

The rotation is by:

φ= cos-1 m1 m2 m1 +m2

So we need cos Nφ =0 . To do this we need (higher values of φ won't occur in the problem):

φ= π2N

m1 +m2 cosφ =m1 m2

m1 1 cosφ= m2 1+cosφ

m1 m2= 1+ cosφ 1 cosφ

Multiply top and bottom by 1+ cosφ and you’ll see that the square root of that last expression, which has to be the required result v 2v1 because of energy conservation, is:

v2 v1= 1+ cosφ sinφ

where φ= π2N

The limit as N is 4 Nπ .