-
Notifications
You must be signed in to change notification settings - Fork 132
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 NUOPC/CMEPS driver #607
Update NUOPC/CMEPS driver #607
Conversation
* Isotopes for CICE (CICE-Consortium#423) Co-authored-by: apcraig <anthony.p.craig@gmail.com> Co-authored-by: David Bailey <dbailey@ucar.edu> Co-authored-by: Elizabeth Hunke <eclare@lanl.gov>
Update CICE for coupling with UFS
…l temperature and density are satisfied
changes to satisfy ufsatm and cesm requirements for pot temp and density from atm
* Add atmiter_conv to CICE * Add documentation * trigger build the docs Co-authored-by: David A. Bailey <dbailey@ucar.edu>
This reverts commit e70d1ab.
@@ -452,6 +450,8 @@ subroutine input_data | |||
#ifndef CESMCOUPLED | |||
runid = 'unknown' ! run ID used in CESM and for machine 'bering' | |||
runtype = 'initial' ! run type: 'initial', 'continue' | |||
restart = .false. ! if true, read restart files for initialization |
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.
Note that this is needed because CESM has restart flags set by driver.
@@ -1775,7 +1775,7 @@ subroutine input_data | |||
grid_type /= 'rectangular' .and. & | |||
grid_type /= 'cpom_grid' .and. & | |||
grid_type /= 'regional' .and. & | |||
grid_type /= 'latlon' ) then | |||
grid_type /= 'setmask' ) then |
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.
The latlon grid functionality has changed here. We are using a new NUOPC mesh functionality. Are there other groups that use the 'latlon' grid?
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.
We need to keep the latlon capability. F cases use the latlon feature in prescribed ice mode, I assume there may be other users of older version of CESM that need this. RASM certainly does.
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.
I didn't realize that RASM still did F compsets! We can certainly keep this. I can make this modification.
@@ -40,7 +40,7 @@ module ice_grid | |||
private | |||
public :: init_grid1, init_grid2, & | |||
t2ugrid_vector, u2tgrid_vector, & | |||
to_ugrid, to_tgrid, alloc_grid | |||
to_ugrid, to_tgrid, alloc_grid, makemask |
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.
makemask is needed in the driver code
@@ -379,11 +379,6 @@ subroutine init_grid2 | |||
else | |||
call popgrid ! read POP grid lengths directly | |||
endif | |||
#ifdef CESMCOUPLED | |||
elseif (trim(grid_type) == 'latlon') then |
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.
Again, is anyone else using latlongrid?
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.
There are only two non-driver routines impacted here: ice_init.F90 and ice_grid.F90. I have added comments as a part of the review here. Otherwise, everything else is needed for running the NOAA/EMC UFS app and the CESM.
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.
I think this can be merged after the lonlat mode is recovered.
@DeniseWorthen can you do this? I'm not sure I can modify your pull request. |
It would be nice however if the merge message would be tweaked to not include the concatenated messages from the 131(!) commits in this PR (which is the default for squash merges)... |
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.
I'm fine with the changes to ice_init.F90 and ice_grid.F90. Someone else should review the nuopc mods.
* advance_timestep calls calendar; calling calendar a second time results in hour always being equal to hourp and new_hour is always false and no hourly history is produced
@apcraig With further testing, I think I'm seeing the same behaviour as reported in issue 589. Our use case is with the following:
However, I am getting hourly history files instead of the expected 6-hourly files. It seems |
@DeniseWorthen, sorry about the hourly output issue. This is something I could/should have fixed by now, but I thought we'd quickly settle questions about relative vs absolute frequency. I will fix this soon. If this is critical for you, let me know and I'll make it even higher priority. Thanks! |
Just a final checkin @DeniseWorthen, is this ready to merge from your side of things? |
@apcraig We would need to get it fixed prior to the next evaluation we're preparing for the coupled model, but it will be a few weeks before we're ready to run the entire set. Until then, we can make do w/ hourly output. I think it is ready to merge. Thanks. |
For detailed information about submitting Pull Requests (PRs) to the CICE-Consortium,
please refer to: https://github.com/CICE-Consortium/About-Us/wiki/Resource-Index#information-for-developers
PR checklist
Updates drivers/nuopc/cmeps for both CESM and UFS
@DeniseWorthen
@dabail10
@mvertens
@dabail10
@apcraig
Regression test logs for Cheyenne Intel and GNU for ufs-weather against current develop branch
Code changes are confined to drivers/nuopc/cmeps with the exceptions of making
makemask
public incicecore/cicedynB/infrastructure/ice_grid.F90
and minor changes need inice_init
for CESMadds drivers/nuopc/cmeps updates from ESCOMP including introduction of mask file for generating mask when appropriate and changes that allow cice6 to run as an external cesm component
makes changes in drivers/nuopc/cmeps required for new time manager and introduces a run configurable mesh tolerance error for ufs-weather
removes forapps/ufs subdirectory which is no longer required by ufs-weather
These changes are B4B when tested against the current develop branch of ufs-weather-model (00d570e). Tested configurations for ufs-weather-model include multiple configurations, e.g. a fully active atmosphere (UFSAtm) or a data atmosphere (CDEPS, NEMSDatm) coupled to MOM6 or MOM6+WW3 using the CMEPS mediator. Tests are conducted primarily for different ATM physics options and restart reproducibility of the coupled system. Tested resolutions are C96 ATM
and 1deg OCN+ICE, C192 ATM and 1/2deg OCN+ICE and C384 ATM and 1/4 deg OCN+ICE. Both Intel and GNU compilers are tested for the coupled system.