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 gempak job to run one fcst hour per task #2671

Merged
merged 54 commits into from
Jul 3, 2024
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
Show all changes
54 commits
Select commit Hold shift + click to select a range
5a52e57
Update gempak job to run one fcst hour per task
GwenChen-NOAA Jun 10, 2024
4ee9076
Syntax update
GwenChen-NOAA Jun 10, 2024
5876225
Update ecf script
GwenChen-NOAA Jun 10, 2024
b5dcca5
Merge branch 'develop' into develop
GwenChen-NOAA Jun 10, 2024
a6b2310
Disable shellcheck
GwenChen-NOAA Jun 10, 2024
2e6b0d1
Merge branch 'develop' of https://github.com/GwenChen-NOAA/global-wor…
GwenChen-NOAA Jun 10, 2024
f7cc5fb
Remove unused variable fend
GwenChen-NOAA Jun 10, 2024
1cab6d5
Upload GDAS and GOES job scripts
GwenChen-NOAA Jun 13, 2024
166a3aa
Merge branch 'develop' into develop
GwenChen-NOAA Jun 13, 2024
54e9cc1
Fix GOES master filename
GwenChen-NOAA Jun 20, 2024
73f23f2
Merge branch 'NOAA-EMC:develop' into develop
GwenChen-NOAA Jun 20, 2024
f9b148e
Merge branch 'develop' of https://github.com/GwenChen-NOAA/global-wor…
GwenChen-NOAA Jun 20, 2024
662b229
Make gempak a metatask
WalterKolczynski-NOAA Jun 20, 2024
9a5446f
Turn gempack special job into a metatask
WalterKolczynski-NOAA Jun 20, 2024
96850c6
Merge pull request #1 from WalterKolczynski-NOAA/feature/gempak_refactor
GwenChen-NOAA Jun 21, 2024
50d92c5
Merge branch 'NOAA-EMC:develop' into develop
GwenChen-NOAA Jun 26, 2024
a0fdfd9
Merge branch 'NOAA-EMC:develop' into develop
GwenChen-NOAA Jun 26, 2024
3b3387d
Update gfs_tasks.py
GwenChen-NOAA Jun 26, 2024
dbb96b0
Remove forecast hour loops
GwenChen-NOAA Jun 27, 2024
cc2e8aa
Remove 'continue' in rocoto scripts
GwenChen-NOAA Jun 27, 2024
22fbe5c
Requested changes by reviewer
GwenChen-NOAA Jun 27, 2024
47e11ba
One more fix
GwenChen-NOAA Jun 27, 2024
d1dc43b
Update jobs/rocoto/gempak.sh
GwenChen-NOAA Jun 28, 2024
2f28348
Update jobs/JGFS_ATMOS_GEMPAK
GwenChen-NOAA Jun 28, 2024
68c42be
Update jobs/rocoto/gempakgrb2spec.sh
GwenChen-NOAA Jun 28, 2024
b10150c
Update jobs/JGFS_ATMOS_GEMPAK
GwenChen-NOAA Jun 28, 2024
a4b2491
Update jobs/JGFS_ATMOS_GEMPAK
GwenChen-NOAA Jun 28, 2024
d6ecc5b
Update jobs/JGFS_ATMOS_GEMPAK
GwenChen-NOAA Jun 28, 2024
ce5bb0e
Update jobs/JGFS_ATMOS_GEMPAK
GwenChen-NOAA Jun 28, 2024
1695967
Update jobs/JGFS_ATMOS_GEMPAK
GwenChen-NOAA Jun 28, 2024
32c818c
Update jobs/JGFS_ATMOS_GEMPAK
GwenChen-NOAA Jun 28, 2024
aea19a4
Update jobs/JGFS_ATMOS_GEMPAK
GwenChen-NOAA Jun 28, 2024
b84de81
Update jobs/JGFS_ATMOS_GEMPAK
GwenChen-NOAA Jun 28, 2024
dbc5cc2
Update scripts/exgfs_atmos_goes_nawips.sh
GwenChen-NOAA Jun 28, 2024
8e3702c
Update scripts/exgfs_atmos_goes_nawips.sh
GwenChen-NOAA Jun 28, 2024
58ae146
Update jobs/JGFS_ATMOS_GEMPAK
GwenChen-NOAA Jun 28, 2024
55e2f70
Update jobs/JGFS_ATMOS_GEMPAK
GwenChen-NOAA Jun 28, 2024
7c1861b
Update scripts/exgdas_atmos_nawips.sh
GwenChen-NOAA Jun 28, 2024
9dd6b6a
Update scripts/exgdas_atmos_nawips.sh
GwenChen-NOAA Jun 28, 2024
219ffd4
Update scripts/exgfs_atmos_goes_nawips.sh
GwenChen-NOAA Jun 28, 2024
466c15e
Update scripts/exgfs_atmos_goes_nawips.sh
GwenChen-NOAA Jun 28, 2024
ad5fc69
Update scripts/exgfs_atmos_nawips.sh
GwenChen-NOAA Jun 28, 2024
c35194c
Update scripts/exgfs_atmos_nawips.sh
GwenChen-NOAA Jun 28, 2024
6227f76
Update scripts/exgfs_atmos_goes_nawips.sh
GwenChen-NOAA Jun 28, 2024
9e8675a
Merge branch 'NOAA-EMC:develop' into develop
GwenChen-NOAA Jun 28, 2024
c1effb1
Reduce wallclock for gempak in config.resources
GwenChen-NOAA Jun 28, 2024
9b33676
Update scripts/exgdas_atmos_nawips.sh
GwenChen-NOAA Jun 28, 2024
307dcac
Update scripts/exgdas_atmos_nawips.sh
GwenChen-NOAA Jun 28, 2024
d15df32
Fix octal issue
GwenChen-NOAA Jul 1, 2024
ee15903
Merge branch 'develop' into develop
aerorahul Jul 1, 2024
fd68443
Fix CI test error
GwenChen-NOAA Jul 2, 2024
e271417
Merge branch 'develop' of https://github.com/GwenChen-NOAA/global-wor…
GwenChen-NOAA Jul 2, 2024
9d85f3d
Merge branch 'develop' into develop
aerorahul Jul 2, 2024
2aed07c
Merge branch 'develop' into develop
aerorahul Jul 2, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
187 changes: 118 additions & 69 deletions jobs/JGFS_ATMOS_GEMPAK
Original file line number Diff line number Diff line change
Expand Up @@ -6,8 +6,6 @@
############################################
# Set up model and cycle specific variables
############################################
export finc=${finc:-3}
export fstart=${fstart:-0}
export model=${model:-gfs}
export GRIB=${GRIB:-pgrb2f}
export EXT=""
Expand All @@ -16,11 +14,6 @@
# For half-degree P Grib files
export DO_HD_PGRB=${DO_HD_PGRB:-YES}

