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 scripts to use the GW-RT global namelist #3017

Draft
wants to merge 5 commits into
base: develop
Choose a base branch
from

Conversation

dpsarmie
Copy link

Description

This PR changes the ways the input.nml file is created. Instead of creating a namelist, the variables that are set locally will now use the UFS global_control.nml.IN template and the atparse function to generate the namelist.

This should allow the GW branch to more easily test changes in the UFS regression test framework. It will also allow GW to more easily introduce UFS changes into GW.

The functionality in parsing_namelists_FV3.sh is mostly unchanged. Since variables are still saved as local, the parsing of the template will occur in this script. Sections in the namelist that were previously not generated (stoch physics options for example) will be set and parsed since the regression test template has these placeholders active. As options are turned off and on, ! will be used in the namelist to comment out sections that are not used.

Previous PR #2733 was closed since my old branch was stale and a new branch was created.

Unresolved issues and input needed from GW group before final code review

First of all, global_control.nml.IN has been added in the root directory of global_workflow. This will not be in the final commit. This is a place holder until the pathing to the UFS template is finalized. A variable with the final path will also be needed to replace the hardcoded path in parsing_namelists_FV3.sh.

There are some variables that were not set in the original scripts that have been added. These were set to the UFS defaults.
The tests I've conducted were to generate the namelists but more tests should be done to make sure that outputs have not changed.

Resolves #2731
Resolves ufs-community/ufs-weather-model#1664

Outstanding dependencies:
ufs-community/ufs-weather-model#2425

Type of change

  • Bug fix (fixes something broken)
  • New feature (adds functionality)
  • Maintenance (code refactor, clean-up, new CI test, etc.)

Change characteristics

How has this been tested?

Tested namelist generation with C48ATM and C48S2S configurations. Further testing will need to be done to ensure intended funcitonality.

Checklist

  • Any dependent changes have been merged and published
  • My code follows the style guidelines of this project
  • I have performed a self-review of my own code
  • I have commented my code, particularly in hard-to-understand areas
  • I have documented my code, including function, input, and output descriptions
  • My changes generate no new warnings
  • New and existing tests pass with my changes
  • This change is covered by an existing CI test or a new one has been added
  • I have made corresponding changes to the system documentation if necessary

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
1 participant