Recent Releases of ThermoFun
ThermoFun - v0.5.3
What's Changed
- Update ci-build.yml by @gdmiron in https://github.com/thermohub/thermofun/pull/77
- added memoizeN function template to limit number of memoized in/outputs by @j-engelmann in https://github.com/thermohub/thermofun/pull/76
- option to use water triple properties consistent with NEA by @gdmiron in https://github.com/thermohub/thermofun/pull/78
- option to change the memoization chache size by @gdmiron in https://github.com/thermohub/thermofun/pull/79
- Added disable memoize mode, and unlimited (old) memoize mode by @sdmytrievs in https://github.com/thermohub/thermofun/pull/80
- function to set potential missing charge in records by @gdmiron in https://github.com/thermohub/thermofun/pull/81
New Contributors
- @j-engelmann made their first contribution in https://github.com/thermohub/thermofun/pull/76
Full Changelog: https://github.com/thermohub/thermofun/compare/v0.5.2...v0.5.3
Scientific Software - Peer-reviewed
- C++
Published by gdmiron 6 months ago
ThermoFun - v0.5.0
What's Changed
- bugfix examples by @gdmiron in https://github.com/thermohub/thermofun/pull/66
- Fixed examples by @gdmiron in https://github.com/thermohub/thermofun/pull/68
- explicitly set the state of the solvent by @gdmiron in https://github.com/thermohub/thermofun/pull/67
- setup-miniconda@v3, macos-13 by @gdmiron in https://github.com/thermohub/thermofun/pull/69
- Database records can be changed by reference (C++, Python) by @gdmiron in https://github.com/thermohub/thermofun/pull/70
Full Changelog: https://github.com/thermohub/thermofun/compare/v0.4.5...v0.5.0
Scientific Software - Peer-reviewed
- C++
Published by gdmiron over 1 year ago
ThermoFun - v0.4.5
What's Changed
- Updated LICENSE from GPLv3.0 to LGPLv2.1 by @gdmiron in https://github.com/thermohub/thermofun/pull/64
- Increment version to 0.4.5 by @allanleal in https://github.com/thermohub/thermofun/pull/65
Full Changelog: https://github.com/thermohub/thermofun/compare/v0.4.4...v0.4.5
Scientific Software - Peer-reviewed
- C++
Published by allanleal over 2 years ago
ThermoFun - v0.4.3
What's Changed
- Paper by @gdmiron in https://github.com/thermohub/thermofun/pull/61
- v0.4.3 by @gdmiron in https://github.com/thermohub/thermofun/pull/62
Full Changelog: https://github.com/thermohub/thermofun/compare/v0.4.2...v0.4.3
Set spdlog in header-only mode for thermofun project. Fixed possible memory leak issues. Using pip for python package install.
Scientific Software - Peer-reviewed
- C++
Published by gdmiron almost 3 years ago
ThermoFun - v0.4.0 added logger
Added spdlog for logging (https://github.com/gabime/spdlog)
In python to access the logging settings (default update_loggers(False, "thermofun.log", 2) ) ```python import thermofun as fun
True for logging to output instead of file,
file name, 2 is the logging level for info, warn, error, and critical messages.
fun.update_loggers(False, "thermofun.log", 2)
clears the log file
fun.clear_loggers("thermofun.log") ```
Scientific Software - Peer-reviewed
- C++
Published by gdmiron over 3 years ago
ThermoFun - v0.3.9 Added ChemicalFun library
Scientific Software - Peer-reviewed
- C++
Published by gdmiron about 4 years ago
ThermoFun - Fix for default critical pressure unit
ThermoFun gas critical properties default critical pressure unit is set to "bar". The database allows any unit to be set by the user, this will be converted to bar in the ThermoFun internal data. It is important to know that if one uses a ThermoFun get function for the critical pressure will be in "bar".
Scientific Software - Peer-reviewed
- C++
Published by gdmiron almost 5 years ago
ThermoFun - Fixes in formula parser and CpfT with phase transition
Scientific Software - Peer-reviewed
- C++
Published by gdmiron about 5 years ago
ThermoFun - Tests for Ryzhenko Bryzgalin model, possibility to append elements
Append a new element with data for substances and reactions related to the element.
python
database.appendData('Fe-speciation-thermofun.json')
Scientific Software - Peer-reviewed
- C++
Published by gdmiron about 5 years ago
ThermoFun - Const correctness fixes in ThermoEngine and Database class
Scientific Software - Peer-reviewed
- C++
Published by gdmiron almost 6 years ago
ThermoFun - Using units from database
If units are provided together with the properties and parameters in the database file, e.g.:
json
"m_landau_phase_trans_props": {
"values": [
1926.8499755859,
4,
0.035000000149012
],
"names": [
"Tcr",
"Smax",
"Vmax"
],
"units": [
"degC",
"J/(mol*K)",
"J/bar"
]
}
The user can provide parameters in any valid and convertible units, these will be converted to the default ones when reading the database file and used accordingly in the respective correction TPMethod.
Scientific Software - Peer-reviewed
- C++
Published by gdmiron almost 6 years ago
ThermoFun - BugFix
fix check for H+ using symbol
H+fix for HKF properties calculation close to the critical point.
(TdegC>=355 && Pbar<500), use equations (32)-(44) of Shock and others (1992) to compute the function g and its partial derivatives on region 2.fix for calculation of reaction properties using
logk_fpt_functioncheck if reaction / dependent substance methods are correctly defined to avoid the case when a substance is defined by a reaction with no
TPMethods.
Scientific Software - Peer-reviewed
- C++
Published by gdmiron almost 6 years ago
ThermoFun -
- Database object can now be constructed using a file or a string containing a ThermoDataSet in valid JSON
- Bug-fixes
Scientific Software - Peer-reviewed
- C++
Published by gdmiron about 6 years ago
ThermoFun - Append data, reaction equation parsing, imporved json database structure
Append data, reaction equation parsing, imporved json database structure
This release brings new functionality:
- Append additional data to the database from provided files in json database format.
python
import thermofun as thermofun
database = thermofun.Database('slop98-thermofun.json')
database.appendData('additional-data-thermofun.json')
* Calculate properties for a given reaction equation (reactants with with the symbols used in the equation should be present in the database)
python
import thermofun as thermofun
engine = thermofun.ThermoEngine('slop98-thermofun.json')
logK = engine.thermoPropertiesReaction(298.15, 1e5, "Cal = Ca+2 + CO3-2").log_equilibrium_constant.val
* Database files have an improved JSON format. A thermofun database file contains 'substances', 'reactions', and 'elements' lists, plus additional keys with information about the ThermoDataSet.
json
{
"thermodataset": "slop98-inorganic",
"datasources": [
"db.thermohub.org",
"[1998SHO/EA]"
],
"date": "10.12.2019 13:43:37",
"substances": ["..."],
"reactions": ["..."],
"elements": ["..."]
}
* using pytests in CI
* removed version pinning from pybind11 and nlohmann json libs
* bugfixes
Scientific Software - Peer-reviewed
- C++
Published by gdmiron about 6 years ago
ThermoFun - Improved database parsing (simpler thermodynamic database format)
bug fixes in parser, enabling the use of simplified database files containing only fields that are necessary for calculation.
Scientific Software - Peer-reviewed
- C++
Published by gdmiron over 6 years ago
ThermoFun - produce dynamic library using MSVC
Scientific Software - Peer-reviewed
- C++
Published by gdmiron over 6 years ago
ThermoFun - Fixes for windows build
Scientific Software - Peer-reviewed
- C++
Published by gdmiron over 6 years ago
ThermoFun - Enable Windows build in conda-forge
This release enables Windows build in conda-forge.
Scientific Software - Peer-reviewed
- C++
Published by allanleal over 6 years ago
ThermoFun - BugFix Cp function calculation
Scientific Software - Peer-reviewed
- C++
Published by gdmiron over 6 years ago
ThermoFun - Enable Travis and AppVeyor CI
This release also fixes a build issue in which velocypack dependency was needed by default.
Scientific Software - Peer-reviewed
- C++
Published by allanleal over 6 years ago
ThermoFun - Fix JSON bug
Fix JSON bug on parsing map.
Scientific Software - Peer-reviewed
- C++
Published by allanleal over 6 years ago
ThermoFun - Fix further compilation issues in Windows
This release fixes several compilation errors due to the use of uint, instead of std::size_t when compiling with MSVC.
Scientific Software - Peer-reviewed
- C++
Published by allanleal over 6 years ago
ThermoFun - Fix some compilation issues in Windows
This release fixes some compilation issues in Windows due to compiler flags that are not supported my MSVC. Also, the following is now used to permit shared library compilation by MSVC:
~~~cmake
Enable automatic creation of a module definition (.def) file for a SHARED library on Windows.
set(CMAKEWINDOWSEXPORTALLSYMBOLS TRUE) ~~~
Scientific Software - Peer-reviewed
- C++
Published by allanleal over 6 years ago
ThermoFun - Resolve issue that dependencies are propagated to consumers
This release fixes some bugs (replace #include "nlohmann/json.hpp" by #include <nlohmann/json.hpp> and it prevents libraries linking against ThermoFun to also depend on Boost and nlohmann_json libs.
Scientific Software - Peer-reviewed
- C++
Published by allanleal over 6 years ago
ThermoFun - Bug fix release
This release fixes header issues when compiling the python module of ThermoFun.
It also improves finding of dependencies using CMake.
And it introduces conda support for helping on the management of third party deps.
Scientific Software - Peer-reviewed
- C++
Published by allanleal over 6 years ago
ThermoFun - Preliminary release
Scientific Software - Peer-reviewed
- C++
Published by gdmiron over 6 years ago
ThermoFun - Preliminary release
Scientific Software - Peer-reviewed
- C++
Published by gdmiron over 6 years ago