refactor: refactor hpcReact to generalize behavior and introduce solid species and surface complexation.#5
Conversation
…ini/mixed-reactions
…ini/solid-phase-surfaceReact
…ini/solid-phase-surfaceReact
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## main #5 +/- ##
=========================================
Coverage 100.00% 100.00%
=========================================
Files 17 22 +5
Lines 713 748 +35
=========================================
+ Hits 713 748 +35 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
There was a problem hiding this comment.
Pull Request Overview
This PR refactors the reaction system framework by replacing the legacy “bulkGeneric” namespace with the more descriptive “reactionsSystems” namespace and generalizes reaction behavior. It also introduces solid species support and surface complexation via additional surface area parameters, with corresponding changes to parameters and unit test utilities.
- Refactored file organization and namespaces from bulkGeneric to reactionsSystems.
- Added new API elements (e.g. NUM_SURFACE_REACTIONS, equilibriumConstant handling) and updated function signatures (e.g. timeStepTest now takes a surfaceArea array).
- Updated documentation comments and unit tests across geochemistry and mass actions modules to reflect these changes.
Reviewed Changes
Copilot reviewed 32 out of 34 changed files in this pull request and generated no comments.
| File | Description |
|---|---|
| src/reactions/reactionsSystems/Parameters.hpp | Added NUM_SURFACE_REACTIONS, new equilibrium constant member (with a misspelling) |
| src/reactions/reactionsSystems/MixedEquilibriumKineticReactions.* | Updated function signatures to include a surfaceArea parameter; adjusted documentation |
| src/reactions/reactionsSystems/KineticReactions_impl.hpp | Introduced computeReactionRatesQuotient_impl that now incorporates surfaceArea multipliers |
| Various geochemistry and unit test files | Updated includes and namespaces to reflect the new structure and added surface area support |
Comments suppressed due to low confidence (3)
src/reactions/reactionsSystems/Parameters.hpp:80
- The member variable 'm_equilibiriumConstant' is misspelled; consider renaming it to 'm_equilibriumConstant' for clarity and consistency.
m_rateConstantReverse( rateConstantReverse ),
src/reactions/reactionsSystems/MixedEquilibriumKineticReactions.hpp:60
- Update the documentation comment for the 'surfaceArea' parameter to clearly state its purpose, expected units, and behavior in the context of surface complexation.
* @param logPrimarySpeciesConcentrations Log of primary species concentrations
src/reactions/unitTestUtilities/mixedReactionsTestUtilities.hpp:26
- Ensure that all calling sites and unit tests are updated to supply the new 'surfaceArea' parameter and that its dimensionality matches PARAMS_DATA::numKineticReactions().
REAL_TYPE const (&surfaceArea)[PARAMS_DATA::numKineticReactions()],
5b80257 to
115dbf1
Compare
No description provided.