###################################
# Specify NET and RUN Name and model
####################################
export model=${model:-gfs}

##############################################
# Define COM directories
##############################################
Expand All @@ -40,73 +33,129 @@
fi
done

# TODO: These actions belong in an ex-script not a j-job
if [[ -f poescript ]]; then
rm -f poescript
fi

ocean_domain_max=180
if (( ocean_domain_max > FHMAX_GFS )); then
ocean_domain_max=${FHMAX_GFS}
fi

{
#################################################################
# Execute the script for the 384 hour 1 degree grib
##################################################################
echo "time ${SCRgfs}/exgfs_atmos_nawips.sh 1p00 ${FHMAX_GFS} GFS_GEMPAK ${COM_ATMOS_GEMPAK_1p00}"
echo "time ${SCRgfs}/exgfs_atmos_nawips.sh 1p00 ${FHMAX_GFS} GFS_GEMPAK ${COM_ATMOS_GEMPAK_1p00}"
echo "time ${SCRgfs}/exgfs_atmos_nawips.sh 1p00 ${FHMAX_GFS} GFS_GEMPAK ${COM_ATMOS_GEMPAK_1p00}"
echo "time ${SCRgfs}/exgfs_atmos_nawips.sh 1p00 ${FHMAX_GFS} GFS_GEMPAK ${COM_ATMOS_GEMPAK_1p00}"
echo "time ${SCRgfs}/exgfs_atmos_nawips.sh 1p00 ${FHMAX_GFS} GFS_GEMPAK ${COM_ATMOS_GEMPAK_1p00}"
echo "time ${SCRgfs}/exgfs_atmos_nawips.sh 1p00 ${FHMAX_GFS} GFS_GEMPAK ${COM_ATMOS_GEMPAK_1p00}"

#################################################################
# Execute the script for the half-degree grib
##################################################################
echo "time ${SCRgfs}/exgfs_atmos_nawips.sh 0p50 ${FHMAX_GFS} GFS_GEMPAK ${COM_ATMOS_GEMPAK_0p50}"
echo "time ${SCRgfs}/exgfs_atmos_nawips.sh 0p50 ${FHMAX_GFS} GFS_GEMPAK ${COM_ATMOS_GEMPAK_0p50}"
echo "time ${SCRgfs}/exgfs_atmos_nawips.sh 0p50 ${FHMAX_GFS} GFS_GEMPAK ${COM_ATMOS_GEMPAK_0p50}"
echo "time ${SCRgfs}/exgfs_atmos_nawips.sh 0p50 ${FHMAX_GFS} GFS_GEMPAK ${COM_ATMOS_GEMPAK_0p50}"
echo "time ${SCRgfs}/exgfs_atmos_nawips.sh 0p50 ${FHMAX_GFS} GFS_GEMPAK ${COM_ATMOS_GEMPAK_0p50}"
echo "time ${SCRgfs}/exgfs_atmos_nawips.sh 0p50 ${FHMAX_GFS} GFS_GEMPAK ${COM_ATMOS_GEMPAK_0p50}"

#################################################################
# Execute the script for the quater-degree grib
####################################################################
echo "time ${SCRgfs}/exgfs_atmos_nawips.sh 0p25 ${FHMAX_GFS} GFS_GEMPAK ${COM_ATMOS_GEMPAK_0p25}"
echo "time ${SCRgfs}/exgfs_atmos_nawips.sh 0p25 ${FHMAX_GFS} GFS_GEMPAK ${COM_ATMOS_GEMPAK_0p25}"
echo "time ${SCRgfs}/exgfs_atmos_nawips.sh 0p25 ${FHMAX_GFS} GFS_GEMPAK ${COM_ATMOS_GEMPAK_0p25}"
echo "time ${SCRgfs}/exgfs_atmos_nawips.sh 0p25 ${FHMAX_GFS} GFS_GEMPAK ${COM_ATMOS_GEMPAK_0p25}"
echo "time ${SCRgfs}/exgfs_atmos_nawips.sh 0p25 ${FHMAX_GFS} GFS_GEMPAK ${COM_ATMOS_GEMPAK_0p25}"
echo "time ${SCRgfs}/exgfs_atmos_nawips.sh 0p25 ${FHMAX_GFS} GFS_GEMPAK ${COM_ATMOS_GEMPAK_0p25}"
echo "time ${SCRgfs}/exgfs_atmos_nawips.sh 0p25 ${FHMAX_GFS} GFS_GEMPAK ${COM_ATMOS_GEMPAK_0p25}"
echo "time ${SCRgfs}/exgfs_atmos_nawips.sh 0p25 ${FHMAX_GFS} GFS_GEMPAK ${COM_ATMOS_GEMPAK_0p25}"
echo "time ${SCRgfs}/exgfs_atmos_nawips.sh 0p25 ${FHMAX_GFS} GFS_GEMPAK ${COM_ATMOS_GEMPAK_0p25}"
echo "time ${SCRgfs}/exgfs_atmos_nawips.sh 0p25 ${FHMAX_GFS} GFS_GEMPAK ${COM_ATMOS_GEMPAK_0p25}"

####################################################################
# Execute the script to create the 35km Pacific grids for OPC
#####################################################################
echo "time ${SCRgfs}/exgfs_atmos_nawips.sh 35km_pac ${ocean_domain_max} GFS_GEMPAK_WWB ${COM_ATMOS_GEMPAK_35km_pac}"
echo "time ${SCRgfs}/exgfs_atmos_nawips.sh 35km_pac ${ocean_domain_max} GFS_GEMPAK_WWB ${COM_ATMOS_GEMPAK_35km_pac}"

####################################################################
# Execute the script to create the 35km Atlantic grids for OPC
#####################################################################
echo "time ${SCRgfs}/exgfs_atmos_nawips.sh 35km_atl ${ocean_domain_max} GFS_GEMPAK_WWB ${COM_ATMOS_GEMPAK_35km_atl}"
echo "time ${SCRgfs}/exgfs_atmos_nawips.sh 35km_atl ${ocean_domain_max} GFS_GEMPAK_WWB ${COM_ATMOS_GEMPAK_35km_atl}"

#####################################################################
# Execute the script to create the 40km grids for HPC
######################################################################
echo "time ${SCRgfs}/exgfs_atmos_nawips.sh 40km ${ocean_domain_max} GFS_GEMPAK_WWB ${COM_ATMOS_GEMPAK_40km}"
echo "time ${SCRgfs}/exgfs_atmos_nawips.sh 40km ${ocean_domain_max} GFS_GEMPAK_WWB ${COM_ATMOS_GEMPAK_40km}"
} > poescript

