+Rescale SST and SSS as seen at the driver level#172
Merged
marshallward merged 7 commits intoAug 3, 2022
Conversation
Codecov Report
@@ Coverage Diff @@
## dev/gfdl #172 +/- ##
============================================
- Coverage 37.40% 37.40% -0.01%
============================================
Files 259 259
Lines 71840 71848 +8
Branches 13442 13443 +1
============================================
+ Hits 26871 26873 +2
- Misses 40025 40031 +6
Partials 4944 4944
Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here. |
Modified the coupler_types, data_override and time_interp modules used in the mct_cap and nuopc_cap driver code to use the appropriate modules from the MOM6 framework directory, which are properly documented and extensible, and will accommodate and buffer changes in the underlying FMS or other infrastructure code. These changes should have been in place previously, but are required to allow for rescaling of the fields being read via time_interp_external or data_override. Some unused module use references to mpp_chksum from mpp_mod were also removed. These changes mirror changes that had previously been applied to the FMS_cap driver code. All answers should be bitwise identical, but this has not been specifically tested via the GFDL testing procedures.
Applied dimensional rescaling of the ocean_heat and ocean_salt elements of the surface type. Although this surface_state is a public type, neither of these particular elements are used outside of MOM6 and these fields are not reused after they are set. They are instead being retained because they may become useful in the future. All answers are bitwise identical.
Applied temperature rescaling to the heat capacity element, C_p, of the forcing type. All answers are bitwise identical, but the rescaled units of one element of a public type were altered.
Rescaled the SST and SSS element of the surface type, usually sfc_state%SST and sfc_state%SSS, from units of [degC] and [ppt] to [degC ~> C] and [ppt ~> S], as well as a handful of other temperature and salinity variables related to the surface forcing (usually targets of restoring), and cancelled out a number of common US%C_to_degC or US%S_to_ppt conversion factors. Several unused variables were also removed, and a missing allocate and restart registration were added for the running-mean salinity in the (as yet unused) MOM_controlled_forcing module. All answers are bitwise identical, but there are changes to the rescaled units of two elements of a public type.
Use cons_temp_to_pot_temp and abs_saln_to_prac_saln to do the conversions for several diagnostics, working with rescaled variables on array segments, rather than calling gsw_pt_from_ct and gsw_sp_from_sr once from each point. All answers are bitwise identical.
Dimensionally rescaled the Stokes drift velocity variables in the mech_forcing type from [m s-1] to [L T-1 ~> m s-1], and the surface wave wavenumber variable from [rad m-1] to [rad Z-1 ~> rad m-1], eliminating several scaling factors from the code in the process, and attaching a scaling factor to a hard-coded dimensional velocity. All answers in the MOM6-examples test suite are bitwise identical.
5de841f to
cc999f5
Compare
Member
Author
|
The force-push done to this PR was to re-order the commits, so that the code after each of the commits in this PR should compile correctly and pass all tests. |
Member
|
Gaea regression: https://gitlab.gfdl.noaa.gov/ogrp/MOM6/-/pipelines/16273 ✔️ |
marshallward
approved these changes
Aug 3, 2022
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.
This PR consists of a sequence of commits that add dimensional rescaling for
temperature and salinity and related variables that are visible at the driver
level, most prominently including the SST and SSS fields in the surface type.
Appropriate dimensional rescaling is also applied to the Stokes drifts and
Stokes-band wavenumbers in the mech_forcing type. These changes include a
correction to the documented units of one diagnostic variable, so there are some
small changes to the contents of the available_diags files. All answers are
bitwise identical.
The commits in this PR include: