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 CMEPS for wave slow loop coupling and provide hooks for S2SW coupling through CMEPS #61

Merged
merged 1,680 commits into from
Feb 3, 2022

Conversation

DeniseWorthen
Copy link
Collaborator

@DeniseWorthen DeniseWorthen commented Feb 1, 2022

Description of changes

  • Update CMEPS with field exchanges required for S2SW app and to allow optional placement of waves in the slow loop. The current S2SW app can continue to use connectors until the cap is updated in WW3. The relevant changes are in esmFldsExchange_nems.
  • Updates CMEPS for dynamic allocation in med_internalstate (new dynamic memory allocate in med_internalstate ESCOMP/CMEPS#263). This involved a large code restructuring but has no impact on answers.
  • Updates CMEPS with a large commit history that resulted from bringing in CESM share code to the CMEPS repository

See UFS Issue #1034

Mariana Vertenstein and others added 30 commits July 17, 2021 17:56
…hycom_cdeps

Merge feature/hafs_couplehycom_cdeps back to support/HAFS
…coupleww3

Conflicts solved by Ufuk, Dan, and Bin.
* append component name and averaging type to history_n
and history_option variables
* trailing whitespace cleanup
* change history config variables to match code
Merge feature/hafs_coupleww3 branch back to support/HAFS branch
DeniseWorthen and others added 19 commits December 16, 2021 09:08
Implements new dynamic memory allocation in med_internalstate_mod and removes the hard-wiring of ncomp settings in esmFlds.F90. It resolves ESCOMP#237 and ESCOMP#260.
* mapping is done in prep-atm; this mapping is unneeded
tidy up; changes for hafs tests to work. switch dst/src masking back for hafs mode.
This is not required if wmesmf can read correct values (water=1,land=0) from config
file
revert extraneous changes
Fixes to fix budget differences found between the aoflux calculation on the xgrid and aoflux calculatino on the ogrid.
The key difference is that mapping from the xgrid to the agrid is now done so that fields on the xgrid are normalized by the current open ocean fraction on the xgrid and then mapped and subsequently divided by the ocean fraction on the atm grid.
Fixes an issue with how coefficients are applied to individual fire components.
* prevent field advertising conflicts when running waves
with connectors. The added conditional can be removed when
s2sw is updated to use cmeps
@DeniseWorthen DeniseWorthen changed the title Update CMEPS for wave slow loop coupling and provide hooks for eventual S2SW coupling through CMEPS Update CMEPS for wave slow loop coupling and provide hooks for S2SW coupling through CMEPS Feb 1, 2022
…COMP#266)

Adds the ability to optionally place waves in the slow coupling loop. Also updates esmFldsExchange_nems to advertise and initialize required fields for the UFS S2SW application.
Specific notes
A FBExpAccumWav and counter are added. The prep_wav phase is split into prep_wav_accum and prep_wav_avg, replicating what is done for the the ocean component.
For waves in the fast coupling loop, the current prep_wav phase in the run sequence should be replaced with prep_wav_accum followed by prep_wav_avg. Answers are B4B in UFS testing when compared to using the current prep_wav phase.
For waves in the UFS S2SW application, the required fields are added to esmFldsExchange_nems. This requires a temporary conditional around the relevant code so that the S2SW app can continue to use NUOPC connectors during the transition to CMEPS.
For the HAFS applications in UFS using both CMEPS and waves, the src and dst masking in med_map_mod are switched to conform with the usual interpretation of src and dst masking. Implementing this change for the HAFS wave coupled applications will ensure that no additional change to CMEPS will be required when HAFS is switched to the new WW3 cap. For continued use of the existing WW3 cap during the transition period, this requires the setting of these variables correctly for the wave model using nems.configure
    mask_value_water = 1
   mask_value_land = 0
An extraneous ice->atm mapping in post_ice has also been removed and additional control of the dststatus_print
is applied to prevent nonsensical files being produced.
@DeniseWorthen DeniseWorthen marked this pull request as ready for review February 1, 2022 16:57
@DeniseWorthen DeniseWorthen merged commit 959c64e into NOAA-EMC:emc/develop Feb 3, 2022
@DeniseWorthen DeniseWorthen deleted the feature/wavslowbs1 branch January 10, 2023 13:01
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.