How to Model Newton's Cradle

You know about Newton’s Cradle. Either you have seen it as an office desk toy, or as a physics demo. It goes: click, click, click, click. So let me show you how it works. What better way to show this than to make a model of it. Oh, maybe you guessed it. The MythBusters preview […]

I Photo

You know about Newton's Cradle. Either you have seen it as an office desk toy, or as a physics demo. It goes: click, click, click, click.

So let me show you how it works. What better way to show this than to make a model of it. Oh, maybe you guessed it. The MythBusters preview shows them trying to make a giant sized version. That will be awesome. Here is a preview of the MythBuster's giant sized Newton's cradle:

Theoretical Cradle

Suppose I have two identical balls. One is at rest in space (far from other masses) and the other ball is move towards it at a speed of v. When the two balls collide, ball one exerts a force on ball two. Since this is really just one interaction, the force two exerts on ball one has the same magnitude. This means that the change in momentum of the two balls are opposite of each other. Maybe this diagram will help.

Untitled

For each ball, the momentum principle says:

La te xi t 1

During the collision, the forces are equal but opposite and the time are the same. This means:

La te xi t 1 1

Now, let me assume ball 1 starts at rest and ball two starts moving to the left (in the negative x-direction) with a speed v. Let me also call the two final x velocities as v1f and v2f. I can write the above as (and remember, this is just in the x-direction so I can drop the vector notation):

La te xi t 1 4

Even if I know v, I can't find the final two velocities. There are two unknowns and one equation. I can get another equation though. What if the kinetic energy before and after the collision is constant? This would be an elastic collision. In this case, I could also say:

La te xi t 1 3

So now I have two equation and two unknowns. Remember that v is a starting parameter (so I know it). Let me square both sides of the equation from the momentum expression. This will give me:

La te xi t 1 5

Now, I can set this v2 to the same v2 from the kinetic energy equation:

La te xi t 1 6

So from this, I can say that either v1f, v2f or both final velocities have to be zero. Well, both final velocities can't be zero or momentum wouldn't be conserved. If v1f is equal to zero (this is the initially stationary ball), then the other ball would have a velocity v and would have had to pass right through the first ball. That would be crazy. So this leaves the case of v2f = 0, or the ball that was initially moving ends up at rest.

This is the essences of Newton's cradle: conservation of momentum and kinetic energy. What about the strings? Well, they just keep things lined up nice for the collisions. Also, after the ball is hit by another ball, it swings up and then back down making it the moving ball.

What if you pull up two balls and let them go? Or what if you have 5 balls in a line? Suppose I have the following:

Untitled 1

For this case, if the ball number 4 starts off moving with a speed v, it will collide with ball 3. After that collision, ball 3 will move to the left with a speed v and ball 4 will stop. Then ball 3 will collide with ball 2 and so on. The result of all this is that ball 1 will end up moving to the left with a speed v.

What if I start with two balls moving to the left?

Untitled 2

Here ball 3 collides with ball 2 first. The result is that ball 2 moves to the left and ball 3 stops. But now ball 4 is still moving, so it collides with ball 3 and makes it move. In the end, there will be two balls moving to the left with a speed v.

Modeling Cradle

Here is the fun part. Creating a vpython model that agrees with what we see. But how do you make a collision? How do I include in the program something so complex? The trick: springs. Actually, this will be my new moto: Life is springs and Momentum is King.

In my model, I will conceptually think of each ball as something like this:

Untitled 3

If the two balls have their centers closer than 2R, then there is a spring force pushing them apart. If they are farther apart than 2R, there is no force. But will it work? There is one way to find out. Build it. Test it. Here is the output from that program.

Ball 2

Here is a plot of the x-component of momentum for both balls and for the total momentum.

Sdf.png

Here you can see that since the masses of the balls are the same, the target ball ends up with the same speed the moving ball had before the collision.

Now, what about more than one ball? For this model, I just need to add more balls. Here is the animation for one ball colliding with 3 stationary balls.

Ball 4

That looks pretty good. Let me jump to 3 moving balls colliding with one stationary ball to see if that works.

3ball

That works too.

How do you make it not work?

What if the masses are not the same? What if the first incoming ball has a mass that is larger than the other balls. Say it has a mass 1.5 times the mass of the others. Going back to the theoretical model, there would be this extra factor:

La te xi t 1 7

So that I won't get to the same place where the initial ball stops. Here is that animation:

Bigball

You need the masses to be the same for the demo to work.

Also, you can see above that the balls have to have elastic collisions. What if the collisions aren't elastic? How would you model that? Let me try just putting in a drag force that depends on the momentum during the short time that the balls are "colliding". One important note: even though there is a drag force, I want it to be an interaction between the two masses. I want the force 1 exerts on 2 to be the exact opposite that 2 exerts on 1. Why? This way the total momentum should still be conserved.

Lossball

The demo doesn't quite work. But what about momentum and kinetic energy? Here is a plot (going back to the case with just one stationary ball and one moving ball).

Sdf.png 1

The red line shows that the total momentum does indeed stay constant. What about the kinetic energy?

Ke.png

Here the red line represents the total kinetic energy. After the collision, this is less than it was even though the initial ball is still moving. So this seems to work.

Momentum vs. Kinetic Energy

There is a puzzle here. Why is momentum conserved, but not kinetic energy? Momentum is conserved because ball 1 and ball 2 have equal and opposite forces for the same time (the collision for ball 1 lasts just as long as the collision for ball 2). What about kinetic energy? If I think about just ball 1 during the collision, I can write:

La te xi t 1 8

And here is the key. The work, and thus the change in kinetic energy, depend on the distance over which the force is applied. Ball 1 and ball 2 have different momentums during the collision so that in the same amount of time, they will move different distances. This means the work will be different for ball 1 and ball 2 and they will have different changes in kinetic energy.