NDSL port of the Grell-Fritas 2020 convection parameterization scheme#1215
Open
CharlesKrop wants to merge 265 commits intoGEOS-ESM:dsl/developfrom
Open
NDSL port of the Grell-Fritas 2020 convection parameterization scheme#1215CharlesKrop wants to merge 265 commits intoGEOS-ESM:dsl/developfrom
CharlesKrop wants to merge 265 commits intoGEOS-ESM:dsl/developfrom
Conversation
…erify, setup fails where nans are present in fortran
…ace:cpu (<152 ULP). Will revisit this.
…and dace. Need to revisit.
…rst two calls for all plumes
…s (renaming and such) to previously verified stencils
was incorrectly overwritting the state field instead of the local
…type definitions, bad conditionals
This reverts commit e7d3f35.
…e so it does not happen again
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.
As the title says, this PR contains the NDSL port of the GF2020 convection scheme. Only the required modules/options for the desired configuration have been ported, and the system has been set up to raise a NotImplementedError pointed to the "bad" configuration if an unimplemented option is requested.
The Fortran can be broken down into two broad buckets: the interface and the core. The python strictly adheres to the fortran structure/organization within the core, but has reorganized the three-layer fortran interface into a single entity.
All code is verified by at least two distinct tests. The primary test (referenced within pytest by the name "GF2020") verifies the entire scheme and has
small errors. All of these errors are either small (< 100 ULP) or can be explained by other known issues unrelated to the GF2020 port. Subtests exist for each component, including the interface (on the way in and out, independently) and the core. Within the core, all code is once again verified at least twice (once by the overarching core test, and again by the specific subcomponent test)
More details and errors for any subtests available upon request.