-
Notifications
You must be signed in to change notification settings - Fork 15
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
Feature/update to gfdl 20210402 #65
Feature/update to gfdl 20210402 #65
Conversation
MOM_ice_shelf_dynamics.F90 modified initialize_ice_shelf_boundary_channel in MOM_ice_shelf_initialze.F90
Merge branch 'revert_drivers' of https://github.com/MJHarrison-GFDL/MOM6 into matts-revert-drivers
…e ice-shelf_fields consistent with diag_table Modifications to MOM_ice_shelf.F90 to apply melting to the case of a dynamic ice shelf.
v_bdry_val through halo
due to sub-ice-shelf melting
- Tag v0.93-beta of CVMix is the last tag on their "master" branch before an API change within CVMix. - Answers reproduce with the three-year prior commit being used, as tested in MOM6-examples single_column cases. These do not cover all CVMix code.
- This tag involves an API change that requires changes to MOM_tidal_mixing.F90. - Changes are dropped arguments so presumably that data is not needed. - Answers reproduce in so far as they are covered by MOM6-examples. Not all of CVMix is covered in these tests and this code in particular is not.
- v0.98-beta is the latest tag of CVMix that is available a.t.t. - There were no API changes since the v0.94b-beta that affected MOM6. - No answer changes for MOM6-examples, but these do not exercise much of CVMix.
…90; MOM_ice_shelf_initialize.F90
This patch fixes an issue with the vertical array bounds of the Ferrari et al. streamfunction. The array is bounded across interfaces, from 1 to nz+1, but only the interior values need to be determined due to the arbitrary boundary value (set here to zero). In the current source, the streamfunction is rescaled before calling streamfn_solver, but need not be applied to the boundary values. This is unlikely to cause errors in production, since the values are later reset to zero, but the rescaling can raise errors in more aggressive debugging builds, such as when the arrays are initialized with NaN values.
This commit fixes the issue that dirs%restart_input_dir is not initiated before "ocean_solo.res" and "ice_solo.res" are read.
Bugfix: empty restart_input_dir for *_solo.res
Merge from main
Added code to explicitly set a (1x1) io_domain when no other io_layout is specified, complying with changing requirements for 2020 and later versions of FMS, and following the default behavior of previous versions. Also corrected three module use statements in infra/FMS1 to eliminate any dependencies of code in config_src/infra/FMS1 on code in src/framework. These use statements eventually point to the same place as before, but with less indirection. This change should facilitate later steps to compile everything in and under the config_src/infra directories as libraries. All answers are bitwise identical.
* if true, allow the topog overrides to change the land mask
Update CVMix submodule
Change units of slope returned from calc_isoneutral_slopes() to "Z L-1"
Bugfix: FGNV streamfunction vertical bounds
dynamic ice shelf
Two minor changes to the .testing build: - We now apply `--recurse-submodules` to the target build in the regression test. This is required after an update to the submodules, when the target submodule is out of sync with the main branch (e.g. dev/gfdl at NOAA-GFDL). - A LDFLAGS_USER hook was added to the `.testing/Makefile` configuration, similar to the FCFLAGS_* hooks. This is required if the library dependencies do not reside in the default directores. For example, this may be needed for a custom netCDF or MPI library.
Testing: Recurse target submodules, LDFLAGS hook
EMC update 20210322
…ate-2021-03-26 dev/gfdl main candidate 2021-03-26
passed RT in all platforms, ready for review |
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.
Looks fine. Thanks for taking the opportunity to get the topo edits change in.
This is being merged into ufs-weather-model with this PR: ufs-community/ufs-weather-model#488 correct? |
correct |
Sync with NOAA-GFDL
…OAA-EMC#65) * Eliminate GET_ALL_PARAMS in hor_visc_init Added do_not_log arguments to get_param calls in MOM_hor_visc.F90 that are only used conditionally, and eliminated the unlogged GET_ALL_PARAMS runtime parameter and get_all variable in hor_visc_init(). By design, all logging of parameters after this commit is identical to before, even for variables that are inactive and therefore should not be logged. In several places, there were some problems, mostly with the GME code, that have been noted in comments marked with '###'. Also cleaned up the code alignment and eliminated unneeded temporary variables in a few places in hor_visc(). All solutions are bitwise identical, and no output is changed. * Move call to get get_KH outside k-loop The call to get the 3-d GME diffusivity arrays and the subsequent blocking halo update was moved outside of the k-loop. * Increase loop range for calculation of GME fluxes * Makes GME filter rotationally invariant * Makes the GME filter rotationally invariant * Adds a runtime param to allow the user to control how many smoothing passes should be done. * Rearranges the get_param calls related to Leith The get_param calls for Leith were not in the correct location. This commit fixes that. * Adding halo updates * Fixes do loops indices and adds diagnostics * Adds option to save barotropic tension and strain; * Fixes many i and j loops indices associated with GME to avoid halo problems and unnecessary halo updates. With these changes, the model is now conserving mass and tracers when USE_GME = True. * Fixes issues related to the merging with dev/gfdl * Fixes calculation of FrictWork_GME The calculation now mimics the calculation of FrictWork and it includes the energy diffusion term. * Removes dependency of FrictWork_GME calculation on MEKE * Adding sh_xy_sq and sh_xx_sq in the OMP directives Co-authored-by: Robert Hallberg <Robert.Hallberg@noaa.gov>
Fixed the bug noted in issue NOAA-EMC#72 and excessive loop sizes noted in the unresolved comments in a recent commit, and cleaned up other aspects of MOM_hor_visc, mostly related to the code that is exercised when USE_GME=True. - Fixed the bug with the wrong arrays being used when ADD_LES_VISCOSITY=True that was noted in MOM6 issue NOAA-EMC#72. - Corrected some of the overly large loop extents that were noted in unresolved comments about MOM6 PR NOAA-EMC#65. - Only log USE_KH_BG_2D if a Laplacian viscosity is used. - Use extra calculations in the halos and marching in to avoid unnecessary halo updates in smooth_GME if there multiple smoothing passes. - Corrected the capitalization of some horizontal indices to follow the MOM6 convention for indicating the horizontal staggering position. - Collected the post_data calls for diagnostics with use_GME with the other post data calls to collocate some of the potential inter-PE synchronization points. - Fixed the indentation of some expressions that were using less than 4 points for some continuation lines. - Eliminated several unused variables, and fused some loops to allow 2-d variables to be replaced with scalars. With this PR, answers can change when ADD_LES_VISCOSITY=True and there is a Smagorinsky or Leith Laplacian viscosity and there is a nonzero background. One run-time parameter is no longer logged if LAPLACIAN=false, so there are changes to the MOM_parameter_doc files. All answers in the MOM6-examples test suite are bitwise identical.
Description of changes
update EMC MOM6 to GFDL 20210402 commit (see detail at https://github.com/NOAA-GFDL/MOM6/pull/1358#issuecomment-811919139)
Issues Fixed (include github issue #):
MOM6 closes #64
ufs-weather-model Issue 489 (ufs-community/ufs-weather-model#489)
Are changes expected to change answers?
No
Testing performed:
machine: orion, hera and dell-p3
Hashes used for testing
NEMS: b80b5b1
CMEPS: 0658dde
FV3: ebccc53
CICE: f773ef38
WW3: fc509248a
stochastic_physics: d0e62eb2
MOM6: c549ae9 (https://github.com/jiandewang/MOM6/tree/feature/update-to-GFDL-20210402)