Commit Graph

17 Commits

Author SHA1 Message Date
50a5c2cd06 MERGE: Merge standard abundances branch with updated install rules branch 2026-06-05 10:23:53 +02:00
poojanagrawal
663bdcea03 feat(Standard-Compositions): Imported standard metal fractions from MESA
Imported standard metal fractions from MESA to build compositions from one of the standard schemes
2026-06-02 15:57:33 +02:00
408dd71eee feat(composition-hash): added robust hashed for compositions
also added ability to use Compositions as a std::hash in unordered_* types. Further added a constructor to build a Composition from a const CompositionAbstract&
2025-11-12 15:21:33 -05:00
2492b5f652 feat(MaskedComposition): added MaskedComposition to libcomposition
MaskedComposition is a generally useful decorator, therefore instead of forcing callers to impliment it on their own, we have implimented it as part of libcomposition
2025-11-10 08:47:35 -05:00
49bfb5eff1 fix(CompositionAbstract): Moved CompositionAbstract into correct namespace
Further, added the composition_abstract header file to the correct install path
2025-11-09 06:59:38 -05:00
576b99e719 build(meson.build): fixed required header check
build validation stage was looking at the old path for atomic headers, updated this
2025-11-08 07:08:52 -05:00
84947a2b12 feat(composition): changed how composition is conmstructed
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.
2025-11-07 15:49:25 -05:00
b94d9b456f feat(species-lookup): added function to get species from a and z 2025-08-13 13:07:49 -04:00
209d61f61f fix(headers): moved all headers to fourdst/ 2025-06-22 04:56:04 -04:00
645c216ada feat(header): moved 2025-06-21 16:16:52 -04:00
952cf3c4e2 feat(header): updated header location 2025-06-21 16:13:25 -04:00
db88e308de build(libcomposition): brought working build system into libcomposition 2025-06-21 11:33:27 -04:00
b0896d20e9 fix(atomicSpecies.h-->-species.h): added species.h includes for spesific species where needed 2025-06-19 14:51:42 -04:00
6d517d937e refactor(network): updated network and network::approx8 to use composition module
This is a very basic wrapper implimentation currently. This is sufficient to lock the interface down so that other code can target it. However, internally there is just a "convert" function. Eventually we should rework the code itself to use the composition module more directly.
2025-06-17 09:43:43 -04:00
36f2413683 fix(composition): removed old py structure 2025-04-30 11:41:52 -04:00
7c42201ddb feat(composition): added composition class
in order to get composition in a standardized way anywhere in the code we now have a composition class
2025-03-24 12:58:30 -04:00
4840b439df feat(composition): added composition module stub 2025-03-24 10:41:13 -04:00