Skip to content

CT website v1.1.0

Compare
Choose a tag to compare
@AlbertoCuadra AlbertoCuadra released this 03 Sep 19:32
· 216 commits to master since this release

Major changes

  • Object-oriented: Combustion Toolbox is now object-oriented in v1.1.0. This transition enhances integration with other frameworks, boosts performance, and improves encapsulation. The three main modules, CT-EQUIL, CT-SD, and CT-ROCKET, now rely on the EquilibriumSolver, ShockSolver, DetonationSolver, and RocketSolver classes.

  • New algorithm for initial chemical composition estimation: The estimation of initial gaseous species composition has been upgraded from a fixed value approach to a more sophisticated max-min composition method, akin to the Mutation++ code. This estimation, solved using the Simplex algorithm (see Simplex.m and SimplexDual.m), provides more accurate and reliable results for all the species involved, including condensed species.

  • Improved chemical equilibrium solver: The chemical equilibrium solver, encapsulated in the EquilibriumSolver class, now includes slack variables to manage the composition of condensed species at chemical equilibrium. This approach, inspired by the Reaktoro and FastChem-Condensed codes, allows for simultaneous computation of all condensed species that meet the vapor pressure test.

  • Performance improvements: The new version offers a significant performance boost, with the code running 1.3x to 1.9x faster than v1.0.5.

  • Cached thermodynamic functions: The thermodynamic functions are typically the most called routines when using the Combustion Toolbox. Although their performance was already fast, these functions are now temporarily stored in the cache for even faster data access.

  • New code organization: The code components are now organized using namespaces (+folders), ensuring a more structured and maintainable codebase.

  • Full Changelog: For a detailed list of changes, visit the Full Changelog.

Full Changelog: v1.0.5...v1.1.0