NASA Logo - Web Link to Vertical Line

+ Text Only Site
+ Non-Flash Version
+ Contact Glenn

NASA Meatball Image

CurveBall Version 1.4b


This is a beta 1.4b version of the CurveBall program, and you are invited to participate in the beta testing. If you find errors in the program or would like to suggest improvements, please send an e-mail to

CurveBall - Student

With this software you can investigate how a big league pitcher throws a curveball by changing the values of the factors that affect the aerodynamic forces on the ball. These are the same forces that generate the lift of an aircraft wing. You can study aircraft wings with the FoilSim III software available at this site.

There are several different versions of the CurveBall software that are now available, with each succeeding version adding some additional factors that affect the flight of the ball. This page contains the elementary student version and the only force acting on the ball is the aerodynamic side force. The motion is two dimensional and you can study the trajectory of the ball at the ballpark and the flow of air around the ball in a wind tunnel at the same time. This page contains detailed instructions on the use of the sliders and buttons in the program. For experienced users, we have a web page that contains only the software. You can download the student version of the program to your computer by clicking on this yellow button:

Button to Download a Copy of the Program

With the downloaded version, you can run the program off-line and do not have to be connected to the Internet.

After you have gained some experience with the student version of CurveBall, you will want to try the expert version. The expert version includes the effects of aerodynamic drag and weight on the flight of the ball. The resulting flight path is three dimensional, so you must specify some additional parameters not found on the student version. You can also view the results of the pitch from behind home plate. There is a button on the page to download a copy of the expert version.

There is a new verion of CurveBall (Version 1.5) that was released in 2012. The new version includes fast pitch and slow softball in addition to hardball. While the aerodynamic forces are the same for hardball or softball, the different size and weight of the ball cause different flight characteristics.


This program is designed to be interactive, so you have to work with the program. There are a variety of choices which you must make regarding the analysis and the display of results by using a choice box. A choice box has a descriptive word displayed and an arrow at the right of the box. To make a choice, click on the arrow, hold down and drag to make your selection. The current values of the design variables are presented to you in boxes. By convention, a white box with black numbers is an input box and you can change the value of the number. A black box with yellow numbers is an output box and the value is computed by the program. To change the value in an input box, select the box by moving the cursor into the box and clicking the mouse, then backspace over the old number, enter a new number, then hit the Enter key on your keyboard. You must hit Enter to send the new value to the program. For most input variables you can also use a slider located next to the input box. Click on the slider bar, hold down and drag the slider bar to change values, or you can click on the arrows at either end of the slider. At any time, to return to the original default conditions, click the red Reset button at the upper right of the program.

If you see only a grey box at the top of this page, be sure that Java is enabled in your browser. If Java is enabled, and you are using the Windows XP operating system, you need to get a newer version of Java. Go to this link:, try the "Download It Now" button, and then select "Yes" when the download box from Sun pops up.

If you experience difficulties when using the sliders to change variables, simply click away from the slider and then back to it. If the arrows on the end of the sliders disappear, click in the areas where the left and right arrow images should appear, and they should reappear.


The program screen is divided into three main parts:

  1. At the top of the screen are input choices concerned with the type of pitcher, the stadium location and the weather. You can be a right hander or a lefty by clicking on the round buttons on the left. If you push the blue button marked Set Up Next Pitch you will not see where the ball will go until you push the red Throw the Pitch button. Otherwise, as you change inputs, you will see the pitch trajectory in the graphics window. On the right, you can vary the stadium location and the atmospheric conditions at that location. You select the stadium location by using the choice button. The default weather conditions are an Average Day at the selected stadium. The average is based on an NASA model of the atmosphere and how the pressure and temperature change with altitude. For the average day, we have the temperature set to 59 degrees at each stadium. A Hot Day sets the temperature to 89 degrees, and a Cold Day sets the temperature to 35 degrees. You can change all of the atmospheric conditions by using the Specify option on the choice button. You can change the temperature, the atmospheric pressure, and the relative humidity of the air; the program will calculate the air density that affects the side force. Try setting up a pitch and changing the location. What happens to the trajectory?
  2. In the middle of the screen are the graphics windows. The top graphics window shows the pitch trajectory while the lower graphics window shows the flow of air around the ball. In both cases you are looking down onto the ball or the infield. The simulation is two dimensional with the ball spinning about an axis pointing into the Earth (or Mars). The force occurs side to side; we have not modeled the ball falling towards the surface. On the upper trajectory graphics window your pitch is judged as a ball or a strike. This window also tells you how far from the center of the plate the pitch first crossed the front of the plate. On the lower graphics window, you are moving with the ball, so the air appears to move by you from left to right. There is an aerodynamic probe which can be used to study the flow around the ball.
  3. At the bottom of the screen are control inputs for the aerodynamic probe and input choices concerned with throwing a pitch. On the left, a choice box is used to select what variable is being computed by the probe. The value of the variable is shown on the gage at the right. You move the probe by using the sliders located around the gage. A black output box also shows the magnitude of the side force on the baseball. On the right are inputs to set up and throw the pitch. To set up a pitch, you must specify the speed and the spin on the ball, the point on the pitcher's mound from which you release the ball, and the angle at which you release the ball. A small arrow on the ball in the graphics window will help you determine these values. And the red stitches on the ball shows the direction and rate of spin.

    Have fun!


Guided Tours
  • Button to Display Previous Page CurveBall - Baseball Simulation: Button to Display Next Page


Button to Display Aerodynamics Index
NASA Baseball Home Page
Beginner's Guide to Aerodynamics
Beginner's Guide to Aeronautics


     First Gov Image

+ Inspector General Hotline
+ Equal Employment Opportunity Data Posted Pursuant to the No Fear Act
+ Budgets, Strategic Plans and Accountability Reports
+ Freedom of Information Act
+ The President's Management Agenda
+ NASA Privacy Statement, Disclaimer,
and Accessibility Certification


NASA Logo   
Editor: Nancy Hall
NASA Official: Nancy Hall
Last Updated: May 13 2021

+ Contact Glenn