Skip to content

Latest commit

 

History

History
66 lines (44 loc) · 2.58 KB

README.md

File metadata and controls

66 lines (44 loc) · 2.58 KB

pypbomb

Black badge Isort badge Travis build badge Codecov badge Documentation badge status DOI


For when you want the detonation to stay on the inside.

Overview

This package was made to help with the design of a closed-end detonation tube, and was written as part of my PhD research in the propulsion lab at Oregon Sate University. It contains some tools that can be used to iteratively determine initial design parameters for a closed-end detonation tube.

The main items of interest are:

  • Bolt: Methods relating to bolt calculations and property lookup.
  • DDT: Methods for estimating the deflagration-to-detonation transition (DDT).
  • Flange: Methods pertaining to flange class and max pressure calculations.
  • Tube: Methods for designing and determining operational limits of a detonation tube.
  • Window: Methods for the design of viewing windows for optical access.

Full documentation can be found here.

Installation

Once cloned to your local machine, pypbomb can be installed via pip from within the project's top-level directory:

pip install .

Further instructions can be found in the full documentation if needed.

Short Example

To get an estimate for the maximum initial pressure that a tube with a given geometry can handle:

import pint
from pypbomb import Tube

ureg = pint.UnitRegistry()
quant = ureg.Quantity

initial_pressure = Tube.calculate_max_initial_pressure(
    tube_id=quant(5.76, "in"),
    tube_od=quant(6.625, "in"),
    initial_temperature=quant(70, "degF"),
    species_dict={"H2":2, "O2":1},
    mechanism="gri30.yaml",
    max_pressure=(2, "kpsi"),
    elastic_modulus=quant(200, "GPa"),
    density=quant(8, "g/cm**3"),
    poisson_ratio=0.27,
)