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

Update coupled to latest UFS version #359

Conversation

WalterKolczynski-NOAA
Copy link
Contributor

@WalterKolczynski-NOAA WalterKolczynski-NOAA commented Jun 28, 2021

Updates the coupled workflow to use the current version of UFS. This requires multiple updates to the configuration to handle new or changed settings.

Closes: #230, #324, #325, #333, #336, #337

rmontuoro and others added 30 commits June 8, 2021 16:12
prognostic aerosols into the UFS, replacing original
FV3-GOCART system.

A forked repository is temporarily used to download
the updated ufs-weather-model app.
with latest FV3 revision and include settings for
FV3_GFS_v16 and aerosol scavenging factors.
This item is implemented as a YAML list of strings, which
allows to set scavenging factors for each tracer.
removing all references to `cplgocart`.
- Copy NUOPC field dictionary to run directory by default.
ufs-weather-model with prognostic aerosols. This
option is recognized by means of a hidden file
created in the model's repository when running
checkout.sh with option -a.
A new shell function (get_platform) is introduced to increase
modularity. This fuction auto-detects the local platform and
returns a string identifier. As a result, load_fv3gfs_modules.sh
is refactored.
generate the FV3 namelist file for FV3-GOCART.
Updates the UFS model to the current tip of develop.

Refs: NOAA-EMC#324
Adds the ALLOW_LANDMASK_CHANGES option to the MOM6 input templates
and allows the setting via MOM6_ALLOW_LANDMASK_CHANGES (default
False).

Refs: NOAA-EMC#324
The newest version of CICE replaces istep0 with the normal month and day,
so the namelist is updated to reflect that.

ktherm and tfrz_option are updated to allow alternate settings, following
similar changes to the UFS test harness. The default values are the
previous settings.

Settings for tr_FY, sw_redist, f_mlt_onset, and f_frx_onset are updated
to new values in the UFS test harness.

Additionally, many namelist options have been removed following the same
deletions in the UFS test harness.

Refs: NOAA-EMC#324
Some changes to the UFS require updates to the build script.

The modulefile organization has been updated to be
modulefiles/ufs_${target} rather than modulefiles/${target}/fv3, so
the module paths in the build script are updated correspondingly.

A cmake switch DAPP is now required in order to build UFS. Non-
aerosol coupled is using S2SW for the time being. This replaces
setting DS2S and DWW3 to YES.

The old v15 suite is removed from the CCPP suite list.

Refs: NOAA-EMC#324
The location of the fd_nems.yaml file changed in the UFS repository,
so updated nems_configure to copy from the new location.

Refs: NOAA-EMC#324
The latest version of UFS adds a setting to define the ocean mesh file,
so the nems.configure templates are updated to define them. They are
identical to the ice mesh file, so the MESHICE variable is renamed to
MESH_OCN_ICE and used for both. Additionally, the use_mommesh variable
is added and defaults to true.

Refs: NOAA-EMC#324
The WW3 pre and post components now need NetCDF to build, so NetCDF is
added back to the modulelist, and previously removed code in the build
script is restored.

Refs: NOAA-EMC#324
rmontuoro and others added 7 commits July 1, 2021 17:12
GitHub repository for the UFS weather model only. This repo
now contains UFS-Aerosols, the aerosol component based on
NASA's GOCART.

Since we are using a single repository for both S2S and
coupled aerosols, the -a option was removed from checkout.sh
and added to build_all.sh. This option is passed to
build_ufs_coupled.sh and partial_build.sh, which have
been streamlined and now accept both short and long options:

build_ufs_coupled.sh:
  -a, --aerosols
  -c, --coupled

partial_build.sh:
  -a, --aerosols
  -c, --coupled
  -h, --help
  -v, --verbose
- removed CROW FirstTrue check when building config.nsst from nsst.yaml
- replace nst_spinup_logic with NST_SPINUP variable that is parsed from variable dictionary
- nst_spinup_logic not needed currently

Refs: NOAA-EMC#230
- set NST_MODEL=2 (turns it on)
- add additional NSST namelist variables: NST_SPINUP, NST_RESV, ZSEA1, ZSEA2
- set NST_SPINUP=1 (NSST will spinup)
- change CCPP_SUITE from FV3_GFS_v16_coupled to FV3_GFS_v16_couplednsst

Refs: NOAA-EMC#230
@WalterKolczynski-NOAA WalterKolczynski-NOAA linked an issue Jul 10, 2021 that may be closed by this pull request
Adds the eps_imesh setting to the nems.configure files when CICE is
on.

Refs: NOAA-EMC#324, NOAA-EMC#333
The modulefile in UFS doesn't load some modules needed for the forecast
script at runtime, notably produtil, which provides err_chk. The module
for the forecast job is changed back to module_base for the time being.

Refs: NOAA-EMC#336
Updates the UFS version to the current develop.

The UFS build script in g-w is changed as the bulid script in the UFS
repo no longer automatically adds CCPP_FLAGS to CMAKE_FLAGS, so now the
g-w version does it instead before calling the UFS script. While this
change was being made, the option parsing was updated to use getopts to
match other scripts.

The FV3 namelist has ncld removed as that option is no longer recognized.

Refs: NOAA-EMC#324
Some of the fields that had previously been turned off from output
in CICE are turned back on.

Refs: NOAA-EMC#324, NOAA-EMC#333
@WalterKolczynski-NOAA
Copy link
Contributor Author

coupled_free_forecast_wave, aerosol_firex_forecast, and aerosol_free_forecast all report as succeeded on Hera.

README is updated with instructions to build UFS for aerosols.

Refs: NOAA-EMC#324, NOAA-EMC#336
Copy link
Contributor

@JessicaMeixner-NOAA JessicaMeixner-NOAA left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

For the coupled side of things, this all looks fine. Approving based on the fact that @WalterKolczynski-NOAA had a successful test on hera.

Copy link

@rmontuoro rmontuoro left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good.

@WalterKolczynski-NOAA WalterKolczynski-NOAA merged commit 3a0aad5 into NOAA-EMC:feature/coupled-crow Jul 21, 2021
@WalterKolczynski-NOAA WalterKolczynski-NOAA deleted the feature/model_update branch July 21, 2021 22:24
kayeekayee pushed a commit to kayeekayee/global-workflow that referenced this pull request May 30, 2024
Add option to use sea-ice albedo provided by the sea-ice model CICE in atmospheric radiation calculation.
Add write_nsflip option.

Co-authored-by: Jun.Wang <Jun.Wang@noaa.gov>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
coupled Issues related to the coupled branch feature New feature or request
Projects
None yet
5 participants