Skip to main content

Rocket simulator

Project description

SRM Solver

Written by: Felipe Bogaerts de Mattos

Created on August, 2020

SRM Solver is an application that helps design Solid Rocket Motors. The main capability of this software is to perform a coupled simulation the internal and external ballistic of the motor/rocket. a BATES grain geometry.

THe software currently operated in two different modes, both as a web application and as a procedural script. The web application can be accessed through https://srmsolver.com and the procedural script can be executed following the rules contained in the next section.

How to use (procedural, as a script):

As a quick demo of what this application can do, the procedural script performs a coupled internal and external ballistics simulation.

Pre-requisites:

  1. Having Python 3.6 or later installed on your machine.

Perform the actions below in order to perform the simulation with your own motor:

  1. Change the data inside "srm_solver/motor_input.json". If there are any doubts regarding units or the format of such data, check the INPUTS section of "srm_solver/SRM-Solver.py";
  2. Navigate to the Git repository folder using the terminal/command prompt;
  3. Optional - enter your Python virtual environment;
  4. Install the dependencies by running pip install -r requirements.txt;
  5. Navigate into "srm_solver" directory;
  6. Run python SRM-Solver.py.

The outputs from the procedural script can be seen inside srm_solver/output. After the script finished being executed, the results will also be printed into the terminal/command prompt window.

How the application works

Calculations and input parameters

Note that the grain #1 is the grain closest to the bulkhead and farthest from the nozzle.

The following assertions were taken into consideration:

  • Propellant consisting of 2D BATES grain segments
  • Cylindrical combustion chamber
  • Thrust chamber composed of a simple flat end cap, conical nozzle and tubular casing
  • Isentropic flow through nozzle
  • Non-submerged nozzle
  • Structure with screws as fasteners of both end cap and nozzle

Correction factors applied:

  • Divergent CD nozzle angle
  • Two phase flow
  • Kinetic losses
  • Boundary layer losses

File structure

The "srm_solver/models" folder contains access to all of the custom classes that the software makes use. These custom classes are used either to store input data, perform calculations or to store simulation output data, as is the case with "Ballistics" and "InternalBallistics" for example.

The "srm_solver/utils" folder stores all the independent functions, performing isentropic flow calculations, unit conversions, geometric calculations, et cetera.

The "srm_solver/simulations" folder is used to store functions that simulate a certain SRM model.

Finally, the folder "srm_solver/output" is only used to store the output files from the procedural version of the application.

All of the files that comprise the web application are stored inside the folder "srm_solver_web".

Propellant

The propellant data was obtained from ProPEP3. This software has been used in several applications/projects and it is capable of delivering reliable information on the chemical characteristics of a certain propellant composition.

Supported propellants

In addition to the data fed by ProPEP3, it is necessary to gather the burn rate data as it changes with the chamber pressure. Burn rate data can only be obtained by experimentation, and for the purposes of this application, is sourced from a few reliable references on the internet.

The list of fully supported propellants is shown here:

  • KNDX (Nakka burn rate data)
  • KNSB-NAKKA (Nakka burn rate data) and KNSB (Magnus Gudnason burn rate data)
  • KNSU (Nakka burn rate data)
  • KNER (Magnus Gudnason burn rate data)

Web Application (in progress)

The SRM Solver web app is being designed in order to make the process of designing and storing SRM models easier. The web application will be able to store user inputs in an organized manner inside a database, display simulation results and provide tools for designing better and more reliable motors.

References

a015140

Correction factors.

Hans Seidel's Chamber Pressure article

Chamber Pressure equation.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

rocketsolver-0.2.0.tar.gz (60.9 kB view details)

Uploaded Source

Built Distribution

rocketsolver-0.2.0-py3-none-any.whl (58.9 kB view details)

Uploaded Python 3

File details

Details for the file rocketsolver-0.2.0.tar.gz.

File metadata

  • Download URL: rocketsolver-0.2.0.tar.gz
  • Upload date:
  • Size: 60.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.8.10

File hashes

Hashes for rocketsolver-0.2.0.tar.gz
Algorithm Hash digest
SHA256 b33615d1fca8a68e4a472bf38d00cc6791f43406177aa9608375305f6b697ca3
MD5 6681bec55eec0a87bf9cf938870a5aeb
BLAKE2b-256 2a8f230b234ee1f3e808993092a13e0798bb475c894901b796134a89cc339b6b

See more details on using hashes here.

File details

Details for the file rocketsolver-0.2.0-py3-none-any.whl.

File metadata

  • Download URL: rocketsolver-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 58.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.8.10

File hashes

Hashes for rocketsolver-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 ec5a1dbffbaea000191a45fb234bda7252b4f3368e46b79a651d4adf87a6f9de
MD5 a69a8eee31bc343bfd87ef082ec0f41e
BLAKE2b-256 4c8f15c51e172a51a3d7433e05c62dfd7494b0e6d915f75489e5fb6e3d9ee674

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page