Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add the mean EnKF soil increment to the deterministic member #3295

Merged
Merged
Show file tree
Hide file tree
Changes from 16 commits
Commits
Show all changes
60 commits
Select commit Hold shift + click to select a range
ab09ab1
Updates to:
ClaraDraper-NOAA Dec 18, 2024
f9e9a49
Adding missing ush file
ClaraDraper-NOAA Dec 18, 2024
8120fb6
Clean up calculation of forecast times required for regridding.
ClaraDraper-NOAA Dec 19, 2024
0f150a9
Merge branch 'develop' into feature/soilanal_det
ClaraDraper-NOAA Jan 22, 2025
ea61f31
Merge branch 'develop' into feature/soilanal_det
ClaraDraper-NOAA Jan 23, 2025
1f3c8df
Added dependency on enkf for gdas_sfcanl, for GSI_SOILANAL case
ClaraDraper-NOAA Jan 28, 2025
0bf0a90
Tidy up timing of adding the sfc increments. Update config and xml.
ClaraDraper-NOAA Jan 30, 2025
e478210
Fixed bug in FHR calc in regrid, added soil analysis to non-IAU (atmo…
ClaraDraper-NOAA Jan 31, 2025
3856b1f
Added LSOIL_INC to config files. generalized regridding namelist input.
ClaraDraper-NOAA Jan 31, 2025
d8e945f
workaround to ease merging.
ClaraDraper-NOAA Feb 2, 2025
45c6cc1
Merge branch 'develop' into feature/soilanal_det_clean
ClaraDraper-NOAA Feb 2, 2025
86e0deb
Added back in env changes after merge.
ClaraDraper-NOAA Feb 2, 2025
59e82b7
Tidy up.
ClaraDraper-NOAA Feb 4, 2025
3d5b6ee
Merge branch 'develop' into feature/soilanal_det_clean
ClaraDraper-NOAA Feb 4, 2025
b02e8af
Updated UFS_UTILS to include latest update, needed for the soil analy…
ClaraDraper-NOAA Feb 4, 2025
7ffee90
Updated code owners.
ClaraDraper-NOAA Feb 4, 2025
5cccc3f
coding norms.
ClaraDraper-NOAA Feb 4, 2025
04e542e
Update parm/config/gfs/config.sfcanl
ClaraDraper-NOAA Feb 4, 2025
fae30c6
Update scripts/exgdas_enkf_sfc.sh
ClaraDraper-NOAA Feb 4, 2025
6cda29c
Update scripts/exglobal_atmos_sfcanl.sh
ClaraDraper-NOAA Feb 4, 2025
255cf33
Update ush/regrid_gsiSfcIncr_to_tile.sh
ClaraDraper-NOAA Feb 4, 2025
660fc4c
Update ush/regrid_gsiSfcIncr_to_tile.sh
ClaraDraper-NOAA Feb 4, 2025
01072aa
Updates for Cory's review.
ClaraDraper-NOAA Feb 5, 2025
65e8cc4
spelling
ClaraDraper-NOAA Feb 5, 2025
376cf33
more spelling
ClaraDraper-NOAA Feb 5, 2025
4f50aae
Response to reviews.
ClaraDraper-NOAA Feb 5, 2025
0f3b810
Changes for review.
ClaraDraper-NOAA Feb 5, 2025
a19d56d
exgdas_enkf_upd spelling errors.
ClaraDraper-NOAA Feb 5, 2025
d726dbe
Cleaning up global_cycle variable names.
ClaraDraper-NOAA Feb 5, 2025
c22a8c8
Update scripts/exgdas_enkf_sfc.sh
ClaraDraper-NOAA Feb 6, 2025
fd16035
Update scripts/exgdas_enkf_sfc.sh
ClaraDraper-NOAA Feb 6, 2025
36d21a6
Cory's review.
ClaraDraper-NOAA Feb 6, 2025
8e9d193
Fixed bugs introduced by PR updates.
ClaraDraper-NOAA Feb 6, 2025
1bd8014
bugfix.
ClaraDraper-NOAA Feb 6, 2025
ef0f65d
Added CI test for DO_GSISOILDA
ClaraDraper-NOAA Feb 7, 2025
e413ff8
Update parm/config/gfs/config.esfc
ClaraDraper-NOAA Feb 18, 2025
37d0960
Update scripts/exgdas_enkf_sfc.sh
ClaraDraper-NOAA Feb 18, 2025
dc2634f
Update scripts/exgdas_enkf_sfc.sh
ClaraDraper-NOAA Feb 18, 2025
2d92509
Update scripts/exgdas_enkf_sfc.sh
ClaraDraper-NOAA Feb 18, 2025
58512e3
Update parm/config/gfs/config.esfc
ClaraDraper-NOAA Feb 18, 2025
f51ab82
copying fix files into DATA dir, instead of linking.
ClaraDraper-NOAA Feb 18, 2025
8bd1c8b
Merge branch 'develop' into feature/soilanal_det_clean
ClaraDraper-NOAA Feb 18, 2025
f7641b1
rm trailing space
ClaraDraper-NOAA Feb 18, 2025
f85c42d
update ufs model and gdas hashes.
ClaraDraper-NOAA Feb 23, 2025
66ced9e
Merge branch 'develop' into feature/soilanal_det_clean
ClaraDraper-NOAA Feb 23, 2025
3eb4954
hotfix for CI
CoryMartin-NOAA Feb 24, 2025
c83379d
Update UFS_UTILS and GDASApp hashes.
ClaraDraper-NOAA Feb 24, 2025
8a7e1cf
Temporarily remove soil DA test case, while we sort out module depend…
ClaraDraper-NOAA Feb 24, 2025
f1e6776
Merge remote-tracking branch 'cory/bugfix/aerolowres' into feature/so…
ClaraDraper-NOAA Feb 24, 2025
1147c56
Update parm/config/gfs/config.esfc
ClaraDraper-NOAA Feb 25, 2025
5d5ca86
Update parm/config/gfs/config.sfcanl
ClaraDraper-NOAA Feb 25, 2025
83f5227
Update scripts/exgdas_enkf_update.sh
ClaraDraper-NOAA Feb 25, 2025
59cc8ff
Update scripts/exgdas_enkf_update.sh
ClaraDraper-NOAA Feb 25, 2025
1eb8871
Update scripts/exglobal_atmos_sfcanl.sh
ClaraDraper-NOAA Feb 25, 2025
fc105c3
Update scripts/exgdas_enkf_update.sh
ClaraDraper-NOAA Feb 25, 2025
f555978
Update scripts/exglobal_atmos_sfcanl.sh
ClaraDraper-NOAA Feb 25, 2025
7fd68e8
Merge branch 'develop' into feature/soilanal_det_clean
aerorahul Feb 25, 2025
93541a0
Added comments pointing to two unresolved issues for the soil DA.
ClaraDraper-NOAA Feb 25, 2025
4fd0ec1
Merge branch 'develop' into feature/soilanal_det_clean
aerorahul Feb 25, 2025
056e9b3
Merge branch 'develop' into feature/soilanal_det_clean
aerorahul Feb 26, 2025
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
1 change: 1 addition & 0 deletions .github/CODEOWNERS
Original file line number Diff line number Diff line change
Expand Up @@ -181,6 +181,7 @@ syndat_qctropcy.sh @JiayiPeng-NOAA
tropcy_relocate.sh @JiayiPeng-NOAA
tropcy_relocate_extrkr.sh @JiayiPeng-NOAA
wave_*.sh @JessicaMeixner-NOAA @sbanihash
regrid_gsiSfcIncr_to_tile.sh @ClaraDraper-NOAA

# ush/python
ush/python/pygfs/jedi/__init__.py @aerorahul @DavidNew-NOAA
Expand Down
8 changes: 8 additions & 0 deletions env/GAEAC5.env
Original file line number Diff line number Diff line change
Expand Up @@ -175,6 +175,14 @@ case ${step} in
export NTHREADS_CYCLE=${threads_per_task:-14}
[[ ${NTHREADS_CYCLE} -gt ${max_tasks_per_node} ]] && export NTHREADS_CYCLE=${max_tasks_per_node}
export APRUN_CYCLE="${APRUN_default} --cpus-per-task=${NTHREADS_CYCLE}"

ntdiv6=$((ntasks/6))
ntasks_reg=$((ntdiv6*6))
if [[ ${ntasks_reg} -gt 36 ]]; then
ntasks_reg=36
fi
export APRUN_REGR="${launcher} -n ${ntasks_reg} "

;;
"eobs")

