Skip to content

Commit

Permalink
Enable metplus and fit2obs jobs on Jet. NOAA-EMC#357
Browse files Browse the repository at this point in the history
Also fix a multitude of shellcheck warnings in related scripts.
  • Loading branch information
DavidHuber-NOAA committed Mar 21, 2023
1 parent 822bf71 commit 8b98e18
Show file tree
Hide file tree
Showing 4 changed files with 106 additions and 108 deletions.
70 changes: 38 additions & 32 deletions jobs/rocoto/vrfy.sh
Original file line number Diff line number Diff line change
Expand Up @@ -17,33 +17,36 @@ source "${HOMEgfs}/ush/jjob_header.sh" -e "vrfy" -c "base vrfy"

###############################################################
export COMPONENT="atmos"
export CDATEm1=$(${NDATE} -24 ${CDATE})
export PDYm1=$(echo ${CDATEm1} | cut -c1-8)
CDATEm1=$(${NDATE} -24 "${CDATE}")
export CDATEm1
PDYm1=$(echo "${CDATEm1}" | cut -c1-8)
export PDYm1

CDATEm1c=$(${NDATE} -06 ${CDATE})
PDYm1c=$(echo ${CDATEm1c} | cut -c1-8)
pcyc=$(echo ${CDATEm1c} | cut -c9-10)
CDATEm1c=$(${NDATE} -06 "${CDATE}")
PDYm1c=$(echo "${CDATEm1c}" | cut -c1-8)
pcyc=$(echo "${CDATEm1c}" | cut -c9-10)

export COMIN="${ROTDIR}/${CDUMP}.${PDY}/${cyc}/${COMPONENT}"


###############################################################
echo
echo "=============== START TO GENERATE QUARTER DEGREE GRIB1 FILES ==============="
if [ ${MKPGB4PRCP} = "YES" -a ${CDUMP} = "gfs" ]; then
if [ ! -d ${ARCDIR} ]; then mkdir -p ${ARCDIR} ; fi
if [[ ${MKPGB4PRCP} = "YES" && ${CDUMP} = "gfs" ]]; then
if [[ ! -d "${ARCDIR}" ]]; then mkdir -p "${ARCDIR}" ; fi
nthreads_env=${OMP_NUM_THREADS:-1} # get threads set in env
export OMP_NUM_THREADS=1
cd ${COMIN}
set -e
cd "${COMIN}"
fhmax=${vhr_rain:-${FHMAX_GFS}}
fhr=0
while [ ${fhr} -le ${fhmax} ]; do
fhr2=$(printf %02i ${fhr})
fhr3=$(printf %03i ${fhr})
while [[ ${fhr} -le ${fhmax} ]]; do
fhr2=$(printf %02i "${fhr}")
fhr3=$(printf %03i "${fhr}")
fname=${CDUMP}.t${cyc}z.sfluxgrbf${fhr3}.grib2
fileout=${ARCDIR}/pgbq${fhr2}.${CDUMP}.${CDATE}.grib2
${WGRIB2} ${fname} -match "(:PRATE:surface:)|(:TMP:2 m above ground:)" -grib ${fileout}
(( fhr = ${fhr} + 6 ))
${WGRIB2} "${fname}" -match "(:PRATE:surface:)|(:TMP:2 m above ground:)" -grib "${fileout}"
(( fhr = fhr + 6 ))
done
export OMP_NUM_THREADS=${nthreads_env} # revert to threads set in env
fi
Expand All @@ -52,32 +55,34 @@ fi
###############################################################
echo
echo "=============== START TO RUN MOS ==============="
if [ ${RUNMOS} = "YES" -a ${CDUMP} = "gfs" ]; then
${RUNGFSMOSSH} ${PDY}${cyc}
if [[ ${RUNMOS} = "YES" && ${CDUMP} = "gfs" ]]; then
${RUNGFSMOSSH} "${PDY}${cyc}"
fi


