Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
59 changes: 59 additions & 0 deletions scripts/exregional_run_prepstart.sh
Original file line number Diff line number Diff line change
Expand Up @@ -341,6 +341,65 @@ else
fi
fi

#-----------------------------------------------------------------------
#
# do snow/ice update at ${SNOWICE_update_hour}z for the restart sfc_data.nc
#
#-----------------------------------------------------------------------

if [ ${HH} -eq ${SNOWICE_update_hour} ] && [ ${cycle_type} == "prod" ] ; then
echo "Update snow cover based on imssnow at ${SNOWICE_update_hour}z"
if [ -r "${IMSSNOW_ROOT}/latest.SNOW_IMS" ]; then
cp ${IMSSNOW_ROOT}/latest.SNOW_IMS .
elif [ -r "${IMSSNOW_ROOT}/${YYJJJ00000000}" ]; then
cp ${IMSSNOW_ROOT}/${YYJJJ00000000} latest.SNOW_IMS
else
echo "${IMSSNOW_ROOT} data does not exist!!"
echo "ERROR: No SST update at ${time_str}!!!!"
fi
if [ -r "latest.SNOW_IMS" ]; then
ln_vrfy -sf ./latest.SNOW_IMS imssnow2

if [ "${IO_LAYOUT_Y}" == "1" ]; then
ln_vrfy -sf ${FIX_GSI}/${PREDEF_GRID_NAME}/fv3_grid_spec fv3_grid_spec
else
for ii in ${list_iolayout}
do
iii=$(printf %4.4i $ii)
ln_vrfy -sf ${FIX_GSI}/${PREDEF_GRID_NAME}/fv3_grid_spec.${iii} fv3_grid_spec.${iii}
done
fi
#
# copy executable
#
snowice_exec_fn="process_imssnow_fv3lam.exe"
snowice_exec_fp="$EXECDIR/${snowice_exec_fn}"
if [ ! -f "${snowice_exec_fp}" ]; then
print_err_msg_exit "\
The executable (snowice_exec_fn) for processing snow/ice data onto FV3-LAM
native grid does not exist:
snowice_exec_fp= \"${snowice_exec_fp}\"
Please ensure that you've built this executable."
fi
cp_vrfy ${snowice_exec_fp} .

${APRUN} ${snowice_exec_fn} ${IO_LAYOUT_Y} || \
print_err_msg_exit "\
Call to executable (fvcom_exe) to modify sfc fields for FV3-LAM failed:
snowice_exe = \"${snowice_exec_fp}\"
The following variables were being used:
list_iolayout = \"${list_iolayout}\""

snowice_reference_time=$(wgrib2 -t latest.SNOW_IMS | tail -1)
if [ ${SAVE_CYCLE_LOG} == "TRUE" ] ; then
echo "${YYYYMMDDHH}(${cycle_type}): update snow/ice using ${snowice_reference_time}" >> ${EXPTDIR}/log.cycles
fi
else
echo "ERROR: No latest IMS SNOW file for update at ${YYYYMMDDHH}!!!!"
fi
else
echo "NOTE: No update for IMS SNOW/ICE at ${YYYYMMDDHH}!"
fi
#-----------------------------------------------------------------------
#
# do SST update at ${SST_update_hour}z for the restart sfc_data.nc
Expand Down
1 change: 1 addition & 0 deletions ush/config.sh.RRFS_NA_3km
Original file line number Diff line number Diff line change
Expand Up @@ -76,6 +76,7 @@ RESTART_INTERVAL="1 2 3"

SST_update_hour=01
GVF_update_hour=04
SNOWICE_update_hour=00

USE_FVCOM="TRUE"
FVCOM_DIR="/mnt/lfs4/BMC/public/data/grids/glerl/owaq"
Expand Down
6 changes: 6 additions & 0 deletions ush/config_defaults.sh
Original file line number Diff line number Diff line change
Expand Up @@ -276,6 +276,10 @@ EXPT_SUBDIR=""
# Setup default locations for GVF and update time:
# GVF_ROOT: locations of GVF observations
# GVF_update_hour: cycle time for updating GVF
#
# Setup default locations for IMS snow/ice and update time:
# IMSSNOW_ROOT: locations of IMS snow/ice observations
# SNOWICE_update_hour: cycle time for updating snow/ice
#-----------------------------------------------------------------------
#
COMINgfs="/base/path/of/directory/containing/gfs/input/files"
Expand Down Expand Up @@ -303,6 +307,8 @@ SST_ROOT="/lfs4/BMC/public/data/grids/ncep/sst/0p083deg/grib2"
SST_update_hour=99
GVF_ROOT="/public/data/sat/ncep/viirs/gvf/grib2"
GVF_update_hour=99
IMSSNOW_ROOT="/public/data/grids/ncep/snow/ims96/grib2"
SNOWICE_update_hour=99

#
#-----------------------------------------------------------------------
Expand Down
6 changes: 0 additions & 6 deletions ush/generate_FV3LAM_wflow.sh
Original file line number Diff line number Diff line change
Expand Up @@ -883,16 +883,13 @@ file failed."
fi

if [ "${DO_SURFACE_CYCLE}" = "TRUE" ]; then
nstf_name="2,0,0,0,0"
if [ "${SDF_USES_RUC_LSM}" = "TRUE" ]; then
lsoil="9"
fi
# need to generate a namelist for surface cycle
settings="\
'gfs_physics_nml': {
'lsoil': ${lsoil:-null},
'nst_anl' : false,
'nstf_name' : [${nstf_name[@]}],
}"
# commnet out for using current develop branch that has no radar tten code yet.
# 'gfs_physics_nml': {
Expand All @@ -916,7 +913,6 @@ if [ "${DO_SURFACE_CYCLE}" = "TRUE" ]; then
fi

if [[ "${DO_DACYCLE}" = "TRUE" || "${DO_ENKFUPDATE}" = "TRUE" ]]; then
nstf_name="2,0,0,0,0"
if [ "${SDF_USES_RUC_LSM}" = "TRUE" ]; then
lsoil="9"
fi
Expand All @@ -933,8 +929,6 @@ if [[ "${DO_DACYCLE}" = "TRUE" || "${DO_ENKFUPDATE}" = "TRUE" ]]; then
}
'gfs_physics_nml': {
'lsoil': ${lsoil:-null},
'nst_anl' : false,
'nstf_name' : [${nstf_name[@]}],
}"
# commnet out for using current develop branch that has no radar tten code yet.
# 'gfs_physics_nml': {
Expand Down
6 changes: 2 additions & 4 deletions ush/templates/input.nml.FV3
Original file line number Diff line number Diff line change
Expand Up @@ -64,7 +64,7 @@
d2_bg = 0.0
d2_bg_k1 = 0.20
d2_bg_k2 = 0.04
d4_bg = 0.15
d4_bg = 0.12
d_con = 1.0
d_ext = 0.0
dddmp = 0.1
Expand Down Expand Up @@ -104,7 +104,7 @@
ncep_ic = .false.
nggps_ic = .true.
no_dycore = .false.
nord = 2
nord = 3
npz = 65
nrows_blend = 10
ntiles = 1
Expand Down Expand Up @@ -178,8 +178,6 @@
lwhtr = .true.
n_var_lndp = 0
nsradar_reset = 3600
nst_anl = .true.
nstf_name = 2,1,0,0,0
oz_phys = .false.
oz_phys_2015 = .true.
pdfcld = .false.
Expand Down