Merging dev/gfdl 08/05/2021#12
Merged
gustavo-marques merged 122 commits intoAug 5, 2021
Merged
Conversation
…L-20210402 Feature/update to gfdl 20210402
…20210503 this is corresponding to GFDL main branch 20210503 commit (hash # e6ce6a8)
…L-20210503 Feature/update to gfdl 20210503
Moved 15 module variables into wave_parameters_CS, to follow the coding style and conventions in the rest of the code. Also added comments describing 8 enumeration parameters in this same module, and added comments suggesting ways that the accuracy of the calculations could be improved. Also incorporated a factor of 2*PI into the definition of Freq_Cen in this module. In addition, the initialization procedure for this module was altered in some more commonly used cases, so that use MOM_wave_interface_init to set wave parameters, even with a statistical wave model, and eliminated MOM_wave_interface_init_lite. I believe that all solutions should be bitwise identical, but this module is not yet well tested in the MOM6 regression tests.
Added variable_att_exists calls before two calls to get_variable_attribute in the FMS2 version of get_file_fields so that runs do not crash if there are variables being read that do not have a long_name or units attribute. All answers are bitwise identical in cases that did not crash.
Corrected typos in comments, and removed unnecessary commented out code as noted by Brandon Reichl in his review of MOM6 dev/gfdl PR# 1404. All answers are bitwise identical.
- Better, but doesn't quite pass RESCALE tests.
Add dimensional rescaling of user OBC test cases, including documentation of the units of variables in the Kelvin, shelfwave, tidal_bay and dyed_channel initialization and rescaling parameters parameters via optional scale arguments to get_param calls. These changes also incorporate the answer-changing correction to the Kelvin wave OBC test case in PR mom-ocean#1406, with a comment noting what seems like an additional bug in this test case. This commit includes adding a unit_scale_type argument to call_OBC_register, register_file_OBC, register_tidal_bay_OBC, register_Kelvin_OBC, register_shelfwave_OBC and register_dyed_channel_OBC. These Kelvin wave OBC configuration from ESMG-configs now passes the dimensional rescaling tests. All answers are bitwise identical in the MOM6_examples test cases, but there are interface changes.
In the removal of regrid_edge_slopes, a couple of the solvers became duplicated between regrid_edge_values and regrid_solvers. Here, they're simply made consistent by removing the solvers from regrid_edge_values, and bringing over the zero-pivot check for the linear solver that was in one variation but not the other.
Call variable_att_exists before get_variable_att
The autoconf build was updated to verify that calls to diag_axis_init support the domain_position argument. This was introduced in FMS 2019.01.02, so this acts as an implicit minimum FMS version test. This test is done indirectly by confirming that the valid domain_position values (NORTH, EAST, CENTER) are in diag_axis_mod. A `--with-framework=` flag was also added to select either the FMS1 or FMS2 backend.
+Move wave module variables into control structure
Trying to fix Kelvin wave boundary condition.
Autoconf: FMS 2020.x compatibility testing (diag_axis_mod, data_override_mod)
…-0708 initialize CS%WaveNum_Cen before read in this parameter in MOM_wave_interface.F90
Added a test to avoid attempting to deallocate the geothermal heating field if it is not allocated, and changed the geo_heat element of geothermal_CS from a pointer into an allocatable array. Also clarified the comments describing several of the elements of geothermal_CS, and added a test to avoid logging the value of GEOTHERMAL_DRHO_DT_INPLACE when the model is not in layered-mode and this parameter is unused. This PR addresses MOM6 issue mom-ocean#1449. All answers are bitwise identical in all cases that worked before, but there are fewer entries in some ALE-mode MOM_parameter_doc files.
Replace MOM_control_struct pointers as locals
* Adding a pass_var to surface h This is required for the u,v sponges to be invariant of tiling. I don't know why, but the problem only showed up for me in a narrow channel in the Bering domain. * Matt's suggestion for not sponging at the grid edge. * Finish the masking out of edge in uv sponge. - Without this change, the edges don't reproduce on restart due to the h values outside being nonsense. The non-merge commits in this squashed PR that were not already in dev/gfdl are: NOAA-GFDL@2bfa4bc "Adding a pass_var to surface h" NOAA-GFDL@95a770a "Matt's suggestion for not sponging at the grid edge." and NOAA-GFDL@53dfdc7 "Finish the masking out of edge in uv sponge."
Flag inconsistent parameters if ADIABATIC = True
This commit fixes the bug with NaN appearing in the halo regions of the masked-out PEs.
Dmin is renamed to Dmask to increase readability.
This commit fixes a bug in subroutine apply_topography_edits_from_file() that assumes mask_depth=0. This fix should resolve issue mom-ocean#1419.
The codecov.io upload script appears to rely on the filepath of source codes at compile time, and was unable to find the output when called from .testing or the work directories. In this patch, we now move to `.testing/build/symmetric` (the gcov-enabled build) before running the uploader script. This is possibly required after the recent security alert connected to the codecov.io uploader script. Sadly, our coverage report failures went undetected for several months. The `-Z` flag has also been added to the script, which returns a nonzero error code if it fails. It's not yet clear to me if a missing file registers as a fail, but it may help to detect future problems.
+Fixed rare issue with MOM_geothermal and cleanup
Fix to codecov file path search
Bugfix: a couple of mask_depth related issues
Codecov Report
@@ Coverage Diff @@
## dev/cpt #12 +/- ##
============================================
+ Coverage 0 29.29% +29.29%
============================================
Files 0 235 +235
Lines 0 70799 +70799
============================================
+ Hits 0 20742 +20742
- Misses 0 50057 +50057
Continue to review full report at Codecov.
|
gustavo-marques
pushed a commit
that referenced
this pull request
Feb 14, 2022
Bitwise identical refactoring of the code in DOME_initialize_sponges, including renaming variables for greater clarity, adding variables for several dimensional constants, and correcting comments. This also includes more careful handling of the DOME OBCs in DOME_set_OBC_data() to hopefully avoid some obvious problems (noted in a comment about a "fight with T,S") that would arise if a DOME case were set up that used temperature and salinity. Future revisions should add more runtime parameters to specify the details of this case, but properly doing so would involve changing the order of arithmetic; this has not happened in this case. All real variables in this module are now described in comments. All answers and output are bitwise identical. Co-authored-by: Marshall Ward <marshall.ward@noaa.gov>
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.
The relevant change to the CPT is described in https://github.com/NOAA-GFDL/MOM6/pull/1437, which is where the new wind-stress acceleration diagnostics were added.
No change in answers for the NW2 test.