cat poescript

"${HOMEgfs}/ush/run_mpmd.sh" poescript
#################################################################
# Execute the script for the 384 hour 1 degree grib
##################################################################
fhmin=0
fhmax=240
if (( ${fcsthrs} >= fhmin && ${fcsthrs} <= fhmax )); then

Check notice

Code scanning / shellcheck

$/${} is unnecessary on arithmetic variables. Note

$/${} is unnecessary on arithmetic variables.

Check notice

Code scanning / shellcheck

$/${} is unnecessary on arithmetic variables. Note

$/${} is unnecessary on arithmetic variables.
if ((${fcsthrs} % 3 == 0)); then

Check notice

Code scanning / shellcheck

$/${} is unnecessary on arithmetic variables. Note

$/${} is unnecessary on arithmetic variables.
time ${SCRgfs}/exgfs_atmos_nawips.sh 1p00 ${FHMAX_GFS} GFS_GEMPAK ${COM_ATMOS_GEMPAK_1p00} ${fcsthrs}

Check notice

Code scanning / shellcheck

Double quote to prevent globbing and word splitting. Note

Double quote to prevent globbing and word splitting.

Check notice

Code scanning / shellcheck

Double quote to prevent globbing and word splitting. Note

Double quote to prevent globbing and word splitting.

