[newchem-cpp] Convert GrainSpeciesInfo to be a class - #577
Open
mabruzzo wants to merge 28 commits into
Open
Conversation
All changes in this commit are a search-and-replace (plus some automated reformatting since the number of characters is changing)
This is inadvisable, but will be necessary to achieve reasonable performance in step_rate_newton_raphson
mabruzzo
force-pushed
the
ncc/grain_species_info_class
branch
from
August 12, 2026 22:19
6a8bdfb to
8b5e324
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
To be reviewed after #562 is merged
If you prefer, I could rebase this branch off of newchem-cpp instead, if you would prefer.
This PR converts
GrainSpeciesInfofrom a struct with a bunch of associated functions that act like methods to a C++ class. This is very straight-forward.The impetus for doing this were some challenges I encountered while trying to rebase the work in PR #551 atop of PR #562. While doing that, the linter was having lots of trouble with understanding the initialization strategy (it mistakenly assumed certain variables weren't assumed). This change was made to help resolve that issue (plus its probably the right thing for us to do)