Sometimes crazy things happen—so crazy they don’t even seem real. Last week, Phillies right fielder Bryce Harper was warming up before a game with some practice bats. He hit a nice line drive, and then *it collided with another ball in midair*. That gives us some fun physics to unpack. Let's see how unlikely this event is.

What Data Can We Get From the Video?

There are two balls involved in this crash. Harper’s probably started its flight at home plate. I'm going to call this ball A. The second one was thrown toward home plate by a player somewhere in the outfield. Let's call this ball B. I need to get a value for where the balls start, what their velocities are, and where they collide. The Major League Baseball clip that I linked to before is not the best video, in that it doesn't show the complete trajectories of either ball, so we may just have to approximate some stuff.

One thing that we can see is the impact between the two balls, which happens above second base. Afterwards, it appears that ball B falls straight down and lands near the base. But how high above it is the point of impact? By watching the video, it's possible to get an approximate free fall time for ball B. (I'm going with 1.3 seconds, based on my measurements.) If I know the time it takes to fall, and that the vertical acceleration is -9.8 meters per second squared (because this is happening on Earth), then I can find the falling distance using the following kinematic equation:

With my estimate for the falling time, I get a collision height of 8.3 meters. If the baseball field is in the x-z plane and the position above the ground is the y direction, that means I now have all three coordinates for the collision point: x, y, and z. I can use this point to find the launch velocity of ball A. I know that it starts moving at home plate, which is 127 feet from second base. So I'll put my origin at home and then let the x axis be along a line between home and second.

Now I just need the initial velocity vector for ball A such that it passes through the collision point. There are several ways to find this, but the simplest is to just use Python to plot the trajectory of the ball and adjust the launch angle until it "hits" the collision. I'm going to use a starting ball velocity (the exit speed) of 100 miles per hour. (That’s 44.7 meters per second.)

Wait! What about ball B, the one coming from the outfield? For this one, I am going to start it on the x axis 80 meters (262 feet) away from home plate. That means it's 135 feet from second base on the same x axis. For this ball, I will try giving it an initial speed of around 50 mph (27 m/s) at something like a 45-degree angle. Those parameters are more like those for a ball that’s being thrown than one that’s been hit by a bat. Now I just adjust the speed and angle until this ball also winds up at the collision location.

OK, here is a trajectory (x vs. y) for both balls passing through the collision point. Here’s the Python code, too.

Note: This is just a trajectory created from a theoretical model using my assumed initial conditions. From the plot, you can see that both balls pass through the collision point—but they don’t do it at the same time. Ball A gets there after about 0.908 seconds and ball B gets there at 2.48 seconds. So in order for both to arrive at the same time, ball A needs to start 1.57 seconds after ball B.

Now for a more realistic simulation: I'm going to run a similar calculation, but in three dimensions. This means that ball B will start slightly off the x axis (but the same distance away from the collision point). Here’s a diagram showing the three important locations: the starting positions for ball A and B, and the collision point.

Yes, the z axis points down in this picture—it has to be that way so that we have a right-handed coordinate system. (Just trust me here.) If I keep ball B’s distance from where it starts moving to the collision point the same as it was before, I can use the same magnitude of the launch velocity with the same angle above the horizontal. So here’s my 3D version of the crash. And yes, you can have the code for this.

It's not just physics, it's art.

But What If You Tried to Hit Two Balls on Purpose?

Right off the bat (pun intended), you can see that in this case it would be impossible to deliberately throw a ball from the outfield that would hit ball A. The only way for these two balls to smash into each other would be for ball B to start its motion *before* ball A flies off the bat. That means that the outfielder would either have to be able to predict when and where that ball is going to go (which is pretty much impossible) or use a time machine (even harder).

But what about the batter aiming for the ball that’s coming from the outfield? It seems super difficult, but not impossible. So how much wiggle room does the batter have with his initial velocity so that he can still hit ball B?

For this case, I'm going to assume that the exit speed is still 100 mph and the starting location is unchanged. I'm just going to change the launch angles. Yes, there are two launch angles for the ball's velocity. First, there is the angle above the horizontal. I will call this the angle θ. Second, there is the side-to-side angle (a projection in the x-z plane). I will call this the angle φ. How much can these angles change such that the balls still collide?

Let's take a closer look at the two balls. Here is a diagram showing the collision for some particular set of initial conditions:

In order for them to crash into each other, they need to come within a center-to-center distance of twice the radius of the ball. A standard baseball has a diameter of 7.3 to 7.5 centimeters, so that's how close the balls need to get. But it’s difficult to find the variation in initial angles that will still make the balls collide, because both are moving *and* accelerating. For a situation like this, let's take the easy way out—a Monte Carlo calculation. This is named after the Monte Carlo casino in Monaco, and the idea is to generate many random initial conditions and see what results you get.

For this case, I will start with my same initial angle of θ = 17.7 degrees (just like in the model above where the balls hit) and then vary it by 0.1 degrees. I'll do the same thing for the left-to-right angle, φ—changing it by 0.1 degrees. Then I can plot all the pairs of angles that produce a ball that comes within 2 radii of the target as blue points and those that miss as red points. Here's what I get using 5,000 random shots. The code for this plot is here.

From this plot, you can see that all of the shots that hit the target had a θ value between 17.6 and 17.8 degrees and a φ angle between -0.1 and 0.1 degrees. So if you are the batter, your aim must be true. If you are off by more than a tenth of a degree, you will miss.

How big is a tenth of a degree? Here is a quick experiment to try. If you hold your thumb out at arm's length, your thumb will have an angular size of about 1.5 to 2 degrees. (The size of your thumb may vary). Now imagine drawing a vertical line on your thumbnail that’s only 2 millimeters wide. Instead of aiming for a space in your field of view that’s the width of your outstretched thumb, now you’re aiming for one that’s just the width of that line. That’s a tenth of a degree. It’s small and would be very difficult to hit. Heck, I would have trouble hitting a baseball at all, much less with that kind of accuracy.

That means that a ball-to-ball collision like this should be super rare—especially if you take into consideration that, unlike the perfectly timed balls in my model, both balls could start their trajectories at any time. You also need to consider the chances of having a video camera pointed in that direction to capture the midair collision. With all that, I wouldn't wait around for another one of these televised sports moments to happen again.