MOM6 icon indicating copy to clipboard operation
MOM6 copied to clipboard

GFDL to main (2022-08-10)

Open marshallward opened this issue 1 year ago • 1 comments

This PR contains two new features, some bugfixes, and an extension of the dimensional scaling to the coupler interfaces ("caps").

We now support an interface to communicate with external databases at runtime. The current proposal is very strongly designed around SmartRedis, but could be modified and configured to support other database-like systems.

Also included is a new machine learning MEKE solver which uses this database interface.

Reproducibility of legacy solvers can now be managed by an ANSWER_DATE parameter. Older flags such as ANSWERS_2018 are still supported, but can now be automatically configured by ANSWER_DATE.

Note that this patch contains changes to the driver and coupler code related to dimensional scaling, and should be reviewed carefully by anyone using them.

Also note that the git submodules to CVMix and GSW (TEOS) now point to repositories under mom-ocean, rather than the parent repositories. Source code and git hashes are equivalent, so no changes are required.

Features

  • NOAA-GFDL/MOM6#159 (@ashao)
  • NOAA-GFDL/MOM6#179 (@Hallberg-NOAA)

Bugfix

  • NOAA-GFDL/MOM6#170 (@Hallberg-NOAA)
  • NOAA-GFDL/MOM6#171 (@kshedstrom)
  • NOAA-GFDL/MOM6#176 (@awallcraft)

Refactor

  • NOAA-GFDL/MOM6#167 (@Hallberg-NOAA)
  • NOAA-GFDL/MOM6#172 (@Hallberg-NOAA)
  • NOAA-GFDL/MOM6#175 (@marshallward)
  • NOAA-GFDL/MOM6#180 (@Hallberg-NOAA)
  • NOAA-GFDL/MOM6#181 (@Hallberg-NOAA)
  • NOAA-GFDL/MOM6#182 (@Hallberg-NOAA)
  • NOAA-GFDL/MOM6#183 (@Hallberg-NOAA)

Meta

  • NOAA-GFDL/MOM6#174 (@adcroft)
  • NOAA-GFDL/MOM6#178 (@marshallward)
  • NOAA-GFDL/MOM6#185 (@marshallward)
  • NOAA-GFDL/MOM6#187 (@marshallward)
  • NOAA-GFDL/MOM6#191 (@marshallward)

Contributors:

  • @Hallberg-NOAA: 8
  • @marshallward: 5
  • @awallcraft: 1
  • @adcroft: 1
  • @kshedstrom: 1
  • @ashao: 1

marshallward avatar Aug 10 '22 15:08 marshallward

Codecov Report

Merging #1582 (1f1b8ad) into main (d4d7fbe) will increase coverage by 3.16%. The diff coverage is 19.56%.

@@            Coverage Diff             @@
##             main    #1582      +/-   ##
==========================================
+ Coverage   33.99%   37.15%   +3.16%     
==========================================
  Files         259      261       +2     
  Lines       70267    71909    +1642     
  Branches    13023    13455     +432     
==========================================
+ Hits        23885    26719    +2834     
+ Misses      41880    40246    -1634     
- Partials     4502     4944     +442     
Impacted Files Coverage Δ
...g_src/drivers/solo_driver/MESO_surface_forcing.F90 0.00% <0.00%> (ø)
...g_src/drivers/solo_driver/user_surface_forcing.F90 0.00% <ø> (ø)
...src/external/database_comms/MOM_database_comms.F90 0.00% <0.00%> (ø)
...ernal/database_comms/database_client_interface.F90 0.00% <0.00%> (ø)
src/ALE/MOM_regridding.F90 26.70% <0.00%> (+3.27%) :arrow_up:
src/ALE/P1M_functions.F90 0.00% <0.00%> (ø)
src/ALE/P3M_functions.F90 0.00% <0.00%> (ø)
src/ALE/PCM_functions.F90 100.00% <ø> (+20.00%) :arrow_up:
src/ALE/PLM_functions.F90 85.10% <ø> (+1.23%) :arrow_up:
src/ALE/PQM_functions.F90 0.00% <0.00%> (ø)
... and 186 more

:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more

codecov[bot] avatar Aug 10 '22 15:08 codecov[bot]

works fine in UFS and N. Atlantic regional setting.

jiandewang avatar Aug 17 '22 15:08 jiandewang

Thanks everyone, I will merge this now.

marshallward avatar Aug 20 '22 20:08 marshallward

Since the build-test-nans test has been renamed to build-coverage, this test will never run. I've removed build-test-nans from the list of required tests, but it still seems to be required for this PR.

If I can't figure out how to re-run these tests, I will do an admin override.

marshallward avatar Aug 20 '22 20:08 marshallward