###############################################################
echo
echo "=============== START TO RUN FIT2OBS VERIFICATION ==============="
if [ ${VRFYFITS} = "YES" -a ${CDUMP} = ${CDFNL} -a ${CDATE} != ${SDATE} ]; then
if [[ ${VRFYFITS} = "YES" && ${CDUMP} = "${CDFNL}" && ${CDATE} != "${SDATE}" ]]; then

export CDUMPFCST=${VDUMP}
export TMPDIR="${RUNDIR}/${CDATE}/${CDUMP}"
[[ ! -d ${TMPDIR} ]] && mkdir -p ${TMPDIR}
[[ ! -d ${TMPDIR} ]] && mkdir -p "${TMPDIR}"

xdate=$(${NDATE} -${VBACKUP_FITS} ${CDATE})
xdate=$(${NDATE} -"${VBACKUP_FITS} ${CDATE}")

export vday=$(echo ${xdate} | cut -c1-8)
export vcyc=$(echo ${xdate} | cut -c9-10)
vday=$(echo "${xdate}" | cut -c1-8)
export vday
vcyc=$(echo "${xdate}" | cut -c9-10)
export vcyc
export COMDAY=${ROTDIR}/logs/${xdate}
export COM_INA=${ROTDIR}/gdas.${vday}/${vcyc}/atmos
export COM_INF='$ROTDIR/vrfyarch/gfs.$fdy/$fzz'
export COM_PRP='$ROTDIR/gdas.$pdy/$cyc/obs'
export COM_INF="${ROTDIR}/vrfyarch/gfs.${fdy}/${fzz}"
export COM_PRP="${ROTDIR}/gdas.${pdy}/${cyc}/obs"

export OUTPUT_FILETYPE_SAVE=${OUTPUT_FILETYPE}

${PREPQFITSH} ${PSLOT} ${xdate} ${ROTDIR} ${ARCDIR} ${TMPDIR}
${PREPQFITSH} "${PSLOT} ${xdate} ${ROTDIR} ${ARCDIR} ${TMPDIR}"

export OUTPUT_FILETYPE=${OUTPUT_FILETYPE_SAVE}

Expand All @@ -87,7 +92,7 @@ fi
###############################################################
echo
echo "=============== START TO RUN RADMON DATA EXTRACTION ==============="
if [ ${VRFYRAD} = "YES" -a "${CDUMP}" = "${CDFNL}" -a "${CDATE}" != "${SDATE}" ]; then
if [[ ${VRFYRAD} = "YES" && ${CDUMP} = "${CDFNL}" && ${CDATE} != "${SDATE}" ]]; then

export EXP=${PSLOT}
export COMOUT="${ROTDIR}/${CDUMP}.${PDY}/${cyc}/${COMPONENT}"
Expand All @@ -103,7 +108,7 @@ fi
###############################################################
echo
echo "=============== START TO RUN OZMON DATA EXTRACTION ==============="
if [ "${VRFYOZN}" = "YES" -a "${CDUMP}" = "${CDFNL}" -a "${CDATE}" != "${SDATE}" ]; then
if [[ ${VRFYOZN} = "YES" && ${CDUMP} = "${CDFNL}" && ${CDATE} != "${SDATE}" ]]; then

export EXP=${PSLOT}
export COMOUT="${ROTDIR}/${CDUMP}.${PDY}/${cyc}/${COMPONENT}"
Expand All @@ -119,7 +124,7 @@ fi
###############################################################
echo
echo "=============== START TO RUN MINMON ==============="
if [ "${VRFYMINMON}" = "YES" -a "${CDATE}" != "${SDATE}" ]; then
if [[ ${VRFYMINMON} = "YES" && ${CDATE} != "${SDATE}" ]]; then

export COMOUT="${ROTDIR}/${CDUMP}.${PDY}/${cyc}/${COMPONENT}"
export M_TANKverfM0="${M_TANKverf}/stats/${PSLOT}/${CDUMP}.${PDY}/${cyc}"
Expand All @@ -134,9 +139,10 @@ fi
################################################################################
echo
echo "=============== START TO RUN CYCLONE TRACK VERIFICATION ==============="
if [ ${VRFYTRAK} = "YES" ]; then
if [[ ${VRFYTRAK} = "YES" ]]; then