Expand Down
8 changes: 8 additions & 0 deletions env/GAEAC6.env
Original file line number Diff line number Diff line change
Expand Up @@ -175,6 +175,14 @@ case ${step} in
export NTHREADS_CYCLE=${threads_per_task:-14}
[[ ${NTHREADS_CYCLE} -gt ${max_tasks_per_node} ]] && export NTHREADS_CYCLE=${max_tasks_per_node}
export APRUN_CYCLE="${APRUN_default} --cpus-per-task=${NTHREADS_CYCLE}"

ntdiv6=$((ntasks/6))
ntasks_reg=$((ntdiv6*6))
if [[ ${ntasks_reg} -gt 36 ]]; then
ntasks_reg=36
fi
export APRUN_REGR="${launcher} -n ${ntasks_reg} "

;;
"eobs")

Expand Down
14 changes: 14 additions & 0 deletions env/HERA.env
Original file line number Diff line number Diff line change
Expand Up @@ -183,6 +183,13 @@ elif [[ "${step}" = "sfcanl" ]]; then
export NTHREADS_CYCLE=${threads_per_task:-14}
export APRUN_CYCLE="${APRUN_default} --cpus-per-task=${NTHREADS_CYCLE}"

ntdiv6=$((ntasks/6))
ntasks_reg=$((ntdiv6*6))
if [[ ${ntasks_reg} -gt 36 ]]; then
ntasks_reg=36
fi
export APRUN_REGR="${launcher} -n ${ntasks_reg} "

elif [[ "${step}" = "eobs" ]]; then

export MKL_NUM_THREADS=4
Expand Down Expand Up @@ -248,6 +255,13 @@ elif [[ "${step}" = "esfc" ]]; then
[[ ${NTHREADS_CYCLE} -gt ${max_tasks_per_node} ]] && export NTHREADS_CYCLE=${max_tasks_per_node}
export APRUN_CYCLE="${APRUN_default} --cpus-per-task=${NTHREADS_CYCLE}"

ntdiv6=$((ntasks/6))
ntasks_reg=$((ntdiv6*6))
if [[ ${ntasks_reg} -gt 36 ]]; then
ntasks_reg=36
fi
export APRUN_REGR="${launcher} -n ${ntasks_reg} "

elif [[ "${step}" = "epos" ]]; then

export NTHREADS_EPOS=${NTHREADSmax}
Expand Down
14 changes: 14 additions & 0 deletions env/HERCULES.env
Original file line number Diff line number Diff line change
Expand Up @@ -186,6 +186,13 @@ case ${step} in
export NTHREADS_CYCLE=${threads_per_task:-14}
[[ ${NTHREADS_CYCLE} -gt ${max_tasks_per_node} ]] && export NTHREADS_CYCLE=${max_tasks_per_node}
export APRUN_CYCLE="${APRUN_default} --cpus-per-task=${NTHREADS_CYCLE}"

ntdiv6=$((ntasks/6))
ntasks_reg=$((ntdiv6*6))
if [[ ${ntasks_reg} -gt 36 ]]; then
ntasks_reg=36
fi
export APRUN_REGR="${launcher} -n ${ntasks_reg} "
;;
"eobs")

