The SpeedCHEM project

SpeedCHEM is a fast and numerically efficient Fortran library for incorporating detailed chemical kinetics in combustion calculations. Its modular structure makes it suitable to build stand-alone programs, or linked to external codes, for example for calculating detailed combustion kinetics in multi-dimensional simulations. The library accepts reaction mechanisms and gas-phase thermodynamic properties in the old binary CHEMKIN format but also in the standard and widely used ASCII mechanism and JANAF thermodynamic table format.

This library has been developed with the aim of speeding up combustion kinetics calculations in multi-dimensional internal combustion engine simulations, and achieved almost linear scaling of the computational requirements with the reaction mechanism size through state-of-the-art numerics, including:

  • an internal sparse algebra library, that is used to handle the mass and energy conservation equations and the kinetic rate equations in sparse matrix form;
  • analytical formulation of all the functions related to the law of mass action and reaction kinetics and their derivatives;
  • optimal-degree interpolation of computationally expensive temperature-dependent functions;
  • direct and preconditioned Krylov-subspace solution of the linear system associated to the ODE system's Jacobian matrix;
  • coupling with a variety of stiff ODE solvers, including direct and Krylov-subspace solver options

The library currently handles perfect reacting gas-phase mixtures, and its built-in functions can also be used for a range of mixture thermodynamic calculations. The idea behind the code is to research for appropriate numerical methods that make realistical multidimensional combustion calculations with detailed reaction mechanisms practically possible, and to make it available to the combustion research community.

The following pages contain SpeedCHEM information:

  • License - SpeedCHEM is released under the GNU GPL 3.0 license. Please carefully read the terms and conditions
  • Documentation - a page containing useful information for SpeedCHEM-related papers and examples.
  • Installation - a tutorial to compile the library using free software
  • Download page - download the latest SpeedCHEM version (registration required) [updated 08/10/2013, v1.1]