ufs-weather-model
ufs-weather-model copied to clipboard
Add the ability to handle accumulations and max/min computations over multiple time windows
Description
The RRFS plans to generate output at 15 minute intervals for an initial portion of its forecast, and then generate hourly output for the remainder of the forecast. We'd like to have the ability to simultaneously track 15 minute (or even shorter) and 60 minute periods to produce the most relevant output at specific model output times.
Solution
Ideally the fhzero and avg_max_length namelist variables could be prescribed as a list of zeroing out or averaging lengths of time rather than single values.
Alternatives
We've considered the possibility of restarting the model when switching the output frequency from 15 minute to hourly (with a change to the fhzero and avg_max_length namelist variables, but this comes with a performance overhead.
Related to
@MatthewPyle-NOAA Several things I want to clarify:
- The model currently can output history/restart files at 15 minute intervals for an initial portion of its forecast, and then generate hourly output for the remainder of the forecast.
- To get restart reproducibility, the model restart time should be multiple of FHZERO and multiple of radiation frequency (currently 1 hour), otherwise some intermediate average values will be lost. So in your case, the model will have restart reproducibility when restart at 1hr if you have FHZERO=1hr and radiation fhswr/fhlwr=3600s.
- when you set FHZERO=1hr, you should still get time average fields. E.g.
- in sfcf.f00-15-00, the average field is from 0-15mins
- in sfcf.f00-30-00, the average field is from 0-30mins
- in sfcf.f00-45-00, the average field is from 0-45mins
- in sfcf.f00-30-00, the average field is from 0-60mins
- in sfcf.f01-15-00, the average field is from 1hr-1hr15mins
- in sfcf.f01-30-00, the average field is from 1hr-1hr30mins
...
However if you want to have 15mins bucket instead of 1hr, you need to set radiation frequency to 15mins, which could significantly slow down the model. But if you still have 1hr radiation frequency, then the model code needs to be updated to save all the radiation related fields and the size of restart files will be increased.
Would you please clarify how you want to restart the model? Thanks.
Ideally we wouldn't need to restart the model routinely (the fallback idea is to restart the model at 18 hours to shift from 15 minute diagnostics early in the forecast to 60 minute diagnostics later in the forecast). Doing it as we'd like would require two sets of variables to cleanly handle the 15 and 60 minute periods (will want both for the first 18 hours) - we have some thoughts on how to do it, but need to give it more thought to minimize impacts on other users.
RRFS is probably calling SW/LW radiation at a higher frequency than one hour. Please check
An attempt to summarize what we're hoping to see in the model:
https://docs.google.com/presentation/d/19Ffg5aT7Dq51jV3h91GayWI4TzkQNsTb7o5wuvcE_4I/edit?usp=sharing