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

Resolve division by 0 when meshcap is run with WW3-CICE coupling; Add timers and overwrite capability for mod_def timesteps to meshcap #1163

Conversation

DeniseWorthen
Copy link
Contributor

@DeniseWorthen DeniseWorthen commented Jan 10, 2024

Pull Request Summary

Resolve potential division by zero found when coupling WW3 with CICE.
Adds run timers to the meshcap.

Description

Issue(s) addressed

Adds generation of a timer log in the meshcap, which will report, for example, the time spent in modelAdvance as well as the time spent before starting the next Advance. The capability is added using a wrapper mod (mimicking the CICE wrapper mod) so that no additional ifdefs are required in the cap. The output generated in log.ww3.timer is

20210322   60000   21600 WW3 InitializeRealize time: 0.7798858
20210322   60000   21600 WW3 ModelAdvance time since last step:  4.489980
20210322   61200   22320 WW3 ModelAdvance time:  2.570183
20210322   61200   22320 WW3 ModelAdvance time since last step:  8.023816
20210322   62400   23040 WW3 ModelAdvance time:  1.164186

Also adds capability to over-write timesteps from the mod_def file with other values. See associated UWM ufs-community/ufs-weather-model#2086 for description of how this works.

Commit Message

prevent division by 0 in appendtail and add timers to meshcap

Check list

Testing

  • How were these changes tested?
  • Are the changes covered by regression tests? (If not, why? Do new tests need to be added?)
  • Have the matrix regression tests been run (if yes, please note HPC and compiler)?
  • Please indicate the expected changes in the regression test output, (Note the list of known non-identical tests.)
  • Please provide the summary output of matrix.comp (matrix.Diff.txt, matrixCompFull.txt and matrixCompSummary.txt):

Regression tests in UWM were run. Logs are posted in associated UWM PR #2085 ufs-community/ufs-weather-model#2085

* mod_def with slow timesteps overwritten verifies against
run using mod_def containing the fast timesteps
* mod_def with slow timesteps overwritten reproduces on
restart
* unlike CICE, there is no CESM specific shr code used in WW3
@MatthewMasarik-NOAA
Copy link
Collaborator

Thank you @DeniseWorthen. I'll put the tests in.

@DeniseWorthen DeniseWorthen changed the title Resolve division by 0 when meshcap is run with WW3-CICE coupling Resolve division by 0 when meshcap is run with WW3-CICE coupling; Add timers and overwrite capability for mod_def timesteps to meshcap Jan 17, 2024
@DeniseWorthen
Copy link
Contributor Author

@JessicaMeixner-NOAA Can you review please? I think Matt is out. We need sub-component review completed for UWM testing. Thanks!

Copy link
Collaborator

@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.

@DeniseWorthen - You are correct, Matt is out. I've approved.

@zach1221
Copy link

Hi, @JessicaMeixner-NOAA @DeniseWorthen testing is complete on UFS-WM PR #2085 . Can you please merge this sub-PR?

@JessicaMeixner-NOAA JessicaMeixner-NOAA merged commit 4ffc47e into NOAA-EMC:dev/ufs-weather-model Jan 19, 2024
11 of 12 checks passed
@JessicaMeixner-NOAA
Copy link
Collaborator

@zach1221 @DeniseWorthen Merged

MatthewMasarik-NOAA added a commit to MatthewMasarik-NOAA/WW3 that referenced this pull request Feb 22, 2024
… fix2/sync-dev/unified

* origin/mods/dev/ufs-weather-model:
  matrix_cmake_ncep: update modules for spack-stack
  prevent division by 0 in appendtail and add timers to meshcap  (NOAA-EMC#1163)
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.

4 participants