84947a2b120e0ff24ef82e81d04f24ec605c6610
Composition objects now must be built from vectors of molar abundances. Things such as mass fraction and number fraction are computed on the fly (with some caching for performance). This will allow for many fewer issues when converting from solver space to composition space. BREAKING CHANGE: The entire old API has been broken. There is no longer any need to finalize. In fact the entire concept of finalization has been removed. Further, the entire CompositionEntry and GlobalComposition data structure has been removed. Any code written for the old version will no longer work and major reworking will be needed to use the new version.
libcomposition
libcomposition is the chemistry tracking tool used by SERiF and related products.
This has been broken out of the main serif project to allow for more modularity
Building
In order to build libconstants you need meson>=1.5.0. This can be installed with pip
pip install "meson>=1.5.0"
Then from the root libcomposition directory it is as simple as
meson setup build --buildtype=release
meson compile -C build
meson test -C build
this will auto generate a pkg-config file for you so that linking other libraries to libcomposition is easy.
Description
Languages
C++
97.8%
Python
1.3%
Meson
0.9%