-
Notifications
You must be signed in to change notification settings - Fork 20
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
Dimensional scaling tests are producing chksum differences #275
Comments
Neither |
There is a new pull request (NOAA-GFDL#620, that is headed to main via dev/gfdl) that might partially address this issue. It corrects some bugs (including dimensional rescaling factors involving Z and L) in the calculation of the MEKE source terms in a form that I believe is being used at NCAR. There is a second recent pull request (NOAA-GFDL#601, also headed to main via dev/gfdl) that adds comments noting several dimensional inconsistencies within I suspect that these two pull requests might go a long way toward addressing this issue. |
Thanks @Hallberg-NOAA, this is very helpful! Since these issues are only in the |
Added missing scale arguments to the hchksum and global_mass_integral calls for debugging in hor_bnd_diffusion, so that they now give messages to stdout that do not change when tracers (including temperature and salinity) are rescaled. Also added a missing debuggingParam argument to the get_Param call for HBD_DEBUG so that is will be logged in MOM_parameter_doc.debugging rather that MOM_parameter_doc.all. This commit partially addresses the scaling problems that were noted in github.com/NCAR/issues/275. All solutions are bitwise identical, but some debugging output can change to become more robust.
Added missing scale arguments to the hchksum and global_mass_integral calls for debugging in hor_bnd_diffusion, so that they now give messages to stdout that do not change when tracers (including temperature and salinity) are rescaled. Also added a missing debuggingParam argument to the get_Param call for HBD_DEBUG so that is will be logged in MOM_parameter_doc.debugging rather that MOM_parameter_doc.all. This commit partially addresses the scaling problems that were noted in github.com//issues/275. All solutions are bitwise identical, but some debugging output can change to become more robust.
I got the MARBL branch to pass dimensional scaling tests, but in doing so I noticed that some of the scaling tests are producing
chksum()
differences for non-MARBL fields. My testing strategy was to run a baseline withDEBUG=True
, and then run individual tests withDEBUG=True
and one of the*_RESCALE_POWER=10
. Theocean.stats
files matched for all these runs, but some ofcesm.log
files reported differences in the log output:T_RESCALE_POWER = 10
:L_RESCALE_POWER = 10
C_RESCALE_POWER = 10
S_RESCALE_POWER = 10
Z_RESCALE_POWER = 10
: no diffs in log outputH_RESCALE_POWER = 10
: no diffs in log outputI did not see these differences when running single-column MARBL tests using
solo_driver
, but it's not clear whether that means the missing scaling is in the NUOPC cap or if it has to do with the different parameterizations we are using. Given the bit-for-bit history file output, though, it does seem likely that the problem is a missingscale
argument in thehchksum()
call rather than an actual scaling issue (although the MEKE diff not showing up until the checksum is confusing)The text was updated successfully, but these errors were encountered: