Cantera

Latest version: v3.0.0

Safety actively analyzes 623860 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 1 of 3

3.0.0

The Cantera development team is pleased to announce the availability of Cantera 3.0.0. There have been over [1400 commits](https://github.com/Cantera/cantera/wiki/Cantera-3.0.0-Changelog) to Cantera since the last version, 2.6.0, which was released in May 2022. We have closed or merged [192 pull requests](https://github.com/Cantera/cantera/pulls?q=is%3Apr+merged%3A2022-05-01..2023-08-22+is%3Aclosed) and closed [111 issues](https://github.com/Cantera/cantera/issues?q=is%3Aissue+closed%3A2022-05-01..2023-08-22+is%3Aclosed). Instructions for installing Cantera 3.0 are available on the [Cantera website](https://cantera.org/install/index.html).

Highlights

- 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. ([`preconditioned_integration.py`](https://cantera.org/examples/python/reactors/preconditioned_integration.py.html), [#1010](https://github.com/Cantera/cantera/pull/1010), [#1344](https://github.com/Cantera/cantera/pull/1344), [#1363](https://github.com/Cantera/cantera/pull/1363), [#1377](https://github.com/Cantera/cantera/pull/1377), [#1411](https://github.com/Cantera/cantera/pull/1411))
- 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. ([class `ExtensibleRate`](https://cantera.org/documentation/docs-3.0/sphinx/html/cython/kinetics.html#extensiblerate), [`custom_reactions.py`](https://cantera.org/examples/python/kinetics/custom_reactions.py.html), [#1382](https://github.com/Cantera/cantera/pull/1382), [#1417](https://github.com/Cantera/cantera/pull/1417), [#1456](https://github.com/Cantera/cantera/pull/1456), [#1478](https://github.com/Cantera/cantera/pull/1478), [#1494](https://github.com/Cantera/cantera/pull/1494), [#1499](https://github.com/Cantera/cantera/pull/1499))
- Introduce a C++ `SolutionArray` class, which is now used as the backend for the Python `SolutionArray` class ([E137](https://github.com/Cantera/enhancements/issues/137), [#1385](https://github.com/Cantera/cantera/pull/1385), [#1426](https://github.com/Cantera/cantera/pull/1426), [#1458](https://github.com/Cantera/cantera/pull/1458), [#1462](https://github.com/Cantera/cantera/pull/1462), [#1464](https://github.com/Cantera/cantera/pull/1464), [#1508](https://github.com/Cantera/cantera/pull/1508), [#1520](https://github.com/Cantera/cantera/pull/1520), [#1547](https://github.com/Cantera/cantera/pull/1547), [#1585](https://github.com/Cantera/cantera/pull/1585))
- Add "native" support for HDF5 as an input/output format for `SolutionArray` and 1D flames ([E166](https://github.com/Cantera/enhancements/issues/166), [`flame_initial_guess.py`](https://cantera.org/examples/python/onedim/flame_initial_guess.py.html))
- 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. ([class `CoverageDependentSurfPhase`](https://cantera.org/documentation/docs-3.0/doxygen/html/db/d25/classCantera_1_1CoverageDependentSurfPhase.html#details), [E59](https://github.com/Cantera/enhancements/issues/59), [#1135](https://github.com/Cantera/cantera/pull/1135), [#1471](https://github.com/Cantera/cantera/pull/1471), [#1529](https://github.com/Cantera/cantera/pull/1529), [#1583](https://github.com/Cantera/cantera/pull/1583))
- Add support for surface chemistry to the plug flow reactor model ([classs `FlowReactor`](https://cantera.org/documentation/docs-3.0/sphinx/html/cython/zerodim.html#flowreactor), [`1D_pfr_surfchem.py`](https://cantera.org/examples/python/surface_chemistry/1D_pfr_surfchem.py.html), [`surf_pfr.py`](https://cantera.org/examples/python/reactors/surf_pfr.py.html), [#1490](https://github.com/Cantera/cantera/pull/1490))
- Add support for using real gas models (Redlich-Kwong and Peng-Robinson) with the 1D flame solver ([E109](https://github.com/Cantera/enhancements/issues/109), [#1079](https://github.com/Cantera/cantera/pull/1079))
- Introduction of the `yaml2ck` script, which converts Cantera's YAML mechanism format into the legacy Chemkin format. ([`yaml2ck.py`](https://cantera.org/documentation/docs-3.0/sphinx/html/cython/yaml_conversion.html), [E#52](https://github.com/Cantera/enhancements/issues/52), [#1286](https://github.com/Cantera/cantera/pull/1286), [#1365](https://github.com/Cantera/cantera/pull/1365), [#1420](https://github.com/Cantera/cantera/pull/1420))
- Add an experimental Python module where Cantera returns dimensional values as quantities using the `pint` package. This is currently available only for thermo methods ([module `cantera.with_units`](https://cantera.org/documentation/docs-3.0/sphinx/html/cython/units.html), [`isentropic_units.py`](https://cantera.org/examples/python/thermo/isentropic_units.py.html), [`rankine_units.py`](https://cantera.org/examples/python/thermo/rankine_units.py.html), [`sound_speed_units.py`](https://cantera.org/examples/python/thermo/sound_speed_units.py.html), [E#3](https://github.com/Cantera/enhancements/issues/3), [#991](https://github.com/Cantera/cantera/pull/991), [#1569](https://github.com/Cantera/cantera/pull/1569))
- 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`](https://github.com/Cantera/cantera/blob/main/interfaces/matlab_experimental/readme.md), [E#32](https://github.com/Cantera/enhancements/issues/32), [#1182](https://github.com/Cantera/cantera/pull/1182), [#1496](https://github.com/Cantera/cantera/pull/1496), [#1498](https://github.com/Cantera/cantera/pull/1498))
- Preview release of a new C interface. See [`README.md`](https://github.com/Cantera/cantera/blob/main/interfaces/dotnet/README.md) for more on what's implemented and how to contribute ([#1331](https://github.com/Cantera/cantera/pull/1331), [#1401](https://github.com/Cantera/cantera/pull/1401))

<details>
<summary><h2>Additional new features</strong></h2> (click here to expand)</summary>

- Add support for polynomial dependency of activation energy on surface species coverages ([documentation](https://cantera.org/documentation/docs-3.0/sphinx/html/yaml/reactions.html#interface-arrhenius), [1495](https://github.com/Cantera/cantera/pull/1495))
- Add speed of sound property to `ThermoPhase` objects ([`sound_speed.py`](https://cantera.org/examples/python/thermo/sound_speed.py.html), [#1491](https://github.com/Cantera/cantera/pull/1491))
- Implemented isothermal compressibility and thermal expansion coefficient calculations for Redlich-Kwong and Peng-Robinson equations of state ([E122](https://github.com/Cantera/enhancements/issues/122), [#1421](https://github.com/Cantera/cantera/pull/1421))
- Add `interfaceCurrent` (C++) and `interface_current` methods to `Kinetics` objects ([1398](https://github.com/Cantera/cantera/pull/1398))
- Add molecular weight attribute to `Species` objects ([1266](https://github.com/Cantera/cantera/pull/1266))
- Add `set_equivalence_ratio` and `set_mixture_fraction` methods to Python `Quantity` objects ([1517](https://github.com/Cantera/cantera/pull/1517))
- Add array size methods to Python `SolutionArray` class ([1284](https://github.com/Cantera/cantera/pull/1284))
- Add `Solution` class to `clib` ([1448](https://github.com/Cantera/cantera/pull/1448), [#1600](https://github.com/Cantera/cantera/pull/1600))
- Introduce factory for creating 1D domains (`newDomain` in C++, `domain_new` in `clib`) ([1445](https://github.com/Cantera/cantera/pull/1445))
- Introduce factory for creating functor objects (`newFunc1` in C++; `func_new_basic`, `func_new_advanced`, `func_new_compound`, and `func_new_modified` in `clib`; and `Func1.cxx_functor` in Python) ([documentation](https://cantera.org/documentation/docs-3.0/doxygen/html/dc/d4c/group__func1.html), [#1513](https://github.com/Cantera/cantera/pull/1513), [#1521](https://github.com/Cantera/cantera/pull/1521))
- Provide a more complete interface to the C++ `Units` class in Python ([1285](https://github.com/Cantera/cantera/pull/1285))
- Add a sample program demonstrating the use of the Cantera C interface, `clib` ([1454](https://github.com/Cantera/cantera/pull/1454))
- Add an example of modelling a porous media burner using the `ExtensibleReactor` class ([`PorousMediaBurner.py`](https://cantera.org/examples/python/reactors/PorousMediaBurner.py.html), [#1443](https://github.com/Cantera/cantera/pull/1443))
- Add an example demonstrating saving and loading of 1D flame simulations and restarting with different initial guesses ([`flame_initial_guess.py`](https://cantera.org/examples/python/onedim/flame_initial_guess.py.html), [#1293](https://github.com/Cantera/cantera/pull/1293))
- The test suite now includes a comprehensive set of thermodynamic consistency tests for all phase models ([E114](https://github.com/Cantera/enhancements/issues/114), [#1299](https://github.com/Cantera/cantera/pull/1299), [#1501](https://github.com/Cantera/cantera/pull/1501))
- Consolidate literature references in the C++ documentation into a [bibliography](https://cantera.org/documentation/docs-3.0/doxygen/html/d0/de3/citelist.html) ([#1550](https://github.com/Cantera/cantera/pull/1550), [#1575](https://github.com/Cantera/cantera/pull/1575))
- Enable linking to the Cantera shared library on Windows ([E140](https://github.com/Cantera/enhancements/issues/140), [#1429](https://github.com/Cantera/cantera/pull/1429))
- Split up compilation of the Python module to allow parallel builds and faster incremental builds ([1334](https://github.com/Cantera/cantera/pull/1334), [#1484](https://github.com/Cantera/cantera/pull/1484))
- Automatically detect and use optimized BLAS/LAPACK libraries when compiling ([E144](https://github.com/Cantera/enhancements/issues/144), [#1316](https://github.com/Cantera/cantera/pull/1316))
- Add new `core.h` header file to simplify required includes for high-level Cantera usage ([`demo.cpp`](https://cantera.org/examples/cxx/demo.html), [#1238](https://github.com/Cantera/cantera/pull/1238))
- Added support for Python 3.11 and dropped support for Python 3.7 ([1326](https://github.com/Cantera/cantera/pull/1326), [#1406](https://github.com/Cantera/cantera/pull/1406), [#1467](https://github.com/Cantera/cantera/pull/1467))
- Added support for SUNDIALS versions up to 6.6.0 and dropped support for SUNDIALS 2.x ([1341](https://github.com/Cantera/cantera/pull/1341), [#1570](https://github.com/Cantera/cantera/pull/1570))
- Add support for building MATLAB toolbox on Apple Silicon ([1524](https://github.com/Cantera/cantera/pull/1524))
- Added SCons option to set `AR` (for example, to use `llvm-ar` instead of `ar`) ([1424](https://github.com/Cantera/cantera/pull/1424))

</details><details><summary><h2>Changes to existing capabilities</strong></h2> (click here to expand)</summary>

- `BulkKinetics` now handles kinetics for any bulk phase, given the appropriate reaction rate parameterizations. As a result, `GasKinetics` is deprecated in favor of `BulkKinetics` ([1483](https://github.com/Cantera/cantera/pull/1483))
- Rename C++ phase setter mnemonics to use `D` for density instead of `R` for rho, for example `setState_TR` is deprecated in favor of `setState_TD` ([1433](https://github.com/Cantera/cantera/pull/1433))
- Introduce properties for certain reactor features in Python and deprecate the old getter/setter methods. `ReactorNet.initial_time` replaces `ReactorNet.set_initial_time()`, `Wall.velocity` replaces `Wall.set_velocity()`, `Wall.heat_flux` replaces `Wall.set_heat_flux()`, `Wall.expansion_rate` replaces `wall.vdot`, `Wall.heat_rate` replaces `wall.qdot()`, `Valve.time_function` replaces `Valve.set_time_function()`, `MassFlowController.pressure_function` replaces `MassFlowController.set_pressure_function()` and `PressureController.primary` replaces `PressureController.set_master()` ([E160](https://github.com/Cantera/enhancements/issues/160), [#1515](https://github.com/Cantera/cantera/pull/1515))
- Improve ability to find non-extinct diffusion flames when using the "auto" solver mode ([E155](https://github.com/Cantera/enhancements/issues/155), [#1463](https://github.com/Cantera/cantera/pull/1463))
- Guard against combining Python `Quantity` objects at constant enthalpy and pressure if their pressures aren't equal ([1517](https://github.com/Cantera/cantera/pull/1517))
- Allow transport geometry flags in Chemkin input files that are formatted as floating point values ([1396](https://github.com/Cantera/cantera/pull/1396))
- Disable irrelevant warnings for extinct diffusion flames ([1336](https://github.com/Cantera/cantera/pull/1336))
- Moved Python test suite and examples out of the Python module; they are no longer installed as part of the Cantera Python package. ([E51](https://github.com/Cantera/enhancements/issues/51), [#1352](https://github.com/Cantera/cantera/pull/1352), [#1354](https://github.com/Cantera/cantera/pull/1354))
- Drop support for generating `Makefile`s for samples ([1380](https://github.com/Cantera/cantera/pull/1380))
- Drop support for compiling in Cygwin ([E134](https://github.com/Cantera/enhancements/issues/134), [#1367](https://github.com/Cantera/cantera/pull/1367))
- Migrate to C++17 standard, make use of modern C++ features, and make various style improvements to the C++ code ([E181](https://github.com/Cantera/enhancements/issues/181), [E#184](https://github.com/Cantera/enhancements/issues/184), [#1246](https://github.com/Cantera/cantera/pull/1246), [#1327](https://github.com/Cantera/cantera/pull/1327), [#1346](https://github.com/Cantera/cantera/pull/1346), [#1438](https://github.com/Cantera/cantera/pull/1438), [#1441](https://github.com/Cantera/cantera/pull/1441), [#1452](https://github.com/Cantera/cantera/pull/1452), [#1507](https://github.com/Cantera/cantera/pull/1507), [#1565](https://github.com/Cantera/cantera/pull/1565), [#1568](https://github.com/Cantera/cantera/pull/1568), [#1571](https://github.com/Cantera/cantera/pull/1571), [#1589](https://github.com/Cantera/cantera/pull/1589))
- Numerous improvements to the organization and formatting of the Doxygen and Sphinx documentation, in part by using `doxygen-awesome` and the PyData Sphinx theme([E115](https://github.com/Cantera/enhancements/issues/115), [E#175](https://github.com/Cantera/enhancements/issues/175), [E#179](https://github.com/Cantera/enhancements/issues/179), [#1279](https://github.com/Cantera/cantera/pull/1279), [#1427](https://github.com/Cantera/cantera/pull/1427), [#1518](https://github.com/Cantera/cantera/pull/1518), [#1534](https://github.com/Cantera/cantera/pull/1534), [#1541](https://github.com/Cantera/cantera/pull/1541), [#1543](https://github.com/Cantera/cantera/pull/1543), [#1546](https://github.com/Cantera/cantera/pull/1546), [#1551](https://github.com/Cantera/cantera/pull/1551), [#1557](https://github.com/Cantera/cantera/pull/1557), [#1558](https://github.com/Cantera/cantera/pull/1558), [#1559](https://github.com/Cantera/cantera/pull/1559), [#1561](https://github.com/Cantera/cantera/pull/1561), [#1562](https://github.com/Cantera/cantera/pull/1562), [#1563](https://github.com/Cantera/cantera/pull/1563), [#1567](https://github.com/Cantera/cantera/pull/1567), [#1572](https://github.com/Cantera/cantera/pull/1572), [#1573](https://github.com/Cantera/cantera/pull/1573), [#1582](https://github.com/Cantera/cantera/pull/1582), [#1581](https://github.com/Cantera/cantera/pull/1581), [#1584](https://github.com/Cantera/cantera/pull/1584), [#1590](https://github.com/Cantera/cantera/pull/1590))
- Various improvements to the SCons build system ([1268](https://github.com/Cantera/cantera/pull/1268), [#1307](https://github.com/Cantera/cantera/pull/1307), [#1351](https://github.com/Cantera/cantera/pull/1351), [#1360](https://github.com/Cantera/cantera/pull/1360), [#1404](https://github.com/Cantera/cantera/pull/1404), [#1470](https://github.com/Cantera/cantera/pull/1470), [#1472](https://github.com/Cantera/cantera/pull/1472), [#1509](https://github.com/Cantera/cantera/pull/1509), [#1542](https://github.com/Cantera/cantera/pull/1542))
- Updates to simplify the special behavior that implements different 1D flame types and boundary conditions ([E165](https://github.com/Cantera/enhancements/issues/165), [E#171](https://github.com/Cantera/enhancements/issues/171), [#1477](https://github.com/Cantera/cantera/pull/1477), [#1514](https://github.com/Cantera/cantera/pull/1514), [#1523](https://github.com/Cantera/cantera/pull/1523), [#1531](https://github.com/Cantera/cantera/pull/1531), [#1555](https://github.com/Cantera/cantera/pull/1555))
- Make use of C++ `Solution` objects in `Domain1D` and related classes ([1345](https://github.com/Cantera/cantera/pull/1345), [#1384](https://github.com/Cantera/cantera/pull/1384), [#1444](https://github.com/Cantera/cantera/pull/1444), [#1594](https://github.com/Cantera/cantera/pull/1594), [#1598](https://github.com/Cantera/cantera/pull/1598))
- Improved error handling for clib `thermo_setDensity` and `thermo_setMolarDensity` methods ([1413](https://github.com/Cantera/cantera/pull/1413))
- Speed up Python module import by deferring imports of optional dependencies ([1428](https://github.com/Cantera/cantera/pull/1428))
- Link Python `list_data_files` to C++ `getDataDirectories` ([1358](https://github.com/Cantera/cantera/pull/1358))
- Remove features deprecated in Cantera 2.6. Principally, this includes legacy reaction rate types ([1292](https://github.com/Cantera/cantera/pull/1292)) and the CTI/XML input formats ([#1291](https://github.com/Cantera/cantera/pull/1291))
- Deprecate remaining specializations of `Reaction` class and obsolete methods that were used by legacy reaction rate evaluators ([E149](https://github.com/Cantera/enhancements/issues/149), [#1295](https://github.com/Cantera/cantera/pull/1295), [#1333](https://github.com/Cantera/cantera/pull/1333))
- Deprecate other untested, unused and/or obsolete code ([C++ Deprecations](https://cantera.org/documentation/docs-3.0/doxygen/html/da/d58/deprecated.html), [#1455](https://github.com/Cantera/cantera/pull/1455), [#1504](https://github.com/Cantera/cantera/pull/1504))
- Improve deprecation warnings issued from Python to include the name of the deprecated method and to show the line where that function is called from ([1519](https://github.com/Cantera/cantera/pull/1519))

</details>
<details><summary><h2>Bugs Fixed</strong></h2> (click here to expand)</summary>

- Fixed thermodynamic consistency issues with `SurfPhase` and `RedlichKisterVPSSTP` ([1449](https://github.com/Cantera/cantera/pull/1449))
- Fixed thermodynamic consistency errors in IAPWS water equation of state ([1394](https://github.com/Cantera/cantera/pull/1394))
- Fixed thermodynamic consistency issues in `IdealSolidSolnPhase` and `BinarySolutionTabulatedThermo` ([1442](https://github.com/Cantera/cantera/pull/1442))
- Fix calculation of electron enthalpy contribution in `PlasmaPhase` ([1323](https://github.com/Cantera/cantera/pull/1323))
- Fix setting reference pressure for a phase by setting the reference pressure of the individual species ([1503](https://github.com/Cantera/cantera/pull/1503))
- Fix issues with "volume" and compressibility of `SurfPhase` ([1350](https://github.com/Cantera/cantera/pull/1350))
- Handle factorization errors in equilibrium initial estimator ([1479](https://github.com/Cantera/cantera/pull/1479))
- Make helpful errors for invalid reactions work more consistently ([1330](https://github.com/Cantera/cantera/pull/1330), [#1356](https://github.com/Cantera/cantera/pull/1356))
- Fix serialization of phases with reactions from multiple YAML sections ([1552](https://github.com/Cantera/cantera/pull/1552))
- Fix loading serialized mechanisms where reactions contain undeclared third bodies ([1588](https://github.com/Cantera/cantera/pull/1588))
- Fix cases where three-body reactions were not being automatically detected ([1338](https://github.com/Cantera/cantera/pull/1338))
- Fix possible segfaults when using Python `CustomRate` ([1293](https://github.com/Cantera/cantera/pull/1293))
- Partial fix for PLOG validation at low temperatures ([1553](https://github.com/Cantera/cantera/pull/1553))
- Fix default `atol` used in `ReactorNet.advance_to_steady_state` ([1305](https://github.com/Cantera/cantera/pull/1305))
- Fix reading arrays containing subnormal floating point values ([1545](https://github.com/Cantera/cantera/pull/1545))
- Fix adding Python `Quantity` objects when using molar basis ([1517](https://github.com/Cantera/cantera/pull/1517))
- Add missing array properties to `SolutionArray` and `FlameBase` ([1342](https://github.com/Cantera/cantera/pull/1342))
- Fix [`surf_pfr_chain.py`](https://cantera.org/examples/python/reactors/surf_pfr_chain.py.html) example to avoid misleading use of perturbed `Solution` objects ([#1304](https://github.com/Cantera/cantera/pull/1304))
- Fix Matlab samples to resolve issues from transition to YAML input files ([1414](https://github.com/Cantera/cantera/pull/1414))
- Fix numerous build issues for certain configurations and platforms ([1272](https://github.com/Cantera/cantera/pull/1272), [#1362](https://github.com/Cantera/cantera/pull/1362), [#1364](https://github.com/Cantera/cantera/pull/1364), [#1366](https://github.com/Cantera/cantera/pull/1366), [#1378](https://github.com/Cantera/cantera/pull/1378), [#1381](https://github.com/Cantera/cantera/pull/1381), [#1390](https://github.com/Cantera/cantera/pull/1390), [#1434](https://github.com/Cantera/cantera/pull/1434), [#1437](https://github.com/Cantera/cantera/pull/1437), [#1505](https://github.com/Cantera/cantera/pull/1505), [#1511](https://github.com/Cantera/cantera/pull/1511), [#1538](https://github.com/Cantera/cantera/pull/1538), [#1544](https://github.com/Cantera/cantera/pull/1544), [#1574](https://github.com/Cantera/cantera/pull/1574), [#1591](https://github.com/Cantera/cantera/pull/1591))
- Various documentation updates ([1276](https://github.com/Cantera/cantera/pull/1276), [#1296](https://github.com/Cantera/cantera/pull/1296), [#1328](https://github.com/Cantera/cantera/pull/1328), [#1335](https://github.com/Cantera/cantera/pull/1335))

</details>

Contributors

This release was made possible by the following contributors: [anthony-walker](https://github.com/anthony-walker), [arghdos](https://github.com/arghdos), [band-a-prend](https://github.com/band-a-prend), [BangShiuh](https://github.com/BangShiuh), [bryanwweber](https://github.com/bryanwweber), [burkenyo](https://github.com/burkenyo), [c-randall](https://github.com/c-randall), [cdeil](https://github.com/cdeil), [chinahg](https://github.com/chinahg), [corykinney](https://github.com/corykinney), [decaluwe](https://github.com/decaluwe), [g3bk47](https://github.com/g3bk47), [gkogekar](https://github.com/gkogekar), [hallaali](https://github.com/hallaali), [ischoegl](https://github.com/ischoegl), [jongyoonbae](https://github.com/jongyoonbae), [kyleniemeyer](https://github.com/kyleniemeyer), [mefuller](https://github.com/mefuller), [rwest](https://github.com/rwest), [speth](https://github.com/speth), [ssun30](https://github.com/ssun30), [tsikes](https://github.com/tsikes), [yeanment](https://github.com/yeanment), [yurivict](https://github.com/yurivict)

3.0.0b1

Highlights

- Introduction of the `yaml2ck` script, which converts Cantera's YAML mechanism format into the legacy Chemkin format. ([documentation here](https://testing.cantera.org/documentation/docs-3.0/sphinx/html/yaml/ck_conversion.html?highlight=yaml2ck#module-cantera.yaml2ck))
- 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](https://testing.cantera.org/examples/python/reactors/preconditioned_integration.py.html))
- 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](https://testing.cantera.org/documentation/docs-3.0/sphinx/html/cython/kinetics.html#extensiblerate), example [custom_reactions.py](https://testing.cantera.org/examples/python/kinetics/custom_reactions.py.html))
- 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](https://testing.cantera.org/examples/python/onedim/flame_initial_guess.py.html))
- 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](https://testing.cantera.org/documentation/docs-3.0/doxygen/html/db/d25/classCantera_1_1CoverageDependentSurfPhase.html#details))
- 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](https://testing.cantera.org/documentation/docs-3.0/sphinx/html/cython/units.html); Examples: [isentropic_units.py](https://testing.cantera.org/examples/python/thermo/isentropic_units.py.html), [rankine_units.py](https://testing.cantera.org/examples/python/thermo/rankine_units.py.html), and [sound_speed_units.py](https://testing.cantera.org/examples/python/thermo/sound_speed_units.py.html)).
- Add support for surface chemistry to the plug flow reactor model ([documentation here](https://testing.cantera.org/documentation/docs-3.0/sphinx/html/cython/zerodim.html#flowreactor), examples [1D_pfr_surfchem.py](https://testing.cantera.org/examples/python/surface_chemistry/1D_pfr_surfchem.py.html) and [surf_pfr.py](https://testing.cantera.org/examples/python/reactors/surf_pfr.py.html))
- 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](https://github.com/Cantera/cantera/blob/main/interfaces/matlab_experimental/readme.md))
- Preview release of a new C interface (see [README.md](https://github.com/Cantera/cantera/blob/main/interfaces/dotnet/README.md) for more on what's implemented and how to contribute)

Installation

- The Cantera conda channel provides installers for the Python module, Matlab toolbox, C++ interface, and Fortran 90 module on supported platforms. Instructions are available at https://testing.cantera.org/install/conda-install.html#sec-install-conda. To obtain the packages for the beta, specify the `dev` label using the flag `--channel cantera/label/dev`.
- Windows MSI installer for the Matlab toolbox (linked below as part of this release). Instructions available at https://testing.cantera.org/install/windows-install.html#sec-install-windows.
- Updated compilation instructions are available at https://testing.cantera.org/install/compiling-install.html. Just make sure to check out the "3.0" branch.
- Additional installers should be available soon.

2.6.0

The Cantera development team is pleased to announce the availability of Cantera 2.6.0. There have been over 1400 commits to Cantera since the last version, 2.5.1, which was released in February 2021. We have closed or merged [162 pull requests](https://github.com/Cantera/cantera/pulls?q=is%3Apr+merged%3A2021-02-13..2022-05-01+is%3Aclosed) and closed [101 issues](https://github.com/Cantera/cantera/issues?page=4&q=is%3Aissue+closed%3A2021-02-13..2022-05-01+is%3Aclosed).

New features, bug fixes, and other changes

Highlights
- Major redesign of how reaction rates are handled internally to improve extensibility and enable new capabilities ([E63](https://github.com/Cantera/enhancements/issues/63), [E#87](https://github.com/Cantera/enhancements/issues/87), [#982](https://github.com/Cantera/cantera/pull/982), [#995](https://github.com/Cantera/cantera/pull/995), [#1061](https://github.com/Cantera/cantera/pull/1061), [#1101](https://github.com/Cantera/cantera/pull/1101), [#1151](https://github.com/Cantera/cantera/pull/1151), [#1153](https://github.com/Cantera/cantera/pull/1153), [#1181](https://github.com/Cantera/cantera/pull/1181), [#1183](https://github.com/Cantera/cantera/pull/1183), [#1184](https://github.com/Cantera/cantera/pull/1184), [#1187](https://github.com/Cantera/cantera/pull/1187), [#1202](https://github.com/Cantera/cantera/pull/1202), [#1216](https://github.com/Cantera/cantera/pull/1216), [#1223](https://github.com/Cantera/cantera/pull/1223), [#1225](https://github.com/Cantera/cantera/pull/1225), [#1256](https://github.com/Cantera/cantera/pull/1256), [#1257](https://github.com/Cantera/cantera/pull/1257))
- Enable delegation of reactor implementation to user-provided Python classes ([`custom2.py`](https://github.com/Cantera/cantera/blob/main/interfaces/cython/cantera/examples/reactors/custom2.py), [#1003](https://github.com/Cantera/cantera/pull/1003))
- Enable serialization of Cantera objects to YAML ([`mechanism_reduction.py`](https://github.com/Cantera/cantera/blob/main/interfaces/cython/cantera/examples/kinetics/mechanism_reduction.py), [#984](https://github.com/Cantera/cantera/pull/984), [#1014](https://github.com/Cantera/cantera/pull/1014), [#1031](https://github.com/Cantera/cantera/pull/1031))
- Implement pickling of Python Solution objects ([692](https://github.com/Cantera/cantera/pull/692))
- Add [PyPI](https://pypi.org/project/Cantera/) package for Cantera, installable with `pip`([#1075](https://github.com/Cantera/cantera/pull/1075), [#1239](https://github.com/Cantera/cantera/pull/1239), [#1240](https://github.com/Cantera/cantera/pull/1240), [#1232](https://github.com/Cantera/cantera/pull/1232), [#1261](https://github.com/Cantera/cantera/pull/1261))
- Implement Peng-Robinson equation of state for real gases ([1047](https://github.com/Cantera/cantera/pull/1047), [#1141](https://github.com/Cantera/cantera/pull/1141), [#1180](https://github.com/Cantera/cantera/pull/1180))
- Add Blowers-Masel reaction rate parameterization for gas phase and interface kinetics ([`blowers-masel.py`](https://github.com/Cantera/cantera/blob/main/interfaces/cython/cantera/examples/kinetics/blowers_masel.py), [#987](https://github.com/Cantera/cantera/pull/987))
- Add calculation of sparse, analytical Jacobians for gas kinetics ([`derivative_speed.cpp`](https://github.com/Cantera/cantera/blob/main/samples/cxx/jacobian/derivative_speed.cpp), [#1088](https://github.com/Cantera/cantera/pull/1088), [#1089](https://github.com/Cantera/cantera/pull/1089), [#1212](https://github.com/Cantera/cantera/pull/1212))
- Add new phase type and reaction rate parameterizations for plasmas with independent electron temperature ([1099](https://github.com/Cantera/cantera/pull/1099), [#1166](https://github.com/Cantera/cantera/pull/1166), [#1190](https://github.com/Cantera/cantera/pull/1190))

<details>
<summary><strong>Click here for details on additional new features, changes to existing capabilities, and fixed bugs</strong></summary>

New features
- Simplify creation of interface phases and their adjacent bulk phases ([1169](https://github.com/Cantera/cantera/pull/1169), [#1247](https://github.com/Cantera/cantera/pull/1247))
- Add Tsang "falloff" function [1090](https://github.com/Cantera/cantera/pull/1090)
- Add option to allow unnormalized and/or negative mass/mole fractions in SolutionArray / 1D flame importers [1037](https://github.com/Cantera/cantera/pull/1037)
- Added access functions to polynomial fits of gas transport properties [817](https://github.com/Cantera/cantera/pull/817), [#1077](https://github.com/Cantera/cantera/pull/1077)
- Add dilution options to equivalence ratio functions in Python [1206](https://github.com/Cantera/cantera/pull/1206)
- Make rate coefficient and standard concentration units available in Python [1076](https://github.com/Cantera/cantera/pull/1076)
- Add creation of Species from Python dict [1179](https://github.com/Cantera/cantera/pull/1179)
- Add thermal conductivity to DustyGas in Python [988](https://github.com/Cantera/cantera/pull/988)
- Add `set_mixture_fraction` method to `SolutionArray` [1242](https://github.com/Cantera/cantera/pull/1242)
- Exposed some additional functions to the Fortran interface [1154](https://github.com/Cantera/cantera/pull/1154)
- New C++ custom ODEs example [922](https://github.com/Cantera/cantera/pull/922)
- Added a Python version of the Matlab lithium ion battery example [1263](https://github.com/Cantera/cantera/pull/1263)
- Add support for Sundials 6.0 [1162](https://github.com/Cantera/cantera/pull/1162)

Changes to existing capabilities
- Use YAML for saving and loading 1D flame simulations, replacing the XML output format [1112](https://github.com/Cantera/cantera/pull/1112), [#1140](https://github.com/Cantera/cantera/pull/1140)
- Use normal sign convention for reactor heat transfer [1156](https://github.com/Cantera/cantera/pull/1156)
- Separate third-body concentration term from rate constant for three body reactions [1084](https://github.com/Cantera/cantera/pull/1084)
- Translate C++ warnings to Python [1201](https://github.com/Cantera/cantera/pull/1201)
- Refactor SCons option handling and automatically extract compilation options for website documentation [1137](https://github.com/Cantera/cantera/pull/1137)
- Automatically use dependencies from and install into an active Conda environment [1191](https://github.com/Cantera/cantera/pull/1191)
- Include header description in when converting from CTI to YAML [1205](https://github.com/Cantera/cantera/pull/1205)
- Use of deprecated XML or CTI formats now actively issues warnings [1159](https://github.com/Cantera/cantera/pull/1159)
- Support legacy ruamel.yaml loaders [1060](https://github.com/Cantera/cantera/pull/1060)
- Update examples to use "h2o2.yaml" instead of GRI 3.0 [1109](https://github.com/Cantera/cantera/pull/1109)
- Prevent inadvertent attribute assignment in Quantity [1124](https://github.com/Cantera/cantera/pull/1124)
- Fix issues with composition strings and kinetics model of "None" in cti2yaml [1127](https://github.com/Cantera/cantera/pull/1127)
- Deprecate shell setup scripts (`setup_cantera`) [1189](https://github.com/Cantera/cantera/pull/1189)
- Replace deprecated yaml.safe_load / simplify paths [1049](https://github.com/Cantera/cantera/pull/1049)
- Read YAML using C++ newSolution in Python / access root level data [1129](https://github.com/Cantera/cantera/pull/1129)
- Improve YAML formatting of floating point values and multiline strings [1133](https://github.com/Cantera/cantera/pull/1133)
- Automatically detect unspecified third-body collision partners [1015](https://github.com/Cantera/cantera/pull/1015)
- Various compilation, build system, and test infrastructure updates [979](https://github.com/Cantera/cantera/pull/979), [#994](https://github.com/Cantera/cantera/pull/994), [#1000](https://github.com/Cantera/cantera/pull/1000), [#1004](https://github.com/Cantera/cantera/pull/1004), [#1012](https://github.com/Cantera/cantera/pull/1012), [#1020](https://github.com/Cantera/cantera/pull/1020), [#1025](https://github.com/Cantera/cantera/pull/1025), [#1034](https://github.com/Cantera/cantera/pull/1034), [#1043](https://github.com/Cantera/cantera/pull/1043), [#1056](https://github.com/Cantera/cantera/pull/1056), [#1062](https://github.com/Cantera/cantera/pull/1062), [#1145](https://github.com/Cantera/cantera/pull/1145), [#1158](https://github.com/Cantera/cantera/pull/1158), [#1102](https://github.com/Cantera/cantera/pull/1102), [#1119](https://github.com/Cantera/cantera/pull/1119), [#1122](https://github.com/Cantera/cantera/pull/1122), [#1144](https://github.com/Cantera/cantera/pull/1144). [#1167](https://github.com/Cantera/cantera/pull/1167), [#1172](https://github.com/Cantera/cantera/pull/1172), [#1176](https://github.com/Cantera/cantera/pull/1176), [#1178](https://github.com/Cantera/cantera/pull/1178), [#1197](https://github.com/Cantera/cantera/pull/1197), [#1208](https://github.com/Cantera/cantera/pull/1208), [#1222](https://github.com/Cantera/cantera/pull/1222), [#1229](https://github.com/Cantera/cantera/pull/1229), [#1241](https://github.com/Cantera/cantera/pull/1241), [#1268](https://github.com/Cantera/cantera/pull/1268)
- Various documentation updates [983](https://github.com/Cantera/cantera/pull/983), [#1002](https://github.com/Cantera/cantera/pull/1002), [#1022](https://github.com/Cantera/cantera/pull/1022), [#1032](https://github.com/Cantera/cantera/pull/1032), [#1045](https://github.com/Cantera/cantera/pull/1045), [#1065](https://github.com/Cantera/cantera/pull/1065), [#1121](https://github.com/Cantera/cantera/pull/1121), [#1142](https://github.com/Cantera/cantera/pull/1142), [#1152](https://github.com/Cantera/cantera/pull/1152), [#1196](https://github.com/Cantera/cantera/pull/1196), [#1200](https://github.com/Cantera/cantera/pull/1200), [#1227](https://github.com/Cantera/cantera/pull/1227), [#1231](https://github.com/Cantera/cantera/pull/1231), [#1234](https://github.com/Cantera/cantera/pull/1234), [#1249](https://github.com/Cantera/cantera/pull/1249), [#1255](https://github.com/Cantera/cantera/pull/1255), [#1264](https://github.com/Cantera/cantera/pull/1264)

Bugs fixed
- Fix Redlich-Kwong partial molar properties [1218](https://github.com/Cantera/cantera/pull/1218)
- Fix pressure dependence in IdealSolidSolnPhase::getPartialMolarEnthalpies [1087](https://github.com/Cantera/cantera/pull/1087)
- Fix evaluation of delta-star polynomials [1125](https://github.com/Cantera/cantera/pull/1125)
- Consistently use physical concentrations when calculating third body and falloff reaction rates, for both specifically enumerated efficiencies and generic third body colliders [968](https://github.com/Cantera/cantera/pull/968)
- Add check for sticking coefficient more than 1 [1038](https://github.com/Cantera/cantera/pull/1038)
- Fix typo in equivalenceRatio.py that resulted in printing wrong results [1173](https://github.com/Cantera/cantera/pull/1173)
- Fix memory error when deallocating Python reaction rate wrappers [1030](https://github.com/Cantera/cantera/pull/1030)
- Prevent segmentation fault when initializing standalone Reactor objects [1063](https://github.com/Cantera/cantera/pull/1063)
- Fix extinction temperature definition in diffusion_flame_extinction.py example [1066](https://github.com/Cantera/cantera/pull/1066)
- Fix handling of 'CK_Multi' transport model in flame simulations [1069](https://github.com/Cantera/cantera/pull/1069)
- Fix issues with import of SolutionArray from CSV [1074](https://github.com/Cantera/cantera/pull/1074)
- Fix SolutionArray.append [1086](https://github.com/Cantera/cantera/pull/1086)
- Fix 1D solver errors when reporting singular Jacobian and use of non-default tolerances after automatic grid expansion [1103](https://github.com/Cantera/cantera/pull/1103)
- Suppress output from setEnergy.m [1106](https://github.com/Cantera/cantera/pull/1106)
- Fix using reactors with both surface and gas phase chemistry with YAML input [981](https://github.com/Cantera/cantera/pull/981)
- Fix saving 1D output when radiative_heat_loss is enabled [993](https://github.com/Cantera/cantera/pull/993)
- Fix CTI to YAML conversion for transport='None' [997](https://github.com/Cantera/cantera/pull/997)
- Fix handling of CK mechanisms with '+M' in PLOG reaction equations [1252](https://github.com/Cantera/cantera/pull/1252)
- Fix detection of skipped/undeclared species in three body reactions [1027](https://github.com/Cantera/cantera/pull/1027)
- Fix invalid unchecked cast to StFlow [1226](https://github.com/Cantera/cantera/pull/1226)
- Fix `SolutionArray` extra slice [1204](https://github.com/Cantera/cantera/pull/1204)
- Check for valid component name when setting reactor advance limits [1215](https://github.com/Cantera/cantera/pull/1215)
- Fix incorrect temperature bounds and missing entries in NASA_condensed.yaml [1248](https://github.com/Cantera/cantera/pull/1248), [#1250](https://github.com/Cantera/cantera/pull/1250)
- Fix logic error in CanteraTest.assertNear [1120](https://github.com/Cantera/cantera/pull/1120)
- Fix various compilation / installation issues [980](https://github.com/Cantera/cantera/pull/980), [#1011](https://github.com/Cantera/cantera/pull/1011), [#1052](https://github.com/Cantera/cantera/pull/1052), [#1057](https://github.com/Cantera/cantera/pull/1057), [#1100](https://github.com/Cantera/cantera/pull/1100), [#1105](https://github.com/Cantera/cantera/pull/1105), [#1107](https://github.com/Cantera/cantera/pull/1107), [#1110](https://github.com/Cantera/cantera/pull/1110), [#1116](https://github.com/Cantera/cantera/pull/1116), [#1123](https://github.com/Cantera/cantera/pull/1123), [#1148](https://github.com/Cantera/cantera/pull/1148), [#1161](https://github.com/Cantera/cantera/pull/1161), [#1168](https://github.com/Cantera/cantera/pull/1168), [#1171](https://github.com/Cantera/cantera/pull/1171), [#1265](https://github.com/Cantera/cantera/pull/1265)
</details>

The complete list of changes can be found on the Cantera Wiki page: https://github.com/Cantera/cantera/wiki/Cantera-2.6.0-Changelog

Installation

Instructions for installing Cantera 2.6 are available on the [Cantera website](https://cantera.org/install/index.html). Available options include Conda; pip; native installers for Windows and macOS; packages for Ubuntu, Fedora/Enterprise Linux, Gentoo, and FreeBSD; and compiling from source.

Contributors
This release was made possible by the following contributors: [anthony-walker](https://github.com/anthony-walker), [band-a-prend](https://github.com/band-a-prend), [BangShiuh](https://github.com/BangShiuh), [blackrabbit17](https://github.com/blackrabbit17), [bryanwweber](https://github.com/bryanwweber), [12Chao](https://github.com/12Chao), [chinahg](https://github.com/chinahg), [DavidAkinpelu](https://github.com/DavidAkinpelu), [d-e-t](https://github.com/d-e-t), [decaluwe](https://github.com/decaluwe), [dschmider-HSOG](https://github.com/Cantera/cantera/commits?author=dschmider-HSOG), [g3bk47](https://github.com/g3bk47), [gkogekar](https://github.com/gkogekar), [ischoegl](https://github.com/ischoegl), [jongyoonbae](https://github.com/jongyoonbae), [lavdwall](https://github.com/lavdwall), [leesharma](https://github.com/leesharma), [mefuller](https://github.com/mefuller), [paulblum](https://github.com/paulblum), [santoshshanbhogue](https://github.com/santoshshanbhogue), [speth](https://github.com/speth), [stijn76](https://github.com/stijn76), [tpg2114](https://github.com/tpg2114)

2.6.0b2

The Cantera development team is pleased to announce the general availability of the second beta for the next release of Cantera, v2.6.0. There have been over 1300 commits to Cantera since the last version, 2.5.1, which was released in February 2021. We have closed or merged [143 pull requests](https://github.com/Cantera/cantera/pulls?q=is%3Apr+merged%3A2021-02-13..2022-04-10+is%3Aclosed) and closed [90 issues](https://github.com/Cantera/cantera/issues?q=is%3Aissue+closed%3A2021-02-13..2022-04-10+is%3Aclosed). Some of the highlights for this release are:
- Major redesign of how reaction rates are handled internally to improve extensibility and enable new capabilities ([E63](https://github.com/Cantera/enhancements/issues/63), [E#87](https://github.com/Cantera/enhancements/issues/87))
- Enable delegation of reactor implementation to user-provided Python classes ([`custom2.py`](https://github.com/Cantera/cantera/blob/main/interfaces/cython/cantera/examples/reactors/custom2.py))
- Enable serialization of Cantera objects to YAML ([`mechanism_reduction.py`](https://github.com/Cantera/cantera/blob/main/interfaces/cython/cantera/examples/kinetics/mechanism_reduction.py))
- Implement pickling of Python Solution objects
- Add [PyPI](https://pypi.org/project/Cantera/) package for Cantera, installable with `pip`
- Implement Peng-Robinson equation of state for real gases
- Add Blowers-Masel reaction rate parameterization for gas phase and interface kinetics ([`blowers-masel.py`](https://github.com/Cantera/cantera/blob/main/interfaces/cython/cantera/examples/kinetics/blowers_masel.py))
- Add calculation of sparse, analytical Jacobians for gas kinetics ([`derivative_speed.cpp`](https://github.com/Cantera/cantera/blob/main/samples/cxx/jacobian/derivative_speed.cpp))
- Add reaction rate parameterizations for plasmas with independent electron temperature

The complete list of changes can be found on the Cantera Wiki page: https://github.com/Cantera/cantera/wiki/Cantera-2.6.0-Changelog

Installation

Installation instructions for the Python module, Matlab toolbox, C++ interface, and Fortran 90 module on supported platforms are available at https://testing.cantera.org/install/index.html. Please note that as of 2022-04-11, installers for the beta are available via [PyPI](https://pypi.org/project/Cantera/) (using `pip`), the `cantera` conda channel, the [`cantera-team/cantera-unstable`](https://launchpad.net/~cantera-team/+archive/ubuntu/cantera-unstable) Ubuntu PPA, and the installers below. Additional installers will be available soon.

Contributors

This release was made possible by the following contributors: [12Chao](https://github.com/12Chao), [BangShiuh](https://github.com/BangShiuh), [blackrabbit17](https://github.com/blackrabbit17), [DavidAkinpelu](https://github.com/DavidAkinpelu), [anthony-walker](https://github.com/anthony-walker), [band-a-prend](https://github.com/band-a-prend), [bryanwweber](https://github.com/bryanwweber), [chinahg](https://github.com/chinahg), [d-e-t](https://github.com/d-e-t), [decaluwe](https://github.com/decaluwe), [g3bk47](https://github.com/g3bk47), [gkogekar](https://github.com/gkogekar), [ischoegl](https://github.com/ischoegl), [jongyoonbae](https://github.com/jongyoonbae), [lavdwall](https://github.com/lavdwall), [leesharma](https://github.com/leesharma), [mefuller](https://github.com/mefuller), [paulblum](https://github.com/paulblum), [speth](https://github.com/speth), [stijn76](https://github.com/stijn76), [tpg2114](https://github.com/tpg2114)

2.6.0b1

The Cantera development team is pleased to announce the general availability of the first beta for the next release of Cantera, v2.6.0. There have been over 1300 commits to Cantera since the last version, 2.5.1, which was released in February 2021. We have closed or merged [136 pull requests](https://github.com/Cantera/cantera/pulls?q=is%3Apr+merged%3A2021-02-13..2022-03-26+is%3Aclosed) and closed [87 issues](https://github.com/Cantera/cantera/issues?page=4&q=is%3Aissue+closed%3A2021-02-13..2022-03-26+is%3Aclosed). Some of the highlights for this release are:
- Major redesign of how reaction rates are handled internally to improve extensibility and enable new capabilities ([E63](https://github.com/Cantera/enhancements/issues/63), [E#87](https://github.com/Cantera/enhancements/issues/87))
- Enable delegation of reactor implementation to user-provided Python classes ([`custom2.py`](https://github.com/Cantera/cantera/blob/main/interfaces/cython/cantera/examples/reactors/custom2.py))
- Enable serialization of Cantera objects to YAML ([`mechanism_reduction.py`](https://github.com/Cantera/cantera/blob/main/interfaces/cython/cantera/examples/kinetics/mechanism_reduction.py))
- Implement pickling of Python Solution objects
- Add [PyPI](https://pypi.org/project/Cantera/) package for Cantera, installable with `pip`
- Implement Peng-Robinson equation of state for real gases
- Add Blowers-Masel reaction rate parameterization for gas phase and interface kinetics ([`blowers-masel.py`](https://github.com/Cantera/cantera/blob/main/interfaces/cython/cantera/examples/kinetics/blowers_masel.py))
- Add calculation of sparse, analytical Jacobians for gas kinetics ([`derivative_speed.cpp`](https://github.com/Cantera/cantera/blob/main/samples/cxx/jacobian/derivative_speed.cpp))
- Add reaction rate parameterizations for plasmas with independent electron temperature

The complete list of changes can be found on the Cantera Wiki page: https://github.com/Cantera/cantera/wiki/Cantera-2.6.0-Changelog

This release was made possible by the following contributors: [12Chao](https://github.com/12Chao), [BangShiuh](https://github.com/BangShiuh), [blackrabbit17](https://github.com/blackrabbit17), [DavidAkinpelu](https://github.com/DavidAkinpelu), [anthony-walker](https://github.com/anthony-walker), [band-a-prend](https://github.com/band-a-prend), [bryanwweber](https://github.com/bryanwweber), [chinahg](https://github.com/chinahg), [d-e-t](https://github.com/d-e-t), [decaluwe](https://github.com/decaluwe), [g3bk47](https://github.com/g3bk47), [gkogekar](https://github.com/gkogekar), [ischoegl](https://github.com/ischoegl), [jongyoonbae](https://github.com/jongyoonbae), [lavdwall](https://github.com/lavdwall), [leesharma](https://github.com/leesharma), [mefuller](https://github.com/mefuller), [paulblum](https://github.com/paulblum), [speth](https://github.com/speth), [stijn76](https://github.com/stijn76), [tpg2114](https://github.com/tpg2114)

2.5.1

The Cantera development team is pleased to announce the availability of Cantera 2.5.1. There have been 1000 commits to Cantera since the release of Cantera 2.4.0 in August 2018. We have closed or merged more than [250 pull requests](https://github.com/Cantera/cantera/pulls?q=is%3Apr+is%3Aclosed+updated%3A%3E%3D2018-08-24) and [100 issues](https://github.com/Cantera/cantera/issues?q=is%3Aissue+is%3Aclosed+updated%3A%3E%3D2018-08-24). The complete list of changes can be found on the [Cantera Wiki page](https://github.com/Cantera/cantera/wiki/Complete-git-log-between-v2.4.0-and-v2.5.1), and a summary of new features, changes, and bugs fixed in this release is included below, with links to the associated Pull Requests on GitHub.

Cantera 2.5 introduces a new input file format, based on the [YAML](https://yaml.org/) data format. This format supersedes the CTI and XML (sometimes called CTML) formats that Cantera has used for many years. Converter scripts from CTI and XML to YAML (`cti2yaml` and `ctml2yaml`), as well as from CHEMKIN (CK) format to YAML (`ck2yaml`), are provided with this release. You can use these scripts in the same way that the old `ck2cti` script was used. All users are encouraged to switch their input files to the new format.

Instructions for installing Cantera 2.5 are available on the [Cantera website](https://cantera.org/install/index.html). Available options include Conda, native installers for Windows and macOS, Ubuntu packages, and compiling from source.

Thank you to the following contributors to Cantera 2.5:

[12Chao](https://github.com/12Chao), [agarwalrounak](https://github.com/agarwalrounak), [arghdos](https://github.com/arghdos), [band-a-prend](https://github.com/band-a-prend), [BangShiuh](https://github.com/BangShiuh), [bryanwweber](https://github.com/bryanwweber), [CyberDrudge](https://github.com/CyberDrudge), [decaluwe](https://github.com/decaluwe), [dholland88](https://github.com/dholland88), [g3bk47](https://github.com/g3bk47), [inducer](https://github.com/inducer), [ischoegl](https://github.com/ischoegl), [jsantner](https://github.com/jsantner), [korffdm](https://github.com/korffdm), [kyleniemeyer](https://github.com/kyleniemeyer), [lavdwall](https://github.com/lavdwall), [lionkey](https://github.com/lionkey), [manikmayur](https://github.com/manikmayur), [mgashwinkumar](https://github.com/mgashwinkumar), [paulblum](https://github.com/paulblum), [rwest](https://github.com/rwest), [sameshl](https://github.com/sameshl), [sin-ha](https://github.com/sin-ha), [speth](https://github.com/speth), [spinnau](https://github.com/spinnau), [ThanasisMattas](https://github.com/ThanasisMattas), [tsikes](https://github.com/tsikes), [wbessler](https://github.com/wbessler)

<details>
<summary><strong>Click here to see the complete Changelog</strong></summary>
<h2>New Features:</h2>
<ul>
<li>Added a new, YAML-based input file format (<a href="https://github.com/Cantera/cantera/pull/584">#584</a>, <a href="https://github.com/Cantera/cantera/pull/663">#663</a>, <a href="https://github.com/Cantera/cantera/pull/664">#664</a>, <a href="https://github.com/Cantera/cantera/pull/671">#671</a>, <a href="https://github.com/Cantera/cantera/pull/693">#693</a>, <a href="https://github.com/Cantera/cantera/pull/707">#707</a>, <a href="https://github.com/Cantera/cantera/pull/708">#708</a>, <a href="https://github.com/Cantera/cantera/pull/716">#716</a>, <a href="https://github.com/Cantera/cantera/pull/723">#723</a>, <a href="https://github.com/Cantera/cantera/pull/738">#738</a>, <a href="https://github.com/Cantera/cantera/pull/750">#750</a>, <a href="https://github.com/Cantera/cantera/pull/764">#764</a>, <a href="https://github.com/Cantera/cantera/pull/768">#768</a>, <a href="https://github.com/Cantera/cantera/pull/773">#773</a>, <a href="https://github.com/Cantera/cantera/pull/784">#784</a>, <a href="https://github.com/Cantera/cantera/pull/794">#794</a>, <a href="https://github.com/Cantera/cantera/pull/795">#795</a>, <a href="https://github.com/Cantera/cantera/pull/813">#813</a>, <a href="https://github.com/Cantera/cantera/pull/855">#855</a>, <a href="https://github.com/Cantera/cantera/pull/857">#857</a>, <a href="https://github.com/Cantera/cantera/pull/866">#866</a>, <a href="https://github.com/Cantera/cantera/pull/869">#869, <a href="https://github.com/Cantera/cantera/pull/880">#880</a>, <a href="https://github.com/Cantera/cantera/pull/897">#897</a>, <a href="https://github.com/Cantera/cantera/pull/899">#899</a>, <a href="https://github.com/Cantera/cantera/pull/961">#961</a>, <a href="https://github.com/Cantera/cantera/pull/970">#970</a>, <a href="https://github.com/Cantera/cantera/pull/941">#941</a>, <a href="https://github.com/Cantera/cantera/pull/974">#974</a>)</li>
<li>Add interface for reading and writing 1D Flame and SolutionArray objects from/to HDF5 files (<a href="https://github.com/Cantera/cantera/pull/680">#680</a>, <a href="https://github.com/Cantera/cantera/pull/687">#687</a>, <a href="https://github.com/Cantera/cantera/pull/805">#805</a>, <a href="https://github.com/Cantera/cantera/pull/840">#840</a>, <a href="https://github.com/Cantera/cantera/pull/860">#860</a>, <a href="https://github.com/Cantera/cantera/pull/871">#871</a>, <a href="https://github.com/Cantera/cantera/pull/900">#900</a>, <a href="https://github.com/Cantera/cantera/pull/943">#943</a>, <a href="https://github.com/Cantera/cantera/pull/931">#931</a>)</li>
<li>Add BinarySolutionTabulatedThermo class, which implements implements tabulated standard state thermodynamics in a binary solution. (<a href="https://github.com/Cantera/cantera/pull/563">#563</a>, <a href="https://github.com/Cantera/cantera/pull/606">#606</a>, <a href="https://github.com/Cantera/cantera/pull/637">#637</a>, <a href="https://github.com/Cantera/cantera/pull/640">#640</a>, <a href="https://github.com/Cantera/cantera/pull/725">#725</a>)</li>
<li>Introduce C++ Solution class to simplify creation of coupled ThermoPhase, Kinetics, and Transport objects (<a href="https://github.com/Cantera/cantera/pull/696">#696</a>, <a href="https://github.com/Cantera/cantera/pull/735">#735</a>)</li>
<li>Determine Redlich-Kwong parameters from a database of critical property data (<a href="https://github.com/Cantera/cantera/pull/574">#574</a>, <a href="https://github.com/Cantera/cantera/pull/576">#576</a>, <a href="https://github.com/cantera/cantera/commit/33e198f7e527dee6a97869d6677d2da9b58247b1"><code>33e198f</code></a>, <a href="https://github.com/cantera/cantera/commit/ebb93cb5a23591ca3badb186940e5b1a89e8a411"><code>ebb93cb</code></a>)</li>
<li>Make transport property calculations available for pure fluid water phases (<a href="https://github.com/Cantera/cantera/pull/558">#558</a>)</li>
<li>Make InterfaceKinetics.advance_coverages_to_steady_state available in the Python interface (<a href="https://github.com/Cantera/cantera/pull/592">#592</a>, <a href="https://github.com/Cantera/cantera/pull/610">#610</a>)</li>
<li>Add functions for returning the phase of matter for ThermoPhase objects (<a href="https://github.com/Cantera/cantera/pull/722">#722</a>, <a href="https://github.com/Cantera/cantera/pull/839">#839</a>)</li>
<li>Add new ReactorNet::advanceTowards method to combine benefits of both the 'step' and 'advance' methods; see 'reactor3.py' example (<a href="https://github.com/Cantera/cantera/pull/629">#629</a>, <a href="https://github.com/Cantera/cantera/pull/756">#756</a>)</li>
<li>Enable setting the maximum number of CVODEs steps in the Python interface (<a href="https://github.com/Cantera/cantera/pull/581">#581</a>)</li>
<li>Add factories for FlowDevice and Wall objects, to enable creation of user-defined derived classes (<a href="https://github.com/Cantera/cantera/pull/632">#632</a>)</li>
<li>Allow classes derived from StFlow to have additional state variables (<a href="https://github.com/Cantera/cantera/pull/624">#624</a>)</li>
<li>Add wrappers to make "piecewise-Gibbs" and "NASA9" species thermo objects accessible in Python (<a href="https://github.com/Cantera/cantera/pull/711">#711</a>)</li>
<li>Add set_equivalence_ratio function to SolutionArray objects (<a href="https://github.com/Cantera/cantera/pull/677">#677</a>)</li>
<li>Add ability to sort SolutionArray objects (<a href="https://github.com/Cantera/cantera/pull/688">#688</a>)</li>
<li>Support use of Sundials versions up to 5.7 (<a href="https://github.com/cantera/cantera/commit/5e226535de33a73dd59429eb54ef5d157d0afaa1"><code>5e22653</code></a>, <a href="https://github.com/Cantera/cantera/pull/672">#672</a>, <a href="https://github.com/Cantera/cantera/pull/780">#780</a>, <a href="https://github.com/Cantera/cantera/pull/814">#814</a>, <a href="https://github.com/Cantera/cantera/pull/974">#974</a>)</li>
<li>Add functions for setting species aliases and finding isomers (<a href="https://github.com/Cantera/cantera/pull/714">#714</a>, <a href="https://github.com/Cantera/cantera/pull/876">#876</a>)</li>
<li>Added 'warn_user' function as a consistent way of issuing warnings from C++ (<a href="https://github.com/Cantera/cantera/pull/741">#741</a>)</li>
<li>Add get/set equivalenceRatio/mixtureFraction functions to C++ (<a href="https://github.com/Cantera/cantera/pull/851">#851</a>)</li>
<li>Make getDeltaEnthalpies available in the Matlab interface (<a href="https://github.com/Cantera/cantera/pull/659">#659</a>)</li>
<li>Add 'TabulatedFunction' class for providing time-varying reactor inputs specified by tabular input (<a href="https://github.com/Cantera/cantera/pull/797">#797</a>)</li>
<li>Add plug flow reactor example in MATLAB (<a href="https://github.com/Cantera/cantera/pull/701">#701</a>)</li>
<li>Make liquid-water-IAPWS95 available as a phase model (<a href="https://github.com/Cantera/cantera/pull/921">#921</a>)</li>
<li>Make species charge information available in Python (<a href="https://github.com/Cantera/cantera/pull/863">#863</a>)</li>
<li>Add 'kinetics_species_name' and 'kinetics_species_names' functions to Python interface (<a href="https://github.com/cantera/cantera/commit/5601ee906741a539b8316ad9dad0cc7dbf4d6d68"><code>5601ee9</code></a>)</li>
<li>Added 'list_data_files' function to Python module (<a href="https://github.com/Cantera/cantera/pull/589">#589</a>)</li>
<li>Add 'fast_fail_tests' option to SCons (<a href="https://github.com/Cantera/cantera/pull/772">#772</a>)</li>
<li>Add some functions which were missing from the Fortran interface (<a href="https://github.com/Cantera/cantera/pull/828">#828</a>, <a href="https://github.com/Cantera/cantera/pull/858">#858</a>, <a href="https://github.com/Cantera/cantera/pull/870">#870</a>)</li>
<li>Provide const versions of certain functions (<a href="https://github.com/Cantera/cantera/pull/850">#850</a>, <a href="https://github.com/cantera/cantera/commit/9aa507a0988e9b12724f1c25ef23a67f4b04cd27"><code>9aa507a</code></a>)</li>
<li>Expand '~' as user homedir shortcut when adding data directories (<a href="https://github.com/cantera/cantera/commit/ca8700fdd406f148dd27bb238fc748f00ede69f4"><code>ca8700f</code></a>)</li>
</ul>

<h2>Changes to existing features:</h2>
<ul>
<li>Remove support for Python 2 (<a href="https://github.com/Cantera/cantera/pull/560">#560</a>, <a href="https://github.com/Cantera/cantera/pull/611">#611</a>)</li>
<li>Update physical constants based on 2018 CODATA values, and atomic weights to 2018 IUPAC/CIAAW values (<a href="https://github.com/Cantera/cantera/pull/653">#653</a>)</li>
<li>Deprecated some redundant or rarely-used classes and functions. See the deprecation lists for <a href="https://cantera.org/documentation/docs-2.5/doxygen/html/da/d58/deprecated.html">C++</a> and <a href="https://cantera.org/documentation/docs-2.5/sphinx/html/search.html?q=deprecated&check_keywords=yes&area=default">Python / Matlab / Input files</a>. (<a href="https://github.com/Cantera/cantera/pull/580">#580</a>, <a href="https://github.com/Cantera/cantera/pull/588">#588</a>, <a href="https://github.com/Cantera/cantera/pull/645">#645</a>, <a href="https://github.com/Cantera/cantera/pull/643">#643</a>, <a href="https://github.com/Cantera/cantera/pull/660">#660</a>, <a href="https://github.com/Cantera/cantera/pull/733">#733</a>, <a href="https://github.com/Cantera/cantera/pull/735">#735</a>, <a href="https://github.com/Cantera/cantera/pull/762">#762</a>, <a href="https://github.com/Cantera/cantera/pull/787">#787</a>, <a href="https://github.com/Cantera/cantera/pull/790">#790</a>, <a href="https://github.com/Cantera/cantera/pull/806">#806</a>, <a href="https://github.com/Cantera/cantera/pull/815">#815</a>, <a href="https://github.com/Cantera/cantera/pull/864">#864</a>, <a href="https://github.com/cantera/cantera/commit/35be561d99c4ee8f544db4016849d94bf26b4df6"><code>35be561</code></a>, <a href="https://github.com/cantera/cantera/commit/27d9b6413a6b12a84947db72658c1785e8c1393f"><code>27d9b64</code></a>)</li>
<li>Build and test the sample programs / scripts as part of the CI process (<a href="https://github.com/cantera/cantera/commit/1ec9ce2c01da81479952dcc12140634d9bd4d9ff"><code>1ec9ce2</code></a>, <a href="https://github.com/Cantera/cantera/pull/649">#649</a>, <a href="https://github.com/Cantera/cantera/pull/776">#776</a>, <a href="https://github.com/Cantera/cantera/pull/874">#874</a>, <a href="https://github.com/Cantera/cantera/pull/883">#883</a>, <a href="https://github.com/Cantera/cantera/pull/905">#905</a>, <a href="https://github.com/Cantera/cantera/pull/923">#923</a>, <a href="https://github.com/Cantera/cantera/pull/927">#927</a>)</li>
<li>Improve handling of phases where the intrinsic state variables are not temperature and density (<a href="https://github.com/Cantera/cantera/pull/720">#720</a>)</li>
<li>Improve detection and handling of errors in Chemkin input files (<a href="https://github.com/Cantera/cantera/pull/585">#585</a>, <a href="https://github.com/cantera/cantera/commit/b2acc43a813fd755a4b60bca87006dc7a72a74a0"><code>b2acc43</code></a>, <a href="https://github.com/cantera/cantera/commit/4f4a2bd07162a67ca96dcc9f514dbab29beedcfe"><code>4f4a2bd</code></a>, <a href="https://github.com/cantera/cantera/commit/d04fd8cc39cb9982aafe7cac28b58174b5fd6a81"><code>d04fd8c</code></a>)</li>
<li>Consolidate and report all errors when adding reactions, instead of just failing on the first one (<a href="https://github.com/Cantera/cantera/pull/903">#903</a>, <a href="https://github.com/Cantera/cantera/pull/946">#946</a>)</li>
<li>Use 'Q' instead of 'X' for the quality (vapor fraction) of two-phase mixtures in Python (<a href="https://github.com/Cantera/cantera/pull/719">#719</a>)</li>
<li>Always use temperature of the "reacting" phase for interface kinetics (<a href="https://github.com/cantera/cantera/commit/6c82b61c3d8b6738a8a9edb5c062fa3c50423d96"><code>6c82b61</code></a>)</li>
<li>Make interface for setting parameters for Valves and PressureControllers more intuitive (<a href="https://github.com/Cantera/cantera/pull/667">#667</a>, <a href="https://github.com/Cantera/cantera/pull/682">#682</a>)</li>
<li>Add N2 to h2o2.yaml (<a href="https://github.com/Cantera/cantera/pull/959">#959</a>)</li>
<li>Make CVODES integrator 'max_time_step' a property in the Python module (<a href="https://github.com/Cantera/cantera/pull/731">#731</a>)</li>
<li>Switch CI to GitHub Actions (<a href="https://github.com/Cantera/cantera/pull/775">#775</a>, <a href="https://github.com/Cantera/cantera/pull/884">#884</a>, <a href="https://github.com/Cantera/cantera/pull/889">#889</a>, <a href="https://github.com/Cantera/cantera/pull/957">#957</a>)</li>
<li>Use experimentally-derived O2/O2- collision integral in ionized flames (<a href="https://github.com/Cantera/cantera/pull/552">#552</a>)</li>
<li>Consistently use CanteraError in Python examples (<a href="https://github.com/Cantera/cantera/pull/596">#596</a>, <a href="https://github.com/cantera/cantera/commit/05eaa0a5e4d0c73c5827f7f2c9bbd090d68e8c30"><code>05eaa0a</code></a>)</li>
<li>Add option to use case-sensitive species names (<a href="https://github.com/Cantera/cantera/pull/689">#689</a>)</li>
<li>Treat deprecation warnings issued from Python and C++ consistently (<a href="https://github.com/Cantera/cantera/pull/796">#796</a>)</li>
<li>Improve sample build scripts on maCOS (<a href="https://github.com/Cantera/cantera/pull/612">#612</a>)</li>
<li>Updated the 'diamond_cvd.py' example to include plotting the output (<a href="https://github.com/Cantera/cantera/pull/630">#630</a>)</li>
<li>Make GRI-3.0 mechanisms consistent with latest online version (<a href="https://github.com/Cantera/cantera/pull/718">#718</a>)</li>
<li>Follow Python naming convention for arguments to ThermoPhase.equilibrate (<a href="https://github.com/Cantera/cantera/pull/684">#684</a>)</li>
<li>Remove unused Chemkin input files from the source distribution (<a href="https://github.com/Cantera/cantera/pull/799">#799</a>)</li>
<li>Move heat_release_rate method to Python Kinetics class (<a href="https://github.com/Cantera/cantera/pull/810">#810</a>)</li>
<li>Automatically add 'negative_A' option for third body reactions when converting from Chemkin input (<a href="https://github.com/Cantera/cantera/pull/822">#822</a>)</li>
<li>Allow negative pre-exponential factor for falloff reactions (<a href="https://github.com/Cantera/cantera/pull/868">#868</a>)</li>
<li>Search current working directory before built-in data directories when using Python (<a href="https://github.com/Cantera/cantera/pull/792">#792</a>)</li>
<li>Check for additional invalid string-to-double conversions when parsing composition strings (<a href="https://github.com/cantera/cantera/commit/84535483f9ba768c72196fccf2e9ac2c1ee9d0dd"><code>8453548</code></a>)</li>
<li>The default branch for the Cantera Git repository is now named 'main' (<a href="https://github.com/Cantera/cantera/pull/890">#890</a>)</li>
<li>Include more significant digits for Redlich-Kwong coefficients when converting from CTI to XML (<a href="https://github.com/cantera/cantera/commit/ec7f779434d705ea5097abdc88a723e1dd4c96e8"><code>ec7f779</code></a>)</li>
</ul>

<h2>Bugs fixed:</h2>
<ul>
<li>Fixed various compilation issues on specific platforms and with certain SCons/compiler options (<a href="https://github.com/Cantera/cantera/pull/561">#561</a>, <a href="https://github.com/Cantera/cantera/pull/572">#572</a>, <a href="https://github.com/Cantera/cantera/pull/601">#601</a>, <a href="https://github.com/Cantera/cantera/pull/648">#648</a>, <a href="https://github.com/Cantera/cantera/pull/661">#661</a>, <a href="https://github.com/Cantera/cantera/pull/674">#674</a>, <a href="https://github.com/Cantera/cantera/pull/676">#676</a>, <a href="https://github.com/Cantera/cantera/pull/685">#685</a>, <a href="https://github.com/Cantera/cantera/pull/742">#742</a>, <a href="https://github.com/Cantera/cantera/pull/765">#765</a>, <a href="https://github.com/Cantera/cantera/pull/779">#779</a>, <a href="https://github.com/Cantera/cantera/pull/803">#803</a>, <a href="https://github.com/Cantera/cantera/pull/824">#824, <a href="https://github.com/Cantera/cantera/pull/879">#879</a>, <a href="https://github.com/Cantera/cantera/pull/891">#891</a>, <a href="https://github.com/Cantera/cantera/pull/918">#918</a>, <a href="https://github.com/Cantera/cantera/pull/960">#960</a>, <a href="https://github.com/Cantera/cantera/pull/962">#962</a>, <a href="https://github.com/Cantera/cantera/pull/973">#973</a>, <a href="https://github.com/cantera/cantera/commit/46b7cf180a9c10bf27330de804353c9ded792b7f"><code>46b7cf1</code></a>)</li>
<li>Fix handling of local quantity units rate for Chebyshev rate constants when converting Chemkin input files (<a href="https://github.com/Cantera/cantera/pull/600">#600</a>)</li>
<li>Fix setting of Soret and multicomponent diffusion options after exceptions when using the "auto" option to Sim1D.solve (<a href="https://github.com/Cantera/cantera/pull/631">#631</a>)</li>
<li>Disable free flame domain width check when auto=False (<a href="https://github.com/Cantera/cantera/pull/690">#690</a>)</li>
<li>Allow setting beta = 0 for electrochemical reactions (<a href="https://github.com/Cantera/cantera/pull/955">#955</a>)</li>
<li>Fix Redlich-Kwong phase to not use the element potential equilibrium solver (<a href="https://github.com/Cantera/cantera/pull/898">#898</a>)</li>
<li>Fix erroneously-rounded transport coefficients in input files derived from GRI 3.0 (<a href="https://github.com/Cantera/cantera/pull/598">#598</a>)</li>
<li>Use correct phase state after Reactor mass flow rate evaluation (<a href="https://github.com/Cantera/cantera/pull/651">#651</a>)</li>
<li>Avoid NaN in entropy with small negative mass fractions (<a href="https://github.com/Cantera/cantera/pull/686">#686</a>)</li>
<li>Fix conversion of Chemkin input files with surface reactions with explicit reverse rates (<a href="https://github.com/Cantera/cantera/pull/754">#754</a>)</li>
<li>Fix conditional property updates in IonGasTransport (<a href="https://github.com/Cantera/cantera/pull/568">#568</a>)</li>
<li>Fix Chebyshev rate evaluation with only 1 point in T or P (<a href="https://github.com/Cantera/cantera/pull/706">#706</a>)</li>
<li>Check for non-existent species in reaction orders when adding reactions (<a href="https://github.com/cantera/cantera/commit/e4362d37e7cf2d527a14c6202868b5ffd76f2436"><code>e4362d3</code></a>)</li>
<li>Fix various edge cases for saturated PureFluid states (<a href="https://github.com/Cantera/cantera/pull/907">#907</a>)</li>
<li>Fix comparisons of non-numeric text in test_problems (<a href="https://github.com/Cantera/cantera/pull/785">#785</a>)</li>
<li>Prevent overwriting of pre-existing extra SolutionArray columns (<a href="https://github.com/Cantera/cantera/pull/820">#820</a>)</li>
<li>Fix slicing of SolutionArray (<a href="https://github.com/Cantera/cantera/pull/816">#816</a>, <a href="https://github.com/Cantera/cantera/pull/837">#837</a>)</li>
<li>Prevent erroneous creation of standalone Kinetics and Transport objects in Python (<a href="https://github.com/Cantera/cantera/pull/845">#845</a>)</li>
<li>Ensure that the mass flow rate returned by FlowDevice objects is correct after a call to ReactorNet::advance (<a href="https://github.com/Cantera/cantera/pull/886">#886</a>)</li>
<li>Fix indexed assignment of 'extra' columns in SolutionArray (<a href="https://github.com/Cantera/cantera/pull/838">#838</a>)</li>
<li>Fix handling of reaction units settings not on last line when convert Chemkin input files (<a href="https://github.com/cantera/cantera/commit/540777c32b57d99c61d0bf1e2cc825353be4846b"><code>540777c</code></a>)</li>
<li>Fix over-zealous detection of section 'end' labels when converting Chemkin input files (<a href="https://github.com/cantera/cantera/commit/e3424d8ed49f5f7611bc94933109292d32b732ec"><code>e3424d8</code></a>)</li>
<li>Fix building and installing the minimal Python package (<a href="https://github.com/Cantera/cantera/pull/928">#928</a>, <a href="https://github.com/Cantera/cantera/pull/974">#974</a>)</li>
<li>Check for a valid species index in ThermoPhase::species() (<a href="https://github.com/Cantera/cantera/pull/949">#949</a>)</li>
<li>Fix some corner cases in Sim1D::setFixedTemperature (<a href="https://github.com/Cantera/cantera/pull/936">#936</a>)</li>
<li>Retain user-specified products in counterflow premixed flame when using "auto" option (<a href="https://github.com/cantera/cantera/commit/b633544477facbb9f4390b380a2e7edefac79010"><code>b633544</code></a>)</li>
<li>Fix refinement check in ic_engine.py example (<a href="https://github.com/cantera/cantera/commit/d9b95b2efbe6c512f00f72fe2e0bf4fda76ba7e6"><code>d9b95b2</code></a>)</li>
<li>Fix issues with Blasius BVP example, and install it with other C++ samples (<a href="https://github.com/cantera/cantera/commit/dc09040274370149c6dafb05e126e875e0db6549"><code>dc09040</code></a>, <a href="https://github.com/cantera/cantera/commit/600580ead4906339fee0bae6a80356ec5d3a4191"><code>600580e</code></a>, <a href="https://github.com/cantera/cantera/commit/c26db356e3523c89878e8a6f5b5cd5d64dc32b73"><code>c26db35</code></a>, <a href="https://github.com/cantera/cantera/commit/b9a5913af01cb316734f3742d111614fc0a957b1"><code>b9a5913</code></a>, <a href="https://github.com/cantera/cantera/commit/22efbe25dc97c2e42960c7cf09335ca546ec8ef5"><code>22efbe2</code></a>, <a href="https://github.com/cantera/cantera/commit/8c213da93226859e741ac108333f1b08c4db7b24"><code>8c213da</code></a>)</li>
</ul>

<h2>Documentation updates:</h2>
<ul>
<li>Fix errors in equations (<a href="https://github.com/Cantera/cantera/pull/557">#557, <a href="https://github.com/Cantera/cantera/pull/970">#970</a>, <a href="https://github.com/cantera/cantera/commit/3ff5d87b815eb6c299745954947ff566e55066cc"><code>3ff5d87</code></a>, <a href="https://github.com/cantera/cantera/commit/c1d721dc94b4f5f8dedc47a4d8066bb24d761599"><code>c1d721d</code></a>)</li>
<li>Improve "offline" builds of API documentation (<a href="https://github.com/Cantera/cantera/pull/562">#562</a>)</li>
<li>Document required versions of Cantera and dependencies for Python examples (<a href="https://github.com/Cantera/cantera/pull/729">#729</a>, <a href="https://github.com/Cantera/cantera/pull/756">#756</a>)</li>
<li>Update AUTHORS list to include authors from all Cantera organization repos (<a href="https://github.com/Cantera/cantera/pull/573">#573</a>)</li>
<li>Fix various typos and other issues (<a href="https://github.com/Cantera/cantera/pull/591">#591</a>, <a href="https://github.com/Cantera/cantera/pull/627">#627</a>, <a href="https://github.com/Cantera/cantera/pull/636">#636</a>, <a href="https://github.com/Cantera/cantera/pull/673">#673</a>, <a href="https://github.com/Cantera/cantera/pull/709">#709</a>, <a href="https://github.com/Cantera/cantera/pull/726">#726</a>, <a href="https://github.com/Cantera/cantera/pull/744">#744</a>, <a href="https://github.com/Cantera/cantera/pull/770">#770</a>, <a href="https://github.com/Cantera/cantera/pull/771">#771</a>, <a href="https://github.com/Cantera/cantera/pull/781">#781</a>, <a href="https://github.com/Cantera/cantera/pull/790">#790</a>, <a href="https://github.com/Cantera/cantera/pull/793">#793</a>, <a href="https://github.com/Cantera/cantera/pull/939">#939</a>, <a href="https://github.com/cantera/cantera/commit/50997a165119ccb997206e4738750621510bbd79"><code>50997a1</code></a>, <a href="https://github.com/cantera/cantera/commit/9f5dfbdb1273c05d176c58ab62fe7dbb12d24a94"><code>9f5dfbd</code></a>, <a href="https://github.com/cantera/cantera/commit/442433ad3738ecf17052811bd5751d77666b558b"><code>442433a</code></a>, <a href="https://github.com/Cantera/cantera/pull/975">#975</a>, <a href="https://github.com/Cantera/cantera/pull/976">#976</a>)</li>
</ul>
</details>

Page 1 of 3

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.