Skip to content

Commit

Permalink
Updates for main branch to run RRFS_A real-time deterministic and Enk…
Browse files Browse the repository at this point in the history
…F DA cycles (#513)

* Bug fixes found in real-time testing on WCOSS2.
---------
  • Loading branch information
hu5970 authored Oct 8, 2024
1 parent e247cb8 commit bcdcf3c
Show file tree
Hide file tree
Showing 27 changed files with 148 additions and 100 deletions.
4 changes: 2 additions & 2 deletions jobs/JRRFS_ANALYSIS_GSI
Original file line number Diff line number Diff line change
Expand Up @@ -80,7 +80,7 @@ fi
if [ "${GSI_TYPE}" = "OBSERVER" ]; then
if [ "${MEM_TYPE}" = "MEAN" ]; then
export jobid=${RUN}_observer_${workname}_ensmean_${envir}_${cyc}
observer_nwges_dir="${GESROOT}/ensmean/observer_${workname}"
observer_nwges_dir="${GESROOT}/${RUN}.${PDY}/${cyc}/ensmean/observer_${workname}"
else
# GSI_TYPE = OBSERVER is only for EnKF (ensemble forecasts do not have ANALYSIS tasks)
export jobid=${RUN}_observer_${workname}_${mem_num}_${envir}_${cyc}
Expand Down Expand Up @@ -113,7 +113,7 @@ fi

export gridspec_dir=${GESROOT}/grid_spec

export ${OB_TYPE}
export OB_TYPE=${OB_TYPE}

#-----------------------------------------------------------------------
# Define COM directories
Expand Down
5 changes: 3 additions & 2 deletions jobs/JRRFS_ANALYSIS_GSIDIAG
Original file line number Diff line number Diff line change
Expand Up @@ -72,8 +72,9 @@ fi

export jobid=${RUN}_analysis_conv_dbz_${workname}_${envir}_${cyc}
export DATA="${DATAROOT}/${jobid}"
rm -rf ${DATA}
mkdir -p ${DATA}
if [ ! -d "${DATA}" ]; then
echo "WARNING: ${DATA} does not exist"
fi

if [ ! -d "${SATBIAS_DIR}" ]; then
echo "making satbias_dir directory for cycling bias correction files"
Expand Down
2 changes: 1 addition & 1 deletion jobs/JRRFS_ANALYSIS_NONVARCLD
Original file line number Diff line number Diff line change
Expand Up @@ -95,7 +95,7 @@ if [ ${CYCLE_TYPE} = "spinup" ]; then
if [ "${MEM_TYPE}" = "MEAN" ]; then
export COMOUT=${COMOUT:-$(compath.py -o ${NET}/${rrfs_ver}/${RUN}.${PDY}/${cyc}_spinup/ensmean)}
else
export COMOUT=${COMOUT:-$(compath.py -o ${NET}/${rrfs_ver}/${RUN}.${PDY}/${cyc}_spinup/${mem_num})}
export COMOUT=${COMOUT:-$(compath.py -o ${NET}/${rrfs_ver}/${RUN}.${PDY}/${cyc}_spinup)}
fi
export COMIN=${COMIN:-$(compath.py -o ${NET}/${rrfs_ver}/${RUN}.${PDY}/${cyc}_spinup)}
else
Expand Down
4 changes: 2 additions & 2 deletions jobs/JRRFS_CALC_ENSMEAN
Original file line number Diff line number Diff line change
Expand Up @@ -60,7 +60,7 @@ RRFS for the specified cycle.
export pid=${pid:-$$}
export RUN=${RUN:-rrfs}

export mem_num=m$(echo "${ENSMEM_INDX}")
#export mem_num=m$(echo "${ENSMEM_INDX}")

export CYCLE_TYPE=${CYCLE_TYPE:-prod}
if [ "${CYCLE_TYPE}" = "spinup" ]; then
Expand Down Expand Up @@ -89,7 +89,7 @@ mkdir -p "${COMOUT}"
# Execute the script.
#-----------------------------------------------------------------------

export pgmout="${ensmeandir}/OUTPUT.$$"
export pgmout="${DATA}/OUTPUT.$$"
env

$HOMErrfs/scripts/exrrfs_calc_ensmean.sh
Expand Down
2 changes: 1 addition & 1 deletion jobs/JRRFS_MAKE_ICS
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ export USHrrfs=${USHrrfs:-${HOMErrfs}/ush}

export FIXam=${FIXam:-${FIXrrfs}/am}
export FIXLAM=${FIXLAM:-${FIXrrfs}/lam/${PREDEF_GRID_NAME}}
export FIXGSI=${FIXrrfs}/gsi
export FIX_GSI=${FIXrrfs}/gsi

#-----------------------------------------------------------------------
# Source the variable definitions file and the bash utility functions.
Expand Down
20 changes: 12 additions & 8 deletions jobs/JRRFS_PREP_CYC
Original file line number Diff line number Diff line change
Expand Up @@ -67,14 +67,19 @@ export mem_num=m$(echo "${ENSMEM_INDX}")

export CYCLE_TYPE=${CYCLE_TYPE:-prod}
export CYCLE_SUBTYPE=${CYCLE_SUBTYPE:-empty}
export ctrlpath=""
#export ctrlpath=""
if [ "${CYCLE_TYPE}" = "spinup" ]; then
export INPUT_DATA=${DATAROOT}/${RUN}_forecast_spinup_${envir}_${cyc}/INPUT
if [ "${DO_ENSINIT}" = "TRUE" ] && [ "${CYCLE_SUBTYPE}" = "ensinit" ]; then
export INPUT_DATA=${DATAROOT}/${RUN}_forecast_ensinit_${envir}_${cyc}/INPUT
fi
if [ "${DO_ENSINIT}" = "TRUE" ] && [ "${CYCLE_SUBTYPE}" = "spinup" ]; then
ctrlpath=${ENSCTRL_DATAROOT}
if [ "${DO_ENSEMBLE}" = "TRUE" ]; then # EnKF has spinup forecasts
export INPUT_DATA=${DATAROOT}/${RUN}_forecast_spinup_${mem_num}_${envir}_${cyc}/INPUT
if [ "${DO_ENSINIT}" = "TRUE" ] && [ "${CYCLE_SUBTYPE}" = "ensinit" ]; then
export INPUT_DATA=${DATAROOT}/${RUN}_forecast_ensinit_${mem_num}_${envir}_${cyc}/INPUT
fi
# if [ "${DO_ENSINIT}" = "TRUE" ] && [ "${CYCLE_SUBTYPE}" = "spinup" ]; then
# ctrlpath=${ENSCTRL_DATAROOT}
# fi
else
export INPUT_DATA=${DATAROOT}/${RUN}_forecast_spinup_${envir}_${cyc}/INPUT
# ctrlpath=${ENSCTRL_DATAROOT}
fi
else
if [ "${DO_ENSEMBLE}" = "TRUE" ]; then
Expand All @@ -84,7 +89,6 @@ else
fi
fi

rm -fr ${INPUT_DATA}
mkdir -p ${INPUT_DATA}
cd ${INPUT_DATA}

Expand Down
6 changes: 3 additions & 3 deletions jobs/JRRFS_RECENTER
Original file line number Diff line number Diff line change
Expand Up @@ -60,13 +60,13 @@ with RRFS for the specified cycle.
export pid=${pid:-$$}
export RUN=${RUN:-rrfs}

export mem_num=m$(echo "${ENSMEM_INDX}")
#export mem_num=m$(echo "${ENSMEM_INDX}")

export CYCLE_TYPE=${CYCLE_TYPE:-prod}
if [ "${CYCLE_TYPE}" = "spinup" ]; then
export jobid=${RUN}_recenter_spinup_${mem_num}_${envir}_${cyc}
export jobid=${RUN}_recenter_spinup_${envir}_${cyc}
else
export jobid=${RUN}_recenter_${mem_num}_${envir}_${cyc}
export jobid=${RUN}_recenter_${envir}_${cyc}
fi

export DATA=${DATAROOT}/${jobid}
Expand Down
13 changes: 7 additions & 6 deletions jobs/JRRFS_SAVE_RESTART
Original file line number Diff line number Diff line change
Expand Up @@ -90,13 +90,14 @@ mkdir -p "${NWGES_DIR}/RESTART"
mkdir -p "${NWGES_DIR}/INPUT"
if [ "${SURFACE_DIR}" != "empty" ]; then
mkdir -p "${SURFACE_DIR}"
cd ${SURFACE_DIR}
fi

len_ensmem=${#ENSMEM_INDX}
if [ ${len_ensmem} -le 3 ]; then
CYCLE_SUBTYPE="control"
fi
cd ${SURFACE_DIR}
# check this, why we need this????
#len_ensmem=${#ENSMEM_INDX}
#if [ ${len_ensmem} -le 3 ]; then
# CYCLE_SUBTYPE="control"
#fi

#-----------------------------------------------------------------------
# Make sure that fhr is a non-empty string consisting of only digits.
Expand All @@ -114,7 +115,7 @@ fi
# Execute the script.
#-----------------------------------------------------------------------

export pgmout="${SURFACE_DIR}/OUTPUT.$$"
export pgmout="${DATA}/OUTPUT.$$"
env

${HOMErrfs}/scripts/exrrfs_save_restart.sh
Expand Down
1 change: 0 additions & 1 deletion jobs/JRRFS_UPDATE_LBC_SOIL
Original file line number Diff line number Diff line change
Expand Up @@ -114,7 +114,6 @@ else
if [ "${DO_ENSEMBLE}" = "TRUE" ]; then
export COMOUT=${COMOUT:-$(compath.py -o ${NET}/${rrfs_ver}/${RUN}.${PDY}/${cyc}/${mem_num})}
else
export COMOUT="${COMOUT_BASEDIR}/$RUN.$PDY/${cyc}"
export COMOUT=${COMOUT:-$(compath.py -o ${NET}/${rrfs_ver}/${RUN}.${PDY}/${cyc})}
fi
fi
Expand Down
1 change: 1 addition & 0 deletions modulefiles/tasks/wcoss2/analysis_gsi.local.lua
Original file line number Diff line number Diff line change
Expand Up @@ -23,3 +23,4 @@ load(pathJoin("udunits", os.getenv("udunits_ver")))
load(pathJoin("gsl", os.getenv("gsl_ver")))
load(pathJoin("nco", os.getenv("nco_ver")))

load(pathJoin("prod_envir", os.getenv("prod_envir_ver")))
2 changes: 2 additions & 0 deletions modulefiles/tasks/wcoss2/bufrsnd.local.lua
Original file line number Diff line number Diff line change
Expand Up @@ -15,3 +15,5 @@ prepend_path("MODULEPATH", os.getenv("modulepath_mpi"))
load(pathJoin("hdf5", os.getenv("hdf5_ver")))
load(pathJoin("netcdf", os.getenv("netcdf_ver")))
load(pathJoin("gempak", os.getenv("gempak_ver")))

load(pathJoin("prod_envir", os.getenv("prod_envir_ver")))
2 changes: 2 additions & 0 deletions modulefiles/tasks/wcoss2/post.local.lua
Original file line number Diff line number Diff line change
Expand Up @@ -17,3 +17,5 @@ load(pathJoin("hdf5", os.getenv("hdf5_ver")))
load(pathJoin("netcdf", os.getenv("netcdf_ver")))
load(pathJoin("libjpeg", os.getenv("libjpeg_ver")))
load(pathJoin("wgrib2", os.getenv("wgrib2_ver")))

load(pathJoin("prod_envir", os.getenv("prod_envir_ver")))
2 changes: 2 additions & 0 deletions modulefiles/tasks/wcoss2/prdgen.local.lua
Original file line number Diff line number Diff line change
Expand Up @@ -18,3 +18,5 @@ load(pathJoin("wgrib2", os.getenv("wgrib2_ver")))
load(pathJoin("udunits", os.getenv("udunits_ver")))
load(pathJoin("gsl", os.getenv("gsl_ver")))
load(pathJoin("nco", os.getenv("nco_ver")))

load(pathJoin("prod_envir", os.getenv("prod_envir_ver")))
2 changes: 2 additions & 0 deletions modulefiles/tasks/wcoss2/prep_cyc.local.lua
Original file line number Diff line number Diff line change
Expand Up @@ -22,3 +22,5 @@ load(pathJoin("libjpeg", os.getenv("libjpeg_ver")))
load(pathJoin("udunits", os.getenv("udunits_ver")))
load(pathJoin("gsl", os.getenv("gsl_ver")))
load(pathJoin("nco", os.getenv("nco_ver")))

load(pathJoin("prod_envir", os.getenv("prod_envir_ver")))
2 changes: 2 additions & 0 deletions modulefiles/tasks/wcoss2/recenter.local.lua
Original file line number Diff line number Diff line change
Expand Up @@ -15,3 +15,5 @@ prepend_path("MODULEPATH", os.getenv("modulepath_mpi"))
load(pathJoin("hdf5", os.getenv("hdf5_ver")))
load(pathJoin("netcdf", os.getenv("netcdf_ver")))
load(pathJoin("libjpeg", os.getenv("libjpeg_ver")))

load(pathJoin("prod_envir", os.getenv("prod_envir_ver")))
Loading

0 comments on commit bcdcf3c

Please sign in to comment.