Expand Down Expand Up @@ -262,6 +269,13 @@ case ${step} in
[[ ${NTHREADS_CYCLE} -gt ${max_tasks_per_node} ]] && export NTHREADS_CYCLE=${max_tasks_per_node}
export APRUN_CYCLE="${APRUN_default} --cpus-per-task=${NTHREADS_CYCLE}"

ntdiv6=$((ntasks/6))
ntasks_reg=$((ntdiv6*6))
if [[ ${ntasks_reg} -gt 36 ]]; then
ntasks_reg=36
fi
export APRUN_REGR="${launcher} -n ${ntasks_reg} "

;;
"epos")

Expand Down
14 changes: 14 additions & 0 deletions env/JET.env
Original file line number Diff line number Diff line change
Expand Up @@ -156,6 +156,13 @@ elif [[ "${step}" = "sfcanl" ]]; then
[[ ${NTHREADS_CYCLE} -gt ${max_tasks_per_node} ]] && export NTHREADS_CYCLE=${max_tasks_per_node}
export APRUN_CYCLE="${APRUN_default}"

ntdiv6=$((ntasks/6))
ntasks_reg=$((ntdiv6*6))
if [[ ${ntasks_reg} -gt 36 ]]; then
ntasks_reg=36
fi
export APRUN_REGR="${launcher} -n ${ntasks_reg} "

elif [[ "${step}" = "eobs" ]]; then

export MKL_NUM_THREADS=4
Expand Down Expand Up @@ -221,6 +228,13 @@ elif [[ "${step}" = "esfc" ]]; then
[[ ${NTHREADS_CYCLE} -gt ${max_tasks_per_node} ]] && export NTHREADS_CYCLE=${max_tasks_per_node}
export APRUN_CYCLE="${APRUN_default}"

ntdiv6=$((ntasks/6))
ntasks_reg=$((ntdiv6*6))
if [[ ${ntasks_reg} -gt 36 ]]; then
ntasks_reg=36
fi
export APRUN_REGR="${launcher} -n ${ntasks_reg} "

elif [[ "${step}" = "epos" ]]; then

export NTHREADS_EPOS=${NTHREADSmax}
Expand Down
14 changes: 14 additions & 0 deletions env/ORION.env
Original file line number Diff line number Diff line change
Expand Up @@ -184,6 +184,13 @@ elif [[ "${step}" = "sfcanl" ]]; then
[[ ${NTHREADS_CYCLE} -gt ${max_tasks_per_node} ]] && export NTHREADS_CYCLE=${max_tasks_per_node}
export APRUN_CYCLE="${APRUN_default} --cpus-per-task=${NTHREADS_CYCLE}"

ntdiv6=$((ntasks/6))
ntasks_reg=$((ntdiv6*6))
if [[ ${ntasks_reg} -gt 36 ]]; then
ntasks_reg=36
fi
export APRUN_REGR="${launcher} -n ${ntasks_reg} "

elif [[ "${step}" = "eobs" ]]; then

export MKL_NUM_THREADS=4
Expand Down Expand Up @@ -250,6 +257,13 @@ elif [[ "${step}" = "esfc" ]]; then
[[ ${NTHREADS_CYCLE} -gt ${max_tasks_per_node} ]] && export NTHREADS_CYCLE=${max_tasks_per_node}
export APRUN_CYCLE="${APRUN_default} --cpus-per-task=${NTHREADS_CYCLE}"

ntdiv6=$((ntasks/6))
ntasks_reg=$((ntdiv6*6))
if [[ ${ntasks_reg} -gt 36 ]]; then
ntasks_reg=36
fi
export APRUN_REGR="${launcher} -n ${ntasks_reg} "

elif [[ "${step}" = "epos" ]]; then

