Baseball Flight Simulations


W.J. Llope
Wayne State University


It can be argued that no part of baseball excites the fans like the majesty of a monster home run. As long as baseball has been our "national pastime," the game still captivates us at all levels of play and the big flies continue to impress us all. But despite the fact that the game has been played for over a century, certain aspects continue to impress and intrigue experimental physicists as well, who have made impressive and very recent experimental efforts to quantify the physics that are involved.
Indeed, as old as the game itself is, some of of most detailed and quantitative analyses of the physics of the flight of a batted baseball have been published only in the last few years.

I have written a Graphical User Interface (GUI) that attempts to include all of this very modern physics information into a user-friendly interface that allows the user to play with the physics that are assumed for the simulation of home runs. This code predicts the trajectory, range, and other physically observable quantities for the dingers that would result from the given set of user assumptions.

The code is meant to be user-friendly for all users - physicists and/or casual baseball fans alike. There is a lot of physics involved here but the code "under the hood" of the GUI tries to make all of this transparent to any user. The user simply clicks around to configure the available parameter space, and then (s)he can "swing away" and see the results immediately.

This GUI provides buttons, checkboxes, and sliders that allow one to vary the physical assumptions in a controlled way. Clicking the "Swing!" button immediately calculates the trajectory of a baseball launched with the user's brew of assumptions. The code provides a full trajectory calculation in two dimensions and provides the maximum height, total range, and other information. The code is very fast. A typical trajectory simulation takes a small fraction of a second of real-time on a modern computer. Thus the interface allows one to explore the parameter space very quickly.

The parameter space is vast!

So, the user is allowed to control the following aspects of the parameter space quickly and easily.

• Launch speed (mph), angle (degrees), and initial height (inches) at home plate.
• Ball mass and diameter, within the limits defined by MLB rules.
• Aerodynamic Drag, via the choice of a user-definable constant drag coefficient or one of four velocity-dependent drag coefficient profiles that have been discussed in the recent literature. A particularly interesting aspect of this choice relates to the so-called "Drag Crisis" - for which the aerodynamic drag for specific initial launch conditions can be reduced dramatically, leading to dramatically longer fly balls.
• Altitude, from sea level to Colorado, which affects the kinematic viscosity and density of the air, as well as the constant assumed for the acceleration due to gravity.
• Wind, which in this purely two-dimensional simulation is either blowing directly "in" or "out" at a user-controlled speed in mph.
Magnus lift, based on a user-controlled spin rate. This thus includes backspin, which leads to a sort of lift, as well as topspin.

For any particular set of user-controlled parameters, the trajectory is calculated and shown in a graphical window within the GUI. One can also click on other buttons in the GUI to display the time and velocity dependence of the key physics variables that result to the calculated trajectory, such as the velocity and acceleration components versus time, as well as the drag coefficient versus the so-called Reynolds number, ball velocity, and flight time. As the user's choices of the parameters included in the simulation is changed, and the user "swings", these physics plots automatically update as well to provide all of the available physical information for each set of user parameters.

The simulation is presently configured for the simulation of batted balls, although precisely the same physics equations apply for the simulation of pitched baseballs. Only the allowable limits of the various variables in the parameter space are different in these two cases. The code will be trivially extended to allow the simulation of pitched baseballs in a future release. Of course, as the present (pre-release) version of this code lives only in two dimensions, it is not possible at present to simulate "sliders" and "slurves" and so on (which are three dimensional pitches). However,  extending the code to three dimensions (and including cross-winds etc) is straightforward.

View a Quicktime Video of a pre-release version
of the GUI in action by clicking HERE.

the video requires quicktime: free download here...
make your browser window as large as possible, or
control-click to download the video and view locally at half-size.
..

Please feel free to contact me via e-mail with questions or comments!
wjllope at gmail dot com

Hey batter batter, SWING!