fix(gcc): Fixed Gridfire on gcc

GridFire failed to compile on gcc and gnu stdlibc++ this has been
resolved. Further, the boost dependency has been removed since we no
longer use boost at all. This should dramatically simplify installation.
Finally we have added some build system checks to ensure that the
correct version of a C++ and fortran compiler are present on the system
This commit is contained in:
2025-11-28 09:42:54 -05:00
parent 08a031f30c
commit 033c5a083d
11 changed files with 42 additions and 67 deletions

View File

@@ -20,7 +20,6 @@
#include <ranges>
#include <functional>
#include <boost/numeric/ublas/matrix_sparse.hpp>
#include "cppad/cppad.hpp"
#include "cppad/utility/sparse_rc.hpp"
@@ -863,7 +862,6 @@ namespace gridfire::engine {
std::unordered_map<fourdst::atomic::Species, size_t> m_speciesToIndexMap; ///< Map from species to their index in the stoichiometry matrix.
std::unordered_map<size_t, fourdst::atomic::Species> m_indexToSpeciesMap; ///< Map from index to species in the stoichiometry matrix.
boost::numeric::ublas::compressed_matrix<int> m_stoichiometryMatrix; ///< Stoichiometry matrix (species x reactions).
mutable CppAD::ADFun<double> m_rhsADFun; ///< CppAD function for the right-hand side of the ODE.
mutable CppAD::ADFun<double> m_epsADFun; ///< CppAD function for the energy generation rate.
@@ -1281,4 +1279,4 @@ namespace gridfire::engine {
return molar_concentration_product * k_reaction * densityTerm;
}
};
};