Check notice

Code scanning / shellcheck

Double quote to prevent globbing and word splitting. Note

Double quote to prevent globbing and word splitting.

Check notice

Code scanning / shellcheck

Double quote to prevent globbing and word splitting. Note

Double quote to prevent globbing and word splitting.
fi
fi

fhmin=252
fhmax=384
if (( ${fcsthrs} >= fhmin && ${fcsthrs} <= fhmax )); then

Check notice

Code scanning / shellcheck

$/${} is unnecessary on arithmetic variables. Note

$/${} is unnecessary on arithmetic variables.

Check notice

Code scanning / shellcheck

$/${} is unnecessary on arithmetic variables. Note

$/${} is unnecessary on arithmetic variables.
if ((${fcsthrs} % 12 == 0)); then

Check notice

Code scanning / shellcheck

$/${} is unnecessary on arithmetic variables. Note

$/${} is unnecessary on arithmetic variables.
time ${SCRgfs}/exgfs_atmos_nawips.sh 1p00 ${FHMAX_GFS} GFS_GEMPAK ${COM_ATMOS_GEMPAK_1p00} ${fcsthrs}

Check notice

Code scanning / shellcheck

Double quote to prevent globbing and word splitting. Note

Double quote to prevent globbing and word splitting.

Check notice

Code scanning / shellcheck

Double quote to prevent globbing and word splitting. Note

Double quote to prevent globbing and word splitting.

Check notice

Code scanning / shellcheck

Double quote to prevent globbing and word splitting. Note

Double quote to prevent globbing and word splitting.

Check notice

Code scanning / shellcheck

Double quote to prevent globbing and word splitting. Note

Double quote to prevent globbing and word splitting.
fi
fi

#################################################################
# Execute the script for the half-degree grib
##################################################################
fhmin=0
fhmax=240
if (( ${fcsthrs} >= fhmin && ${fcsthrs} <= fhmax )); then

Check notice

Code scanning / shellcheck

$/${} is unnecessary on arithmetic variables. Note

$/${} is unnecessary on arithmetic variables.

Check notice

Code scanning / shellcheck

$/${} is unnecessary on arithmetic variables. Note

$/${} is unnecessary on arithmetic variables.
if ((${fcsthrs} % 3 == 0)); then

Check notice

Code scanning / shellcheck

$/${} is unnecessary on arithmetic variables. Note

$/${} is unnecessary on arithmetic variables.
time ${SCRgfs}/exgfs_atmos_nawips.sh 0p50 ${FHMAX_GFS} GFS_GEMPAK ${COM_ATMOS_GEMPAK_0p50} ${fcsthrs}

Check notice

Code scanning / shellcheck

Double quote to prevent globbing and word splitting. Note

Double quote to prevent globbing and word splitting.

Check notice

Code scanning / shellcheck

Double quote to prevent globbing and word splitting. Note

Double quote to prevent globbing and word splitting.

Check notice

Code scanning / shellcheck

Double quote to prevent globbing and word splitting. Note

Double quote to prevent globbing and word splitting.

Check notice

Code scanning / shellcheck

Double quote to prevent globbing and word splitting. Note

Double quote to prevent globbing and word splitting.
fi
fi

fhmin=246
fhmax=276
if (( ${fcsthrs} >= fhmin && ${fcsthrs} <= fhmax )); then

Check notice

Code scanning / shellcheck

$/${} is unnecessary on arithmetic variables. Note

$/${} is unnecessary on arithmetic variables.

Check notice

Code scanning / shellcheck

$/${} is unnecessary on arithmetic variables. Note

$/${} is unnecessary on arithmetic variables.
if ((${fcsthrs} % 6 == 0)); then

Check notice

Code scanning / shellcheck

$/${} is unnecessary on arithmetic variables. Note

$/${} is unnecessary on arithmetic variables.
time ${SCRgfs}/exgfs_atmos_nawips.sh 0p50 ${FHMAX_GFS} GFS_GEMPAK ${COM_ATMOS_GEMPAK_0p50} ${fcsthrs}

Check notice

Code scanning / shellcheck

Double quote to prevent globbing and word splitting. Note

Double quote to prevent globbing and word splitting.

Check notice

Code scanning / shellcheck

Double quote to prevent globbing and word splitting. Note

Double quote to prevent globbing and word splitting.

Check notice

Code scanning / shellcheck

Double quote to prevent globbing and word splitting. Note

Double quote to prevent globbing and word splitting.

Check notice

Code scanning / shellcheck

Double quote to prevent globbing and word splitting. Note

Double quote to prevent globbing and word splitting.
fi
fi

fhmin=288
fhmax=384
if (( ${fcsthrs} >= fhmin && ${fcsthrs} <= fhmax )); then

Check notice

Code scanning / shellcheck

$/${} is unnecessary on arithmetic variables. Note

$/${} is unnecessary on arithmetic variables.

Check notice

Code scanning / shellcheck

$/${} is unnecessary on arithmetic variables. Note

$/${} is unnecessary on arithmetic variables.
if ((${fcsthrs} % 12 == 0)); then

Check notice

Code scanning / shellcheck

$/${} is unnecessary on arithmetic variables. Note

$/${} is unnecessary on arithmetic variables.
time ${SCRgfs}/exgfs_atmos_nawips.sh 0p50 ${FHMAX_GFS} GFS_GEMPAK ${COM_ATMOS_GEMPAK_0p50} ${fcsthrs}

Check notice

Code scanning / shellcheck

Double quote to prevent globbing and word splitting. Note

Double quote to prevent globbing and word splitting.