export COMINsyn=${COMINsyn:-$(compath.py ${envir}/com/gfs/${gfs_ver})/syndat}
COMINsyn=${COMINsyn:-$(compath.py "${envir}/com/gfs/${gfs_ver}")/syndat}
export COMINsyn

${TRACKERSH}
fi
Expand All @@ -145,23 +151,23 @@ fi
################################################################################
echo
echo "=============== START TO RUN CYCLONE GENESIS VERIFICATION ==============="
if [ ${VRFYGENESIS} = "YES" -a "${CDUMP}" = "gfs" ]; then
if [[ ${VRFYGENESIS} = "YES" && "${CDUMP}" = "gfs" ]]; then
${GENESISSH}
fi


################################################################################
echo
echo "=============== START TO RUN CYCLONE GENESIS VERIFICATION (FSU) ==============="
if [ ${VRFYFSU} = "YES" -a "${CDUMP}" = "gfs" ]; then
if [[ ${VRFYFSU} = "YES" && "${CDUMP}" = "gfs" ]]; then
${GENESISFSU}
fi


###############################################################
# Force Exit out cleanly
cd ${DATAROOT}
if [ ${KEEPDATA:-"NO"} = "NO" ] ; then rm -rf ${DATA} ; fi
cd "${DATAROOT}"
if [[ ${KEEPDATA:-"NO"} = "NO" ]] ; then rm -rf "${DATA}" ; fi


exit 0
42 changes: 18 additions & 24 deletions parm/config/config.metp
Original file line number Diff line number Diff line change
Expand Up @@ -6,33 +6,27 @@
echo "BEGIN: config.metp"

# Get task specific resources
. $EXPDIR/config.resources metp
. "${EXPDIR}"/config.resources metp

if [[ $machine == "JET" ]]; then
export RUN_GRID2GRID_STEP1="NO"
export RUN_GRID2OBS_STEP1="NO"
export RUN_PRECIP_STEP1="NO"
else
export RUN_GRID2GRID_STEP1="YES" # Run grid-to-grid verification using METplus
export RUN_GRID2OBS_STEP1="YES" # Run grid-to-obs verification using METplus
export RUN_PRECIP_STEP1="YES" # Run precip verification using METplus
fi
export RUN_GRID2GRID_STEP1="YES" # Run grid-to-grid verification using METplus
export RUN_GRID2OBS_STEP1="YES" # Run grid-to-obs verification using METplus
export RUN_PRECIP_STEP1="YES" # Run precip verification using METplus


