Skip to content
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

Additional code dimensionally rescaled into Z #864

Merged
merged 11 commits into from
Oct 25, 2018

Conversation

Hallberg-NOAA
Copy link
Collaborator

Added rescaling of a handful of additional module from units of m into Z
for expanded dimensional consistency testing. All answers are bitwise identical
and no parameter_doc files are changed by these modifications. The list
of commits in this PR include:

  Rescaled MIN_THICKNESS in ISOMIP initialization via the call to get_param.
Also added (commented out) unit arguments to other get_param calls.  All answers
are bitwise identical.
  Rescaled the units of Kd_add from m2 s-1 to Z2 s-1 via the get_param call for
this KD_ADD for dimensional consistency testing.  Also changed the units of the
optional Kd_int_add argument to user_change_diff and added conversion arguments
to the register_diag_field calls for Kd_user.  All answers are bitwise
identical, including rescaling Z over a large range.
  Refactored Kelvin_set_OBC_data to reduce the number of variables in the module
control structure and to use g_Earth from the vertical grid type, which required
the addition of a new verticalGrid_type argument to Kelvin_set_OBC_data.  All
answers are bitwise identical.
  Corrected a dimensional rescaling factor in the hchksum calls for Kd_int, so
the checksum output is identical when Z is rescaled.  All answers are bitwise
identical.
  Corrected a dimensional rescaling factor in the hchksum call for g_prime, so
the checksum output is identical when Z is rescaled.  All answers are bitwise
identical.
  Added code to improve the handling of underflows of shear in the kappa_shear
code, including adding parentheses to the expressions setting S2 and reading
the run-time parameter VEL_UNDERFLOW that is stored in the control structure.
Also added vel_underflow as an optional argument to calculate_projected_state.
All answers are bitwise identical, and the issues with underflows when rescaling
Z over a large range (once again at least -93 to 93) have been addressed.
  Corrected the rescaling in a checksum call for e in thickness_diffuse. All
answers are bitwise identical, including rescaling Z over a large range.
  Recast the internal calculations in SCM_CVMix_tests_TS_init to use vertical
height units of Z in place of m for dimensional consistency testing.  All
answers are bitwise identical in the MOM6 test cases, including rescaling Z over
a large range.
  Recast the internal calculations in MOM_wave_interface to use vertical height
units of Z in place of m for dimensional consistency testing. This included
changing the units of one argument in the get_Langmuir_Number interface, which
is used outside of this module.  There was also some general code clean-up in
the MOM_wave_interfaces code. All answers are bitwise identical in the MOM6 test
cases, including rescaling Z over a large range.
@Hallberg-NOAA
Copy link
Collaborator Author

This PR is being tested with https://gitlab.gfdl.noaa.gov/ogrp/MOM6/pipelines/6099.

@adcroft adcroft merged commit 8b13c3b into mom-ocean:dev/gfdl Oct 25, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants