-
Notifications
You must be signed in to change notification settings - Fork 62
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
Document units in 9 vertical param modules #253
Document units in 9 vertical param modules #253
Conversation
Codecov Report
@@ Coverage Diff @@
## dev/gfdl #253 +/- ##
============================================
- Coverage 37.18% 37.08% -0.10%
============================================
Files 263 263
Lines 72793 73397 +604
Branches 13578 13677 +99
============================================
+ Hits 27065 27222 +157
- Misses 40718 41143 +425
- Partials 5010 5032 +22
📣 We’re building smart automated test selection to slash your CI/CD build times. Learn more |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This looks good but I'm uncomfortable about the precedent of four exceptions to the usual pattern when specifying units and scaling of run-time parameters.
The four exceptions are reading hidden diffusivity values, for checking or defaults, and not following the pattern for all other parameters which would normally have scale=US%m2_s_to_Z2_T
. However, the new code instead (and correctly) sets scale=1 because these parameters are being used in MKS units instead of MOM6 units. In each case it seems a different approach could have avoided using MKS inside the model which would avoid breaking the pattern (which is documentation of how to do things). It would be all too easy (though unlikely) for one of these exceptions to the pattern to used as a template by someone else.
Documented numerous internal variables and their units in 9 vertical parameterization modules (MOM_bkgnd_mixing, MOM_bulk_mixed_layer, MOM_diabatic_aux, MOM_diabatic_driver, MOM_entrain_diffusive, MOM_kappa_shear, MOM_regularize_layers, MOM_set_diffusivity and MOM_set_viscosity). This commit includes the addition of units arguments in 9 unlogged get_param calls while 4 of these calls are now being scaled into the units used in MOM6 and then unscaled when used as the default for other parameters. A number of spelling errors were also corrected in comments. All answers and output are bitwise identical.
a99979f
to
6e1a2eb
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Perfect! Testing at https://gitlab.gfdl.noaa.gov/ogrp/MOM6/-/pipelines/17566
As expected, the difference
appeared in following doc files: |
Changes needed for introducing 3D tracer diffusivities
Documented numerous internal variables and their units in 9 vertical parameterization modules (MOM_bkgnd_mixing, MOM_bulk_mixed_layer, MOM_diabatic_aux, MOM_diabatic_driver, MOM_entrain_diffusive, MOM_kappa_shear, MOM_regularize_layers, MOM_set_diffusivity and MOM_set_viscosity). This commit includes the addition of units arguments in 9 unlogged get_param calls. A number of spelling errors were also corrected in comments. All answers and output are bitwise identical.