fix(python-bindings): Updated python bindings to new interface
The python bindings now work with the polymorphic reaction class and the CVODE solver
This commit is contained in:
@@ -2,6 +2,8 @@
|
||||
#include "fourdst/composition/composition.h"
|
||||
#include "fourdst/composition/atomicSpecies.h"
|
||||
|
||||
#include <ranges>
|
||||
|
||||
namespace gridfire::utils {
|
||||
inline double massFractionFromMolarAbundanceAndComposition (
|
||||
const fourdst::composition::Composition& composition,
|
||||
@@ -65,10 +67,14 @@ namespace gridfire::utils {
|
||||
inline std::vector<double> molarMassVectorFromComposition(
|
||||
const fourdst::composition::Composition& composition
|
||||
) {
|
||||
std::vector<double> molarMassVector;
|
||||
molarMassVector.reserve(composition.getRegisteredSymbols().size());
|
||||
std::map<fourdst::atomic::Species, double> molarMassMap;
|
||||
for (const auto &entry: composition | std::views::values) {
|
||||
molarMassVector.push_back(entry.isotope().mass());
|
||||
molarMassMap.emplace(entry.isotope(), entry.isotope().mass());
|
||||
}
|
||||
std::vector<double> molarMassVector;
|
||||
molarMassVector.reserve(molarMassMap.size());
|
||||
for (const auto molarMass : molarMassMap | std::views::values) {
|
||||
molarMassVector.push_back(molarMass);
|
||||
}
|
||||
return molarMassVector;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user