Ever since I made my STTS system and started testing my rockets on it I have wanted a way to calculate impulse from it, specifically in newton seconds
I quickly found nakka’s article on the subject, and after alot of work I converted the formulas found there to SI units
Here is the resulting software:
Made using the windows forms UI framework, completely in C#
It has a great number of functions, such as:
- Impulse calculation in Newton Seconds from a list of thrust measurements and a time increment between readings
- Specific impulse calculation in Ns/kg and sec. from impulse and propellant weight (if entered)
- Average thrust in Ns and peak thrust in kg
- Automagic motor classification up to class T
- Supreme Error Correction (It wont crash with non numbers or empty lines anywhere)
- Automatic Graphing of thrust profile with export function (saves as .png)
- It also, if 2 values are present on the same line with a space separating them, ignores the first one, this is for easier use with raw STTS Data
As with everything I do on this site, I vow to make it open source and freely usable
And thus, have uploaded all the code and the program to GitHub together with compiled binaries for easy downloadingSource Code Here, and Binaries Here
As of 02/07/21, I’ve updated the program to version 1.1, which now has a option to export the thrustcurve to the RASP format (which can be imported into OpenRocket, for example)
(it is still experimental, but the previous version is not supported anymore)
Source Code Here, and Binaries Here
The Maths
I would like to explain the maths behind this program, since they were tricky to figure out and it might help someone
Here is the formula used for total impulse:
is total impulse, is force, is Delta Time and the formula is the integral () of Force over Time
The calculations performed in the program are as follows:
First it sums all values entered in “Readings” (which are in kg)
Then in multiplies this by the gravitational constant g (9.80665 m/s) to get Newtons, which it then multiplies by the time interval in seconds (20 milliseconds in my case, so times 0.02 seconds) to get Newton Seconds
The average is found by dividing impulse over total burn time, which in turn is calculated by the amount of readings, times the time interval
The specific impulse is found by taking impulse and multiplying it by the total propellant burnt, which gives it in Newton Seconds Per Kilogram, to convert this to the more conventional Seconds, it multiplies that by the gravitational constant as defined earlier
It prints all this to the appropriate boxes and done!
Bonus Program: Impulse Calculator 1983
As a exercise in programming and for fun I made a version of the program that runs in a console environment
The calculations performed are the same as in V2000, but there is no graphing or changing data after calculation without restarting
It has also been made open source, the source code can be found here, and the releases can be found here
If you have a Windows PC or know how to use Wine, I suggest version 2000
But if you really want to have a version that runs natively on linux, or only use console for some reason, this can be compiled for linux and ran on pretty much any hardware
2 thoughts on “Impulse Calculator 2000”