Check notice

Code scanning / shellcheck

Double quote to prevent globbing and word splitting. Note

Double quote to prevent globbing and word splitting.

Check notice

Code scanning / shellcheck

Double quote to prevent globbing and word splitting. Note

Double quote to prevent globbing and word splitting.

Check notice

Code scanning / shellcheck

Double quote to prevent globbing and word splitting. Note

Double quote to prevent globbing and word splitting.
fi
fi

#################################################################
# Execute the script for the quater-degree grib
####################################################################
fhmin=0
fhmax=120
if (( ${fcsthrs} >= fhmin && ${fcsthrs} <= fhmax )); then

Check notice

Code scanning / shellcheck

$/${} is unnecessary on arithmetic variables. Note

$/${} is unnecessary on arithmetic variables.

Check notice

Code scanning / shellcheck

$/${} is unnecessary on arithmetic variables. Note

$/${} is unnecessary on arithmetic variables.
if ((${fcsthrs} % 1 == 0)); then

Check notice

Code scanning / shellcheck

$/${} is unnecessary on arithmetic variables. Note

$/${} is unnecessary on arithmetic variables.
time ${SCRgfs}/exgfs_atmos_nawips.sh 0p25 ${FHMAX_GFS} GFS_GEMPAK ${COM_ATMOS_GEMPAK_0p25} ${fcsthrs}

Check notice

Code scanning / shellcheck

Double quote to prevent globbing and word splitting. Note

Double quote to prevent globbing and word splitting.

Check notice

Code scanning / shellcheck

Double quote to prevent globbing and word splitting. Note

Double quote to prevent globbing and word splitting.

Check notice

Code scanning / shellcheck

Double quote to prevent globbing and word splitting. Note

Double quote to prevent globbing and word splitting.

Check notice

Code scanning / shellcheck

Double quote to prevent globbing and word splitting. Note

Double quote to prevent globbing and word splitting.
fi
fi

fhmin=123
fhmax=240
if (( ${fcsthrs} >= fhmin && ${fcsthrs} <= fhmax )); then

Check notice

Code scanning / shellcheck

$/${} is unnecessary on arithmetic variables. Note

$/${} is unnecessary on arithmetic variables.

Check notice

Code scanning / shellcheck

$/${} is unnecessary on arithmetic variables. Note

$/${} is unnecessary on arithmetic variables.
if ((${fcsthrs} % 3 == 0)); then

Check notice

Code scanning / shellcheck

$/${} is unnecessary on arithmetic variables. Note

$/${} is unnecessary on arithmetic variables.
time ${SCRgfs}/exgfs_atmos_nawips.sh 0p25 ${FHMAX_GFS} GFS_GEMPAK ${COM_ATMOS_GEMPAK_0p25} ${fcsthrs}

Check notice

Code scanning / shellcheck

Double quote to prevent globbing and word splitting. Note

Double quote to prevent globbing and word splitting.

Check notice

Code scanning / shellcheck

Double quote to prevent globbing and word splitting. Note

Double quote to prevent globbing and word splitting.

Check notice

Code scanning / shellcheck

Double quote to prevent globbing and word splitting. Note

Double quote to prevent globbing and word splitting.

Check notice

Code scanning / shellcheck

Double quote to prevent globbing and word splitting. Note

Double quote to prevent globbing and word splitting.
fi
fi

fhmin=252
fhmax=384
if (( ${fcsthrs} >= fhmin && ${fcsthrs} <= fhmax )); then

Check notice

Code scanning / shellcheck

$/${} is unnecessary on arithmetic variables. Note

$/${} is unnecessary on arithmetic variables.

Check notice

Code scanning / shellcheck

$/${} is unnecessary on arithmetic variables. Note

$/${} is unnecessary on arithmetic variables.
if ((${fcsthrs} % 12 == 0)); then

Check notice

Code scanning / shellcheck

$/${} is unnecessary on arithmetic variables. Note

$/${} is unnecessary on arithmetic variables.
time ${SCRgfs}/exgfs_atmos_nawips.sh 0p25 ${FHMAX_GFS} GFS_GEMPAK ${COM_ATMOS_GEMPAK_0p25} ${fcsthrs}

