California Institute of Technology

Explosion Dynamics Laboratory

Shock and Detonation Toolbox - 2018 Version

About the SD Toolbox The Shock & Detonation Toolbox is an open-source software library that enables the solution of standard problems for gas-phase explosions using realistic thermochemistry and detailed chemical kinetics. The SD Toolbox uses the Cantera software package and is implemented as routines that can be called from either MATLAB or Python. A set of demonstration programs and a library of contemporary reaction mechanisms and thermodynamic data are provided.

The SD Toolbox includes numerical routines for the computation of:
  • CJ detonation speed and post-detonation state
  • Postshock gas state for frozen composition
  • Postshock gas state for equilibrium composition
  • Frozen and equilibrium Hugoniot curves
  • Oblique shock waves, shock-expansion solutions
  • Shock tube and shock tunnel performance
  • Constant-volume explosion structure
  • ZND detonation structure
  • Effective activation energies and chemical time scales from detailed reaction mechanisms
  • Creating and modifying thermodynamic databases.

All Files (ZIP) (updated 3-31-2019)
Installation instructions (PDF)

Chemical Reactions and Thermodynamics
  • (PDF) Quick reference to SDT functions and demonstation programs (updated 12-8-2018)
  • SDT tutorial given at Cantera Workshop, March 24, 2019. Available as a Jupyter notebook (zip) or a (PDF).
2018 Release Notes This is the third update of the SDT since 2007 and is now compatible with Cantera 2.3 and 2.4, Python 3.5 and 3.6 and Matlab R2017b and R2018a. Although the toolbox interfaces are mostly compatible with earlier versions, the underlying routines have been restructured and the demonstration programs rewritten. Plotting and error control are now more flexible and additional demonstration programs have been added. Both Matlab and Python versions of all demonstration programs are now available, in particular shock and detonation structure programs are available as Python scripts. The Python and Matlab code structures have been made as similar as possible. The chemical reaction mechanisms and thermodynamic databases have been updated to reference contemporary reaction data sets. Joel Lawson wrote new and re-wrote old routines and demonstration programs, developing much of the new Python code and checking the consistency of Matlab and Python scripts.

The use of the Toolbox programs are are subject to the following license agreement. If you publish results using the Toolbox, please acknowledge with a citation to this webpage and/or the appropriate report. Thank you.

Copyright © 1993-2019 by California Institute of Technology, Joseph E. Shepherd