Skip to main content

Rocket Nozzle Interactive Simulator


With this simulator you can investigate how a rocket nozzle produces thrust by changing the values of different factors that affect thrust. By changing the shape of the nozzle, the types of propellants, and the flow conditions upstream and downstream of the nozzle throat, you can control both the amount of gas that passes through the nozzle and the exit velocity.

NOTE: 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.

Please note: the simulation below is best viewed on a desktop computer. It may take a few minutes for the simulation to load.

Screen Layout

The program screen is divided into four main parts.

  1. On the left of the screen is a graphics window in which you can display a drawing of the nozzle you are designing. You can control the appearance of the graphics by using your mouse and the slider located in the graphics window. Details are given in Graphics.
  2. On the top right of the screen are choice buttons to select English or Metric units for input and output and to select the particular input panel. Computed Thrust, Mass Flow, Thrust Mass Flow , and Specific Impulse are displayed here. The red “Reset” button is used to return the program to its default conditions.
  3. On the middle right of the screen are the interactive inputs to the program. Inputs to the program can be made using sliders or input boxes. To change the value of an input variable using a slider, simply click on the slider button, hold down and drag to a new position. You may also click on the arrows at either end of the slider. Details of the Input Variables are given below.
  4. At the bottom right of the screen is the output from the program displayed in output boxes. All of the values of the input variables are also displayed on the output panel. Details of the Output Variables are given below.


On the left is a schematic drawing of the nozzle you are designing. Flow is from top to bottom for the rocket nozzle. The combustion chamber (or plenum) conditions are noted by the “Plenum-0,” and the nozzle throat is at “Throat-th.” The “Exit-ex” and “Free Stream-fs” conditions are also noted. Free stream conditions exist far away from the nozzle.

You can move the schematic in the graphics window by clicking on the figure, holding the left mouse button down and drag the schematic to a new location. You can change the size of the schematic by using the Zoom slider at the left of the graphics window. Click on the bar and move it along the line. If you lose the schematic, click on the word “Find” to restore the schematic to its default location.

You can change the length of the nozzle in the schematic by using the “Length” slider on the “Geometry” input panel. In real nozzles, the length to throat area ratio is important for keeping the flow attached. In this simulator, viscous effects are ignored, and the length is used only for “nice” graphics–it does not affect the calculation of thrust.

Depending on the input conditions, the exit pressure can be greater, equal, or less than the free stream pressure. If the exit pressure is greater than free stream, the nozzle is said to be Under Expanded and the condition is noted on the schematic. If the exit pressure is less than free stream, the nozzle is Over Expanded. If the exit pressure is much less than free stream, a Normal Shock may appear in the nozzle. This is a very undesirable design condition for the nozzle because there are large entropy losses associated with the normal shock. Further reduction in the nozzle pressure ratio causes the shock to move upstream. In real nozzles, the shock interacts with the wall boundary layer causes separation, and highly non-uniform flow. This simple simulator cannot calculate the details of these flow conditions, so the performance variables are set to NA, not available.

Input Variables

The input variables are located at the middle right on three panels; Geometry, Flow, and Propellant. You select the type of input panel by using the choice button above the panel. By convention, input boxes have a white background and black numerals, output boxes have a black background and yellow numerals. You can change the value of input boxes by clicking on the box, backspace over the old value, type in the new value, then hit the “Enter” button on your keyboard. You must hit Enter to send the new value to the program.

Selecting a propellant sets a value of the molecular weight of the exhaust, the ratio of specific heats gamma and the combustion temperature . The change in molecular weight changes the gas constant used in the calculation of the mass flow through the nozzle. You can select to use a typical value for the molecular weight of the products of combustion, or you can input your own value by using the choice button located next to the label. The value of the ratio of specific heats depends on the temperature of the flow, and you can use a typical curve for the variation of gamma, or input your own value by using the choice button next to the “Gamma” label. Finally, the combustion of the propellants generates a typical combustion temperature. You can use the typical value, or input your own value on the Propellant input panel by using the choice button.

Output Variables

Output variables are located at the top and bottom on the right. At the top of the output group are the weight flow , the computed thrust of the rocket nozzle, and the specific impulse Isp. At the bottom, we show the selected fuel and oxidizer and the oxidizer/fuel ratio. The input combustion chamber temperatureTtoratio of specific heatsGamma, and the molecular weight of the exhaust products are displayed on the second row. Input combustion chamber total pressurePto, and free stream pressure, Pfs, are displayed on the third row of outputs. The nozzle exit pressure, Pex is computed from the total pressure and the expansion ratio, Aex/Ath using isentropic conditions from the throat to the exit. The input throat area, Ath, and exit area, Aex, are displayed on the fourth row with the nozzle pressure ratio, NPR, which is the ratio of the combustion chamber pressure to the free stream. The throat Mach number Mth is set to 1.0 for the choked nozzle. The computed value of exit velocityUex, and exit Mach number Mex are displayed on the fifth row.

The analysis used to compute all of the output variables is based on isentropic flow through the nozzle. When a non-isentropic shock wave appears in the nozzle, the analysis is modified; isentropic flow is assumed up to the shock, then the normal shock relations are imposed, then a subsonic isentropic analysis from downstream of the shock to the exit is performed.

Provide feedback