From 8a73f0b71c1da1e872f118a2ba16b8edd0e98123 Mon Sep 17 00:00:00 2001 From: benjamin blake Date: Mon, 28 Oct 2024 15:56:03 +0000 Subject: [PATCH] Update make_ics to use umbrella data and make_lbcs to use COMOUT instead of nwges --- jobs/JRRFS_BLEND_ICS | 17 +++---- jobs/JRRFS_FSM | 3 +- jobs/JRRFS_MAKE_ICS | 21 ++++----- jobs/JRRFS_MAKE_LBCS | 32 +++++++------ parm/FV3LAM_wflow.xml | 28 +++++++----- parm/FV3LAM_wflow_firewx.xml | 3 ++ parm/FV3LAM_wflow_nonDA.xml | 3 ++ scripts/exrrfs_blend_ics.sh | 21 +++------ scripts/exrrfs_forecast.sh | 10 ++--- scripts/exrrfs_make_ics.sh | 36 +++++---------- scripts/exrrfs_make_lbcs.sh | 17 ++++--- scripts/exrrfs_prep_cyc.sh | 45 ++++++++++--------- ush/config_defaults.sh | 6 ++- ush/generate_FV3LAM_wflow.sh | 1 + .../RRFS_A/config.sh_rrfs_a_enkf_n3 | 2 + .../RRFS_A/config.sh_rrfs_a_firewx | 1 + ush/sample_configs/RRFS_A/config.sh_rrfs_a_n3 | 3 +- 17 files changed, 126 insertions(+), 123 deletions(-) diff --git a/jobs/JRRFS_BLEND_ICS b/jobs/JRRFS_BLEND_ICS index 4025ec638..e0f962c5c 100755 --- a/jobs/JRRFS_BLEND_ICS +++ b/jobs/JRRFS_BLEND_ICS @@ -59,25 +59,21 @@ on the RRFS initial conditions. export pid=${pid:-$$} export RUN=${RUN:-rrfs} -#export jobid=${jobid:-${taskid}} -export jobid=${taskid} +export outid=${outid:-"LL$job"} +export jobid=${jobid:-taskid} export mem_num=m$(echo "${ENSMEM_INDX}") -export NWGES_DIR="${GESROOT}/${RUN}.${PDY}/${cyc}/${mem_num}/ics" +export umbrella_data="${DATAROOT}/${RUN}_${PDY}${cyc}/${WGF}/${mem_num}/ics" export DATA=${DATAROOT}/${jobid} -mkdir -p $DATA - -mkdir -p ${DATA}/tmp_ICS -cd ${DATA}/tmp_ICS - -mkdir -p "${NWGES_DIR}" +mkdir -p $DATA $umbrella_data +cd ${DATA} #----------------------------------------------------------------------- # Execute the script. #----------------------------------------------------------------------- -export pgmout="${DATA}/tmp_ICS/OUTPUT.$$" +export pgmout="${DATA}/OUTPUT.$$" env $HOMErrfs/scripts/exrrfs_blend_ics.sh @@ -88,6 +84,7 @@ if [ -e "$pgmout" ]; then fi if [ "${KEEPDATA}" = "NO" ]; then + cd ${DATAROOT} rm -rf ${DATA} fi diff --git a/jobs/JRRFS_FSM b/jobs/JRRFS_FSM index b6ef06d44..39aa12e17 100755 --- a/jobs/JRRFS_FSM +++ b/jobs/JRRFS_FSM @@ -13,7 +13,8 @@ export EXECrrfs=${EXECrrfs:-${HOMErrfs}/exec} export FIXrrfs=${FIXrrfs:-${HOMErrfs}/fix} export DATAROOT="${DATAROOT:-${DATAROOT_dfv}}" -export DATA=${DATA:-${DATAROOT}/${jobid}} +export umbrella_data=${DATAROOT}/${RUN}_${PDY}${cyc} +export DATA=${DATA:-${umbrella_data}/${jobid}} mkdir -p ${DATA} cd ${DATA} diff --git a/jobs/JRRFS_MAKE_ICS b/jobs/JRRFS_MAKE_ICS index 98eb83395..f0c2564d6 100755 --- a/jobs/JRRFS_MAKE_ICS +++ b/jobs/JRRFS_MAKE_ICS @@ -134,33 +134,29 @@ extrn_mdl_fns_on_disk_str="( "$( printf "\"%s\" " "${fns_on_disk[@]}" )")" export pid=${pid:-$$} export RUN=${RUN:-rrfs} -#export jobid=${jobid:-${taskid}} -export jobid=${taskid} +export outid=${outid:-"LL$job"} +export jobid=${jobid:-taskid} export mem_num=m$(echo "${ENSMEM_INDX}") if [ "${DO_ENSEMBLE}" = "TRUE" ]; then - export NWGES_DIR="${GESROOT}/${RUN}.${PDY}/${cyc}/${mem_num}/ics" + export umbrella_data="${DATAROOT}/${RUN}_${PDY}${cyc}/${WGF}/${mem_num}/ics" else - export NWGES_DIR="${GESROOT}/${RUN}.${PDY}/${cyc}/ics" + export umbrella_data="${DATAROOT}/${RUN}_${PDY}${cyc}/${WGF}/ics" fi export DATA=${DATAROOT}/${jobid} -mkdir -p $DATA - -mkdir -p ${DATA}/tmp_ICS -cd ${DATA}/tmp_ICS - -mkdir -p "${NWGES_DIR}" +mkdir -p $DATA $umbrella_data +cd ${DATA} export use_user_staged_extrn_files="${USE_USER_STAGED_EXTRN_FILES}" export extrn_mdl_source_dir="${extrn_mdl_sysdir}" -export extrn_mdl_staging_dir="${DATA}/tmp_ICS" +export extrn_mdl_staging_dir="${DATA}" #----------------------------------------------------------------------- # Execute the script. #----------------------------------------------------------------------- -export pgmout="${DATA}/tmp_ICS/OUTPUT.$$" +export pgmout="${DATA}/OUTPUT.$$" env ${HOMErrfs}/scripts/exrrfs_make_ics.sh \ @@ -172,6 +168,7 @@ if [ -e "$pgmout" ]; then fi if [ "${KEEPDATA}" = "NO" ]; then + cd ${DATAROOT} rm -rf ${DATA} fi diff --git a/jobs/JRRFS_MAKE_LBCS b/jobs/JRRFS_MAKE_LBCS index 7c5c78e8b..4b1823390 100755 --- a/jobs/JRRFS_MAKE_LBCS +++ b/jobs/JRRFS_MAKE_LBCS @@ -173,32 +173,37 @@ extrn_mdl_fns_on_disk_str2="( "$( printf "\"%s\" " "${fns_on_disk2[@]}" )")" export pid=${pid:-$$} export RUN=${RUN:-rrfs} -#export jobid=${jobid:-${taskid}} -export jobid=${taskid} +export outid=${outid:-"LL$job"} +export jobid=${jobid:-taskid} export mem_num=m$(echo "${ENSMEM_INDX}") -if [ "${DO_ENSEMBLE}" = "TRUE" ]; then - export NWGES_DIR="${GESROOT}/${RUN}.${PDY}/${cyc}/${mem_num}/lbcs" -else - export NWGES_DIR="${GESROOT}/${RUN}.${PDY}/${cyc}/lbcs" -fi export DATA=${DATAROOT}/${jobid} mkdir -p $DATA +cd ${DATA} -mkdir -p ${DATA}/tmp_LBCS_${bcgrp} -cd ${DATA}/tmp_LBCS_${bcgrp} +export use_user_staged_extrn_files="${USE_USER_STAGED_EXTRN_FILES}" +export extrn_mdl_staging_dir="${DATA}" -mkdir -p "${NWGES_DIR}" +#----------------------------------------------------------------------- +# Define COM directories +#----------------------------------------------------------------------- +# Send data to COMOUT since the LBCs jobs share data with other jobs +# outside of the current cycle -export use_user_staged_extrn_files="${USE_USER_STAGED_EXTRN_FILES}" -export extrn_mdl_staging_dir="${DATA}/tmp_LBCS_${bcgrp}" +if [ "${DO_ENSEMBLE}" = "TRUE" ]; then + export COMOUT="${COMOUT:-$(compath.py -o ${NET}/${rrfs_ver}/${RUN}.${PDY}/${cyc}/${mem_num}/lbcs)}" +else + export COMOUT="${COMOUT:-$(compath.py -o ${NET}/${rrfs_ver}/${RUN}.${PDY}/${cyc}/lbcs)}" +fi + +mkdir -p "${COMOUT}" #----------------------------------------------------------------------- # Execute the script. #----------------------------------------------------------------------- -export pgmout="${DATA}/tmp_LBCS_${bcgrp}/OUTPUT.$$" +export pgmout="${DATA}/OUTPUT.$$" env ${HOMErrfs}/scripts/exrrfs_make_lbcs.sh \ @@ -212,6 +217,7 @@ if [ -e "$pgmout" ]; then fi if [ "${KEEPDATA}" = "NO" ]; then + cd ${DATAROOT} rm -rf ${DATA} fi diff --git a/parm/FV3LAM_wflow.xml b/parm/FV3LAM_wflow.xml index 06537fefc..7ac1515e1 100644 --- a/parm/FV3LAM_wflow.xml +++ b/parm/FV3LAM_wflow.xml @@ -42,7 +42,6 @@ Workflow task names. - @@ -68,6 +67,7 @@ Workflow task names. + - + &RSRV_ANALYSIS; &WALL_LIMIT_ANALYSIS; @@ -1386,11 +1388,11 @@ MODULES_RUN_TASK_FP script. &NATIVE_ANALYSIS_GSI; &WALLTIME_ANALYSIS_GSI; &NODESIZE_ALL; - &TAG;_&OBSERVER_GSI_ENSMEAN_TN;_spinup - &LOGDIR;/&OBSERVER_GSI_ENSMEAN_TN;_spinup_&TAG;_@Y@m@d@H.log + &TAG;_&OBSERVER_GSI_TN;_spinup_ensmean + &LOGDIR;/&OBSERVER_GSI_TN;_spinup_ensmean_&TAG;_@Y@m@d@H.log GLOBAL_VAR_DEFNS_FP&GLOBAL_VAR_DEFNS_FP; - taskid&RUN;_&OBSERVER_GSI_ENSMEAN_TN;_spinup_&envir;_@H + taskid&RUN;_&OBSERVER_GSI_TN;_spinup_ensmean_&envir;_@H PDY@Y@m@d CDATE@Y@m@d@H cyc@H @@ -1452,6 +1454,7 @@ MODULES_RUN_TASK_FP script. DATAROOT&DATAROOT; GESROOT&GESROOT; COMROOT&COMROOT; + ENSMEM_INDX#{{ ensmem_indx_name }}# GSI_TYPEOBSERVER MEM_TYPEMEMBER CYCLE_TYPEspinup @@ -1461,7 +1464,7 @@ MODULES_RUN_TASK_FP script. - + @@ -1957,6 +1960,7 @@ MODULES_RUN_TASK_FP script. cyc@H HOMErrfs&HOMErrfs; DATAROOT&DATAROOT; + COMROOT&COMROOT; ENSMEM_INDX#{{ ensmem_indx_name }}# CYCLE_TYPEspinup GESROOT&GESROOT; @@ -2356,7 +2360,7 @@ MODULES_RUN_TASK_FP script. ************************************************************************ ************************************************************************ --> - + &RSRV_ANALYSIS; &WALL_LIMIT_ANALYSIS; @@ -2366,11 +2370,11 @@ MODULES_RUN_TASK_FP script. &NATIVE_ANALYSIS_GSI; &WALLTIME_ANALYSIS_GSI; &NODESIZE_ALL; - &TAG;_&OBSERVER_GSI_ENSMEAN_TN; - &LOGDIR;/&OBSERVER_GSI_ENSMEAN_TN;_&TAG;_@Y@m@d@H.log + &TAG;_&OBSERVER_GSI_TN;_ensmean + &LOGDIR;/&OBSERVER_GSI_TN;_ensmean_&TAG;_@Y@m@d@H.log GLOBAL_VAR_DEFNS_FP&GLOBAL_VAR_DEFNS_FP; - taskid&RUN;_&OBSERVER_GSI_ENSMEAN_TN;_&envir;_@H + taskid&RUN;_&OBSERVER_GSI_TN;_ensmean_&envir;_@H PDY@Y@m@d CDATE@Y@m@d@H cyc@H @@ -2443,7 +2447,7 @@ MODULES_RUN_TASK_FP script. - + @@ -3030,6 +3034,7 @@ MODULES_RUN_TASK_FP script. cyc@H HOMErrfs&HOMErrfs; DATAROOT&DATAROOT; + COMROOT&COMROOT; ENSMEM_INDX#{{ ensmem_indx_name }}# CYCLE_TYPEprod GESROOT&GESROOT; @@ -3110,6 +3115,7 @@ MODULES_RUN_TASK_FP script. cyc@H HOMErrfs&HOMErrfs; DATAROOT&DATAROOT; + COMROOT&COMROOT; ENSMEM_INDX#{{ ensmem_indx_name }}# CYCLE_TYPEprod GESROOT&GESROOT; diff --git a/parm/FV3LAM_wflow_firewx.xml b/parm/FV3LAM_wflow_firewx.xml index 1b9fa401d..3ef860b12 100644 --- a/parm/FV3LAM_wflow_firewx.xml +++ b/parm/FV3LAM_wflow_firewx.xml @@ -38,6 +38,7 @@ Workflow task names. +