Added
- Unifac 2.0: Hayer, Nicolas, Thorsten Wendel, Stephan Mandt, Hans Hasse, and Fabian Jirasek. “Advancing Thermodynamic Group-Contribution Methods by Machine Learning: UNIFAC 2.0.” Chemical Engineering Journal 504 (January 15, 2025): 158667. https://doi.org/10.1016/j.cej.2024.158667.
- First pass implementation of Bondi group contribution method for estimating R and Q for UNIQUAC (and regressing new UNIFAC groups). Some definitions are unclear and/or hard to compute programatically.
- More UNIFAC groups have SMARTS groups patterns assigned to them
- Add functions for identifying which functional groups are in a chemical
- Molecule graph structure functions `count_rings_by_atom_counts`, `identify_functional_group_atoms`, `identify_conjugated_bonds`
- New Diky Joback implementation which improves predictions of ideal gas heat capacity, from: Elliott, J. Richard, Vladimir Diky, Thomas A. Knotts IV, and W. Vincent Wilding. The Properties of Gases and Liquids, Sixth Edition. 6th edition. New York: McGraw Hill, 2023.
- Activity coefficient models have `missing_interaction_parameters` function added to return a list of compound interactions that are missing
Changed
- NISTUFSG CH=NOH previously had the group ID 309, but this duplicated another 309 group CH2(O)2, so it was reassigned 1309 in thermo https://github.com/CalebBell/thermo/issues/158
- Reorganized the teperature dependent chemical property data additions to TDependentProperty objects so that data is added through generic methods, instead of hardcoding the method and attributes on the classes that the attributes are stored on. This positions thermo for adding new data sets easier in the future.
- Renamed arguments `cross_B_model` to `B_mixing_rule` of `VirialGas` to avoid confusion with similar parameter in `VirialCSP`. and the same for `cross_C_model` to `C_mixing_rule`
- Fix missing negative sign on `H_dep` of Virial model - this had impact on enthalpy derivatives, `G_dep`, and fugacity related terms as well. This was a serious bug and any `VirialCSP` calculations should be repeated because of it.
- Clean up UNIFAC assignment tests
- Fix inconsistency of using IAPWS name for multiple TDependentProperty methods