#----------------------------------------------------------
# METplus: Verify grid-to-grid, grid-to-obs, precipitation options
#----------------------------------------------------------
## EMC_VERIF_GLOBAL SETTINGS
export HOMEverif_global=${HOMEgfs}/sorc/verif-global.fd
export VERIF_GLOBALSH=$HOMEverif_global/ush/run_verif_global_in_global_workflow.sh
export VERIF_GLOBALSH=${HOMEverif_global}/ush/run_verif_global_in_global_workflow.sh
## INPUT DATA SETTINGS
export model=$PSLOT
export model=${PSLOT}
export model_file_format="pgbf{lead?fmt=%2H}.${CDUMP}.{init?fmt=%Y%m%d%H}.grib2"
export model_hpss_dir=$ATARDIR/..
export model_hpss_dir=${ATARDIR}/..
export get_data_from_hpss="NO"
export hpss_walltime="10"
## OUTPUT SETTINGS
export model_stat_dir=$ARCDIR/..
export model_stat_dir=${ARCDIR}/..
export make_met_data_by="VALID"
export SENDMETVIEWER="NO"
## DATE SETTINGS
Expand All @@ -45,20 +39,20 @@ export log_MET_output_to_METplus="yes"
export g2g1_type_list="anom pres sfc"
export g2g1_anom_truth_name="self_anl"
export g2g1_anom_truth_file_format="pgbanl.${CDUMP}.{valid?fmt=%Y%m%d%H}.grib2"
export g2g1_anom_fhr_min=$FHMIN_GFS
export g2g1_anom_fhr_max=$FHMAX_GFS
export g2g1_anom_fhr_min=${FHMIN_GFS}
export g2g1_anom_fhr_max=${FHMAX_GFS}
export g2g1_anom_grid="G002"
export g2g1_anom_gather_by="VSDB"
export g2g1_pres_truth_name="self_anl"
export g2g1_pres_truth_file_format="pgbanl.${CDUMP}.{valid?fmt=%Y%m%d%H}.grib2"
export g2g1_pres_fhr_min=$FHMIN_GFS
export g2g1_pres_fhr_max=$FHMAX_GFS
export g2g1_pres_fhr_min=${FHMIN_GFS}
export g2g1_pres_fhr_max=${FHMAX_GFS}
export g2g1_pres_grid="G002"
export g2g1_pres_gather_by="VSDB"
export g2g1_sfc_truth_name="self_f00"
export g2g1_sfc_truth_file_format="pgbf00.${CDUMP}.{valid?fmt=%Y%m%d%H}.grib2"
export g2g1_sfc_fhr_min=$FHMIN_GFS
export g2g1_sfc_fhr_max=$FHMAX_GFS
export g2g1_sfc_fhr_min=${FHMIN_GFS}
export g2g1_sfc_fhr_max=${FHMAX_GFS}
export g2g1_sfc_grid="G002"
export g2g1_sfc_gather_by="VSDB"
export g2g1_mv_database_name="mv_${PSLOT}_grid2grid_metplus"
Expand All @@ -68,19 +62,19 @@ export g2g1_mv_database_desc="Grid-to-grid METplus data for global workflow expe
export g2o1_type_list="upper_air conus_sfc"
export g2o1_upper_air_msg_type_list="ADPUPA"
export g2o1_upper_air_vhr_list="00 06 12 18"
export g2o1_upper_air_fhr_min=$FHMIN_GFS
export g2o1_upper_air_fhr_min=${FHMIN_GFS}
export g2o1_upper_air_fhr_max="240"
export g2o1_upper_air_grid="G003"
export g2o1_upper_air_gather_by="VSDB"
export g2o1_conus_sfc_msg_type_list="ONLYSF ADPUPA"
export g2o1_conus_sfc_vhr_list="00 03 06 09 12 15 18 21"
export g2o1_conus_sfc_fhr_min=$FHMIN_GFS
export g2o1_conus_sfc_fhr_min=${FHMIN_GFS}
export g2o1_conus_sfc_fhr_max="240"
export g2o1_conus_sfc_grid="G104"
export g2o1_conus_sfc_gather_by="VSDB"
export g2o1_polar_sfc_msg_type_list="IABP"
export g2o1_polar_sfc_vhr_list="00 03 06 09 12 15 18 21"
export g2o1_polar_sfc_fhr_min=$FHMIN_GFS
export g2o1_polar_sfc_fhr_min=${FHMIN_GFS}
export g2o1_polar_sfc_fhr_max="240"
export g2o1_polar_sfc_grid="G219"
export g2o1_polar_sfc_gather_by="VSDB"
Expand All @@ -93,7 +87,7 @@ export precip1_type_list="ccpa_accum24hr"
export precip1_ccpa_accum24hr_model_bucket="06"
export precip1_ccpa_accum24hr_model_var="APCP"
export precip1_ccpa_accum24hr_model_file_format="pgbf{lead?fmt=%2H}.${CDUMP}.{init?fmt=%Y%m%d%H}.grib2"
export precip1_ccpa_accum24hr_fhr_min="$FHMIN_GFS"
export precip1_ccpa_accum24hr_fhr_min=${FHMIN_GFS}
export precip1_ccpa_accum24hr_fhr_max="180"
export precip1_ccpa_accum24hr_grid="G211"
export precip1_ccpa_accum24hr_gather_by="VSDB"
Expand Down
Loading

0 comments on commit 8b98e18

Please sign in to comment.