\n'; document.write(barra); } } changePage();
Flight Prediction Equations
Here I have compiled some of the equations which I used in WARPS, to calculate the flight of a water rocket. I hope they are presented in the clearest manner as possible (and as Html allows). Since many equations are part of a iteration process I also tried to present them in the order they are in the loop and also how the loop proceeds.
If you want to see them applied in a computer program, I wrote a simple program that calculates just the thrust phase that I released together with the source code (QuickBasic) which can be downloaded here (**Kb zip file).
Conversion factors
Since the equations use the metric system, it may be difficult for those used to the English system so I have included here a list of conversion factors from Metric to English.
Meters = feet * 0.3048
Kg = Oz / 35.27
cm = inch * 2.54
cm^3 = Fl Oz * 28.35
liters = Fl Oz / 35.27
m/s = ft/s * 0.3048
m/s = mph * 0.4469
Description of terms
Here are all the parameters for the equations. It's units are in parentheses and some typical values are in brackets. If one or another is not defined here, it's defined next to the equation that uses it.
Ts = Time step (seconds)
Fa = Flight Angle (degrees)
Vv = Bottle volume (liters)
Vw = Water volume (liters)
Dv = Bottle diameter (cm)
Dn = Nozzle diameter (cm)
Dr = Rocket diameter (cm) [some times it's the same as the bottle's one]
Me = Rocket empty mass (kg)
Po = Initial pressure (psi) [This is the pressure that should be in your launcher's pressure gauge]
Pi = Instantaneous pressure at the bottle (psi)
Tk = Ambient temperature in Kelvin [300K for a 27 C day] [K = 273 + C]
Cd = Rocket drag coefficient
Ar = Rocket frontal area (m^2) [Ar = (Dr / 100) ^ 2 * 3.14151 / 4]
Av = Bottle area (cm^2) [Av = Dv ^ 2 * 3.14151 / 4]
An = Nozzle area (cm^2) [An = Dn ^ 2 * 3.14151 / 4]
TIair = Air impulse duration (sec) [For an open mouth bottle, typically is 50 milisec (0.050 sec)]
f = Fill ratio (f = Vw / Vv)
y = Gamma [for air it's 1.4]
Thrust phase equations
This must be accomplished in an iteration process. So each equation here represents an instantaneous value. They must be repeated until the volume of air in the bottle equals the initial bottle volume. Also, in the process, we calculate the rocket's acceleration, speed, altitude and some other parameters.
Time --> t = t + Ts
Air density --> rho = 1.22 * 0.9 ^ (Alt / 1000)
Drag Force (Nt) --> fd = 0.5 * rho * Cd * Ar * Sp ^ 2
dV/dT --> dvdt = (((Pi / 14.7) * Av) * 0.61) * (An / Av)
Water Eject Speed (m/s) --> ev = (dvdt / 1000) / (An / 10000)
Thrust (Nt) --> th = dvdt * ev
Air volume (liters) --> V = V + (dvdt * Ts)
Pressure (psi) --> Pi = Po * ((Vv - Vw) / V) ^ 1.4
Water volume (liters) --> wv = Vv - V
Path speed increase (m/s) --> Si = th / (Me + wv) - SIN(Fa) * 9.81 - fd / (Me + wv)
Acceleration (m/s^2) --> acc = Si / Ts
Path speed (m/s) --> Sp = Sp + (Si * Ts)
Vertical Speed (m/s) --> Sv = Sv + ((SIN(Fa) * Si) * Ts)
Horizontal Speed (m/s) --> Sh = Sh + ((COS(Fa) * Si) * Ts)
Altitude (m) --> Alt = Alt + (Sv * Ts)
Downrange (m) --> DwR = DwR + (Sh * Ts)
Air impulse equation
This equation was developed by Bruce Berggren and calculates the impulse given by the pressurized air that is left in the bottle after all the water has escaped out. It needs some some constants to be defined:
Initial Pressure (Pa) --> PPa = Po * 6895
Atmospheric pressure (Pa) --> APPa = 14.7 * 6895
Now, the equation:
Iair = Vv * 4050 / SQR(Tk * (1 - f) ^ (1.4 - 1)) * (((PPa + APPa) / APPa) * (1 - f) ^ 1.4 - 1) ^ 1.24
Path speed increase due to air impulse (m/s) --> Sia = Iair / Me
Vertical speed increase due to air impulse (m/s) --> VSia = SIN(Fa) * Sia
Horizontal speed increase due to air impulse (m/s) --> HSia = COS(Fa) * Sia
Total path burnout velocity (m/s) --> Sbop = Sp + Sia
Total vertical burnout velocity (m/s) --> Sbov = Sv + VSia
Total horizontal burnout velocity (m/s) --> Sboh = Sh + HSia
Air impulse average thrust (Nt) --> AVTHair = Iair / TIair
To get the altitude and more accurate results of the speed gained during air pulse, use the coast phase equations, but substitute th for the value of AVTHair and use a time step of about 0.0001 seconds.
Coast phase
The coast phase iteration loop is a little simpler because there are less equations. The thrust calculation equations falls out, leaving only the flight equations. First, we also define some constants:
Thrust = 0 --> th = 0
Actual speed [path, vertical and horizontal] = the respective burnout speeds
Now we do loop with the equations below. They must be repeated as long as the rocket's vertical speed is greater than 0.
Time --> t = t + Ts
Air density --> rho = 1.22 * 0.9 ^ (Alt / 1000)
Drag Force (Nt) --> fd = 0.5 * rho * Cd * Ar * Sp ^ 2
Path speed increase (m/s) --> Si = th / Me - SIN(Fa) * 9.81 - fd / Me
Acceleration (m/s^2) --> acc = Si / Ts
Path speed (m/s) --> Sp = Sp + (Si * Ts)
Vertical Speed (m/s) --> Sv = Sv + ((SIN(Fa) * Si) * Ts)
Horizontal Speed (m/s) --> Sh = Sh + ((COS(Fa) * Si) * Ts)
Altitude (m) --> Alt = Alt + (Sv * Ts)
Downrange (m) --> DwR = DwR + (Sh * Ts)
Descent phase
The descent phase equations are identical to the coast phase ones, except that the drag force must be multiplied by -1 because now it's acting upwards, instead of downwards and the flight angle (Fa) must be set to around minus 90 degrees (Fa = -90). Just to remember, th = 0. The loop must be repeated until Alt = 0 (when the rocket touches the ground).
Time --> t = t + Ts
Air density --> rho = 1.22 * 0.9 ^ (Alt / 1000)
Drag Force (Nt) --> fd = 0.5 * rho * Cd * Ar * Sp ^ 2
Path speed increase (m/s) --> Si = th / Me - SIN(Fa) * 9.81 - fd / Me
Acceleration (m/s^2) --> acc = Si / Ts
Path speed (m/s) --> Sp = Sp + (Si * Ts)
Vertical Speed (m/s) --> Sv = Sv + ((SIN(Fa) * Si) * Ts)
Horizontal Speed (m/s) --> Sh = Sh + ((COS(Fa) * Si) * Ts)
Altitude (m) --> Alt = Alt + (Sv * Ts)
Downrange (m) --> DwR = DwR + (Sh * Ts)
Parachute
If your rocket has a parachute and you want to simulate it, it's quite simple. For the simplest approach of a parachute deploying exactly at apogee, replace Ar (the rocket's are in the equations) for the parachute's area in (m^2) and Cd for the parachute's Cd (if the parachute is a 'parasheet' then it's Cd is approximately 0.75 and if it's a perfectly shaped dome, the Cd is around 1.5).
If a more complex approach like deployment after a certain amount of time, at a certain speed, at a certain altitude or after a certain amount of time from apogee, it's a little tricky.
If the deployment is to happen after the apogee, then you need to calculate the rocket's descent with the descent phase equations until the deployment conditions are met (e.g. speed, altitude, time). Then replace the rocket's area and the rocket's Cd with the parachute's one.
If the deployment is to happen before apogee, then use the coast phase equations to calculate the rocket's flight until the deployment conditions are met. Then continue with the coast phase calculations but with the parachute's area and Cd. When get to the descent phase, continue normally with the parachute's area and Cd.
Practical example
Here's a program that I wrote in QuickBasic with the intent of showing how the above calculations are fitted into a computer program. In order to work as I planned, I released it's source code. It's included in the zip file.
WRcalc.zip (**Kb zip file)
It's operation is quite simple, just type the values as the program asks them. After feeding it with the data it needs, it will calculate just the trust phase (including the air impulse). Since the other phases of the flight have quite the same equations, I decided not to include them.
Conclusion
I hope the information presented here was useful to you. I wrote this mainly to help those wanting to write a water rocket computer simulation program and didn't knew the equations needed. Most of the equations were taken from dozens of internet sources, others I have derived or created, and others were taken from other sources.