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")