Check notice

Code scanning / shellcheck

Double quote to prevent globbing and word splitting. Note

Double quote to prevent globbing and word splitting.

Check notice

Code scanning / shellcheck

Double quote to prevent globbing and word splitting. Note

Double quote to prevent globbing and word splitting.

Check notice

Code scanning / shellcheck

Double quote to prevent globbing and word splitting. Note

Double quote to prevent globbing and word splitting.

Check notice

Code scanning / shellcheck

Double quote to prevent globbing and word splitting. Note

Double quote to prevent globbing and word splitting.
fi
fi

####################################################################
# Execute the script to create the 35km Pacific grids for OPC
#####################################################################
fhmin=0
fhmax=180
if (( ${fcsthrs} >= fhmin && ${fcsthrs} <= fhmax )); then

Check notice

Code scanning / shellcheck

$/${} is unnecessary on arithmetic variables. Note

$/${} is unnecessary on arithmetic variables.

Check notice

Code scanning / shellcheck

$/${} is unnecessary on arithmetic variables. Note

$/${} is unnecessary on arithmetic variables.
if ((${fcsthrs} % 3 == 0)); then

Check notice

Code scanning / shellcheck

$/${} is unnecessary on arithmetic variables. Note

$/${} is unnecessary on arithmetic variables.
time ${SCRgfs}/exgfs_atmos_nawips.sh 35km_pac ${ocean_domain_max} GFS_GEMPAK_WWB ${COM_ATMOS_GEMPAK_35km_pac} ${fcsthrs}

Check notice

Code scanning / shellcheck

Double quote to prevent globbing and word splitting. Note

Double quote to prevent globbing and word splitting.

Check notice

Code scanning / shellcheck

Double quote to prevent globbing and word splitting. Note

Double quote to prevent globbing and word splitting.

Check notice

Code scanning / shellcheck

Double quote to prevent globbing and word splitting. Note

Double quote to prevent globbing and word splitting.

Check notice

Code scanning / shellcheck

Double quote to prevent globbing and word splitting. Note

Double quote to prevent globbing and word splitting.
fi
fi

if (( ${fcsthrs} > fhmax )); then

Check notice

Code scanning / shellcheck

$/${} is unnecessary on arithmetic variables. Note

$/${} is unnecessary on arithmetic variables.
continue

Check failure

Code scanning / shellcheck

continue is only valid in loops. Error

continue is only valid in loops.
fi

####################################################################
# Execute the script to create the 35km Atlantic grids for OPC
#####################################################################
fhmin=0
fhmax=180
if (( ${fcsthrs} >= fhmin && ${fcsthrs} <= fhmax )); then

Check notice

Code scanning / shellcheck

$/${} is unnecessary on arithmetic variables. Note

$/${} is unnecessary on arithmetic variables.

Check notice

Code scanning / shellcheck

$/${} is unnecessary on arithmetic variables. Note

$/${} is unnecessary on arithmetic variables.
if ((${fcsthrs} % 3 == 0)); then

Check notice

Code scanning / shellcheck

$/${} is unnecessary on arithmetic variables. Note

$/${} is unnecessary on arithmetic variables.
time ${SCRgfs}/exgfs_atmos_nawips.sh 35km_atl ${ocean_domain_max} GFS_GEMPAK_WWB ${COM_ATMOS_GEMPAK_35km_atl} ${fcsthrs}

Check notice

Code scanning / shellcheck

Double quote to prevent globbing and word splitting. Note

Double quote to prevent globbing and word splitting.

Check notice

Code scanning / shellcheck

Double quote to prevent globbing and word splitting. Note

Double quote to prevent globbing and word splitting.

Check notice

Code scanning / shellcheck

Double quote to prevent globbing and word splitting. Note

Double quote to prevent globbing and word splitting.

Check notice

Code scanning / shellcheck

Double quote to prevent globbing and word splitting. Note

Double quote to prevent globbing and word splitting.
fi
fi

if (( ${fcsthrs} > fhmax )); then

Check notice