export NTHREADS_EPOS=${NTHREADSmax}
Expand Down
14 changes: 14 additions & 0 deletions env/WCOSS2.env
Original file line number Diff line number Diff line change
Expand Up @@ -175,6 +175,13 @@ elif [[ "${step}" = "sfcanl" ]]; then
[[ ${NTHREADS_CYCLE} -gt ${max_tasks_per_node} ]] && export NTHREADS_CYCLE=${max_tasks_per_node}
export APRUN_CYCLE="${APRUN_default}"

ntdiv6=$((ntasks/6))
ntasks_reg=$((ntdiv6*6))
if [[ ${ntasks_reg} -gt 36 ]]; then
ntasks_reg=36
fi
export APRUN_REGR="${launcher} -n ${ntasks_reg} "

elif [[ "${step}" = "eobs" ]]; then

export OMP_PLACES=cores
Expand Down Expand Up @@ -260,6 +267,13 @@ elif [[ "${step}" = "esfc" ]]; then
[[ ${NTHREADS_CYCLE} -gt ${max_tasks_per_node} ]] && export NTHREADS_CYCLE=${max_tasks_per_node}
export APRUN_CYCLE="${APRUN_default} -ppn ${tasks_per_node_cycle} --cpu-bind depth --depth ${NTHREADS_CYCLE}"

ntdiv6=$((ntasks/6))
ntasks_reg=$((ntdiv6*6))
if [[ ${ntasks_reg} -gt 36 ]]; then
ntasks_reg=36
fi
export APRUN_REGR="${launcher} -n ${ntasks_reg} "

elif [[ "${step}" = "epos" ]]; then

export NTHREADS_EPOS=${NTHREADSmax}
Expand Down
3 changes: 3 additions & 0 deletions jobs/JGLOBAL_ATMOS_SFCANL
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,9 @@ YMD=${PDY} HH=${cyc} declare_from_tmpl -rx \
YMD=${PDY} HH=${cyc} declare_from_tmpl -rx \
COMOUT_ATMOS_RESTART:COM_ATMOS_RESTART_TMPL

RUN="enkfgdas" MEMDIR="ensstat" YMD=${PDY} HH=${cyc} declare_from_tmpl -rx \
COM_ATMOS_ENKF_ANALYSIS_STAT:COM_ATMOS_ANALYSIS_TMPL

mkdir -p "${COMOUT_ATMOS_RESTART}"


Expand Down
2 changes: 2 additions & 0 deletions jobs/rocoto/esfc.sh
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,9 @@ source "${HOMEgfs}/ush/preamble.sh"

###############################################################
# Source FV3GFS workflow modules
# CSD for GSI_SOILANAL, need ufsda modules (temporary, until merged)
. ${HOMEgfs}/ush/load_fv3gfs_modules.sh
#. ${HOMEgfs}/ush/load_ufsda_modules.sh
status=$?
[[ ${status} -ne 0 ]] && exit ${status}

Expand Down
2 changes: 2 additions & 0 deletions jobs/rocoto/sfcanl.sh
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,9 @@ source "${HOMEgfs}/ush/preamble.sh"

###############################################################
# Source FV3GFS workflow modules
# CSD for GSI_SOILANAL, need ufsda modules (temporary, until merged)
. ${HOMEgfs}/ush/load_fv3gfs_modules.sh
#. ${HOMEgfs}/ush/load_ufsda_modules.sh
status=$?
[[ ${status} -ne 0 ]] && exit ${status}

Expand Down
5 changes: 3 additions & 2 deletions parm/config/gfs/config.esfc
Original file line number Diff line number Diff line change
Expand Up @@ -23,8 +23,9 @@ fi

# set up soil analysis
if [[ ${GSI_SOILANAL} = "YES" ]]; then
export DO_LNDINC=".true."
export LND_SOI_FILE="lnd_incr"
export DO_SOI_INC=".true."
export GCYCLE_INTERP_LNDINC=".false."
export LSOIL_INCR=2
fi

