Skip to content

allow alarm to ring on first 6 hour interval always - #181

Open
DeniseWorthen wants to merge 1 commit into
NOAA-EMC:GFSV17from
DeniseWorthen:bugfix/toffset
Open

allow alarm to ring on first 6 hour interval always#181
DeniseWorthen wants to merge 1 commit into
NOAA-EMC:GFSV17from
DeniseWorthen:bugfix/toffset

Conversation

@DeniseWorthen

@DeniseWorthen DeniseWorthen commented Aug 7, 2026

Copy link
Copy Markdown
Collaborator

There is currently a bug in the output logging feature. While I believe it has no practicable impact, I am opening this PR for the v17 team leads to make a decision on whether to include it in the production branch. It does not impact logging of 1-hour output files and it does not impact logging of 6h output files, given how I understand the cycling. But this is not my area of expertise (cycling), so I defer to those who know more.

The logging feature relies on alarms to trigger the checking of the output files. It is controlled by the toffset variable, which AlarmInit uses to align the starttime such that the rings will still be on our nominal 6 hour boundaries (ie, 0:6, 12:18) regardless of starting hour.

The following shows the only conditions where I've determined that the current code fails:

Screenshot 2026-08-07 at 8 21 45 AM

The model's first advance begins at hour=21; MOM6 averaging starts 3 hours later; the first output file produce by MOM6 will be the "03" file, which is the hour=0:6 average on the following day.

The output logging relies on alarms ringing every 6 hours to tell it to check if the file is a) present and b) complete.

The bug is that the alarm does not actually ring at hour=24. However, since it is the alarms at hour=30 and 36 that are used in logging the 03 file, the fact that the alarm does not ring at hour=24 does not matter. All subsequent hour=00 alarms ring as expected. It is only the first ring that is silent.

Using the current toffset value and printing the alarm ring times shows (the two times are the curr time and the model advance time; alarms always ring on the advance time)

Alarm ringing 2021-03-23T05:00:00  2021-03-23T06:00:00
Alarm ringing 2021-03-23T11:00:00  2021-03-23T12:00:00
Alarm ringing 2021-03-23T17:00:00  2021-03-23T18:00:00
Alarm ringing 2021-03-23T23:00:00  2021-03-24T00:00:00
Alarm ringing 2021-03-24T05:00:00  2021-03-24T06:00:00

There is a missing alarm which should have rang when the day flips. The same test with the code change produces

Alarm ringing 2021-03-22T23:00:00  2021-03-23T00:00:00
Alarm ringing 2021-03-23T05:00:00  2021-03-23T06:00:00
Alarm ringing 2021-03-23T11:00:00  2021-03-23T12:00:00
Alarm ringing 2021-03-23T17:00:00  2021-03-23T18:00:00
Alarm ringing 2021-03-23T23:00:00  2021-03-24T00:00:00
Alarm ringing 2021-03-24T05:00:00  2021-03-24T06:00:00

@DeniseWorthen

Copy link
Copy Markdown
Collaborator Author

@dpsarmie Please let me know what testing might be required w/ the c1152 weekly test, if needed.

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.

1 participant