Skip to content

Releases: Cantera/cantera

Cantera 3.1.0b1

11 Nov 18:23
Compare
Choose a tag to compare
Cantera 3.1.0b1 Pre-release
Pre-release

The Cantera development team is pleased to announce the availability of Cantera 3.1.0b1. There have been over 1400 commits to Cantera since the last version, 3.0.0, which was released in August 2023. We have closed or merged 112 pull requests and closed 75 issues and 23 enhancement proposals. Instructions for installing Cantera 3.1 are available on the Cantera website.

Highlights

New features

  • Add electron collision reactions (C++ class ElectronCollisionPlasmaRate) based on cross section data from the LXCat database; see plasma.py (#1262)
  • Added an example demonstrating a 1D packed-bed reactor; see 1D_packed_bed.py (E#43)
  • Added option to compute diffusive fluxes using mass fraction gradients in the 1D solver (E#195, #1668)
  • Expose Peng-Robinson EoS parameters to Python interface (#1664)
  • Created a new repository to clearly identify example input data and allow use of larger, more detailed mechanisms (E#22, #1689)
  • Add HDF5 support to PyPI packages (E#205, (#1727)
  • Add stack trace option to CanteraError for enhanced debugging (#1730)
  • Enable cross compiling support without patches to simplify some package builds (E#210, #1749)
  • Add support for Python 3.12 (#1604, #1648, #1716)
  • Add compatibility with SUNDIALS 7.0 (#1672)
  • Add compatibility with NumPy 2.0 (#1706, #1713)
  • Support compilation in C++20 mode (#1739)
  • Automatically adjust temperature bounds for low-temperature flames (#1684, #1705)

Changes to existing capabilities

  • Refactored implementation of 1D flame governing equations (#1595, #1619)
  • Improvements to 1D solver logging (#1660, #1759)
  • Significant improvements to error messages reported when converting mechanisms using ck2yaml (#1669, #1736)
  • Improved handling of edge cases involving third body colliders and “duplicate” reactions (#1696)
  • Improve distinction between selecting none and default transport models (#1680, #1705)
  • Improve error message for flames initialized with bad boundary conditions (#1694, #1705)
  • Disallow redundant flame grid specification (#1693, #1705)
  • Simplify YAML input for extensible interface reactions (#1709)
  • Improve consistency of Func1 API between Matlab and Python interfaces (#1758, #1798)
  • Use Solution objects to store reactor contents (#1663, #1685)
  • Move locks that prevent adding species to ThermoPhase objects that are in use from Python to C++ (#1686)
  • Use Jinja templates in C# sourcegen (#1785)
  • Update ck2yaml to use argparse (#1616)
  • Make names generated for reactor network objects reproducible (#1765)
  • Make generated sources and error messages deterministic (#1804)
  • Remove features deprecated in Cantera 3.0. (#1605)
  • Remove legacy Matlab toolbox (E#196, #1670, #1688)
  • Remove python_minimal interface (E#208, #1745)
  • Expanded automated CI testing and other CI maintenance (#1608, #1612, #1630, #1652, #1662, #1671, #1677, #1703, #1738, [#1752](https://github.com/Cantera/cantera/pul...
Read more

Cantera 3.0.0

22 Aug 21:55
Compare
Choose a tag to compare

The Cantera development team is pleased to announce the availability of Cantera 3.0.0. There have been over 1400 commits to Cantera since the last version, 2.6.0, which was released in May 2022. We have closed or merged 192 pull requests and closed 111 issues. Instructions for installing Cantera 3.0 are available on the Cantera website.

Highlights

Additional new features

(click here to expand)
  • Add support for polynomial dependency of activation energy on surface species coverages (documentation, #1495)
  • Add speed of sound property to ThermoPhase objects (sound_speed.py, #1491)
  • Implemented isothermal compressibility and thermal expansion coefficient calculations for Redlich-Kwong and Peng-Robinson equations of state (E#122, #1421)
  • Add interfaceCurrent (C++) and interface_current methods to Kinetics objects (#1398)
  • Add molecular weight attribute to Species objects (#1266)
  • Add set_equivalence_ratio and set_mixture_fraction methods to Python Quantity objects (#1517)
  • Add array size methods to Python SolutionArray class (#1284)
  • Add Solution class to clib (#1448, #1600)
  • Introduce factory for creating 1D domains (newDomain in C++, domain_new in clib) (#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, #1513, #1521)
  • Provide a more complete interface to the C++ Units class in Python (#1285)
  • Add a sample program demonstrating the use of the Cantera C interface, clib (#1454)
  • Add an example of modelling a porous media burner using the ExtensibleReactor class (PorousMediaBurner.py, #1443)
  • Add an example demonstrating saving and loading of 1D flame simulations and restarting with different initial guesses (flame_initial_guess.py, #1293)
  • The test suite now includes a comprehensive set of thermodynamic consistency tests for all phase models (E#114, #1299, #1501)
  • Consolidate literature references in the C++ documentation into a bibliography (#1550, #1575)
  • Enable linking to the Cantera shared library on Windows (E#140, [#1429](https://github.com/...
Read more

Cantera 3.0.0b1

02 Jul 20:27
Compare
Choose a tag to compare
Cantera 3.0.0b1 Pre-release
Pre-release

See notes for Cantera 3.0.0.

Cantera 2.6.0

02 May 02:58
Compare
Choose a tag to compare

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 and closed 101 issues.

New features, bug fixes, and other changes

Highlights

Click here for details on additional new features, changes to existing capabilities, and fixed bugs

New features

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

Changes to existing capabilities

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

Cantera 2.6.0b2

10 Apr 22:12
Compare
Choose a tag to compare
Cantera 2.6.0b2 Pre-release
Pre-release

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 and closed 90 issues. Some of the highlights for this release are:

  • Major redesign of how reaction rates are handled internally to improve extensibility and enable new capabilities (E#63, E#87)
  • Enable delegation of reactor implementation to user-provided Python classes (custom2.py)
  • Enable serialization of Cantera objects to YAML (mechanism_reduction.py)
  • Implement pickling of Python Solution objects
  • Add PyPI 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)
  • Add calculation of sparse, analytical Jacobians for gas kinetics (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 (using pip), the cantera conda channel, the cantera-team/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, @BangShiuh, @blackrabbit17, @DavidAkinpelu, @anthony-walker, @band-a-prend, @bryanwweber, @chinahg, @d-e-t, @decaluwe, @g3bk47, @gkogekar, @ischoegl, @jongyoonbae, @lavdwall, @leesharma, @mefuller, @paulblum, @speth, @stijn76, @tpg2114

Cantera 2.6.0b1

26 Mar 15:19
Compare
Choose a tag to compare
Cantera 2.6.0b1 Pre-release
Pre-release

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 and closed 87 issues. Some of the highlights for this release are:

  • Major redesign of how reaction rates are handled internally to improve extensibility and enable new capabilities (E#63, E#87)
  • Enable delegation of reactor implementation to user-provided Python classes (custom2.py)
  • Enable serialization of Cantera objects to YAML (mechanism_reduction.py)
  • Implement pickling of Python Solution objects
  • Add PyPI 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)
  • Add calculation of sparse, analytical Jacobians for gas kinetics (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, @BangShiuh, @blackrabbit17, @DavidAkinpelu, @anthony-walker, @band-a-prend, @bryanwweber, @chinahg, @d-e-t, @decaluwe, @g3bk47, @gkogekar, @ischoegl, @jongyoonbae, @lavdwall, @leesharma, @mefuller, @paulblum, @speth, @stijn76, @tpg2114

Cantera 2.5.1

13 Feb 00:45
Compare
Choose a tag to compare

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 and 100 issues. The complete list of changes can be found on the Cantera Wiki page, 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 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. 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, @agarwalrounak, @arghdos, @band-a-prend, @BangShiuh, @bryanwweber, @CyberDrudge, @decaluwe, @dholland88, @g3bk47, @inducer, @ischoegl, @jsantner, @korffdm, @kyleniemeyer, @lavdwall, @lionkey, @manikmayur, @mgashwinkumar, @paulblum, @rwest, @sameshl, @sin-ha, @speth, @spinnau, @ThanasisMattas, @tsikes, @wbessler

Click here to see the complete Changelog

New Features:

  • Added a new, YAML-based input file format (#584, #663, #664, #671, #693, #707, #708, #716, #723, #738, #750, #764, #768, #773, #784, #794, #795, #813, #855, #857, #866, #869, #880, #897, #899, #961, #970, #941, #974)
  • Add interface for reading and writing 1D Flame and SolutionArray objects from/to HDF5 files (#680, #687, #805, #840, #860, #871, #900, #943, #931)
  • Add BinarySolutionTabulatedThermo class, which implements implements tabulated standard state thermodynamics in a binary solution. (#563, #606, #637, #640, #725)
  • Introduce C++ Solution class to simplify creation of coupled ThermoPhase, Kinetics, and Transport objects (#696, #735)
  • Determine Redlich-Kwong parameters from a database of critical property data (#574, #576, 33e198f, ebb93cb)
  • Make transport property calculations available for pure fluid water phases (#558)
  • Make InterfaceKinetics.advance_coverages_to_steady_state available in the Python interface (#592, #610)
  • Add functions for returning the phase of matter for ThermoPhase objects (#722, #839)
  • Add new ReactorNet::advanceTowards method to combine benefits of both the 'step' and 'advance' methods; see 'reactor3.py' example (#629, #756)
  • Enable setting the maximum number of CVODEs steps in the Python interface (#581)
  • Add factories for FlowDevice and Wall objects, to enable creation of user-defined derived classes (#632)
  • Allow classes derived from StFlow to have additional state variables (#624)
  • Add wrappers to make "piecewise-Gibbs" and "NASA9" species thermo objects accessible in Python (#711)
  • Add set_equivalence_ratio function to SolutionArray objects (#677)
  • Add ability to sort SolutionArray objects (#688)
  • Support use of Sundials versions up to 5.7 (5e22653, #672, #780, #814, #974)
  • Add functions for setting species aliases and finding isomers (#714, #876)
  • Added 'warn_user' function as a consistent way of issuing warnings from C++ (#741)
  • Add get/set equivalenceRatio/mixtureFraction functions to C++ (#851)
  • Make getDeltaEnthalpies available in the Matlab interface (#659)
  • Add 'TabulatedFunction' class for providing time-varying reactor inputs specified by tabular input (#797)
  • Add plug flow reactor example in MATLAB (#701)
  • Make liquid-water-IAPWS95 available as a phase model (#921)
  • Make species charge information available in Python (#863)
  • Add 'kinet...
Read more

Cantera 2.5.0b1

02 Sep 02:59
Compare
Choose a tag to compare
Cantera 2.5.0b1 Pre-release
Pre-release

Cantera 2.5.0b1

The Cantera development team is pleased to announce the general availability of the first beta for the next release of Cantera, v2.5.0. There have been almost 900 commits to Cantera since the last version, 2.4.0, which was released in August 2018. We have closed or merged more than 200 pull requests and 100 issues. The complete list of changes can be found on the Cantera Wiki page: https://github.com/Cantera/cantera/wiki/Complete-git-log-since-2.4.0

Cantera 2.5.0 introduces a new input file format, based on the YAML data format. This format will eventually replace the CTI and XML (sometimes called CTML) formats that Cantera has used for many years. Converter scripts from CTI and XML to YAML, as well as from CHEMKIN (CK) format to YAML, are provided with this release:

  • ctml2yaml
  • cti2yaml
  • ck2yaml

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.

This release was made possible by the following contributors: Dave Holland, @12Chao, @BangShiuh, @CyberDrudge, @ThanasisMattas, @agarwalrounak, @arghdos, @band-a-prend, @bryanwweber, @decaluwe, @g3bk47, @ischoegl, @jsantner, @kyleniemeyer, @lavdwall, @lionkey, @manikmayur, @mgashwinkumar, @paulblum, @rwest, @sameshl, @sin-ha, @speth, @spinnau, @tsikes, @wbessler, @korffdm

Cantera 2.4.0

24 Aug 21:23
Compare
Choose a tag to compare

Cantera 2.4.0

Cantera 2.4.0 includes more than 380 commits to the code since 2.3.0, merges more than 70 pull requests, and closes almost 60 issues. In this release, we improved the maintainability of Cantera by removing or deprecating old, untested code, moving the website and Mixmaster to separate repositories, and automating more of the build/testing process. We also added new features to the 1-D reactor code (among other areas), including adding an ionized gas transport class and the IonFlow and BurnerIonFlame classes, providing better accessing to callbacks during 1-D solutions, and automatically detecting certain common failure conditions of the 1-D solver. This release of Cantera was made possible by contributions from 14 developers: @speth, @bryanwweber, @BangShiuh, @decaluwe, @wandadars, @jsantner, @arghdos, @rwest, @g3bk47, @awehrfritz, @band-a-prend, @vdevgan, @KyleLinevitchJr, and @MarcDuQuesne.

For installation and compilation instructions for Cantera 2.4.0, please see the directions on the Cantera website. In addition to Conda packages, Windows installers, and Ubuntu packages, this release also features the addition of a pre-compiled Matlab toolbox for macOS users, replacing Homebrew as the prefered method of installing Cantera for Matlab on macOS.

Thanks to a small development grant from NumFOCUS (see more about NumFOCUS below), @bryanwweber and @decaluwe reorganized and restyled the Cantera website. The website has moved to a separate repository, allowing the website content to be updated without modifications to the main Cantera source code. We also tried to make it easy for all of our users to find what they're looking for quickly, from installation instructions and tutorials for beginners, to advanced examples and API documentation for experienced Cantera programmers. The new website also redirects all traffic to HTTPS, ensuring a secure experience for everyone.

Cantera is now officially part of NumFOCUS. NumFOCUS is a 501(c)3 nonprofit dedicated to supporting the open source scientific computing community. If you are interested in learning more about NumFOCUS, please visit their website at https://numfocus.org, or our website at https://cantera.org/community.html#donations.

Cantera 2.4.0 is the last release that will be compatible with Python 2.7. Support for Python 2.7 from the Python Software Foundation will end January 1, 2020. Given the recent release cadence of Cantera, the next major version of Cantera will probably be released very close to that date, so we have made the decision to drop Python 2.7 support for Cantera 2.5.0 and higher.

One notable change to the build requirements for Cantera 2.4.0 is that SCons 3.0.0 or higher must be used to compile the source code. This means that either Python 2 or Python 3 can be used to run SCons. In addition, there are now three options to handle building the Python interface, depending on whether the user wants to build for Python 2 or Python 3. Please check the documentation or run scons help for more information.

Summary of changes in Cantera 2.4.0

Bugs fixed

  • Fix inconstencies and bugs in several ThermoPhase derived classes, including PDSS_IdealGas, IonsFromNeutralVPSSTP, PDSS_IonsFromNeutral, PDSS_HKFT, LatticePhase, PDSS_SSVol, ConstDensityThermo, and PureFluidPhase
  • Preserve constant property pair when multiplying Quantity objects
  • Fix using pure fluids in reactors
  • Add temperature dependence of rotational relaxation in transport calculations
  • Disable linking to external SUNDIALS libraries when building the Matlab toolbox

Changes to existing capabilities

  • Allow instantiation of ThermoPhase derived classes without XML
  • set_equivalence_ratio now supports sulfur oxidation
  • Make all complex object types (ThermoPhase, Kinetics, Transport, Reactor, Domain1D, etc.) objects non-copyable
  • Deprecate FreeFlow and AxiStagnFlow classes by moving the relevant functions into the StFlow class
  • Allow convertMech function to be called multiple times
  • Remove the requirement for users to have Boost headers installed when building against the Cantera library
  • Change the options to build the Python interface, since SCons can be run by Python 3
  • Update GTest, fmtlib, SUNDIALS, and Eigen submodule versions

Additions

  • Add ion gas transport model, and IonFlow and BurnerIonFlame flame classes
  • Add C++ OpenMP, Non-Ideal Shock Tube, PSR/WSR, and time-dependent mass flow rate examples
  • Add class AnyMap
  • Allow negative reaction orders
  • Add unity Lewis number transport model
  • Add electron to the built-in elements
  • Add get_equivalence_ratio function
Click here to see the complete changelog

Full Changelog

Bugs fixed

Thermo/Species/Elements

  • Fix issues parsing composition strings with mixtures of commas, colons, and spaces (3f6f580)
  • Fix setting mass/mole fractions of phases with only a single species (ed8de04)
  • Fix reference state calculations (38d291c, 7b529ac)
  • Fix test failures due to inconsistent species addition order (11a0727, #433)
  • Fix errors in entropy calculation in PDSS_IdealGas (dfb32f0)
  • Fix and test creation of IonsFromNeutralVPSSTP objects (3a11938)
  • Fix inconsistentices in PDSS_IonsFromNeutral (ff46dc9)
  • Fix PDSS_HKFT initialization when only one property is given (2c3512c)
  • Fix default molar volume in LatticePhase (f3ba29f)
  • Setting the composition with an empty array raises an exception (8a4142d)
  • Fix implementation and documentation of PDSS_SSVol (ee663c9, a19b2bd, 286217d, be8e51d)
  • Fix definition of ConstDensityThermo::standardConcentration (89fded3, #458, #490)
  • Preserve constant property pair when multiplying Quantity objects (c9b0bce)
  • Fix PureFluidPhase state data consistency (fb68cae, 0417d31)

Kinetics

  • Validate balance of surface sites for interface reactions (ac53371, #412)
  • Reactions which are declared as duplicate but do not have the corresponding duplicate reaction are errors (0fd2f7c, 2678b57, #389)
  • Fix use of 'scale' and 'OneWayFlow' options in ReactonPathDiagrams (0d982c8, 0249ce8, #378, #424)
  • Fix how species contributions to reaction paths are handled (3093e6e, 5a0fb57, 092e007, #377, #424)
  • Preserve pressure units in PLOG reactions when converting from Chemkin to CTI format (7b7aea2, a02753a, #435)
  • Fix style arguments for reaction path diagrams (b41038f, #463)
  • Fix duplicate reaction checking (513b432, 4c489c1, #468)
  • Fix failures due to tolerances in some kinetics tests (67aa9eb)

Transport

0-D Reactors

1-D Flames

  • Fix handling of domain boundary conditions when the energy equation is not solved (52dbe8c)
  • Fix handling of Soret diffusion enabling/disabling with respect to mixture-averaged diffusion approximation (a03afbd, 4bd5e92, fde5051, #511)

CTI/Input files

  • Fix file size limit when converting CTI to CTML (0a1257d, #416, #430)
  • Fix for reactions with pathologically named third bodies (55a8910, 6d591b8, 44b24ca, #460)
  • ctml_writer is more tolerant of non-ASCII characters (0c0a38d)
  • Fix incorrect entry in nasathermo.dat (3933a94, #491)
  • Fix writing surface reactions to the CTI file when there are no gas-phase reactions (552ba97)
  • Fix over-zealous detection of new input file sections (f47e98a)
  • Detect badly-formatted values of the 4th Troe coefficient (bde6e05)
  • Suppress some output when quiet=True (70016b9)
  • Fix duplicate key check in parseCompString (d091617, #525)
  • Fix spurious unexpected output warnings (fd57936)

Examples

  • Fix errors and empty figures in IC engine example (6f564e6, 0d01d03)
  • Remove extraneous arguments in Matlab example scripts (a31b7d1)
  • Remove or fix broken Matlab examples (536158b, 987a247)

Other

  • Add explicit dependencies on the scons build step for scons test and scons install (70e1063, #432)
  • Fix reproducibility of add_species_sequential test (11a0727, #433)
  • Disable linking to external SUNDIALS libraries when building the Matlab toolbox (c125878, #431, #456)
  • Switch SourceForge links in the docs to point to GitHub (d920f2e, #442, #455)
  • Fix typos in documentation (05809bb, fec6c34, 35ac1ac, af4ccae, #449)
  • Easier debugging of NumPy import error messages during build (3f69f6a)
  • Use Trusty Tahr and system Python 3 on TravisCI Linux builds (9e5da87, 45891a2)
  • Fix parallel builds of the Matlab toolbox (8312396, #483)
  • Remove outdated MacPorts installation instructions (46f8ef5, #496)
  • Fix wrong environment variable MATLAB_PATH -> MATLABPATH (d86a7c1, #501)
  • Fix broken links in README, clarify PR template, add Gitter, add badges (e052a44, 8de267f, de3ec3d, 0120f2f, #505, #506, #513)
  • Fix installing dependencies on Appveyor (39c4103, 0b8f028, b1a010e, #517, #529)
  • Add update of git submodules to code checkout instructions (66ba4b5)
  • Remove blank documentation page (84acdb1, #518)
  • Fix notation for mixture-averaged diffusion coefficient (df6ecb1)
  • Fix compilier warning about m_Faraday_dim (...
Read more

Cantera 2.3.0

19 Jan 03:27
Compare
Choose a tag to compare

Installation Options

  • Conda / anaconda packages for Windows, Linux, and macOS via the cantera channel. See installation instructions for more details.
  • Windows binary installers (downloads below; To use the Matlab toolbox on Windows, install both Cantera-2.3.0-x64.msi and one of the Python modules. The Python installers are standalone and do not require the base Cantera package. Installers are available Python 2.7, Python 3.4, Python 3.5, and Python 3.6. See detailed instructions for more.
  • Ubuntu packages for 16.04 (Xenial Xerus) and 16.10 (Yakkety Yak) are available via the PPA at https://launchpad.net/~speth/+archive/ubuntu/cantera. Additional details available here.
  • Homebrew formula for macOS. See additonal instructions.
  • Download and compile the source code. Full instructions here.

Documentation

Documentation for Cantera 2.3.0 can be found at: http://cantera.github.io/docs/sphinx/html/index.html.

Changes in Cantera 2.3.0

Highlights are listed here. See the full changelog for more.

  • Add ability to modify species data for existing Phase objects
  • Make species names case-preserving instead of case-sensitive, and allow colons in species names
  • Add option for Motz & Wise correction to sticking reactions
  • Implement enthalpy of formation sensitivity analysis for reactor networks
  • Implement the Cython function advance_to_steady_state for reactor networks
  • Eliminate most known 1D flame solver failures by improving Jacobian evaluation, and using better default initial grids and initial guesses
  • Introduce 'auto' option to Sim1D.solve to automatically try multiple initial grids
  • Generalize initial profile generation for diffusion flames for arbitrary fuel/oxidizer combinations
  • Add general support for calculating adjoint sensitivities for 1D flames
  • Add a Twin Premixed Counterflow Flame class and example
  • Support conversion of surface mechanism files
  • Provide better error message for problematic reaction and thermo entries when converting input files
  • Add 'nonreactant_orders' option to allow non-reactant orders
  • Allow adding species / reactions from Python
  • Add new classes Quantity and SolutionArray to Python
  • Make Python test suite runnable from an installed copy of the Python module
  • Introduced Continuous Integration testing using Travis CI and AppVeyor
  • Use Git submodules for Sundials, Eigen, Google Test, and libfmt if system versions are not installed
  • Use Sundials and Eigen to eliminate the need for bundled LAPACK
  • Added Conda build recipe and made binaries available through anaconda.org
  • Add support for Sundials 2.7
  • Deprecate unused classes, functions, arguments, and constants (see http://cantera.github.io/dev-docs/doxygen/html/deprecated.html for details)
  • Add notices to documentation for classes with no tests or examples (see #267)
  • Make clib usable as a pure C (not C++) interface and add tests