echo "END: config.esfc"
6 changes: 3 additions & 3 deletions parm/config/gfs/config.resources
Original file line number Diff line number Diff line change
Expand Up @@ -679,12 +679,12 @@ case ${step} in
ntasks_gfs=825
threads_per_task=5
;;
"C384")
"C384" | "C192")
ntasks_gdas=160
ntasks_gfs=160
threads_per_task=10
;;
"C192" | "C96" | "C48")
"C96" | "C48")
ntasks_gdas=84
ntasks_gfs=84
threads_per_task=5
Expand Down Expand Up @@ -1234,7 +1234,7 @@ case ${step} in
;;

"esfc")
walltime="00:25:00"
walltime="01:00:00"
ntasks=80
threads_per_task=1
tasks_per_node=$(( max_tasks_per_node / threads_per_task ))
Expand Down
6 changes: 6 additions & 0 deletions parm/config/gfs/config.sfcanl
Original file line number Diff line number Diff line change
Expand Up @@ -12,5 +12,11 @@ echo "BEGIN: config.sfcanl"
if [[ "${DO_JEDIATMVAR}" == "YES" ]]; then
export DONST="NO"
fi
if [[ ${GSI_SOILANAL} = "YES" ]]; then
export DO_LNDINC=".true."
export DO_SOI_INC=".true."
export GCYCLE_INTERP_LNDINC=".false."
export LSOIL_INCR=2
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is a nitpicky comment - and is a case in the global-workflow in general - variables do not need to be 3 characters long e.g. DO_SOI_INC -> DO_SOIL_INC or DO_SOILINC to be (in)consistent with DO_LNDINC or something. Even INC is sometimes INCR.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is not nitpicky at all! Or at least, it has been annoying me too. Also the mix of YES/NO, and true/false. Some of it is coming from the namelists used in submodules. I'll at least establish consistent variable names for most of the workflow, then try to clean it up over time.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm preparing to fix this, with a second PR to UFS_UTILS, resolving issue 1021

fi

echo "END: config.sfcanl"
40 changes: 31 additions & 9 deletions scripts/exgdas_enkf_sfc.sh
Original file line number Diff line number Diff line change
Expand Up @@ -65,6 +65,8 @@
export FHOUR=${FHOUR:-0}
export DELTSFC=${DELTSFC:-6}

REGRIDSH=${REGRIDSH:-${USHgfs}/regrid_gsiSfcIncr_to_tile.sh}

APRUN_ESFC=${APRUN_ESFC:-${APRUN:-""}}
NTHREADS_ESFC=${NTHREADS_ESFC:-${NTHREADS:-1}}

Expand Down Expand Up @@ -115,6 +117,23 @@
export NST_FILE="NULL"
fi

# regrid the surface increment files
if [ $GSI_SOILANAL = "YES" ]; then

export CASE_IN=${CASE_ENS}
export CASE_OUT=${CASE_ENS}
export OCNRES_OUT=${OCNRES}
export NMEM_REGRID=${NMEM_ENS}
if [ $DOIAU = "YES" ]; then
export LFHR=3 # match BDATE
else # DOSFCANL_ENKF
export LFHR=6 # PDYcyc
fi

$REGRIDSH

fi

export APRUNCY=${APRUN_CYCLE:-$APRUN_ESFC}
export OMP_NUM_THREADS_CY=${NTHREADS_CYCLE:-$NTHREADS_ESFC}
export MAX_TASKS_CY=$NMEM_ENS
Expand Down Expand Up @@ -164,10 +183,11 @@
${NCP} "${FIXgfs}/orog/${CASE}/${CASE}.mx${OCNRES}_oro_data.tile${n}.nc" "${DATA}/fnorog.${cmem}"

if [[ ${GSI_SOILANAL} = "YES" ]]; then
FHR=6
${NCP} "${COM_ATMOS_ANALYSIS_MEM}/${APREFIX_ENS}sfci00${FHR}.nc" \
"${DATA}/lnd_incr.${cmem}"
FHR=$LFHR
${NCP} "${COM_ATMOS_ANALYSIS_MEM}/sfci00${FHR}.tile${n}.nc" \
"${DATA}/soil_xainc.${cmem}"
fi

