diff --git a/scripts/exregional_jedienvar_ioda.sh b/scripts/exregional_jedienvar_ioda.sh
index e522bfef2..dede5f2b7 100755
--- a/scripts/exregional_jedienvar_ioda.sh
+++ b/scripts/exregional_jedienvar_ioda.sh
@@ -197,7 +197,6 @@ cp_vrfy ${comout}/jedienvar_ioda/anal_gsi/*ges* ${workdir}/GSI_diags
#-----------------------------------------------------------------------
#
cd_vrfy ${workdir}/GSI_diags
-gzip -d *.gz
fl=`ls -1 ncdiag*`
for ifl in $fl
diff --git a/scripts/exregional_run_analysis.sh b/scripts/exregional_run_analysis.sh
old mode 100644
new mode 100755
index ffe07d22c..ae94d5ee3
--- a/scripts/exregional_run_analysis.sh
+++ b/scripts/exregional_run_analysis.sh
@@ -860,16 +860,22 @@ fi
$APRUN ./gsi.x < gsiparm.anl > stdout 2>&1 || print_err_msg_exit "\
Call to executable to run GSI returned with nonzero exit code."
-mv fort.207 fit_rad1
-sed -e 's/ asm all/ps asm 900/; s/ rej all/ps rej 900/; s/ mon all/ps mon 900/' fort.201 > fit_p1
-sed -e 's/ asm all/uv asm 900/; s/ rej all/uv rej 900/; s/ mon all/uv mon 900/' fort.202 > fit_w1
-sed -e 's/ asm all/ t asm 900/; s/ rej all/ t rej 900/; s/ mon all/ t mon 900/' fort.203 > fit_t1
-sed -e 's/ asm all/ q asm 900/; s/ rej all/ q rej 900/; s/ mon all/ q mon 900/' fort.204 > fit_q1
-sed -e 's/ asm all/pw asm 900/; s/ rej all/pw rej 900/; s/ mon all/pw mon 900/' fort.205 > fit_pw1
-sed -e 's/ asm all/rw asm 900/; s/ rej all/rw rej 900/; s/ mon all/rw mon 900/' fort.209 > fit_rw1
-
-cat fit_p1 fit_w1 fit_t1 fit_q1 fit_pw1 fit_rad1 fit_rw1 > $comout/rrfs_a.t${HH}z.fits.tm00
-cat fort.208 fort.210 fort.211 fort.212 fort.213 fort.220 > $comout/rrfs_a.t${HH}z.fits2.tm00
+if [ ${gsi_type} == "ANALYSIS" ]; then
+ if [ ${ob_type} == "radardbz" ]; then
+ cat fort.238 > $comout/rrfs_a.t${HH}z.fits3.tm00
+ else
+ mv fort.207 fit_rad1
+ sed -e 's/ asm all/ps asm 900/; s/ rej all/ps rej 900/; s/ mon all/ps mon 900/' fort.201 > fit_p1
+ sed -e 's/ asm all/uv asm 900/; s/ rej all/uv rej 900/; s/ mon all/uv mon 900/' fort.202 > fit_w1
+ sed -e 's/ asm all/ t asm 900/; s/ rej all/ t rej 900/; s/ mon all/ t mon 900/' fort.203 > fit_t1
+ sed -e 's/ asm all/ q asm 900/; s/ rej all/ q rej 900/; s/ mon all/ q mon 900/' fort.204 > fit_q1
+ sed -e 's/ asm all/pw asm 900/; s/ rej all/pw rej 900/; s/ mon all/pw mon 900/' fort.205 > fit_pw1
+ sed -e 's/ asm all/rw asm 900/; s/ rej all/rw rej 900/; s/ mon all/rw mon 900/' fort.209 > fit_rw1
+
+ cat fit_p1 fit_w1 fit_t1 fit_q1 fit_pw1 fit_rad1 fit_rw1 > $comout/rrfs_a.t${HH}z.fits.tm00
+ cat fort.208 fort.210 fort.211 fort.212 fort.213 fort.220 > $comout/rrfs_a.t${HH}z.fits2.tm00
+ fi
+fi
#
#-----------------------------------------------------------------------
#
@@ -941,25 +947,11 @@ if [ $netcdf_diag = ".true." ]; then
listall_cnv="conv_ps conv_q conv_t conv_uv conv_pw conv_rw conv_sst conv_dbz"
listall_rad="hirs2_n14 msu_n14 sndr_g08 sndr_g11 sndr_g11 sndr_g12 sndr_g13 sndr_g08_prep sndr_g11_prep sndr_g12_prep sndr_g13_prep sndrd1_g11 sndrd2_g11 sndrd3_g11 sndrd4_g11 sndrd1_g15 sndrd2_g15 sndrd3_g15 sndrd4_g15 sndrd1_g13 sndrd2_g13 sndrd3_g13 sndrd4_g13 hirs3_n15 hirs3_n16 hirs3_n17 amsua_n15 amsua_n16 amsua_n17 amsua_n18 amsua_n19 amsua_metop-a amsua_metop-b amsua_metop-c amsub_n15 amsub_n16 amsub_n17 hsb_aqua airs_aqua amsua_aqua imgr_g08 imgr_g11 imgr_g12 pcp_ssmi_dmsp pcp_tmi_trmm conv sbuv2_n16 sbuv2_n17 sbuv2_n18 omi_aura ssmi_f13 ssmi_f14 ssmi_f15 hirs4_n18 hirs4_metop-a mhs_n18 mhs_n19 mhs_metop-a mhs_metop-b mhs_metop-c amsre_low_aqua amsre_mid_aqua amsre_hig_aqua ssmis_las_f16 ssmis_uas_f16 ssmis_img_f16 ssmis_env_f16 iasi_metop-a iasi_metop-b iasi_metop-c seviri_m08 seviri_m09 seviri_m10 seviri_m11 cris_npp atms_npp ssmis_f17 cris-fsr_npp cris-fsr_n20 atms_n20 abi_g16"
- cat_exec="${EXECDIR}/nc_diag_cat.x"
-
- if [ -f $cat_exec ]; then
- print_info_msg "$VERBOSE" "
- Copying the nc_diag_cat executable to the run directory..."
- cp_vrfy ${cat_exec} ${analworkdir}/nc_diag_cat.x
- else
- print_err_msg_exit "\
- The nc_diag_cat executable specified in cat_exec does not exist:
- cat_exec = \"$cat_exec\"
- Build GSI and rerun."
- fi
-
for type in $listall_cnv; do
count=$(ls pe*.${type}_${loop}.nc4 | wc -l)
if [[ $count -gt 0 ]]; then
- ${APRUN} ./nc_diag_cat.x -o diag_${type}_${string}.${YYYYMMDDHH}.nc4 pe*.${type}_${loop}.nc4
- gzip diag_${type}_${string}.${YYYYMMDDHH}.nc4*
- cp diag_${type}_${string}.${YYYYMMDDHH}.nc4.gz $comout
+ ${APRUN} nc_diag_cat.x -o diag_${type}_${string}.${YYYYMMDDHH}.nc4 pe*.${type}_${loop}.nc4
+ cp diag_${type}_${string}.${YYYYMMDDHH}.nc4 $comout
echo "diag_${type}_${string}.${YYYYMMDDHH}.nc4*" >> listcnv
numfile_cnv=`expr ${numfile_cnv} + 1`
fi
@@ -968,9 +960,8 @@ if [ $netcdf_diag = ".true." ]; then
for type in $listall_rad; do
count=$(ls pe*.${type}_${loop}.nc4 | wc -l)
if [[ $count -gt 0 ]]; then
- ${APRUN} ./nc_diag_cat.x -o diag_${type}_${string}.${YYYYMMDDHH}.nc4 pe*.${type}_${loop}.nc4
- gzip diag_${type}_${string}.${YYYYMMDDHH}.nc4*
- cp diag_${type}_${string}.${YYYYMMDDHH}.nc4.gz $comout
+ ${APRUN} nc_diag_cat.x -o diag_${type}_${string}.${YYYYMMDDHH}.nc4 pe*.${type}_${loop}.nc4
+ cp diag_${type}_${string}.${YYYYMMDDHH}.nc4 $comout
echo "diag_${type}_${string}.${YYYYMMDDHH}.nc4*" >> listrad
numfile_rad=`expr ${numfile_rad} + 1`
else
diff --git a/scripts/exregional_run_enkf.sh b/scripts/exregional_run_enkf.sh
index 407189727..cb3b83caf 100755
--- a/scripts/exregional_run_enkf.sh
+++ b/scripts/exregional_run_enkf.sh
@@ -72,7 +72,7 @@ case $MACHINE in
ulimit -s unlimited
ulimit -a
export FI_OFI_RXM_SAR_LIMIT=3145728
- export OMP_STACKSIZE=500M
+ export OMP_STACKSIZE=1G
export OMP_NUM_THREADS=1
ncores=$(( NNODES_RUN_ENKF*PPN_RUN_ENKF ))
APRUN="mpiexec -n ${ncores} -ppn ${PPN_RUN_ENKF} --cpu-bind core --depth ${OMP_NUM_THREADS}"
@@ -206,14 +206,12 @@ mkdir_vrfy -p ${enkfanal_nwges_dir}
list_ob_type="conv_dbz"
fi
for sub_ob_type in ${list_ob_type} ; do
- diagfile0=${observer_nwges_dir}/diag_${sub_ob_type}_ges.${YYYYMMDDHH}.nc4.gz
+ diagfile0=${observer_nwges_dir}/diag_${sub_ob_type}_ges.${YYYYMMDDHH}.nc4
if [ -s $diagfile0 ]; then
diagfile=$(basename $diagfile0)
cp_vrfy $diagfile0 $diagfile
- gzip -d $diagfile && rm -f $diagfile
- ncfile0=$(basename -s .gz $diagfile)
- ncfile=$(basename -s .nc4 $ncfile0)
- mv_vrfy $ncfile0 ${ncfile}_${memcharv0}.nc4
+ ncfile=$(basename -s .nc4 $diagfile)
+ mv_vrfy $ncfile.nc4 ${ncfile}_${memcharv0}.nc4
fi
done
else
diff --git a/scripts/exregional_run_wgrib2.sh b/scripts/exregional_run_wgrib2.sh
index dcd13f7a2..7d1f09dc3 100755
--- a/scripts/exregional_run_wgrib2.sh
+++ b/scripts/exregional_run_wgrib2.sh
@@ -236,9 +236,13 @@ ln_vrfy -sf --relative ${comout}/${NET}.t${cyc}z.bgsfcf${fhr}.${tmmark}.grib2 $
net4=$(echo ${NET:0:4} | tr '[:upper:]' '[:lower:]')
ln_vrfy -sf --relative ${comout}/${NET}.t${cyc}z.bgdawpf${fhr}.${tmmark}.grib2 ${comout}/${net4}.t${cyc}z.prslev.f${fhr}.conus_3km.grib2
+wgrib2 ${comout}/${net4}.t${cyc}z.prslev.f${fhr}.conus_3km.grib2 -s > ${comout}/${net4}.t${cyc}z.prslev.f${fhr}.conus_3km.grib2.idx
ln_vrfy -sf --relative ${comout}/${NET}.t${cyc}z.bgrd3df${fhr}.${tmmark}.grib2 ${comout}/${net4}.t${cyc}z.natlev.f${fhr}.conus_3km.grib2
+wgrib2 ${comout}/${net4}.t${cyc}z.natlev.f${fhr}.conus_3km.grib2 -s > ${comout}/${net4}.t${cyc}z.natlev.f${fhr}.conus_3km.grib2.idx
ln_vrfy -sf --relative ${comout}/${NET}.t${cyc}z.bgifif${fhr}.${tmmark}.grib2 ${comout}/${net4}.t${cyc}z.ififip.f${fhr}.conus_3km.grib2
+wgrib2 ${comout}/${net4}.t${cyc}z.ififip.f${fhr}.conus_3km.grib2 -s > ${comout}/${net4}.t${cyc}z.ififip.f${fhr}.conus_3km.grib2.idx
ln_vrfy -sf --relative ${comout}/${NET}.t${cyc}z.bgsfcf${fhr}.${tmmark}.grib2 ${comout}/${net4}.t${cyc}z.testbed.f${fhr}.conus_3km.grib2
+wgrib2 ${comout}/${net4}.t${cyc}z.testbed.f${fhr}.conus_3km.grib2 -s > ${comout}/${net4}.t${cyc}z.testbed.f${fhr}.conus_3km.grib2.idx
# Remap to additional output grids if requested
if [ ${#ADDNL_OUTPUT_GRIDS[@]} -gt 0 ]; then
@@ -295,18 +299,22 @@ if [ ${#ADDNL_OUTPUT_GRIDS[@]} -gt 0 ]; then
if [ $leveltype = 'dawp' ]; then
ln_vrfy -fs --relative ${comout}/${grid}_grid/${NET}.t${cyc}z.bg${leveltype}f${fhr}.${tmmark}.grib2 ${comout}/${net4}.t${cyc}z.prslev.f${fhr}.conus_3km.grib2
+ wgrib2 ${comout}/${net4}.t${cyc}z.prslev.f${fhr}.conus_3km.grib2 -s > ${comout}/${net4}.t${cyc}z.prslev.f${fhr}.conus_3km.grib2.idx
fi
if [ $leveltype = 'rd3d' ]; then
ln_vrfy -fs --relative ${comout}/${grid}_grid/${NET}.t${cyc}z.bg${leveltype}f${fhr}.${tmmark}.grib2 ${comout}/${net4}.t${cyc}z.natlev.f${fhr}.conus_3km.grib2
+ wgrib2 ${comout}/${net4}.t${cyc}z.natlev.f${fhr}.conus_3km.grib2 -s > ${comout}/${net4}.t${cyc}z.natlev.f${fhr}.conus_3km.grib2.idx
fi
if [ $leveltype = 'ifi' ]; then
ln_vrfy -fs --relative ${comout}/${grid}_grid/${NET}.t${cyc}z.bg${leveltype}f${fhr}.${tmmark}.grib2 ${comout}/${net4}.t${cyc}z.ififip.f${fhr}.conus_3km.grib2
+ wgrib2 ${comout}/${net4}.t${cyc}z.ififip.f${fhr}.conus_3km.grib2 -s > ${comout}/${net4}.t${cyc}z.ififip.f${fhr}.conus_3km.grib2.idx
fi
if [ $leveltype = 'sfc' ]; then
ln_vrfy -fs --relative ${comout}/${grid}_grid/${NET}.t${cyc}z.bg${leveltype}f${fhr}.${tmmark}.grib2 ${comout}/${net4}.t${cyc}z.testbed.f${fhr}.conus_3km.grib2
+ wgrib2 ${comout}/${net4}.t${cyc}z.testbed.f${fhr}.conus_3km.grib2 -s > ${comout}/${net4}.t${cyc}z.testbed.f${fhr}.conus_3km.grib2.idx
fi
# Link output for transfer from Jet to web
diff --git a/ush/config.sh.RRFS_CONUS_13km_ens b/ush/config.sh.RRFS_CONUS_13km_ens
index 5ceddf7d6..db31951f1 100644
--- a/ush/config.sh.RRFS_CONUS_13km_ens
+++ b/ush/config.sh.RRFS_CONUS_13km_ens
@@ -66,6 +66,8 @@ DO_ENSEMBLE="TRUE"
#DO_DACYCLE="TRUE"
#DO_SURFACE_CYCLE="TRUE"
DO_SPINUP="TRUE"
+#DO_POST_SPINUP="TRUE"
+DO_POST_PROD="TRUE"
DO_RETRO="TRUE"
DO_NONVAR_CLDANAL="TRUE"
#DO_ENVAR_RADAR_REF="TRUE"
diff --git a/ush/config.sh.RRFS_CONUS_3km b/ush/config.sh.RRFS_CONUS_3km
index 2946721e8..e0f8e7df0 100644
--- a/ush/config.sh.RRFS_CONUS_3km
+++ b/ush/config.sh.RRFS_CONUS_3km
@@ -65,6 +65,8 @@ TILE_SETS="full NE,NC,NW,SE,SC,SW"
DO_DACYCLE="TRUE"
DO_SURFACE_CYCLE="TRUE"
DO_SPINUP="TRUE"
+#DO_POST_SPINUP="TRUE"
+DO_POST_PROD="TRUE"
DO_RETRO="TRUE"
DO_NONVAR_CLDANAL="TRUE"
#USE_RRFSE_ENS="TRUE"
diff --git a/ush/config.sh.RRFS_CONUS_3km.2022HWT b/ush/config.sh.RRFS_CONUS_3km.2022HWT
index de2666f56..40ad5b668 100644
--- a/ush/config.sh.RRFS_CONUS_3km.2022HWT
+++ b/ush/config.sh.RRFS_CONUS_3km.2022HWT
@@ -64,6 +64,8 @@ TILE_SETS="full NE,NC,NW,SE,SC,SW"
DO_DACYCLE="TRUE"
DO_SURFACE_CYCLE="TRUE"
DO_SPINUP="TRUE"
+#DO_POST_SPINUP="TRUE"
+DO_POST_PROD="TRUE"
DO_RETRO="FALSE"
DO_NONVAR_CLDANAL="TRUE"
DO_ENVAR_RADAR_REF="TRUE"
diff --git a/ush/config.sh.RRFS_CONUS_3km_ens b/ush/config.sh.RRFS_CONUS_3km_ens
index ba4ba65f7..3f88226fa 100644
--- a/ush/config.sh.RRFS_CONUS_3km_ens
+++ b/ush/config.sh.RRFS_CONUS_3km_ens
@@ -62,6 +62,8 @@ DO_ENSEMBLE="TRUE"
#DO_DACYCLE="TRUE"
#DO_SURFACE_CYCLE="TRUE"
DO_SPINUP="TRUE"
+#DO_POST_SPINUP="TRUE"
+DO_POST_PROD="TRUE"
#DO_RETRO="TRUE"
DO_NONVAR_CLDANAL="TRUE"
DO_SMOKE_DUST="FALSE"
diff --git a/ush/config_defaults.sh b/ush/config_defaults.sh
index 8407dfffe..8f84122ba 100644
--- a/ush/config_defaults.sh
+++ b/ush/config_defaults.sh
@@ -2061,9 +2061,17 @@ DO_SMOKE_DUST="FALSE"
# Flag turn on the runs prepare boundary and cold start initial conditions in
# retrospective experiments.
#
+# DO_POST_SPINUP:
+# Flag turn on the UPP for spin-up cycle.
+#
+# DO_POST_PROD:
+# Flag turn on the UPP for prod cycle.
+#
DO_RETRO="FALSE"
DO_SPINUP="FALSE"
LBCS_ICS_ONLY="FALSE"
+DO_POST_SPINUP="FALSE"
+DO_POST_PROD="TRUE"
#
#-----------------------------------------------------------------------
#
diff --git a/ush/generate_FV3LAM_wflow.sh b/ush/generate_FV3LAM_wflow.sh
index 7033adbd7..051453a40 100755
--- a/ush/generate_FV3LAM_wflow.sh
+++ b/ush/generate_FV3LAM_wflow.sh
@@ -482,6 +482,8 @@ settings="\
'do_nonvar_cldanal': ${DO_NONVAR_CLDANAL}
'do_refl2tten': ${DO_REFL2TTEN}
'do_spinup': ${DO_SPINUP}
+ 'do_post_spinup': ${DO_POST_SPINUP}
+ 'do_post_prod': ${DO_POST_PROD}
'do_nldn_lght': ${DO_NLDN_LGHT}
'regional_ensemble_option': ${regional_ensemble_option}
'radar_ref_thinning': ${RADAR_REF_THINNING}
diff --git a/ush/launch_FV3LAM_wflow.sh b/ush/launch_FV3LAM_wflow.sh
index 794090412..cdf74c799 100755
--- a/ush/launch_FV3LAM_wflow.sh
+++ b/ush/launch_FV3LAM_wflow.sh
@@ -103,7 +103,7 @@ elif [ "$MACHINE" = "WCOSS2" ]; then
module load libfabric/1.11.0.0.
module load craype-network-ofi
module load envvar/1.0
- module load core/rocoto/1.3.4
+ module load core/rocoto/1.3.5
else
module purge
module load rocoto
diff --git a/ush/set_extrn_mdl_params.sh b/ush/set_extrn_mdl_params.sh
index 2c9db6cf0..a330a106d 100644
--- a/ush/set_extrn_mdl_params.sh
+++ b/ush/set_extrn_mdl_params.sh
@@ -80,7 +80,7 @@ else
"FV3GFS")
case $MACHINE in
"WCOSS2")
- EXTRN_MDL_SYSBASEDIR_ICS="/lfs/h1/ops/prod/com/gfs/v16.2"
+ EXTRN_MDL_SYSBASEDIR_ICS="/lfs/h1/ops/prod/com/gfs/v16.3"
;;
"HERA")
EXTRN_MDL_SYSBASEDIR_ICS="/scratch1/NCEPDEV/rstprod/com/gfs/prod"
@@ -282,7 +282,7 @@ else
"FV3GFS")
case $MACHINE in
"WCOSS2")
- EXTRN_MDL_SYSBASEDIR_LBCS="/lfs/h1/ops/prod/com/gfs/v16.2"
+ EXTRN_MDL_SYSBASEDIR_LBCS="/lfs/h1/ops/prod/com/gfs/v16.3"
;;
"HERA")
EXTRN_MDL_SYSBASEDIR_LBCS="/scratch1/NCEPDEV/rstprod/com/gfs/prod"
diff --git a/ush/set_rrfs_config.sh b/ush/set_rrfs_config.sh
index 029cb6c68..a374d4cc1 100644
--- a/ush/set_rrfs_config.sh
+++ b/ush/set_rrfs_config.sh
@@ -24,14 +24,14 @@ if [[ $MACHINE == "hera" ]] ; then
fi
if [[ $MACHINE == "wcoss2" ]] ; then
- EXTRN_MDL_SOURCE_BASEDIR_ICS=/lfs/h1/ops/prod/com/gfs/v16.2
- EXTRN_MDL_SOURCE_BASEDIR_LBCS=/lfs/h1/ops/prod/com/gfs/v16.2
- OBSPATH=/lfs/h1/ops/prod/com/obsproc/v1.0
+ EXTRN_MDL_SOURCE_BASEDIR_ICS=/lfs/h1/ops/prod/com/gfs/v16.3
+ EXTRN_MDL_SOURCE_BASEDIR_LBCS=/lfs/h1/ops/prod/com/gfs/v16.3
+ OBSPATH=/lfs/h1/ops/prod/com/obsproc/v1.1
OBSPATH_NSSLMOSIAC=/lfs/h1/ops/prod/dcom/ldmdata/obs/upperair/mrms/conus/MergedReflectivityQC
- ENKF_FCST=/lfs/h1/ops/prod/com/gfs/v16.2
- SST_ROOT=/lfs/h1/ops/prod/com/gfs/v16.2
+ ENKF_FCST=/lfs/h1/ops/prod/com/gfs/v16.3
+ SST_ROOT=/lfs/h1/ops/prod/com/gfs/v16.3
GVF_ROOT=/lfs/h1/ops/prod/dcom/viirs
- IMSSNOW_ROOT=/lfs/h1/ops/prod/com/obsproc/v1.0
+ IMSSNOW_ROOT=/lfs/h1/ops/prod/com/obsproc/v1.1
FIRE_RAVE_DIR=/lfs/h2/emc/physics/noscrub/partha.bhattacharjee/RAVE_rawdata/RAVE_NA
fi
diff --git a/ush/templates/FV3LAM_wflow.xml b/ush/templates/FV3LAM_wflow.xml
index 1174f4133..f6557c84c 100644
--- a/ush/templates/FV3LAM_wflow.xml
+++ b/ush/templates/FV3LAM_wflow.xml
@@ -159,7 +159,29 @@ tasks; and the "FCST" type is used for the RUN_FCST_TN task.
&SERVICE_ACCOUNT;&QUEUE_GRAPHICS;--exclusive">
{%- endif %}
-{%- if do_retro %}
+{{ nnodes_run_nonvarcldanl }}:ppn={{ ppn_run_nonvarcldanl }}">
+
+
+{%- if machine in ["WCOSS2"] %}
+-l place=excl">
+{%- else %}
+
+{%- endif %}
+
+{% if machine in ["JET", "HERA"] %}
+{{ ncores_run_fcst }}">
+{{ native_run_fcst }} &RRFS_RESERVE;">
+{%- elif machine in ["WCOSS2"] %}
+{{ nnodes_run_fcst }}:ppn={{ ppn_run_fcst }}:tpp=2">
+-l place=excl">
+{%- else %}
+{{ nnodes_run_fcst }}:ppn={{ ppn_run_fcst }}">
+
+{%- endif %}
+
+
+
+{% if do_retro %}
@@ -270,7 +292,7 @@ J-job then uses exec to run the J-job (while also terminating the LOAD_-
MODULES_RUN_TASK_FP script.
-->
-{% if run_task_make_grid %}
+{%- if run_task_make_grid %}
+
+
+{%- if do_spinup %}
+ spinup prod
+{% else %}
+ prod
+{%- endif %}
+
+{%- if do_smoke_dust %}
+
+
+
+ &RSRV_DEFAULT;
+ &WALL_LIMIT_ANAL;
+
+ &LOAD_MODULES_RUN_TASK_FP; "&RUN_SMOKE_TN;" "&JOBSDIR;/JREGIONAL_PROCESS_SMOKE"
+
+ {{ nnodes_proc_smoke }}:ppn={{ ppn_proc_smoke }}
+ {{ wtime_proc_smoke }}
+ 80G
+ &NCORES_PER_NODE;
+ &TAG;_&PROCESS_SMOKE_TN;_#type#
+ &LOGDIR;/&PROCESS_SMOKE_TN;_#type#_@Y@m@d@H.log
+
+ GLOBAL_VAR_DEFNS_FP&GLOBAL_VAR_DEFNS_FP;
+ PDY@Y@m@d
+ CDATE@Y@m@d@H
+ CDATE@Y@m@d@H
+ CYCLE_DIR&CYCLE_BASEDIR;/@Y@m@d@H
+ CYCLE_TYPE#type#
+ NWGES_BASEDIR&NWGES_BASEDIR;
+ NWGES_DIR&NWGES_BASEDIR;
+
+
+
+ @Y@m@d@H@M00
+
+
+
+
+{%- endif %}
+
+
+{%- if do_nonvar_cldanal or do_refl2tten or do_enkf_radar_ref or do_envar_radar_ref %}
+
+
+
+ &RSRV_DEFAULT;
+ &WALL_LIMIT_ANAL;
+
+ &LOAD_MODULES_RUN_TASK_FP; "&RUN_ANAL_TN;" "&JOBSDIR;/JREGIONAL_PROCESS_RADARREF"
+
+ {{ nnodes_proc_radar }}:ppn={{ ppn_proc_radar }}
+ {{ wtime_proc_radar }}
+ &NCORES_PER_NODE;
+ &TAG;_&PROCESS_RADAR_REF_TN;_#type#
+ &LOGDIR;/&PROCESS_RADAR_REF_TN;_#type#_@Y@m@d@H.log
+
+ GLOBAL_VAR_DEFNS_FP&GLOBAL_VAR_DEFNS_FP;
+ PDY@Y@m@d
+ CDATE@Y@m@d@H
+ CYCLE_DIR&CYCLE_BASEDIR;/@Y@m@d@H
+ CYCLE_TYPE#type#
+ RADAR_REF_THINNING{{ radar_ref_thinning }}
+ NWGES_BASEDIR&NWGES_BASEDIR;
+
+
+
+ @Y@m@d@H@M00
+
+
+
+
+
+{%- if do_nldn_lght %}
+
+
+
+ &RSRV_DEFAULT;
+ &WALL_LIMIT_ANAL;
+
+ &LOAD_MODULES_RUN_TASK_FP; "&RUN_ANAL_TN;" "&JOBSDIR;/JREGIONAL_PROCESS_LIGHTNING"
+
+ {{ nnodes_proc_lightning }}:ppn={{ ppn_proc_lightning }}
+ {{ wtime_proc_lightning }}
+ &NCORES_PER_NODE;
+ &TAG;_&PROCESS_LIGHTNING_TN;_#type#
+ &LOGDIR;/&PROCESS_LIGHTNING_TN;_#type#_@Y@m@d@H.log
+
+ GLOBAL_VAR_DEFNS_FP&GLOBAL_VAR_DEFNS_FP;
+ PDY@Y@m@d
+ CDATE@Y@m@d@H
+ CYCLE_DIR&CYCLE_BASEDIR;/@Y@m@d@H
+ CYCLE_TYPE#type#
+
+
+
+ @Y@m@d@H@M00
+
+
+
+
+{%- endif %}
+
+
+
+
+ &RSRV_DEFAULT;
+ &WALL_LIMIT_ANAL;
+
+ &LOAD_MODULES_RUN_TASK_FP; "&RUN_ANAL_TN;" "&JOBSDIR;/JREGIONAL_PROCESS_BUFR"
+
+ {{ nnodes_proc_bufr }}:ppn={{ ppn_proc_bufr }}
+ {{ wtime_proc_bufr }}
+ &NCORES_PER_NODE;
+ {{ memo_run_processbufr }}
+ &TAG;_&PROCESS_BUFR_TN;_#type#
+ &LOGDIR;/&PROCESS_BUFR_TN;_#type#_@Y@m@d@H.log
+
+ GLOBAL_VAR_DEFNS_FP&GLOBAL_VAR_DEFNS_FP;
+ PDY@Y@m@d
+ CDATE@Y@m@d@H
+ CYCLE_DIR&CYCLE_BASEDIR;/@Y@m@d@H
+ CYCLE_TYPE#type#
+
+
+
+ @Y@m@d@H@M00
+
+
+
+
+
+{%- endif %}
+
+
+{% endif %}
+
{% if not is_rtma %}
{%- if do_ensemble %}
+
{%- for m in range(1, num_ens_members+1) -%}{%- set fmtstr=" %0"~ndigits_ensmem_names~"d" -%}{{- fmtstr%m -}}{%- endfor %}
{%- if do_enscontrol %}
@@ -369,10 +548,6 @@ MODULES_RUN_TASK_FP script.
{% for m in range(1, num_ens_members+1) %}{{ " /mem%03d"%m }}{% endfor %}
{%- endif %}
-
&WALL_LIMIT_PRE;
@@ -497,7 +672,6 @@ MODULES_RUN_TASK_FP script.
-
-
&RSRV_DEFAULT;
@@ -837,12 +1018,10 @@ MODULES_RUN_TASK_FP script.
-
-
&RSRV_ENKF;
&WALL_LIMIT_RECENTER;
@@ -876,313 +1055,55 @@ MODULES_RUN_TASK_FP script.
-
{%- endif %}
+{%- if not do_ensemble %}
+{%- if do_dacycle %}
+
-
-
- &RSRV_DEFAULT;
- &WALL_LIMIT_PRE;
+ &RSRV_ANALYSIS;
+ &WALL_LIMIT_ANAL;
- &LOAD_MODULES_RUN_TASK_FP; "&RUN_PREPSTART_TN;" "&JOBSDIR;/JREGIONAL_RUN_PREPSTART"
- {{ nnodes_run_prepstart }}:ppn={{ ppn_run_prepstart }}
+ &LOAD_MODULES_RUN_TASK_FP; "&RUN_ANAL_TN;" "&JOBSDIR;/JREGIONAL_RUN_ANAL"
+ {% if machine in ["JET", "HERA"] -%}
+ {{ ncores_run_anal }}
+ {{ native_run_anal }} &RRFS_RESERVE;
+ {% else -%}
+ {{ nnodes_run_anal }}:ppn={{ ppn_run_anal }}
&NCORES_PER_NODE;
- {{ wtime_run_prepstart }}
- &TAG;_&PREP_CYC_PROD_TN;{{ uscore_ensmem_name }}
- &LOGDIR;/&PREP_CYC_PROD_TN;{{ uscore_ensmem_name }}_@Y@m@d@H.log
+ {% endif -%}
+ {{ wtime_run_anal }}
+ &TAG;_&ANAL_GSI_TN;_spinup{{ uscore_ensmem_name }}
+ &LOGDIR;/&ANAL_GSI_TN;{{ uscore_ensmem_name }}_spinup_@Y@m@d@H.log
GLOBAL_VAR_DEFNS_FP&GLOBAL_VAR_DEFNS_FP;
PDY@Y@m@d
+ cyc@H
CDATE@Y@m@d@H
- HH@H
CYCLE_DIR&CYCLE_BASEDIR;/@Y@m@d@H
- FG_ROOT&FG_ROOT;
- LBCS_ROOT&FG_ROOT;
- CYCLE_TYPEprod
+ CYCLE_ROOT&CYCLE_BASEDIR;
+ RRFSE_FG_ROOT&RRFSE_FG_ROOT;
+ CYCLE_TYPEspinup
+ GSI_TYPEANALYSIS
+ MEM_TYPEMEMBER
SLASH_ENSMEM_SUBDIR{{ slash_ensmem_subdir }}
- NWGES_BASEDIR&NWGES_BASEDIR;
+ SATBIAS_DIR&NWGES_BASEDIR;/satbias
+ nens{{ num_ens_members }}
-
-
-
-
- {%- for h in cycl_hrs_prodstart %}
- {{ h }}@H
- {%- endfor %}
-
-{%- if do_spinup %}
-{%- if do_retro %}
- &FG_ROOT;/@Y@m@d@H{{ slash_ensmem_subdir }}/fcst_fv3lam_spinup/RESTART/@Y@m@d.@H0000.coupler.res
-{% else %}
-
-
- @Y@m@d@H@M00
- &FG_ROOT;/@Y@m@d@H{{ slash_ensmem_subdir }}/fcst_fv3lam_spinup/RESTART/@Y@m@d.@H0000.coupler.res
-
-
- @Y@m@d@H@M00
-
- {%- for h in range(da_cycle_interval_hrs, 6+1, da_cycle_interval_hrs) %}
- &FG_ROOT;/@Y@m@d@H{{ slash_ensmem_subdir }}/fcst_fv3lam/RESTART/@Y@m@d.@H0000.coupler.res
- {%- endfor %}
-
-
-
-{%- endif %}
-{% else %}
-{%- if do_retro %}
+
+ @Y@m@d@H@M00
+
+ {%- if use_rrfse_ens %}
+
- &FG_ROOT;/@Y@m@d@H{{ slash_ensmem_subdir }}/ics/gfs_data.tile7.halo0.nc
- {%- for h in range(0, extrn_mdl_ics_offset_hrs+1) %}
- &FG_ROOT;/@Y@m@d@H{{ slash_ensmem_subdir }}/lbcs/gfs_bndy.tile7.{{ "%03d" % boundary_len_hrs }}.nc
- {%- endfor %}
-
-
-{% else %}
-
- @Y@m@d@H@M00
-
-
-
-
-
-
-{%- endif %}
-{%- endif %}
-
-
-
- {%- for h in cycl_hrs_prodstart %}
- {{ h }}@H
- {%- endfor %}
-{%- if do_retro %}
- &FG_ROOT;/@Y@m@d@H{{ slash_ensmem_subdir }}/fcst_fv3lam/RESTART/@Y@m@d.@H0000.coupler.res
-{% else %}
-
-
- @Y@m@d@H@M00
- &FG_ROOT;/@Y@m@d@H{{ slash_ensmem_subdir }}/fcst_fv3lam/RESTART/@Y@m@d.@H0000.coupler.res
-
-
- @Y@m@d@H@M00
-
- {%- for h in range(da_cycle_interval_hrs+da_cycle_interval_hrs, 6+1, da_cycle_interval_hrs) %}
- &FG_ROOT;/@Y@m@d@H{{ slash_ensmem_subdir }}/fcst_fv3lam/RESTART/@Y@m@d.@H0000.coupler.res
- {%- endfor %}
-
-
-
-{%- endif %}
-
-
-
-
-
-
-
-
-
-{%- if do_spinup %}
- prod spinup
-{% else %}
- prod
-{%- endif %}
-
-{%- if do_smoke_dust %}
-
-
-
- &RSRV_DEFAULT;
- &WALL_LIMIT_ANAL;
-
- &LOAD_MODULES_RUN_TASK_FP; "&RUN_SMOKE_TN;" "&JOBSDIR;/JREGIONAL_PROCESS_SMOKE"
-
- {{ nnodes_proc_smoke }}:ppn={{ ppn_proc_smoke }}
- {{ wtime_proc_smoke }}
- 80G
- &NCORES_PER_NODE;
- &TAG;_&PROCESS_SMOKE_TN;_#type#
- &LOGDIR;/&PROCESS_SMOKE_TN;_#type#_@Y@m@d@H.log
-
- GLOBAL_VAR_DEFNS_FP&GLOBAL_VAR_DEFNS_FP;
- PDY@Y@m@d
- CDATE@Y@m@d@H
- CDATE@Y@m@d@H
- CYCLE_DIR&CYCLE_BASEDIR;/@Y@m@d@H
- CYCLE_TYPE#type#
- NWGES_BASEDIR&NWGES_BASEDIR;
- NWGES_DIR&NWGES_BASEDIR;
-
-
-
- @Y@m@d@H@M00
-
-
-
-
-{%- endif %}
-
-
-{%- if do_nonvar_cldanal or do_refl2tten or do_enkf_radar_ref or do_envar_radar_ref %}
-
-
-
- &RSRV_DEFAULT;
- &WALL_LIMIT_ANAL;
-
- &LOAD_MODULES_RUN_TASK_FP; "&RUN_ANAL_TN;" "&JOBSDIR;/JREGIONAL_PROCESS_RADARREF"
-
- {{ nnodes_proc_radar }}:ppn={{ ppn_proc_radar }}
- {{ wtime_proc_radar }}
- &NCORES_PER_NODE;
- &TAG;_&PROCESS_RADAR_REF_TN;_#type#
- &LOGDIR;/&PROCESS_RADAR_REF_TN;_#type#_@Y@m@d@H.log
-
- GLOBAL_VAR_DEFNS_FP&GLOBAL_VAR_DEFNS_FP;
- PDY@Y@m@d
- CDATE@Y@m@d@H
- CYCLE_DIR&CYCLE_BASEDIR;/@Y@m@d@H
- CYCLE_TYPE#type#
- RADAR_REF_THINNING{{ radar_ref_thinning }}
- NWGES_BASEDIR&NWGES_BASEDIR;
-
-
-
- @Y@m@d@H@M00
-{%- if do_retro %}
-
-{%- endif %}
-
-
-
-
-
-{%- if do_nldn_lght %}
-
-
-
- &RSRV_DEFAULT;
- &WALL_LIMIT_ANAL;
-
- &LOAD_MODULES_RUN_TASK_FP; "&RUN_ANAL_TN;" "&JOBSDIR;/JREGIONAL_PROCESS_LIGHTNING"
-
- {{ nnodes_proc_lightning }}:ppn={{ ppn_proc_lightning }}
- {{ wtime_proc_lightning }}
- &NCORES_PER_NODE;
- &TAG;_&PROCESS_LIGHTNING_TN;_#type#
- &LOGDIR;/&PROCESS_LIGHTNING_TN;_#type#_@Y@m@d@H.log
-
- GLOBAL_VAR_DEFNS_FP&GLOBAL_VAR_DEFNS_FP;
- PDY@Y@m@d
- CDATE@Y@m@d@H
- CYCLE_DIR&CYCLE_BASEDIR;/@Y@m@d@H
- CYCLE_TYPE#type#
-
-
-
- @Y@m@d@H@M00
-
-
-
-
-{%- endif %}
-
-
-
-
- &RSRV_DEFAULT;
- &WALL_LIMIT_ANAL;
-
- &LOAD_MODULES_RUN_TASK_FP; "&RUN_ANAL_TN;" "&JOBSDIR;/JREGIONAL_PROCESS_BUFR"
-
- {{ nnodes_proc_bufr }}:ppn={{ ppn_proc_bufr }}
- {{ wtime_proc_bufr }}
- &NCORES_PER_NODE;
- {{ memo_run_processbufr }}
- &TAG;_&PROCESS_BUFR_TN;_#type#
- &LOGDIR;/&PROCESS_BUFR_TN;_#type#_@Y@m@d@H.log
-
- GLOBAL_VAR_DEFNS_FP&GLOBAL_VAR_DEFNS_FP;
- PDY@Y@m@d
- CDATE@Y@m@d@H
- CYCLE_DIR&CYCLE_BASEDIR;/@Y@m@d@H
- CYCLE_TYPE#type#
-
-
-
- @Y@m@d@H@M00
-
-
-
-
-
-{%- endif %}
-
-{%- if do_dacycle %}
-
-
-
- &RSRV_ANALYSIS;
- &WALL_LIMIT_ANAL;
-
- &LOAD_MODULES_RUN_TASK_FP; "&RUN_ANAL_TN;" "&JOBSDIR;/JREGIONAL_RUN_ANAL"
- {% if machine in ["JET", "HERA"] -%}
- {{ ncores_run_anal }}
- {{ native_run_anal }} &RRFS_RESERVE;
- {% else -%}
- {{ nnodes_run_anal }}:ppn={{ ppn_run_anal }}
- &NCORES_PER_NODE;
- {% endif -%}
- {{ wtime_run_anal }}
- &TAG;_&ANAL_GSI_TN;_#type#{{ uscore_ensmem_name }}
- &LOGDIR;/&ANAL_GSI_TN;{{ uscore_ensmem_name }}_#type#_@Y@m@d@H.log
-
- GLOBAL_VAR_DEFNS_FP&GLOBAL_VAR_DEFNS_FP;
- PDY@Y@m@d
- cyc@H
- CDATE@Y@m@d@H
- CYCLE_DIR&CYCLE_BASEDIR;/@Y@m@d@H
- CYCLE_ROOT&CYCLE_BASEDIR;
- RRFSE_FG_ROOT&RRFSE_FG_ROOT;
- CYCLE_TYPE#type#
- GSI_TYPEANALYSIS
- MEM_TYPEMEMBER
- SLASH_ENSMEM_SUBDIR{{ slash_ensmem_subdir }}
- SATBIAS_DIR&NWGES_BASEDIR;/satbias
- nens{{ num_ens_members }}
-
-
-
- @Y@m@d@H@M00
-
- {%- if use_rrfse_ens %}
-
-
-
- {%- for h in cycl_hrs_hyb_fv3lam_ens %}
- {{ h }}@H
+ {%- for h in cycl_hrs_hyb_fv3lam_ens %}
+ {{ h }}@H
{%- endfor %}
@@ -1227,13 +1148,11 @@ MODULES_RUN_TASK_FP script.
-
-
-
+
&RSRV_DEFAULT;
&WALL_LIMIT_POST;
@@ -1242,8 +1161,8 @@ MODULES_RUN_TASK_FP script.
{{ nnodes_run_postanal }}:ppn={{ ppn_run_postanal }}
&NCORES_PER_NODE;
{{ wtime_run_postanal }}
- &TAG;_&POSTANAL_TN;_#type#{{ uscore_ensmem_name }}
- &LOGDIR;/&POSTANAL_TN;{{ uscore_ensmem_name }}_#type#_@Y@m@d@H.log
+ &TAG;_&POSTANAL_TN;_spinup{{ uscore_ensmem_name }}
+ &LOGDIR;/&POSTANAL_TN;{{ uscore_ensmem_name }}_spinup_@Y@m@d@H.log
GLOBAL_VAR_DEFNS_FP&GLOBAL_VAR_DEFNS_FP;
PDY@Y@m@d
@@ -1252,7 +1171,7 @@ MODULES_RUN_TASK_FP script.
CYCLE_DIR&CYCLE_BASEDIR;/@Y@m@d@H
CYCLE_ROOT&CYCLE_BASEDIR;
RRFSE_FG_ROOT&RRFSE_FG_ROOT;
- CYCLE_TYPE#type#
+ CYCLE_TYPEspinup
GSI_TYPEANALYSIS
MEM_TYPEMEMBER
SLASH_ENSMEM_SUBDIR{{ slash_ensmem_subdir }}
@@ -1260,28 +1179,33 @@ MODULES_RUN_TASK_FP script.
nens{{ num_ens_members }}
-
+
-
{%- if do_envar_radar_ref %}
-
+
&RSRV_ANALYSIS;
&WALL_LIMIT_ANAL;
&LOAD_MODULES_RUN_TASK_FP; "&HYBRID_RADAR_REF_TN;" "&JOBSDIR;/JREGIONAL_RUN_ANAL"
- 360
- --cpus-per-task 2 --exclusive &RRFS_RESERVE;
- 00:50:00
- &TAG;_&HYBRID_RADAR_REF_TN;_#type#
- &LOGDIR;/&HYBRID_RADAR_REF_TN;_#type#_@Y@m@d@H.log
+ {% if machine in ["JET", "HERA"] -%}
+ {{ ncores_run_anal }}
+ {{ native_run_anal }} &RRFS_RESERVE;
+ {% else -%}
+ {{ nnodes_run_anal }}:ppn={{ ppn_run_anal }}
+ -l place=excl
+ &NCORES_PER_NODE;
+ {% endif -%}
+ {{ wtime_run_anal }}
+ &TAG;_&HYBRID_RADAR_REF_TN;_spinup
+ &LOGDIR;/&HYBRID_RADAR_REF_TN;_spinup_@Y@m@d@H.log
GLOBAL_VAR_DEFNS_FP&GLOBAL_VAR_DEFNS_FP;
PDY@Y@m@d
@@ -1290,7 +1214,7 @@ MODULES_RUN_TASK_FP script.
CYCLE_DIR&CYCLE_BASEDIR;/@Y@m@d@H
CYCLE_ROOT&CYCLE_BASEDIR;
RRFSE_FG_ROOT&RRFSE_FG_ROOT;
- CYCLE_TYPE#type#
+ CYCLE_TYPEspinup
GSI_TYPEANALYSIS
MEM_TYPEMEMBER
SLASH_ENSMEM_SUBDIR
@@ -1300,7 +1224,7 @@ MODULES_RUN_TASK_FP script.
-
+
{%- for h in cycl_hrs_hyb_fv3lam_ens %}
{{ h }}@H
@@ -1320,7 +1244,7 @@ MODULES_RUN_TASK_FP script.
************************************************************************
************************************************************************
-->
-
+
&RSRV_DEFAULT;
&WALL_LIMIT_ANAL;
@@ -1330,24 +1254,24 @@ MODULES_RUN_TASK_FP script.
{{ wtime_run_ref2tten }}
{{ memo_run_ref2tten }}
&NCORES_PER_NODE;
- &TAG;_&RADAR_REFL2TTEN_TN;_#type#
- &LOGDIR;/&RADAR_REFL2TTEN_TN;_#type#_@Y@m@d@H.log
+ &TAG;_&RADAR_REFL2TTEN_TN;_spinup
+ &LOGDIR;/&RADAR_REFL2TTEN_TN;_spinup_@Y@m@d@H.log
GLOBAL_VAR_DEFNS_FP&GLOBAL_VAR_DEFNS_FP;
PDY@Y@m@d
CDATE@Y@m@d@H
CYCLE_DIR&CYCLE_BASEDIR;/@Y@m@d@H
- CYCLE_TYPE#type#
+ CYCLE_TYPEspinup
MEM_TYPEMEMBER
SLASH_ENSMEM_SUBDIR{{ slash_ensmem_subdir }}
-
-
+
+
-
+
@@ -1355,13 +1279,12 @@ MODULES_RUN_TASK_FP script.
{%- endif %}
-
{%- if do_jedi_envar_ioda %}
-
+
&RSRV_DEFAULT;
&WALL_LIMIT_ANAL;
@@ -1371,21 +1294,21 @@ MODULES_RUN_TASK_FP script.
{{ wtime_run_jedienvar_ioda }}
&NCORES_PER_NODE;
{{ memo_run_jedienvar_ioda }}
- &TAG;_&JEDI_ENVAR_IODA_TN;_#type#
- &LOGDIR;/&JEDI_ENVAR_IODA_TN;_#type#_@Y@m@d@H.log
+ &TAG;_&JEDI_ENVAR_IODA_TN;_spinup
+ &LOGDIR;/&JEDI_ENVAR_IODA_TN;_spinup_@Y@m@d@H.log
GLOBAL_VAR_DEFNS_FP&GLOBAL_VAR_DEFNS_FP;
PDY@Y@m@d
CDATE@Y@m@d@H
CYCLE_DIR&CYCLE_BASEDIR;/@Y@m@d@H
- CYCLE_TYPE#type#
+ CYCLE_TYPEspinup
MEM_TYPEMEMBER
SLASH_ENSMEM_SUBDIR{{ slash_ensmem_subdir }}
cyc@H
-
+
@@ -1393,36 +1316,38 @@ MODULES_RUN_TASK_FP script.
{%- endif %}
-
{%- if do_nonvar_cldanal %}
-
+
&RSRV_DEFAULT;
&WALL_LIMIT_ANAL;
&LOAD_MODULES_RUN_TASK_FP; "&RUN_ANAL_TN;" "&JOBSDIR;/JREGIONAL_NONVARCLD"
- {{ nnodes_run_nonvarcldanl }}:ppn={{ ppn_run_nonvarcldanl }}
- {{ wtime_run_nonvarcldanl }}
+
+ &RESOURCES_NONVAR_CLD;
+ &WALLTIME_NONVAR_CLD;
+ &NATIVE_NONVAR_CLD;
&NCORES_PER_NODE;
- {{ memo_run_nonvarcldanl }}
- &TAG;_&CLDANL_NONVAR_TN;_#type#{{ uscore_ensmem_name }}
- &LOGDIR;/&CLDANL_NONVAR_TN;_#type#{{ uscore_ensmem_name }}_@Y@m@d@H.log
+ &MEMO_NONVAR_CLD;
+
+ &TAG;_&CLDANL_NONVAR_TN;_spinup{{ uscore_ensmem_name }}
+ &LOGDIR;/&CLDANL_NONVAR_TN;_spinup{{ uscore_ensmem_name }}_@Y@m@d@H.log
GLOBAL_VAR_DEFNS_FP&GLOBAL_VAR_DEFNS_FP;
PDY@Y@m@d
CDATE@Y@m@d@H
CYCLE_DIR&CYCLE_BASEDIR;/@Y@m@d@H
- CYCLE_TYPE#type#
+ CYCLE_TYPEspinup
MEM_TYPEMEMBER
SLASH_ENSMEM_SUBDIR{{ slash_ensmem_subdir }}
-
+
{%- if do_enkfupdate %}
{%- if do_enkf_radar_ref %}
@@ -1434,13 +1359,13 @@ MODULES_RUN_TASK_FP script.
{%- elif do_envar_radar_ref %}
-
+
{%- for h in cycl_hrs_hyb_fv3lam_ens %}
{{ h }}@H
{%- endfor %}
-
+
{%- for h in cycl_hrs_hyb_fv3lam_ens %}
{{ h }}@H
@@ -1449,7 +1374,7 @@ MODULES_RUN_TASK_FP script.
{%- else %}
-
+
{%- endif %}
@@ -1457,12 +1382,12 @@ MODULES_RUN_TASK_FP script.
{%- endif %}
-
+{%- endif %}
-
+
&RSRV_FCST;
&WALL_LIMIT_FCST;
@@ -1479,8 +1404,8 @@ MODULES_RUN_TASK_FP script.
&NCORES_PER_NODE;
{% endif %}
{{ wtime_run_fcst }}
- &TAG;_&RUN_FCST_TN;_#type#{{ uscore_ensmem_name }}
- &LOGDIR;/&RUN_FCST_TN;_#type#{{ uscore_ensmem_name }}_@Y@m@d@H.log
+ &TAG;_&RUN_FCST_TN;_spinup{{ uscore_ensmem_name }}
+ &LOGDIR;/&RUN_FCST_TN;_spinup{{ uscore_ensmem_name }}_@Y@m@d@H.log
GLOBAL_VAR_DEFNS_FP&GLOBAL_VAR_DEFNS_FP;
PDY@Y@m@d
@@ -1489,24 +1414,24 @@ MODULES_RUN_TASK_FP script.
CYCLE_DIR&CYCLE_BASEDIR;/@Y@m@d@H
SLASH_ENSMEM_SUBDIR{{ slash_ensmem_subdir }}
ENSMEM_INDX#{{ ensmem_indx_name }}#
- CYCLE_TYPE#type#
+ CYCLE_TYPEspinup
NWGES_BASEDIR&NWGES_BASEDIR;
{%- if do_dacycle and do_refl2tten and do_nonvar_cldanal%}
-
-
+
+
{%- elif do_dacycle and do_nonvar_cldanal%}
-
+
{%- elif do_dacycle and do_refl2tten%}
-
+
{%- elif do_dacycle %}
{%- if do_envar_radar_ref %}
-
+
{%- else %}
-
+
{%- endif %}
{%- elif do_enkfupdate or do_enkf_radar_ref %}
@@ -1518,9 +1443,9 @@ MODULES_RUN_TASK_FP script.
{%- if do_ensinit %}
-
+
{%- else %}
-
+
{%- endif %}
@@ -1538,11 +1463,11 @@ MODULES_RUN_TASK_FP script.
{%- for h in cycl_hrs_recenter %}
{{ h }}@H
{%- endfor %}
-
+
{%- elif do_nonvar_cldanal%}
-
+
{%- elif do_enkf_radar_ref %}
{%- else %}
@@ -1550,25 +1475,20 @@ MODULES_RUN_TASK_FP script.
{%- endif %}
{%- else %}
-
+
{%- endif %}
-
-
-
-
-{% if not is_rtma %}
-
+
- {{ restart_hrs_prod }}
+ {% for h in range(da_cycle_interval_hrs, fcst_len_hrs_spinup+da_cycle_interval_hrs, da_cycle_interval_hrs) %}{{ " %03d" % h }}{% endfor %}
-
+
&RSRV_DEFAULT;
&WALL_LIMIT_SAVE_RESTART;
@@ -1577,7 +1497,7 @@ MODULES_RUN_TASK_FP script.
{{ wtime_save_restart }}
&NCORES_PER_NODE;
&TAG;_&SAVE_RESTART_TN;{{ uscore_ensmem_name }}_f#fhr#
- &LOGDIR;/&SAVE_RESTART_TN;{{ uscore_ensmem_name }}_f#fhr#_@Y@m@d@H.log
+ &LOGDIR;/&SAVE_RESTART_TN;_spinup{{ uscore_ensmem_name }}_f#fhr#_@Y@m@d@H.log
GLOBAL_VAR_DEFNS_FP&GLOBAL_VAR_DEFNS_FP;
PDY@Y@m@d
@@ -1587,14 +1507,14 @@ MODULES_RUN_TASK_FP script.
SLASH_ENSMEM_SUBDIR{{ slash_ensmem_subdir }}
cyc@H
fhr#fhr#
- CYCLE_TYPEprod
+ CYCLE_TYPEspinup
@Y@m@d@H@M00
- &CYCLE_BASEDIR;/@Y@m@d@H{{ slash_ensmem_subdir }}/fcst_fv3lam/RESTART/coupler.res
- &CYCLE_BASEDIR;/@Y@m@d@H{{ slash_ensmem_subdir }}/fcst_fv3lam/RESTART/@Y@m@d.@H0000.coupler.res
+ &CYCLE_BASEDIR;/@Y@m@d@H{{ slash_ensmem_subdir }}/fcst_fv3lam_spinup/RESTART/coupler.res
+ &CYCLE_BASEDIR;/@Y@m@d@H{{ slash_ensmem_subdir }}/fcst_fv3lam_spinup/RESTART/@Y@m@d.@H0000.coupler.res
@@ -1602,28 +1522,17 @@ MODULES_RUN_TASK_FP script.
-{%- endif %}
+
+{% if do_post_spinup %}
-{%- if do_ensfcst %}
-
- prod ensfcst
-{%- endif %}
-
-
+
- {% for h in range(0, postproc_long_len_hrs+1) %}{{ " %03d" % h }}{% endfor %}
- {% for h in range(0, postproc_len_hrs+1) %}{{ " normal" }}{% endfor %} {% for h in range(postproc_len_hrs+1, postproc_long_len_hrs+1) %}{{ " long" }}{% endfor %}
-
-{% if postproc_nsout_min > 0 %}
- {% for h in range(0, 60, postproc_nsout_min) %}{{ " #fullfhr#-%02d-00 " % h }}{% endfor %}
-{%- else %}
- #fullfhr#
-{%- endif %}
+ {% for h in range(0, fcst_len_hrs_spinup+1) %}{{ " %03d" % h }}{% endfor %}
-
+
&RSRV_POST;
&WALL_LIMIT_POST;
@@ -1631,8 +1540,8 @@ MODULES_RUN_TASK_FP script.
{{ nnodes_run_post }}:ppn={{ ppn_run_post }}
{{ wtime_run_post }}
&NCORES_PER_NODE;
- &TAG;_&RUN_POST_TN;{{ uscore_ensmem_name }}_f#fhr#
- &LOGDIR;/&RUN_POST_TN;{{ uscore_ensmem_name }}_f#fhr#_@Y@m@d@H.log
+ &TAG;_&RUN_POST_TN;_spinup{{ uscore_ensmem_name }}_f#fhr#
+ &LOGDIR;/&RUN_POST_TN;_spinup{{ uscore_ensmem_name }}_f#fhr#_@Y@m@d@H.log
GLOBAL_VAR_DEFNS_FP&GLOBAL_VAR_DEFNS_FP;
PDY@Y@m@d
@@ -1642,42 +1551,19 @@ MODULES_RUN_TASK_FP script.
SLASH_ENSMEM_SUBDIR{{ slash_ensmem_subdir }}
cyc@H
fhr#fhr#
+ CYCLE_TYPEspinup
TMMARKtm00
- CYCLE_TYPE#cycletype#
- {%- if do_ensfcst %}
-
- {%- for h in cycl_hrs_ensfcst %}
-
- {{ h }}@H
- &CYCLE_BASEDIR;/@Y@m@d@H{{ slash_ensmem_subdir }}/fcst_fv3lam_long/logf#fhr#
-
-
- {{ h }}@H
- &CYCLE_BASEDIR;/@Y@m@d@H{{ slash_ensmem_subdir }}/fcst_fv3lam/logf#fhr#
-
- {%- endfor %}
-
- {%- else %}
- &CYCLE_BASEDIR;/@Y@m@d@H{{ slash_ensmem_subdir }}/fcst_fv3lam/logf#fhr#
- {%- endif %}
+ &CYCLE_BASEDIR;/@Y@m@d@H{{ slash_ensmem_subdir }}/fcst_fv3lam_spinup/logf#fhr#
-
-
-
-{%- if do_ensfcst %}
-
-{%- endif %}
-
-
-
- {% for h in range(0, postproc_long_len_hrs+1) %}{{ " %03d" % h }}{% endfor %}
- {% for h in range(0, postproc_len_hrs+1) %}{{ " normal" }}{% endfor %} {% for h in range(postproc_len_hrs+1, postproc_long_len_hrs+1) %}{{ " long" }}{% endfor %}
-
-
+
+
&RSRV_WGRIB2;
&WALL_LIMIT_POST;
@@ -1686,8 +1572,8 @@ MODULES_RUN_TASK_FP script.
{{ wtime_run_wgrib2 }}
&NCORES_PER_NODE;
{{ memo_run_wgrib2 }}
- &TAG;_&RUN_WGRIB2_TN;{{ uscore_ensmem_name }}_f#fhr#
- &LOGDIR;/&RUN_WGRIB2_TN;{{ uscore_ensmem_name }}_f#fhr#_@Y@m@d@H.log
+ &TAG;_&RUN_WGRIB2_TN;_spinup{{ uscore_ensmem_name }}_f#fhr#
+ &LOGDIR;/&RUN_WGRIB2_TN;_spinup{{ uscore_ensmem_name }}_f#fhr#_@Y@m@d@H.log
GLOBAL_VAR_DEFNS_FP&GLOBAL_VAR_DEFNS_FP;
PDY@Y@m@d
@@ -1696,345 +1582,148 @@ MODULES_RUN_TASK_FP script.
SLASH_ENSMEM_SUBDIR{{ slash_ensmem_subdir }}
cyc@H
fhr#fhr#
+ CYCLE_TYPEspinup
TMMARKtm00
-
+
+{%- endif %}
-{% if do_bufrsnd %}
-
-
- &RSRV_POST;
- &WALL_LIMIT_BUFRSND;
- &LOAD_MODULES_RUN_TASK_FP; "&RUN_BUFRSND_TN;" "&JOBSDIR;/JREGIONAL_BUFRSND"
- {{ nnodes_run_bufrsnd }}:ppn={{ ppn_run_bufrsnd }}
- {{ wtime_run_bufrsnd }}
- &NCORES_PER_NODE;
- &TAG;_&RUN_BUFRSND_TN;
- &LOGDIR;/&RUN_BUFRSND_TN;_@Y@m@d@H.log
-
- GLOBAL_VAR_DEFNS_FP&GLOBAL_VAR_DEFNS_FP;
- PDY@Y@m@d
- CDATE@Y@m@d@H
- CYCLE_DIR&CYCLE_BASEDIR;/@Y@m@d@H
- NWGES_DIR&NWGES_BASEDIR;/@Y@m@d@H
- SLASH_ENSMEM_SUBDIR
- cyc@H
- TMMARKtm00
-
-
- &CYCLE_BASEDIR;/@Y@m@d@H/fcst_fv3lam/logf{{ "%03d" % postproc_long_len_hrs }}
-
-
-
+
{%- endif %}
-{%- if machine in ["JET", "HERA"] %}
+
-{%- if not do_ensemble %}
-
-
-
- {{ tilelabels }}
- {{ tilesets }}
-
-
- &RSRV_GRAPHICS;
- &WALL_LIMIT_GRAPHICS;
-
- {{ wtime_run_fcst }}
- {{ nnodes_run_graphics }}:ppn={{ ppn_run_graphics }}
- &TAG;_python{{ uscore_ensmem_name }}_@H_#tilelabel#
- &LOGDIR;/python{{ uscore_ensmem_name }}_#tilelabel#.log
- &LOAD_MODULES_RUN_TASK_FP; "run_graphics" "&JOBSDIR;/JREGIONAL_RUN_PYTHON_GRAPHICS"
-
- GLOBAL_VAR_DEFNS_FP&GLOBAL_VAR_DEFNS_FP;
- PDY@Y@m@d
- cyc@H
- CDATE@Y@m@d@H
- SLASH_ENSMEM_SUBDIR{{ slash_ensmem_subdir }}
- GRAPHICS_TYPEmaps
- TILES#tileset#
- TILELABEL#tilelabel#
- ENSCTRL_COMOUT_BASEDIR&ENSCTRL_COMOUT_BASEDIR;
-
-
-
-
-
-
-
-
+
- &RSRV_GRAPHICS;
- &WALL_LIMIT_GRAPHICS;
+ &RSRV_DEFAULT;
+ &WALL_LIMIT_PRE;
- {{ wtime_run_fcst }}
- {{ nnodes_run_graphics }}:ppn={{ ppn_run_graphics }}
- &TAG;_python{{ uscore_ensmem_name }}_@H_skewts
- &LOGDIR;/python_skewts{{ uscore_ensmem_name }}_@H.log
- &LOAD_MODULES_RUN_TASK_FP; "run_graphics" "&JOBSDIR;/JREGIONAL_RUN_PYTHON_GRAPHICS"
+ &LOAD_MODULES_RUN_TASK_FP; "&RUN_PREPSTART_TN;" "&JOBSDIR;/JREGIONAL_RUN_PREPSTART"
+ {{ nnodes_run_prepstart }}:ppn={{ ppn_run_prepstart }}
+ &NCORES_PER_NODE;
+ {{ wtime_run_prepstart }}
+ &TAG;_&PREP_CYC_PROD_TN;{{ uscore_ensmem_name }}
+ &LOGDIR;/&PREP_CYC_PROD_TN;{{ uscore_ensmem_name }}_@Y@m@d@H.log
GLOBAL_VAR_DEFNS_FP&GLOBAL_VAR_DEFNS_FP;
PDY@Y@m@d
- cyc@H
CDATE@Y@m@d@H
+ HH@H
+ CYCLE_DIR&CYCLE_BASEDIR;/@Y@m@d@H
+ FG_ROOT&FG_ROOT;
+ LBCS_ROOT&FG_ROOT;
+ CYCLE_TYPEprod
SLASH_ENSMEM_SUBDIR{{ slash_ensmem_subdir }}
- GRAPHICS_TYPEskewts
- ENSCTRL_COMOUT_BASEDIR&ENSCTRL_COMOUT_BASEDIR;
+ NWGES_BASEDIR&NWGES_BASEDIR;
-
+
+
+
+
+ {%- for h in cycl_hrs_prodstart %}
+ {{ h }}@H
+ {%- endfor %}
+
+{%- if do_spinup %}
+{%- if do_retro %}
+ &FG_ROOT;/@Y@m@d@H{{ slash_ensmem_subdir }}/fcst_fv3lam_spinup/RESTART/@Y@m@d.@H0000.coupler.res
+{% else %}
+
+
+ @Y@m@d@H@M00
+ &FG_ROOT;/@Y@m@d@H{{ slash_ensmem_subdir }}/fcst_fv3lam_spinup/RESTART/@Y@m@d.@H0000.coupler.res
+
+
+ @Y@m@d@H@M00
+
+ {%- for h in range(da_cycle_interval_hrs, 6+1, da_cycle_interval_hrs) %}
+ &FG_ROOT;/@Y@m@d@H{{ slash_ensmem_subdir }}/fcst_fv3lam/RESTART/@Y@m@d.@H0000.coupler.res
+ {%- endfor %}
+
+
+
+{%- endif %}
+{% else %}
+{%- if do_retro %}
+
+ &FG_ROOT;/@Y@m@d@H{{ slash_ensmem_subdir }}/ics/gfs_data.tile7.halo0.nc
+
+ {%- for h in range(0, extrn_mdl_ics_offset_hrs+1) %}
+ &FG_ROOT;/@Y@m@d@H{{ slash_ensmem_subdir }}/lbcs/gfs_bndy.tile7.{{ "%03d" % boundary_len_hrs }}.nc
+ {%- endfor %}
+
+
+{% else %}
+
+ @Y@m@d@H@M00
+
+
+
+
+
+
+{%- endif %}
+{%- endif %}
+
+
+
+ {%- for h in cycl_hrs_prodstart %}
+ {{ h }}@H
+ {%- endfor %}
+{%- if do_retro %}
+ &FG_ROOT;/@Y@m@d@H{{ slash_ensmem_subdir }}/fcst_fv3lam/RESTART/@Y@m@d.@H0000.coupler.res
+{% else %}
+
+
+ @Y@m@d@H@M00
+ &FG_ROOT;/@Y@m@d@H{{ slash_ensmem_subdir }}/fcst_fv3lam/RESTART/@Y@m@d.@H0000.coupler.res
+
+
+ @Y@m@d@H@M00
+
+ {%- for h in range(da_cycle_interval_hrs+da_cycle_interval_hrs, 6+1, da_cycle_interval_hrs) %}
+ &FG_ROOT;/@Y@m@d@H{{ slash_ensmem_subdir }}/fcst_fv3lam/RESTART/@Y@m@d.@H0000.coupler.res
+ {%- endfor %}
+
+
+
+{%- endif %}
+
+
+
-{%- endif %}
+{%- if do_ensemble %}
+
{%- endif %}
-{%- if do_spinup %}
+{%- if do_gsiobserver %}
+
-
+ &RSRV_ENKF;
+ &WALL_LIMIT_RECENTER;
- {% for h in range(da_cycle_interval_hrs, fcst_len_hrs_spinup+da_cycle_interval_hrs, da_cycle_interval_hrs) %}{{ " %03d" % h }}{% endfor %}
-
-
-
- &RSRV_DEFAULT;
- &WALL_LIMIT_SAVE_RESTART;
- &LOAD_MODULES_RUN_TASK_FP; "&SAVE_RESTART_TN;" "&JOBSDIR;/JREGIONAL_SAVE_RESTART"
- {{ nnodes_save_restart }}:ppn={{ ppn_save_restart }}
- {{ wtime_save_restart }}
- &NCORES_PER_NODE;
- &TAG;_&SAVE_RESTART_TN;{{ uscore_ensmem_name }}_f#fhr#
- &LOGDIR;/&SAVE_RESTART_TN;_spinup{{ uscore_ensmem_name }}_f#fhr#_@Y@m@d@H.log
-
- GLOBAL_VAR_DEFNS_FP&GLOBAL_VAR_DEFNS_FP;
- PDY@Y@m@d
- CDATE@Y@m@d@H
- CYCLE_DIR&CYCLE_BASEDIR;/@Y@m@d@H
- NWGES_DIR&NWGES_BASEDIR;/@Y@m@d@H
- SLASH_ENSMEM_SUBDIR{{ slash_ensmem_subdir }}
- cyc@H
- fhr#fhr#
- CYCLE_TYPEspinup
-
-
-
- @Y@m@d@H@M00
-
- &CYCLE_BASEDIR;/@Y@m@d@H{{ slash_ensmem_subdir }}/fcst_fv3lam_spinup/RESTART/coupler.res
- &CYCLE_BASEDIR;/@Y@m@d@H{{ slash_ensmem_subdir }}/fcst_fv3lam_spinup/RESTART/@Y@m@d.@H0000.coupler.res
-
-
-
-
-
-
-
-
-
-
- {% for h in range(0, fcst_len_hrs_spinup+1) %}{{ " %03d" % h }}{% endfor %}
-
-
-
- &RSRV_POST;
- &WALL_LIMIT_POST;
- &LOAD_MODULES_RUN_TASK_FP; "&RUN_POST_TN;" "&JOBSDIR;/JREGIONAL_RUN_POST"
- {{ nnodes_run_post }}:ppn={{ ppn_run_post }}
- {{ wtime_run_post }}
- &NCORES_PER_NODE;
- &TAG;_&RUN_POST_TN;{{ uscore_ensmem_name }}_f#fhr#
- &LOGDIR;/&RUN_POST_TN;_spinup_f#fhr#_@Y@m@d@H.log
-
- GLOBAL_VAR_DEFNS_FP&GLOBAL_VAR_DEFNS_FP;
- PDY@Y@m@d
- CDATE@Y@m@d@H
- CYCLE_DIR&CYCLE_BASEDIR;/@Y@m@d@H
- NWGES_DIR&NWGES_BASEDIR;/@Y@m@d@H
- SLASH_ENSMEM_SUBDIR
- cyc@H
- fhr#fhr#
- CYCLE_TYPEspinup
- TMMARKtm00
-
-
- &CYCLE_BASEDIR;/@Y@m@d@H/fcst_fv3lam_spinup/logf#fhr#
-
-
-
-
-
-
- &RSRV_WGRIB2;
- &WALL_LIMIT_POST;
- &LOAD_MODULES_RUN_TASK_FP; "&RUN_WGRIB2_TN;" "&JOBSDIR;/JREGIONAL_RUN_WGRIB2"
- {{ nnodes_run_wgrib2 }}:ppn={{ ppn_run_wgrib2 }}
- {{ wtime_run_wgrib2 }}
- &NCORES_PER_NODE;
- {{ memo_run_wgrib2 }}
- &TAG;_&RUN_WGRIB2_TN;{{ uscore_ensmem_name }}_f#fhr#
- &LOGDIR;/&RUN_WGRIB2_TN;_spinup_f#fhr#_@Y@m@d@H.log
-
- GLOBAL_VAR_DEFNS_FP&GLOBAL_VAR_DEFNS_FP;
- PDY@Y@m@d
- CDATE@Y@m@d@H
- CYCLE_DIR&CYCLE_BASEDIR;/@Y@m@d@H
- SLASH_ENSMEM_SUBDIR
- cyc@H
- fhr#fhr#
- CYCLE_TYPEspinup
- TMMARKtm00
-
-
-
-
-
-
-
-
-
-{%- endif %}
-
-
-
-
- &RSRV_POST;
-
- &JOBSDIR;/../scripts/exregional_clean.ksh
- 1
- 00:15:00
- &TAG;_&CLEAN_TN;{{ uscore_ensmem_name }}
- &LOGDIR;/&CLEAN_TN;{{ uscore_ensmem_name }}_@Y@m@d@H.log
-
- GLOBAL_VAR_DEFNS_FP&GLOBAL_VAR_DEFNS_FP;
- LOGDIR&LOGDIR;
- CDATE@Y@m@d@H
- NWGES_BASEDIR&NWGES_BASEDIR;
- SLASH_ENSMEM_SUBDIR
-
-
-
-{%- if do_ensemble %}
-
-{%- endif %}
-
-{%- if machine in ["JET", "HERA"] %}
-
-{%- if do_ensemble %}
-
-
-
- &RSRV_HPSS;
-
- &JOBSDIR;/../scripts/exregional_archive_ens.ksh
- 1
- 23:00:00
- 24G
- &TAG;_&ARCHIVE_TN;
- &LOGDIR;/&ARCHIVE_TN;_@Y@m@d@H.log
-
- GLOBAL_VAR_DEFNS_FP&GLOBAL_VAR_DEFNS_FP;
- nens{{ num_ens_members }}
-
-
-
-{%- else %}
-
-
-
-
- &RSRV_HPSS;
-
- &JOBSDIR;/../scripts/exregional_archive.ksh
- 1
- 08:00:00
- 24G
- &TAG;_&ARCHIVE_TN;
- &LOGDIR;/&ARCHIVE_TN;_@Y@m@d@H.log
-
- GLOBAL_VAR_DEFNS_FP&GLOBAL_VAR_DEFNS_FP;
- CDATE@Y@m@d@H
-
-
-{%- endif %}
-{%- endif %}
-
-{%- if machine in ["WCOSS2"] %}
-
-
-
- &RSRV_HPSS;
-
- &JOBSDIR;/../scripts/exregional_archive_emc.ksh
- 1:ppn=1
- 08:00:00
- &TAG;_&ARCHIVE_TN;
- &LOGDIR;/&ARCHIVE_TN;_@Y@m@d@H.log
-
- GLOBAL_VAR_DEFNS_FP&GLOBAL_VAR_DEFNS_FP;
- CDATE@Y@m@d@H
-
-
-
-
-
- 00@H
- 12@H
-
-
-
-
- 00@H
- 12@H
-
-
-
-
-
-
-{%- endif %}
-
-{%- if do_gsiobserver %}
-
-
-
- &RSRV_ENKF;
- &WALL_LIMIT_RECENTER;
-
- &LOAD_MODULES_RUN_TASK_FP; "&RUN_PREPSTART_TN;" "&JOBSDIR;/JREGIONAL_CALC_ENSMEAN"
- {{ nnodes_run_recenter }}:ppn={{ ppn_run_recenter }}
- &NCORES_PER_NODE;
- {{ wtime_run_recenter }}
- &TAG;_&CALC_ENSMEAN_TN;
- &LOGDIR;/&CALC_ENSMEAN_TN;_@Y@m@d@H.log
+ &LOAD_MODULES_RUN_TASK_FP; "&RUN_PREPSTART_TN;" "&JOBSDIR;/JREGIONAL_CALC_ENSMEAN"
+ {{ nnodes_run_recenter }}:ppn={{ ppn_run_recenter }}
+ &NCORES_PER_NODE;
+ {{ wtime_run_recenter }}
+ &TAG;_&CALC_ENSMEAN_TN;
+ &LOGDIR;/&CALC_ENSMEAN_TN;_@Y@m@d@H.log
GLOBAL_VAR_DEFNS_FP&GLOBAL_VAR_DEFNS_FP;
PDY@Y@m@d
@@ -2100,7 +1789,6 @@ MODULES_RUN_TASK_FP script.
-
+
+ &RSRV_ENKF;
+ &WALL_LIMIT_ANAL;
+ &LOAD_MODULES_RUN_TASK_FP; "&RUN_ENKFUPDT_TN;" &JOBSDIR;/JREGIONAL_RUN_ENKF
- {{ tilelabels }}
- {{ tilesets }}
-
+ {{ nnodes_run_enkf }}:ppn={{ ppn_run_enkf }}
+ &NCORES_PER_NODE;
+ {{ wtime_run_enkf }}
+ &TAG;_&RUN_ENKFUPDT_TN;
+ &LOGDIR;/&RUN_ENKFUPDT_TN;_@Y@m@d@H.log
+ GLOBAL_VAR_DEFNS_FP&GLOBAL_VAR_DEFNS_FP;
- &RSRV_GRAPHICS;
- &WALL_LIMIT_GRAPHICS;
+ nens{{ num_ens_members }}
+ CDATE@Y@m@d@H
+ CYCLE_DIR&CYCLE_BASEDIR;/@Y@m@d@H
+ CYCLE_ROOT&CYCLE_BASEDIR;
+ NWGES_DIR&NWGES_BASEDIR;/@Y@m@d@H
+ OB_TYPEconv
- {{ wtime_run_fcst }}
- {{ nnodes_run_graphics }}:ppn={{ ppn_run_graphics }}
- &TAG;_python_@H_#tilelabel#
- &LOGDIR;/python_#tilelabel#.log
- &LOAD_MODULES_RUN_TASK_FP; "run_graphics" "&JOBSDIR;/JREGIONAL_RUN_PYTHON_GRAPHICS"
-
- GLOBAL_VAR_DEFNS_FP&GLOBAL_VAR_DEFNS_FP;
- CDATE@Y@m@d@H
- PDY@Y@m@d
- cyc@H
- SLASH_ENSMEM_SUBDIR{{ slash_ensmem_subdir }}
- GRAPHICS_TYPEenspanel
- TILES#tileset#
- TILELABEL#tilelabel#
- ALL_LEADSFALSE
- ENSCTRL_COMOUT_BASEDIR&ENSCTRL_COMOUT_BASEDIR;
-
-
-
- &ENSCTRL_COMOUT_DIR;/RRFS_CONUS.t@Hz.bgdawpf000.tm00.grib2
- {%- for m in range(1, 10) %}
-
- {%- endfor %}
-
-
-
-
-
-{%- endif %}
-{%- endif %}
-
-{%- if do_ensemble and do_enspost %}
-
-
- {% for h in range(0, postproc_long_len_hrs+1) %}{{ " %03d" % h }}{% endfor %}
-
-
-
- &RSRV_DEFAULT;
- &WALL_LIMIT_POST;
-
- {{ wtime_run_enspost }}
- {{ nnodes_run_enspost }}:ppn={{ ppn_run_enspost }}
- &TAG;_enspost_@H_#fhr#
- &LOGDIR;/enspost_f#fhr#_@Y@m@d@H.log
- &LOAD_MODULES_RUN_TASK_FP; "run_enspost" "&JOBSDIR;/JREGIONAL_RUN_ENSPOST"
-
- GLOBAL_VAR_DEFNS_FP&GLOBAL_VAR_DEFNS_FP;
- CDATE@Y@m@d@H
- PDY@Y@m@d
- cyc@H
- fhr#fhr#
- ENSCTRL_COMOUT_BASEDIR&ENSCTRL_COMOUT_BASEDIR;
-
-
-
- &ENSCTRL_COMOUT_DIR;/RRFS_CONUS.t@Hz.bgsfcf#fhr#.tm00.grib2
- {%- for m in range(1, 10) %}
-
- {%- endfor %}
-
-
-
-
-
-{%- if machine in ["JET", "HERA"] -%}
-
-
- &RSRV_GRAPHICS;
- &WALL_LIMIT_GRAPHICS;
-
- {{ wtime_run_enspost }}
- {{ nnodes_run_graphics }}:ppn={{ ppn_run_graphics }}
- &TAG;_python_@H_enspost_maps
- &LOGDIR;/python_enspost_maps.log
- &LOAD_MODULES_RUN_TASK_FP; "run_graphics" "&JOBSDIR;/JREGIONAL_RUN_PYTHON_GRAPHICS"
-
- GLOBAL_VAR_DEFNS_FP&GLOBAL_VAR_DEFNS_FP;
- CDATE@Y@m@d@H
- PDY@Y@m@d
- cyc@H
- SLASH_ENSMEM_SUBDIR{{ slash_ensmem_subdir }}
- GRAPHICS_TYPEmaps
- TILESfull
- TILELABELfull
- ALL_LEADSFALSE
- ENSCTRL_COMOUT_BASEDIR&ENSCTRL_COMOUT_BASEDIR;
- ENSPRODensprod
- IMAGES_FNrrfs_ensprod.yml
-
-
-
-
-
-
-
-{%- endif %}
-{%- endif %}
-
-{%- if do_enkfupdate %}
-
-
-
- &RSRV_ENKF;
- &WALL_LIMIT_ANAL;
- &LOAD_MODULES_RUN_TASK_FP; "&RUN_ENKFUPDT_TN;" &JOBSDIR;/JREGIONAL_RUN_ENKF
-
- {{ nnodes_run_enkf }}:ppn={{ ppn_run_enkf }}
- &NCORES_PER_NODE;
- {{ wtime_run_enkf }}
- &TAG;_&RUN_ENKFUPDT_TN;
- &LOGDIR;/&RUN_ENKFUPDT_TN;_@Y@m@d@H.log
- GLOBAL_VAR_DEFNS_FP&GLOBAL_VAR_DEFNS_FP;
-
- nens{{ num_ens_members }}
- CDATE@Y@m@d@H
- CYCLE_DIR&CYCLE_BASEDIR;/@Y@m@d@H
- CYCLE_ROOT&CYCLE_BASEDIR;
- NWGES_DIR&NWGES_BASEDIR;/@Y@m@d@H
- OB_TYPEconv
-
-
-
-
-
+
+
+
+
{%- endif %}
-{%- if do_enkf_radar_ref %}
+{%- if do_enkf_radar_ref and not do_ensfcst %}
-
&RSRV_ENKF;
&WALL_LIMIT_ANAL;
@@ -2340,14 +1915,11 @@ MODULES_RUN_TASK_FP script.
{%- endif %}
-
-
-{%- if do_recenter %}
+{%- if do_recenter and not do_ensfcst %}
-
&RSRV_ENKF;
&WALL_LIMIT_RECENTER;
@@ -2390,76 +1962,100 @@ MODULES_RUN_TASK_FP script.
{%- endif %}
+
+{% if do_ensemble %}
+
+
+ {%- for m in range(1, num_ens_members+1) -%}{%- set fmtstr=" %0"~ndigits_ensmem_names~"d" -%}{{- fmtstr%m -}}{%- endfor %}
+{%- endif %}
+
+{%- if do_dacycle %}
- {%- if do_ensfcst %}
-
-
- {%- for m in range(1, num_ens_members_fcst+1) -%}
- {%- set fmtstr=" %0"~ndigits_ensmem_names~"d" -%}
- {{- fmtstr%m -}}
- {%- endfor %}
-
-
+
- &RSRV_DEFAULT;
- &WALL_LIMIT_PRE;
+ &RSRV_ANALYSIS;
+ &WALL_LIMIT_ANAL;
- &LOAD_MODULES_RUN_TASK_FP; "&RUN_PREPSTART_TN;" "&JOBSDIR;/JREGIONAL_RUN_PREPSTART_ENSFCST"
- {{ nnodes_run_prepstart }}:ppn={{ ppn_run_prepstart }}
+ &LOAD_MODULES_RUN_TASK_FP; "&RUN_ANAL_TN;" "&JOBSDIR;/JREGIONAL_RUN_ANAL"
+ {% if machine in ["JET", "HERA"] -%}
+ {{ ncores_run_anal }}
+ {{ native_run_anal }} &RRFS_RESERVE;
+ {% else -%}
+ {{ nnodes_run_anal }}:ppn={{ ppn_run_anal }}
&NCORES_PER_NODE;
- {{ wtime_run_prepstart_ensmean }}
- &TAG;_&PREP_CYC_TN;_ensfcst{{ uscore_ensmem_name }}
- &LOGDIR;/&PREP_CYC_TN;_ensfcst{{ uscore_ensmem_name }}_@Y@m@d@H.log
+ {% endif -%}
+ {{ wtime_run_anal }}
+ &TAG;_&ANAL_GSI_TN;_prod{{ uscore_ensmem_name }}
+ &LOGDIR;/&ANAL_GSI_TN;{{ uscore_ensmem_name }}_prod_@Y@m@d@H.log
GLOBAL_VAR_DEFNS_FP&GLOBAL_VAR_DEFNS_FP;
PDY@Y@m@d
+ cyc@H
CDATE@Y@m@d@H
CYCLE_DIR&CYCLE_BASEDIR;/@Y@m@d@H
- LBCS_ROOT&FG_ROOT;
- CYCLE_TYPEensfcst
+ CYCLE_ROOT&CYCLE_BASEDIR;
+ RRFSE_FG_ROOT&RRFSE_FG_ROOT;
+ CYCLE_TYPEprod
+ GSI_TYPEANALYSIS
+ MEM_TYPEMEMBER
SLASH_ENSMEM_SUBDIR{{ slash_ensmem_subdir }}
- ENSMEM_INDX#{{ ensmem_indx_name }}#
+ SATBIAS_DIR&NWGES_BASEDIR;/satbias
+ nens{{ num_ens_members }}
-
- {%- if do_enkfupdate or do_enkf_radar_ref %}
- {%- if do_recenter %}
-
-
-
- {%- for h in cycl_hrs_recenter %}
- {{ h }}@H
- {%- endfor %}
-
- &CYCLE_BASEDIR;/@Y@m@d@H/recenter/fcst_fv3lam/INPUT/recenter_complete.txt
-
-
- {%- for h in cycl_hrs_recenter %}
- {{ h }}@H
- {%- endfor %}
- {%- if do_nonvar_cldanal%}
-
- {%- elif do_enkf_radar_ref %}
-
- {%- else %}
-
- {%- endif %}
-
-
- {%- elif do_nonvar_cldanal%}
-
- {%- elif do_enkf_radar_ref %}
-
- {%- else %}
-
- {%- endif %}
-
- {%- else %}
-
- {%- endif %}
+
+ @Y@m@d@H@M00
+
+ {%- if use_rrfse_ens %}
+
+
+
+ {%- for h in cycl_hrs_hyb_fv3lam_ens %}
+ {{ h }}@H
+ {%- endfor %}
+
+
+ {%- if do_spinup %}
+
+
+ {%- for h in cycl_hrs_prodstart_ens %}
+ {{ h }}@H
+ {%- endfor %}
+
+ {% for h in range(1, num_ens_members+1) %}
+ &RRFSE_FG_ROOT;/@Y@m@d@H/mem{{ "%04d" % h }}/fcst_fv3lam_spinup/RESTART/@Y@m@d.@H0000.coupler.res
+ {%- endfor %}
+
+
+
+ {%- for h in cycl_hrs_prodstart_ens %}
+ {{ h }}@H
+ {%- endfor %}
+
+ {% for h in range(1, num_ens_members+1) %}
+ &RRFSE_FG_ROOT;/@Y@m@d@H/mem{{ "%04d" % h }}/fcst_fv3lam/RESTART/@Y@m@d.@H0000.coupler.res
+ {%- endfor %}
+
+ {%- else %}
+
+ {% for h in range(1, num_ens_members+1) %}
+ &RRFSE_FG_ROOT;/@Y@m@d@H/mem{{ "%04d" % h }}/fcst_fv3lam/RESTART/@Y@m@d.@H0000.coupler.res
+ {%- endfor %}
+
+ {%- endif %}
+
+
+
+ {%- for h in cycl_hrs_hyb_fv3lam_ens %}
+ {{ h }}@H
+ {%- endfor %}
+
+
+ {%- endif %}
+
@@ -2467,43 +2063,800 @@ MODULES_RUN_TASK_FP script.
************************************************************************
************************************************************************
-->
-
+
- &RSRV_FCST;
- &WALL_LIMIT_FCST;
+ &RSRV_DEFAULT;
+ &WALL_LIMIT_POST;
- &LOAD_MODULES_RUN_TASK_FP; "&RUN_FCST_TN;" "&JOBSDIR;/JREGIONAL_RUN_FCST"
- {% if machine in ["JET", "HERA"] %}
- {{ ncores_run_fcst }}
- {{ native_run_fcst }} &RRFS_RESERVE;
- {% elif machine in ["WCOSS2"] %}
- {{ nnodes_run_fcst }}:ppn={{ ppn_run_fcst }}:tpp=2
- &NCORES_PER_NODE;
- {% else %}
- {{ nnodes_run_fcst }}:ppn={{ ppn_run_fcst }}
+ &LOAD_MODULES_RUN_TASK_FP; "&RUN_POST_TN;" "&JOBSDIR;/JREGIONAL_RUN_POSTANAL"
+ {{ nnodes_run_postanal }}:ppn={{ ppn_run_postanal }}
&NCORES_PER_NODE;
- {% endif %}
- {{ wtime_run_fcst }}
- &TAG;_&RUN_FCST_TN;_long{{ uscore_ensmem_name }}
- &LOGDIR;/&RUN_FCST_TN;_long{{ uscore_ensmem_name }}_@Y@m@d@H.log
+ {{ wtime_run_postanal }}
+ &TAG;_&POSTANAL_TN;_prod{{ uscore_ensmem_name }}
+ &LOGDIR;/&POSTANAL_TN;{{ uscore_ensmem_name }}_prod_@Y@m@d@H.log
GLOBAL_VAR_DEFNS_FP&GLOBAL_VAR_DEFNS_FP;
PDY@Y@m@d
+ cyc@H
CDATE@Y@m@d@H
- HH@H
CYCLE_DIR&CYCLE_BASEDIR;/@Y@m@d@H
+ CYCLE_ROOT&CYCLE_BASEDIR;
+ RRFSE_FG_ROOT&RRFSE_FG_ROOT;
+ CYCLE_TYPEprod
+ GSI_TYPEANALYSIS
+ MEM_TYPEMEMBER
+ SLASH_ENSMEM_SUBDIR{{ slash_ensmem_subdir }}
+ SATBIAS_DIR&NWGES_BASEDIR;/satbias
+ nens{{ num_ens_members }}
+
+
+
+
+
+
+
+{%- if do_envar_radar_ref %}
+
+
+
+ &RSRV_ANALYSIS;
+ &WALL_LIMIT_ANAL;
+
+ &LOAD_MODULES_RUN_TASK_FP; "&HYBRID_RADAR_REF_TN;" "&JOBSDIR;/JREGIONAL_RUN_ANAL"
+ {% if machine in ["JET", "HERA"] -%}
+ {{ ncores_run_anal }}
+ {{ native_run_anal }} &RRFS_RESERVE;
+ {% else -%}
+ {{ nnodes_run_anal }}:ppn={{ ppn_run_anal }}
+ -l place=excl
+ &NCORES_PER_NODE;
+ {% endif -%}
+ {{ wtime_run_anal }}
+ &TAG;_&HYBRID_RADAR_REF_TN;_prod
+ &LOGDIR;/&HYBRID_RADAR_REF_TN;_prod_@Y@m@d@H.log
+
+ GLOBAL_VAR_DEFNS_FP&GLOBAL_VAR_DEFNS_FP;
+ PDY@Y@m@d
+ cyc@H
+ CDATE@Y@m@d@H
+ CYCLE_DIR&CYCLE_BASEDIR;/@Y@m@d@H
+ CYCLE_ROOT&CYCLE_BASEDIR;
+ RRFSE_FG_ROOT&RRFSE_FG_ROOT;
+ CYCLE_TYPEprod
+ GSI_TYPEANALYSIS
+ MEM_TYPEMEMBER
+ SLASH_ENSMEM_SUBDIR
+ SATBIAS_DIR&NWGES_BASEDIR;/satbias
+ nens30
+ OB_TYPEradardbz
+
+
+
+
+
+ {%- for h in cycl_hrs_hyb_fv3lam_ens %}
+ {{ h }}@H
+ {%- endfor %}
+
+
+
+
+
+
+{% endif -%}
+
+{% endif -%}
+
+{%- if do_refl2tten and not do_ensfcst %}
+
+
+
+ &RSRV_DEFAULT;
+ &WALL_LIMIT_ANAL;
+
+ &LOAD_MODULES_RUN_TASK_FP; "&RUN_ANAL_TN;" "&JOBSDIR;/JREGIONAL_REFL2TTEN"
+ {{ nnodes_run_ref2tten }}:ppn={{ ppn_run_ref2tten }}
+ {{ wtime_run_ref2tten }}
+ {{ memo_run_ref2tten }}
+ &NCORES_PER_NODE;
+ &TAG;_&RADAR_REFL2TTEN_TN;_prod
+ &LOGDIR;/&RADAR_REFL2TTEN_TN;_prod_@Y@m@d@H.log
+
+ GLOBAL_VAR_DEFNS_FP&GLOBAL_VAR_DEFNS_FP;
+ PDY@Y@m@d
+ CDATE@Y@m@d@H
+ CYCLE_DIR&CYCLE_BASEDIR;/@Y@m@d@H
+ CYCLE_TYPEprod
+ MEM_TYPEMEMBER
+ SLASH_ENSMEM_SUBDIR{{ slash_ensmem_subdir }}
+
+
+
+
+
+
+
+
+
+
+
+
+
+{%- endif %}
+
+{%- if do_jedi_envar_ioda %}
+
+
+
+ &RSRV_DEFAULT;
+ &WALL_LIMIT_ANAL;
+
+ &LOAD_MODULES_RUN_TASK_FP; "jedienvar_ioda" "&JOBSDIR;/JREGIONAL_JEDIENVAR_IODA"
+ {{ nnodes_run_jedienvar_ioda }}:ppn={{ ppn_run_jedienvar_ioda }}
+ {{ wtime_run_jedienvar_ioda }}
+ &NCORES_PER_NODE;
+ {{ memo_run_jedienvar_ioda }}
+ &TAG;_&JEDI_ENVAR_IODA_TN;_prod
+ &LOGDIR;/&JEDI_ENVAR_IODA_TN;_prod_@Y@m@d@H.log
+
+ GLOBAL_VAR_DEFNS_FP&GLOBAL_VAR_DEFNS_FP;
+ PDY@Y@m@d
+ CDATE@Y@m@d@H
+ CYCLE_DIR&CYCLE_BASEDIR;/@Y@m@d@H
+ CYCLE_TYPEprod
+ MEM_TYPEMEMBER
+ SLASH_ENSMEM_SUBDIR{{ slash_ensmem_subdir }}
+ cyc@H
+
+
+
+
+
+
+
+
+
+{%- endif %}
+
+{%- if do_nonvar_cldanal and not do_ensfcst %}
+
+
+
+ &RSRV_DEFAULT;
+ &WALL_LIMIT_ANAL;
+
+ &LOAD_MODULES_RUN_TASK_FP; "&RUN_ANAL_TN;" "&JOBSDIR;/JREGIONAL_NONVARCLD"
+
+ &RESOURCES_NONVAR_CLD;
+ &WALLTIME_NONVAR_CLD;
+ &NATIVE_NONVAR_CLD;
+ &NCORES_PER_NODE;
+ &MEMO_NONVAR_CLD;
+
+ &TAG;_&CLDANL_NONVAR_TN;_prod{{ uscore_ensmem_name }}
+ &LOGDIR;/&CLDANL_NONVAR_TN;_prod{{ uscore_ensmem_name }}_@Y@m@d@H.log
+
+ GLOBAL_VAR_DEFNS_FP&GLOBAL_VAR_DEFNS_FP;
+ PDY@Y@m@d
+ CDATE@Y@m@d@H
+ CYCLE_DIR&CYCLE_BASEDIR;/@Y@m@d@H
+ CYCLE_TYPEprod
+ MEM_TYPEMEMBER
+ SLASH_ENSMEM_SUBDIR{{ slash_ensmem_subdir }}
+
+
+
+
+ {%- if do_enkfupdate %}
+
+ {%- if do_enkf_radar_ref %}
+
+ {%- else %}
+
+ {%- endif %}
+
+ {%- elif do_envar_radar_ref %}
+
+
+
+ {%- for h in cycl_hrs_hyb_fv3lam_ens %}
+ {{ h }}@H
+ {%- endfor %}
+
+
+
+
+ {%- for h in cycl_hrs_hyb_fv3lam_ens %}
+ {{ h }}@H
+ {%- endfor %}
+
+
+
+ {%- else %}
+
+ {%- endif %}
+
+
+
+
+
+{%- endif %}
+
+
+
+ &RSRV_FCST;
+ &WALL_LIMIT_FCST;
+
+ &LOAD_MODULES_RUN_TASK_FP; "&RUN_FCST_TN;" "&JOBSDIR;/JREGIONAL_RUN_FCST"
+
+ &RESOURCES_FCST_PROD;
+ &WALLTIME_FCST_PROD;
+ &NATIVE_FCST_PROD;
+ &NCORES_PER_NODE;
+
+ &TAG;_&RUN_FCST_TN;_prod{{ uscore_ensmem_name }}
+ &LOGDIR;/&RUN_FCST_TN;_prod{{ uscore_ensmem_name }}_@Y@m@d@H.log
+
+ GLOBAL_VAR_DEFNS_FP&GLOBAL_VAR_DEFNS_FP;
+ PDY@Y@m@d
+ CDATE@Y@m@d@H
+ HH@H
+ CYCLE_DIR&CYCLE_BASEDIR;/@Y@m@d@H
+ SLASH_ENSMEM_SUBDIR{{ slash_ensmem_subdir }}
+ ENSMEM_INDX#{{ ensmem_indx_name }}#
+ CYCLE_TYPEprod
+ NWGES_BASEDIR&NWGES_BASEDIR;
+
+
+ {%- if do_dacycle and do_refl2tten and do_nonvar_cldanal%}
+
+
+
+
+ {%- elif do_dacycle and do_nonvar_cldanal%}
+
+ {%- elif do_dacycle and do_refl2tten%}
+
+ {%- elif do_dacycle %}
+ {%- if do_envar_radar_ref %}
+
+ {%- else %}
+
+ {%- endif %}
+ {%- elif do_enkfupdate or do_enkf_radar_ref %}
+
+
+
+ {%- for h in cycl_hrs_spinstart %}
+ {{ h }}@H
+ {%- endfor %}
+
+
+ {%- if do_ensinit %}
+
+ {%- else %}
+
+ {%- endif %}
+
+
+ {%- if do_recenter %}
+
+
+
+ {%- for h in cycl_hrs_recenter %}
+ {{ h }}@H
+ {%- endfor %}
+
+ &CYCLE_BASEDIR;/@Y@m@d@H/recenter/fcst_fv3lam/INPUT/recenter_complete.txt
+
+
+ {%- for h in cycl_hrs_recenter %}
+ {{ h }}@H
+ {%- endfor %}
+
+
+
+ {%- elif do_nonvar_cldanal%}
+
+ {%- elif do_enkf_radar_ref %}
+
+ {%- else %}
+
+ {%- endif %}
+
+ {%- else %}
+
+ {%- endif %}
+
+
+
+
+{%- if not do_ensfcst %}
+{%- if not is_rtma %}
+
+
+
+ {{ restart_hrs_prod }}
+
+
+
+ &RSRV_DEFAULT;
+ &WALL_LIMIT_SAVE_RESTART;
+ &LOAD_MODULES_RUN_TASK_FP; "&SAVE_RESTART_TN;" "&JOBSDIR;/JREGIONAL_SAVE_RESTART"
+ {{ nnodes_save_restart }}:ppn={{ ppn_save_restart }}
+ {{ wtime_save_restart }}
+ &NCORES_PER_NODE;
+ &TAG;_&SAVE_RESTART_TN;{{ uscore_ensmem_name }}_f#fhr#
+ &LOGDIR;/&SAVE_RESTART_TN;{{ uscore_ensmem_name }}_f#fhr#_@Y@m@d@H.log
+
+ GLOBAL_VAR_DEFNS_FP&GLOBAL_VAR_DEFNS_FP;
+ PDY@Y@m@d
+ CDATE@Y@m@d@H
+ CYCLE_DIR&CYCLE_BASEDIR;/@Y@m@d@H
+ NWGES_DIR&NWGES_BASEDIR;/@Y@m@d@H
+ SLASH_ENSMEM_SUBDIR{{ slash_ensmem_subdir }}
+ cyc@H
+ fhr#fhr#
+ CYCLE_TYPEprod
+
+
+
+ @Y@m@d@H@M00
+
+ &CYCLE_BASEDIR;/@Y@m@d@H{{ slash_ensmem_subdir }}/fcst_fv3lam/RESTART/coupler.res
+ &CYCLE_BASEDIR;/@Y@m@d@H{{ slash_ensmem_subdir }}/fcst_fv3lam/RESTART/@Y@m@d.@H0000.coupler.res
+
+
+
+
+
+
+
+{%- endif %}
+{%- endif %}
+
+{%- if do_post_prod %}
+
+
+
+ {% for h in range(0, postproc_long_len_hrs+1) %}{{ " %03d" % h }}{% endfor %}
+ {% for h in range(0, postproc_len_hrs+1) %}{{ " normal" }}{% endfor %} {% for h in range(postproc_len_hrs+1, postproc_long_len_hrs+1) %}{{ " long" }}{% endfor %}
+
+{% if postproc_nsout_min > 0 %}
+ {% for h in range(0, 60, postproc_nsout_min) %}{{ " #fullfhr#-%02d-00 " % h }}{% endfor %}
+{%- else %}
+ #fullfhr#
+{%- endif %}
+
+
+
+ &RSRV_POST;
+ &WALL_LIMIT_POST;
+ &LOAD_MODULES_RUN_TASK_FP; "&RUN_POST_TN;" "&JOBSDIR;/JREGIONAL_RUN_POST"
+ {{ nnodes_run_post }}:ppn={{ ppn_run_post }}
+ {{ wtime_run_post }}
+ &NCORES_PER_NODE;
+ &TAG;_&RUN_POST_TN;{{ uscore_ensmem_name }}_f#fhr#
+ &LOGDIR;/&RUN_POST_TN;{{ uscore_ensmem_name }}_f#fhr#_@Y@m@d@H.log
+
+ GLOBAL_VAR_DEFNS_FP&GLOBAL_VAR_DEFNS_FP;
+ PDY@Y@m@d
+ CDATE@Y@m@d@H
+ CYCLE_DIR&CYCLE_BASEDIR;/@Y@m@d@H
+ NWGES_DIR&NWGES_BASEDIR;/@Y@m@d@H
+ SLASH_ENSMEM_SUBDIR{{ slash_ensmem_subdir }}
+ cyc@H
+ fhr#fhr#
+ TMMARKtm00
+
+
+ {%- if do_ensfcst %}
+
+ {%- for h in cycl_hrs_ensfcst %}
+
+ {{ h }}@H
+ &CYCLE_BASEDIR;/@Y@m@d@H{{ slash_ensmem_subdir }}/fcst_fv3lam_long/logf#fhr#
+
+
+ {{ h }}@H
+ &CYCLE_BASEDIR;/@Y@m@d@H{{ slash_ensmem_subdir }}/fcst_fv3lam/logf#fhr#
+
+ {%- endfor %}
+
+ {%- else %}
+ &CYCLE_BASEDIR;/@Y@m@d@H{{ slash_ensmem_subdir }}/fcst_fv3lam/logf#fhr#
+ {%- endif %}
+
+
+
+
+
+
+
+
+ {% for h in range(0, postproc_long_len_hrs+1) %}{{ " %03d" % h }}{% endfor %}
+ {% for h in range(0, postproc_len_hrs+1) %}{{ " normal" }}{% endfor %} {% for h in range(postproc_len_hrs+1, postproc_long_len_hrs+1) %}{{ " long" }}{% endfor %}
+
+
+
+ &RSRV_WGRIB2;
+ &WALL_LIMIT_POST;
+ &LOAD_MODULES_RUN_TASK_FP; "&RUN_WGRIB2_TN;" "&JOBSDIR;/JREGIONAL_RUN_WGRIB2"
+ {{ nnodes_run_wgrib2 }}:ppn={{ ppn_run_wgrib2 }}
+ {{ wtime_run_wgrib2 }}
+ &NCORES_PER_NODE;
+ {{ memo_run_wgrib2 }}
+ &TAG;_&RUN_WGRIB2_TN;{{ uscore_ensmem_name }}_f#fhr#
+ &LOGDIR;/&RUN_WGRIB2_TN;{{ uscore_ensmem_name }}_f#fhr#_@Y@m@d@H.log
+
+ GLOBAL_VAR_DEFNS_FP&GLOBAL_VAR_DEFNS_FP;
+ PDY@Y@m@d
+ CDATE@Y@m@d@H
+ CYCLE_DIR&CYCLE_BASEDIR;/@Y@m@d@H
+ SLASH_ENSMEM_SUBDIR{{ slash_ensmem_subdir }}
+ cyc@H
+ fhr#fhr#
+ TMMARKtm00
+
+
+
+
+
+
+
+
+{%- endif %}
+
+{% if do_bufrsnd %}
+
+
+
+ &RSRV_POST;
+ &WALL_LIMIT_BUFRSND;
+ &LOAD_MODULES_RUN_TASK_FP; "&RUN_BUFRSND_TN;" "&JOBSDIR;/JREGIONAL_BUFRSND"
+ {{ nnodes_run_bufrsnd }}:ppn={{ ppn_run_bufrsnd }}
+ {{ wtime_run_bufrsnd }}
+ &NCORES_PER_NODE;
+ &TAG;_&RUN_BUFRSND_TN;
+ &LOGDIR;/&RUN_BUFRSND_TN;_@Y@m@d@H.log
+
+ GLOBAL_VAR_DEFNS_FP&GLOBAL_VAR_DEFNS_FP;
+ PDY@Y@m@d
+ CDATE@Y@m@d@H
+ CYCLE_DIR&CYCLE_BASEDIR;/@Y@m@d@H
+ NWGES_DIR&NWGES_BASEDIR;/@Y@m@d@H
+ SLASH_ENSMEM_SUBDIR
+ cyc@H
+ TMMARKtm00
+
+
+ &CYCLE_BASEDIR;/@Y@m@d@H/fcst_fv3lam/logf{{ "%03d" % postproc_long_len_hrs }}
+
+
+
+{%- endif %}
+
+{%- if machine in ["JET", "HERA"] %}
+{%- if not do_ensemble %}
+
+
+
+ {{ tilelabels }}
+ {{ tilesets }}
+
+
+ &RSRV_GRAPHICS;
+ &WALL_LIMIT_GRAPHICS;
+
+ {{ wtime_run_fcst }}
+ {{ nnodes_run_graphics }}:ppn={{ ppn_run_graphics }}
+ &TAG;_python{{ uscore_ensmem_name }}_@H_#tilelabel#
+ &LOGDIR;/python{{ uscore_ensmem_name }}_#tilelabel#.log
+ &LOAD_MODULES_RUN_TASK_FP; "run_graphics" "&JOBSDIR;/JREGIONAL_RUN_PYTHON_GRAPHICS"
+
+ GLOBAL_VAR_DEFNS_FP&GLOBAL_VAR_DEFNS_FP;
+ PDY@Y@m@d
+ cyc@H
+ CDATE@Y@m@d@H
+ SLASH_ENSMEM_SUBDIR{{ slash_ensmem_subdir }}
+ GRAPHICS_TYPEmaps
+ TILES#tileset#
+ TILELABEL#tilelabel#
+ ENSCTRL_COMOUT_BASEDIR&ENSCTRL_COMOUT_BASEDIR;
+
+
+
+
+
+
+
+
+
+ &RSRV_GRAPHICS;
+ &WALL_LIMIT_GRAPHICS;
+
+ {{ wtime_run_fcst }}
+ {{ nnodes_run_graphics }}:ppn={{ ppn_run_graphics }}
+ &TAG;_python{{ uscore_ensmem_name }}_@H_skewts
+ &LOGDIR;/python_skewts{{ uscore_ensmem_name }}_@H.log
+ &LOAD_MODULES_RUN_TASK_FP; "run_graphics" "&JOBSDIR;/JREGIONAL_RUN_PYTHON_GRAPHICS"
+
+ GLOBAL_VAR_DEFNS_FP&GLOBAL_VAR_DEFNS_FP;
+ PDY@Y@m@d
+ cyc@H
+ CDATE@Y@m@d@H
SLASH_ENSMEM_SUBDIR{{ slash_ensmem_subdir }}
- ENSMEM_INDX#{{ ensmem_indx_name }}#
- CYCLE_TYPEensfcst
- NWGES_BASEDIR&NWGES_BASEDIR;
+ GRAPHICS_TYPEskewts
+ ENSCTRL_COMOUT_BASEDIR&ENSCTRL_COMOUT_BASEDIR;
-
+
+
-
+{%- endif %}
+{%- endif %}
+
+
-
- {%- endif %}
+ &RSRV_POST;
+
+ &JOBSDIR;/../scripts/exregional_clean.ksh
+ 1:ppn=1
+ 00:15:00
+ &TAG;_&CLEAN_TN;{{ uscore_ensmem_name }}
+ &LOGDIR;/&CLEAN_TN;{{ uscore_ensmem_name }}_@Y@m@d@H.log
+
+ GLOBAL_VAR_DEFNS_FP&GLOBAL_VAR_DEFNS_FP;
+ LOGDIR&LOGDIR;
+ CDATE@Y@m@d@H
+ NWGES_BASEDIR&NWGES_BASEDIR;
+ SLASH_ENSMEM_SUBDIR
+
+
+
+{%- if do_ensemble %}
+
+{%- endif %}
+
+{%- if machine in ["JET", "HERA"] %}
+
+{%- if do_ensemble %}
+
+
+
+ &RSRV_HPSS;
+
+ &JOBSDIR;/../scripts/exregional_archive_ens.ksh
+ 1:ppn=1
+ 23:00:00
+ 24G
+ &TAG;_&ARCHIVE_TN;
+ &LOGDIR;/&ARCHIVE_TN;_@Y@m@d@H.log
+
+ GLOBAL_VAR_DEFNS_FP&GLOBAL_VAR_DEFNS_FP;
+ nens{{ num_ens_members }}
+
+
+
+{%- else %}
+
+
+
+ &RSRV_HPSS;
+
+ &JOBSDIR;/../scripts/exregional_archive.ksh
+ 1:ppn=1
+ 08:00:00
+ 24G
+ &TAG;_&ARCHIVE_TN;
+ &LOGDIR;/&ARCHIVE_TN;_@Y@m@d@H.log
+
+ GLOBAL_VAR_DEFNS_FP&GLOBAL_VAR_DEFNS_FP;
+ CDATE@Y@m@d@H
+
+
+{%- endif %}
+{%- endif %}
+
+{%- if machine in ["WCOSS2"] %}
+
+
+
+ &RSRV_HPSS;
+
+ &JOBSDIR;/../scripts/exregional_archive_emc.ksh
+ 1:ppn=1
+ 08:00:00
+ &TAG;_&ARCHIVE_TN;
+ &LOGDIR;/&ARCHIVE_TN;_@Y@m@d@H.log
+
+ GLOBAL_VAR_DEFNS_FP&GLOBAL_VAR_DEFNS_FP;
+ CDATE@Y@m@d@H
+
+
+
+
+
+ 00@H
+ 12@H
+
+
+
+
+ 00@H
+ 12@H
+
+
+
+
+
+
+{%- endif %}
+
+{% if do_ensemble and do_ens_graphics %}
+{%- if machine in ["JET", "HERA"] %}
+
+
+
+ {{ tilelabels }}
+ {{ tilesets }}
+
+
+ &RSRV_GRAPHICS;
+ &WALL_LIMIT_GRAPHICS;
+
+ {{ wtime_run_fcst }}
+ {{ nnodes_run_graphics }}:ppn={{ ppn_run_graphics }}
+ &TAG;_python_@H_#tilelabel#
+ &LOGDIR;/python_#tilelabel#.log
+ &LOAD_MODULES_RUN_TASK_FP; "run_graphics" "&JOBSDIR;/JREGIONAL_RUN_PYTHON_GRAPHICS"
+
+ GLOBAL_VAR_DEFNS_FP&GLOBAL_VAR_DEFNS_FP;
+ CDATE@Y@m@d@H
+ PDY@Y@m@d
+ cyc@H
+ SLASH_ENSMEM_SUBDIR{{ slash_ensmem_subdir }}
+ GRAPHICS_TYPEenspanel
+ TILES#tileset#
+ TILELABEL#tilelabel#
+ ALL_LEADSFALSE
+ ENSCTRL_COMOUT_BASEDIR&ENSCTRL_COMOUT_BASEDIR;
+
+
+
+ &ENSCTRL_COMOUT_DIR;/RRFS_CONUS.t@Hz.bgdawpf000.tm00.grib2
+ {%- for m in range(1, 10) %}
+
+ {%- endfor %}
+
+
+
+
+
+{%- endif %}
+{%- endif %}
+
+{%- if do_ensemble and do_enspost %}
+
+
+ {% for h in range(0, postproc_long_len_hrs+1) %}{{ " %03d" % h }}{% endfor %}
+
+
+
+ &RSRV_DEFAULT;
+ &WALL_LIMIT_POST;
+
+ {{ wtime_run_enspost }}
+ {{ nnodes_run_enspost }}:ppn={{ ppn_run_enspost }}
+ &TAG;_enspost_@H_#fhr#
+ &LOGDIR;/enspost_f#fhr#_@Y@m@d@H.log
+ &LOAD_MODULES_RUN_TASK_FP; "run_enspost" "&JOBSDIR;/JREGIONAL_RUN_ENSPOST"
+
+ GLOBAL_VAR_DEFNS_FP&GLOBAL_VAR_DEFNS_FP;
+ CDATE@Y@m@d@H
+ PDY@Y@m@d
+ cyc@H
+ fhr#fhr#
+ ENSCTRL_COMOUT_BASEDIR&ENSCTRL_COMOUT_BASEDIR;
+
+
+
+ &ENSCTRL_COMOUT_DIR;/RRFS_CONUS.t@Hz.bgsfcf#fhr#.tm00.grib2
+ {%- for m in range(1, 10) %}
+
+ {%- endfor %}
+
+
+
+
+
+{% if machine in ["JET", "HERA"] %}
+
+
+
+ &RSRV_GRAPHICS;
+ &WALL_LIMIT_GRAPHICS;
+
+ {{ wtime_run_enspost }}
+ {{ nnodes_run_graphics }}:ppn={{ ppn_run_graphics }}
+ &TAG;_python_@H_enspost_maps
+ &LOGDIR;/python_enspost_maps.log
+ &LOAD_MODULES_RUN_TASK_FP; "run_graphics" "&JOBSDIR;/JREGIONAL_RUN_PYTHON_GRAPHICS"
+
+ GLOBAL_VAR_DEFNS_FP&GLOBAL_VAR_DEFNS_FP;
+ CDATE@Y@m@d@H
+ PDY@Y@m@d
+ cyc@H
+ SLASH_ENSMEM_SUBDIR{{ slash_ensmem_subdir }}
+ GRAPHICS_TYPEmaps
+ TILESfull
+ TILELABELfull
+ ALL_LEADSFALSE
+ ENSCTRL_COMOUT_BASEDIR&ENSCTRL_COMOUT_BASEDIR;
+ ENSPRODensprod
+ IMAGES_FNrrfs_ensprod.yml
+
+
+
+
+
+
+{%- endif %}
+{%- endif %}
diff --git a/ush/valid_param_vals.sh b/ush/valid_param_vals.sh
index dec039169..d71dbdb28 100644
--- a/ush/valid_param_vals.sh
+++ b/ush/valid_param_vals.sh
@@ -70,6 +70,8 @@ valid_vals_DO_RECENTER=("TRUE" "true" "YES" "yes" "FALSE" "false" "NO" "no")
valid_vals_DO_BUFRSND=("TRUE" "true" "YES" "yes" "FALSE" "false" "NO" "no")
valid_vals_DO_RETRO=("TRUE" "true" "YES" "yes" "FALSE" "false" "NO" "no")
valid_vals_DO_SPINUP=("TRUE" "true" "YES" "yes" "FALSE" "false" "NO" "no")
+valid_vals_DO_POST_SPINUP=("TRUE" "true" "YES" "yes" "FALSE" "false" "NO" "no")
+valid_vals_DO_POST_PROD=("TRUE" "true" "YES" "yes" "FALSE" "false" "NO" "no")
valid_vals_LBCS_ICS_ONLY=("TRUE" "true" "YES" "yes" "FALSE" "false" "NO" "no")
valid_vals_DO_NONVAR_CLDANAL=("TRUE" "true" "YES" "yes" "FALSE" "false" "NO" "no")
valid_vals_DO_JEDI_ENVAR_IODA=("TRUE" "true" "YES" "yes" "FALSE" "false" "NO" "no")