Skip to content

Cantera 3.0.0b1

Pre-release
Pre-release
Compare
Choose a tag to compare
@speth speth released this 02 Jul 20:27
· 1013 commits to main since this release

Highlights

  • Introduction of the yaml2ck script, which converts Cantera's YAML mechanism format into the legacy Chemkin format. (documentation here)
  • Major performance enhancements for reactor network calculations with large kinetic mechanisms. This comes from a new formulation for the reactor governing equations using species moles (rather than mass fractions) used together with a sparse, iterative solver in the ODE integrator that makes use of a semi-analytical Jacobian. (example here)
  • Introduce ExtensibleRate Python class that can be used to implement new reaction rate parameterizations in Python, with parameters defined in YAML input files. These rate types can be used even when the main user application is not written in Python. (documentation here, example custom_reactions.py)
  • Introduce a C++ SolutionArray class, which is now used as the backend for the Python SolutionArray class
  • Add "native" support for HDF5 as an input/output format for SolutionArray and 1D flames (Example: flame_initial_guess.py)
  • Add a new thermo model, coverage-dependent-surface for representing surfaces where the enthalpy, entropy, and heat capacity of each species may depend on its coverage and the coverage of other species in the phase. (documentation here)
  • Add an experimental Python module where Cantera returns dimensional values as quantities using the pint package. This is currently available only for thermo methods (documentation here; Examples: isentropic_units.py, rankine_units.py, and sound_speed_units.py).
  • Add support for surface chemistry to the plug flow reactor model (documentation here, examples 1D_pfr_surfchem.py and surf_pfr.py)
  • Add support for using real gas models (Redlich-Kwong and Peng Robinson) with the 1D flame solver
  • Preview release of a new Matlab toolbox, with a rewritten API that makes use of modern Matlab features and replaces the difficult-to-maintain MEX-file based backend with one based on using calllib to interact directly with the Cantera C interface. (For the adventurous, see README.md)
  • Preview release of a new C# interface (see README.md for more on what's implemented and how to contribute)

Installation