Simple Rocket Simulator

This page requires a Java-capable browser.

This Java applet simulates 800 seconds of flight of a simple one-stage rocket. The rocket is launched from the surface of Earth, straight up (i.e. along a radius line), and fires its engines until its fuel is exhausted. Air drag is taken into account via the standard Newtonian drag formula.

The default parameters implement a simple model of a SpaceCub, but you can change them as needed to model other rockets (though the frontal cross-sectional area is fixed at 3.6 m^2).


Enter the following values, then click "Compute". Time is plotted along the X-axis in seconds; altitude is plotted on the Y-axis in kilometers.
Masstotal mass of ship plus fuel (kg) Fuelmass of fuel (kg) CDcoefficient of drag (0-100%)
Exh. Ratemass expelled per sec (kg) Exh. Velocityexhaust velocity (m/s)

Source Code


This is my first Java rocket simulator. The interface is crude and needs much embellishment; in particular, I want to provide controls for varying the environmental variables, and more control over the ship.

I believe that the simulation itself is accurate as far as it goes, but it could go farther. First, I am not certain the drag formula is correct for supersonic speeds; I am probably underestimating the drag under these conditions. More importantly, one can never achieve orbit by thrusting straight up. I need to angle the rocket and allow a circularizing burn, so that a proper orbit can be attained.

Finally, the output is as crude as the input. The rocket modeler wants to know not just position, but velocity, acceleration, etc. I will need to expand my GraphPane class to handle multiple sets of data.

If you have any comments, questions, or suggestions, please write to me at
Last Updated: 1/29/00 . . . . . .