Code scanning / shellcheck

$/${} is unnecessary on arithmetic variables. Note

$/${} is unnecessary on arithmetic variables.
continue

Check failure

Code scanning / shellcheck

continue is only valid in loops. Error

continue is only valid in loops.
fi

#####################################################################
# Execute the script to create the 40km grids for HPC
######################################################################
fhmin=0
fhmax=180
if (( ${fcsthrs} >= fhmin && ${fcsthrs} <= fhmax )); then

Check notice

Code scanning / shellcheck

$/${} is unnecessary on arithmetic variables. Note

$/${} is unnecessary on arithmetic variables.

Check notice

Code scanning / shellcheck

$/${} is unnecessary on arithmetic variables. Note

$/${} is unnecessary on arithmetic variables.
if ((${fcsthrs} % 3 == 0)); then

Check notice

Code scanning / shellcheck

$/${} is unnecessary on arithmetic variables. Note

$/${} is unnecessary on arithmetic variables.
time ${SCRgfs}/exgfs_atmos_nawips.sh 40km ${ocean_domain_max} GFS_GEMPAK_WWB ${COM_ATMOS_GEMPAK_40km} ${fcsthrs}

Check notice

Code scanning / shellcheck

Double quote to prevent globbing and word splitting. Note

Double quote to prevent globbing and word splitting.

Check notice

Code scanning / shellcheck

Double quote to prevent globbing and word splitting. Note

Double quote to prevent globbing and word splitting.

Check notice

Code scanning / shellcheck

Double quote to prevent globbing and word splitting. Note

Double quote to prevent globbing and word splitting.

Check notice

Code scanning / shellcheck

Double quote to prevent globbing and word splitting. Note

Double quote to prevent globbing and word splitting.
fi
fi

if (( ${fcsthrs} > fhmax )); then

Check notice

Code scanning / shellcheck

$/${} is unnecessary on arithmetic variables. Note

$/${} is unnecessary on arithmetic variables.
continue

Check failure

Code scanning / shellcheck

continue is only valid in loops. Error

continue is only valid in loops.
fi

export err=$?; err_chk

############################################
Expand Down
22 changes: 17 additions & 5 deletions jobs/rocoto/gempak.sh
Original file line number Diff line number Diff line change
@@ -1,17 +1,29 @@
#! /usr/bin/env bash

source "${HOMEgfs}/ush/preamble.sh"

###############################################################
. "${HOMEgfs}/ush/load_fv3gfs_modules.sh"
source "${HOMEgfs}/ush/load_fv3gfs_modules.sh"
status=$?
if (( status != 0 )); then exit "${status}"; fi
(( status != 0 )) && exit "${status}"

export job="gempak"
export jobid="${job}.$$"

source "${HOMEgfs}/ush/jjob_header.sh" -e "gempak" -c "base gempak"
GwenChen-NOAA marked this conversation as resolved.
Show resolved Hide resolved

fhrlst=$(echo "${FHRLST}" | sed -e 's/_/ /g; s/f/ /g; s/,/ /g')
github-advanced-security[bot] marked this conversation as resolved.
Fixed
Show resolved Hide resolved

for fhr3 in ${fhrlst}; do
fhr=$(( 10#${fhr3} ))
if (( fhr > FHMAX_GFS )); then
echo "Nothing to process for FHR = ${fhr3}, cycle"
continue
fi

export fcsthrs="${fhr3}"

# Execute the JJOB
"${HOMEgfs}/jobs/J${RUN^^}_ATMOS_GEMPAK"
"${HOMEgfs}/jobs/J${RUN^^}_ATMOS_GEMPAK"
done
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Based on the PR description, it seems like this should be an MPMD job or that it should be split so that only one forecast hour is run per job. However, this seems to indicate that all forecast hours will be run in a single job. Is the rocoto portion of the workflow still a work in progress?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@DavidHuber-NOAA
There is a parallel component for this PR that needs to be worked on to make this job run as a metatask. Each task in the metatask will process a single forecast hour.
That exercise will be done by the workflow team as requested.


status=$?
exit "${status}"
Loading
Loading