You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Refactor gempak jobs for new COM and style (#2374)
Updates the gempak jobs to fit the new COM structure while also
refactoring them some to improve the style. Despite these technical
changes, the overall structure is left unchanged for most scripts,
though some have been rewritten to make the needed changes easier. Some
of these scripts had already been updated some in the original COM
refactor and thus needed fewer updates.
Style updates includes converting all gempak scripts to bash, making
them shellcheck compliant, and removing trailing whitespace. Further
refactoring to improve maintainability will be needed in the future (see
#2341, #2342, #2343, #2348).
The GFS gif scripts were identical except the forecast hour, so they are
collapsed down into two: one for f000 and one for other forecast hours.
The gempak executables have short path limits. To get around this
without having the gempak module recompiled, target directories (mostly
relevant for the gempak meta jobs) are symlinked into the working
directory to drasticly reduce the path lengths.
Part of this update includes replacing existing MPMD calls with the new
standard `ush/run_mpmd.sh` script.
A new function, `wait_for_file()`, is introduced to standardize waiting
for a file to be available.
Gempak forecast hours are often hard-coded within scripts. In addition
to issues with maintainability, this causes problems for shorter
forecasts, such as we typically run for testing purposes. For now, we
simply check the values against the forecast length and reduce if
necessary. Future work (#2348) will be needed to remove these hard-coded
values with variables set in the config file (or just use update gempak
products to match standard output time variables).
One-degree gempak files have been updated to include `1p00` in the
filename.
Several gempak job dependencies are corrected.
Fake gempak data for external models is being staged on tier-1 machines
to allow testing.
**Output has not been verified.** Future PRs will likely be needed to
bring full functionality online.
Resolves#2158Resolves#2152Resolves#2151Resolves#2249Resolves#2247
Refs #2157
Refs #2348
0 commit comments