done # ensembles

CDATE="${PDY}${cyc}" ${CYCLESH}
Expand All @@ -192,12 +212,6 @@
[[ ${TILE_NUM} -eq 1 ]] && mkdir -p "${COM_ATMOS_RESTART_MEM}"
cpfs "${DATA}/fnbgso.${cmem}" "${COM_ATMOS_RESTART_MEM}/${bPDY}.${bcyc}0000.sfcanl_data.tile${n}.nc"


if [[ ${GSI_SOILANAL} = "YES" ]]; then
FHR=6
${NCP} "${COM_ATMOS_ANALYSIS_MEM}/${APREFIX_ENS}sfci00${FHR}.nc" \
"${DATA}/lnd_incr.${cmem}"
fi
done # ensembles

done
Expand Down Expand Up @@ -225,6 +239,9 @@
RUN="${GDUMP_ENS}" MEMDIR=${gmemchar} YMD=${gPDY} HH=${gcyc} declare_from_tmpl \
COMIN_ATMOS_RESTART_MEM_PREV:COM_ATMOS_RESTART_TMPL

MEMDIR=${memchar} YMD=${PDY} HH=${cyc} declare_from_tmpl \
COM_ATMOS_ANALYSIS_MEM:COM_ATMOS_ANALYSIS_TMPL

# determine where the input snow restart files come from
if [[ "${DO_JEDISNOWDA:-}" == "YES" ]]; then
sfcdata_dir="${COMIN_SNOW_ANALYSIS_MEM}"
Expand All @@ -238,6 +255,11 @@
${NCP} "${FIXgfs}/orog/${CASE}/${CASE}_grid.tile${n}.nc" "${DATA}/fngrid.${cmem}"
${NCP} "${FIXgfs}/orog/${CASE}/${CASE}.mx${OCNRES}_oro_data.tile${n}.nc" "${DATA}/fnorog.${cmem}"

if [[ ${GSI_SOILANAL} = "YES" ]]; then
FHR=$LFHR

Check notice

Code scanning / shellcheck

Prefer putting braces around variable references even when not strictly required. Note

Prefer putting braces around variable references even when not strictly required.
${NCP} "${COM_ATMOS_ANALYSIS_MEM}/sfci00${FHR}.tile${n}.nc" \
"${DATA}/soil_xainc.${cmem}"
fi
done

CDATE="${PDY}${cyc}" ${CYCLESH}
Expand Down
6 changes: 6 additions & 0 deletions scripts/exgdas_enkf_update.sh
Original file line number Diff line number Diff line change
Expand Up @@ -250,10 +250,16 @@

${NLN} "${COM_ATMOS_HISTORY_STAT_PREV}/${GPREFIX}atmf00${FHR}.ensmean.nc" \
"sfg_${PDY}${cyc}_fhr0${FHR}_ensmean"
if [ $cnvw_option = ".true." ]; then

Check notice

Code scanning / shellcheck

Prefer [[ ]] over [ ] for tests in Bash/Ksh. Note

Prefer [[ ]] over [ ] for tests in Bash/Ksh.
${NLN} "${COM_ATMOS_HISTORY_STAT_PREV}/${GPREFIX}sfcf00${FHR}.ensmean.nc" \
"sfgsfc_${PDY}${cyc}_fhr0${FHR}_ensmean"
fi
if [ $GSI_SOILANAL = "YES" ]; then
${NLN} "${COM_ATMOS_HISTORY_STAT_PREV}/${GPREFIX}sfcf00${FHR}.ensmean.nc" \
"bfg_${PDY}${cyc}_fhr0${FHR}_ensmean"
${NLN} "${COM_ATMOS_ANALYSIS_STAT}/${APREFIX}sfci00${FHR}.nc" \
"sfcincr_${PDY}${cyc}_fhr0${FHR}_ensmean"
fi
done

if [[ $USE_CFP = "YES" ]]; then
Expand Down
Loading
Loading