NASA Logo - Web Link to Vertical Line

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

NASA Meatball Image

CurveBall Expert Version 1.7e


This is a beta 1.7e version of the CurveBall Expert 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

Due to IT security concerns, many users are currently experiencing problems running NASA Glenn educational applets. The applets are slowly being updated, but it is a lengthy process. If you are familiar with Java Runtime Environments (JRE), you may want to try downloading the applet and running it on an Integrated Development Environment (IDE) such as Netbeans or Eclipse. The following are tutorials for running Java applets on either IDE:

CurveBall - Expert

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 and drag 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 expert version and it includes the effects of the weight and the aerodynamic side force and drag, on the flight of the ball. The resulting flight path is three dimensional, so you must specify several parameters to define the initial release of the pitch. This web page describes the variables required and how to set the values for the variables. The current version of the program (Version 1.7) models the pitch of a baseball, fast pitch softball, slow pitch softball, or any ball that the user spedifies. An older version of the code (Version 1.6) models only the pitch of baseball.

If you find that all of the input parameters are too confusing, we recommend that you try the student version of the program. The student version only models the aerodynamic side force acting on the ball. The motion is two dimensional and the number of input parameters is greatly reduced. 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 with the student version.

This page contains detailed instructions on the use of the sliders and buttons for the expert version of the program. For experienced users, we have a web page that contains only the software. You can download the expert 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.


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.

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. 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 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 two main parts:

  1. In the upper half of the screen are the graphics windows. On the right are two graphics windows that show the trajectory of the pitch as viewed from the side and from the top. On the left is a view from behind the plate and a graphic of a spinning ball. The spin axis of the ball is shown on the ball and you can adjust the axis using the input devices described below. By adjusting the spin axis, you can make the aerodynamic force cause the ball to loft or dive. If the spin axis is vertically oriented, the ball curves from side to side. You can see the effects of spin and gravity on the flight path in the side view at the top right. And you can see the side to side effect in the top view located beneath the side view. You can see the combined effects of aerodynamics and weight in the catcher's view at the upper left. We have drawn a strike zone in each of the view windows so that you can adjust the input parameters to throw a strike. In the blue window at the left your pitch is judged as a ball or a strike. The side and top view windows tell you how far from the center of the plate and how high above the plate the pitch first crossed the front of the plate.

  2. The input parameters for the pitch are specified in the bottom half of the screen.

    Beginning on the left, you must specify the type of ball, either a baseball, fast pitch softball, slow pitch softball, or you can input the parameters that define the ball geometry. You can be a right hander pitcher or a lefty by clicking on the round buttons located to the left of the ball selection menu. You can vary the speed of the pitch, the spin on the ball, and the orientation of the axis of the spin. As mentioned above, if the spin axis is vertical (angle equals zero), the aerodynamic force is purely side to side. If the axis is horizontal (angle equal to +/- 90 degrees), the side force lifts or dives the ball, depending on the direction of rotation (+/- value of spin). For values beween zero and ninety degrees you get both a horizontal and a vertical component of the aerodynamic force. The direction of rotation is reversed between righty and lefty. For the baseball and softball selections, the standard weight, diameter, distance to home plate, and drag coefficient of the ball are displayed below the spin inputs. For input ball geometery, you can type in values of these parameters. In the lower left, we see some colored buttons. The green "PITCH" button throws the ball. The blue "Save" button can be used to freeze the graphics of a completed pitch for comparison with a later pitch. The white "Clear" button erases all the graphics and prepares you for the next pitch. The orange "Reset" button can be used at any time to return the program to its intial conditions. When you click on the "PITCH" button, the ball is thrown and the boxes below the buttons record the time, instantaneous speed, and magnitude of the forces during the flight of the ball.

    Moving to the right lower half of the screen, we find the inputs needed to specify 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. You can vary the height and the vertical angle of release, the side distance and angle from the center of the pitcher's rubber, and the distance ahead of the rubber. Below the Release inputs are some choice buttons to select the stadium location and the weather conditions. Changing the stadium location changes the atmospheric conditions. 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 magnitude of the aerodynamic forces.

Try setting up a pitch and then change the location. What happens to the trajectory?

Have fun!


The NASA Glenn Educational Programs Office will continue to improve and update CurveBall based on user input. Changes from previous versions of the program include:

  1. On 15 May 12, version 1.7e was released. This version includes the ability to vary the distance between the release of the ball and home plate. This modification was added at the suggestion of several on-line users of version 1.7.
  2. On 9 May 12, version 1.7d was released. This version includes the softball aerodynamics and graphics, and the ability to input the ball weight and diameter. Versions 1.7a through 1.7c were development versions of the program and not released to the public. The softball data used in the CurveBall computer program was obtained by Peter Sherman, a high school student from Seattle Washington, during a shadowing session at NASA Glenn in 2012.
  3. On 29 Oct 07, version 1.6 was released. This version included the option to specify the weather conditions and made some slight changes in the graphics.


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


+ 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