-
Notifications
You must be signed in to change notification settings - Fork 98
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Replace Castro microphysics with starkiller-astro Microphysics #760
Merged
Conversation
This file contains 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
Conflicts: Microphysics Microphysics/networks/burner.F90
note: this also implements #690 |
all tests pass here, using the current external Microphysics. I'm going to merge and then change up the test suite shortly. I think we want to test both ways -- using submodules (which is how users will probably use the code, but likely on |
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.
PR summary
This implements the Microphysics part of #651. We replace the local Castro Microphysics directory with a dependence on the main starkiller-astro Microphysics directory. This means that obtaining Microphysics is now a requirement for using Castro. If the user sets
MICROPHYSICS_HOME
as before, then their workflow does not change. A new path is that Microphysics is a git submodule of Castro, so if the user doesgit submodule update --init --recursive
then they will obtain the version of Microphysics that we specify in the repo, and if they do not haveMICROPHYSICS_HOME
set then this submodule will be used. The repo is now updated withgit pull --recurse-submodules
, so that updates to Microphysics come along when you pull.For Castro developers, this means that -- at a minimum -- we must update the Microphysics submodule monthly when we issue new releases. The release for Microphysics must be done first. Then navigate to the Microphysics directory, checkout the new tag, and then from the top-level directory of Castro do a
git add
on the Microphysics directory to store the new tag. So, for example, at the beginning of March 2020 we would first issue the20.03
tag on Microphysics, then doThen we can proceed with issuing our own release.
When breaking changes to Microphysics occur in its
development
branch that Castro depends on, we must update the Microphysics submodule on the Castrodevelopment
branch in the same way, replacing the git checkout statement with the latest commit hash on the Microphysicsdevelopment
branch. A git submodule always tracks a specific commit/tag on the target repo -- it is not configured to automatically track a particular branch.In order to ensure that we don't lose track of this coupling between the two codebases, it is my recommendation that we use this git submodule for the Castro regression test suite, rather than relying on a standalone installation of Microphysics. So we should remove any references to MICROPHYSICS_HOME as part of that setup, and then make sure the git commands are appropriately updated.
A minor associated change is that we've standardized on
NETWORK_INPUTS
in all of the makefiles, instead of usingGENERAL_NET_INPUTS
with the hardcoded path.PR checklist
CHANGES
file has been updated