Skip to content

Commit bd7ca33

Browse files
Merge branch 'develop' into ci_unit-tests
2 parents 242f8b7 + 4422550 commit bd7ca33

23 files changed

+219
-101
lines changed
Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
experiment:
2+
system: gfs
3+
mode: cycled
4+
5+
arguments:
6+
pslot: {{ 'pslot' | getenv }}
7+
app: S2S
8+
resdetatmos: 384
9+
resdetocean: 0.25
10+
nens: 0
11+
gfs_cyc: 4
12+
start: cold
13+
comroot: {{ 'RUNTESTS' | getenv }}/COMROOT
14+
expdir: {{ 'RUNTESTS' | getenv }}/EXPDIR
15+
idate: 2021063000
16+
edate: 2021070306
17+
icsdir: /scratch1/NCEPDEV/climate/Jessica.Meixner/cycling/IC_2021063000_V2
18+
yaml: {{ HOMEgfs }}/ci/cases/gfsv17/ocnanal.yaml

ci/cases/gfsv17/ocnanal.yaml

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
defaults:
2+
!INC {{ HOMEgfs }}/parm/config/gfs/yaml/defaults.yaml
3+
4+
base:
5+
DOIAU: "YES"
6+
DO_JEDIATMVAR: "NO"
7+
DO_JEDIATMENS: "NO"
8+
DO_JEDIOCNVAR: "YES"
9+
DO_JEDISNOWDA: "NO"
10+
DO_MERGENSST: "NO"
11+
DOHYBVAR: "NO"
12+
DO_FIT2OBS: "YES"
13+
DO_VERFOZN: "YES"
14+
DO_VERFRAD: "YES"
15+
DO_VRFY_OCEANDA: "NO"
16+
FHMAX_GFS: 240
17+
18+
ocnanal:
19+
SOCA_INPUT_FIX_DIR: /scratch2/NCEPDEV/ocean/Guillaume.Vernieres/data/static/1440x1080x75/soca
20+
CASE_ANL: 'C24'
21+
SOCA_OBS_LIST: {{ HOMEgfs }}/sorc/gdas.cd/parm/soca/obs/obs_list.yaml
22+
SOCA_NINNER: 100
23+
SABER_BLOCKS_YAML: ''
24+
NICAS_RESOL: 1
25+
NICAS_GRID_SIZE: 15000
26+
27+
prepoceanobs:
28+
SOCA_OBS_LIST: {{ HOMEgfs }}/sorc/gdas.cd/parm/soca/obs/obs_list.yaml
29+
OBSPREP_YAML: {{ HOMEgfs }}/sorc/gdas.cd/parm/soca/obsprep/obsprep_config.yaml
30+
DMPDIR: /scratch1/NCEPDEV/da/common/

jobs/JGLOBAL_FORECAST

Lines changed: 30 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -35,34 +35,51 @@ declare -rx gPDY="${GDATE:0:8}"
3535
declare -rx gcyc="${GDATE:8:2}"
3636

3737
# Construct COM variables from templates (see config.com)
38-
YMD="${PDY}" HH="${cyc}" declare_from_tmpl -rx COM_ATMOS_RESTART COM_ATMOS_INPUT COM_ATMOS_ANALYSIS \
39-
COM_ICE_ANALYSIS COM_ATMOS_HISTORY COM_ATMOS_MASTER COM_TOP COM_CONF
38+
YMD="${PDY}" HH="${cyc}" declare_from_tmpl -rx \
39+
COMIN_ATMOS_INPUT:COM_ATMOS_INPUT_TMPL \
40+
COMIN_ATMOS_ANALYSIS:COM_ATMOS_ANALYSIS_TMPL \
41+
COMOUT_CONF:COM_CONF_TMPL \
42+
COMOUT_ATMOS_RESTART:COM_ATMOS_RESTART_TMPL \
43+
COMOUT_ATMOS_HISTORY:COM_ATMOS_HISTORY_TMPL \
44+
COMOUT_ATMOS_MASTER:COM_ATMOS_MASTER_TMPL
4045

4146
RUN="${rCDUMP}" YMD="${gPDY}" HH="${gcyc}" declare_from_tmpl -rx \
42-
COM_ATMOS_RESTART_PREV:COM_ATMOS_RESTART_TMPL
47+
COMIN_ATMOS_RESTART_PREV:COM_ATMOS_RESTART_TMPL
4348

4449
if [[ "${DO_WAVE}" == "YES" ]]; then
45-
YMD="${PDY}" HH="${cyc}" declare_from_tmpl -rx COM_WAVE_RESTART COM_WAVE_PREP COM_WAVE_HISTORY
50+
YMD="${PDY}" HH="${cyc}" declare_from_tmpl -rx \
51+
COMIN_WAVE_PREP:COM_WAVE_PREP_TMPL \
52+
COMOUT_WAVE_RESTART:COM_WAVE_RESTART_TMPL \
53+
COMOUT_WAVE_HISTORY:COM_WAVE_HISTORY_TMPL
4654
RUN="${rCDUMP}" YMD="${gPDY}" HH="${gcyc}" declare_from_tmpl -rx \
47-
COM_WAVE_RESTART_PREV:COM_WAVE_RESTART_TMPL
55+
COMIN_WAVE_RESTART_PREV:COM_WAVE_RESTART_TMPL
4856
fi
4957

5058
if [[ "${DO_OCN}" == "YES" ]]; then
51-
YMD="${PDY}" HH="${cyc}" declare_from_tmpl -rx COM_MED_RESTART COM_OCEAN_RESTART COM_OCEAN_INPUT \
52-
COM_OCEAN_HISTORY COM_OCEAN_ANALYSIS
59+
YMD="${PDY}" HH="${cyc}" declare_from_tmpl -rx \
60+
COMIN_OCEAN_ANALYSIS:COM_OCEAN_ANALYSIS_TMPL \
61+
COMIN_OCEAN_INPUT:COM_OCEAN_INPUT_TMPL \
62+
COMOUT_MED_RESTART:COM_MED_RESTART_TMPL \
63+
COMOUT_OCEAN_RESTART:COM_OCEAN_RESTART_TMPL \
64+
COMOUT_OCEAN_HISTORY:COM_OCEAN_HISTORY_TMPL
5365
RUN="${rCDUMP}" YMD="${gPDY}" HH="${gcyc}" declare_from_tmpl -rx \
54-
COM_OCEAN_RESTART_PREV:COM_OCEAN_RESTART_TMPL \
55-
COM_MED_RESTART_PREV:COM_MED_RESTART_TMPL
66+
COMIN_OCEAN_RESTART_PREV:COM_OCEAN_RESTART_TMPL \
67+
COMIN_MED_RESTART_PREV:COM_MED_RESTART_TMPL
5668
fi
5769

5870
if [[ "${DO_ICE}" == "YES" ]]; then
59-
YMD="${PDY}" HH="${cyc}" declare_from_tmpl -rx COM_ICE_HISTORY COM_ICE_INPUT COM_ICE_RESTART
71+
YMD="${PDY}" HH="${cyc}" declare_from_tmpl -rx \
72+
COMIN_ICE_INPUT:COM_ICE_INPUT_TMPL \
73+
COMIN_ICE_ANALYSIS:COM_ICE_ANALYSIS_TMPL \
74+
COMOUT_ICE_RESTART:COM_ICE_RESTART_TMPL \
75+
COMOUT_ICE_HISTORY:COM_ICE_HISTORY_TMPL
6076
RUN="${rCDUMP}" YMD="${gPDY}" HH="${gcyc}" declare_from_tmpl -rx \
61-
COM_ICE_RESTART_PREV:COM_ICE_RESTART_TMPL
77+
COMIN_ICE_RESTART_PREV:COM_ICE_RESTART_TMPL
6278
fi
6379

6480
if [[ "${DO_AERO}" == "YES" ]]; then
65-
YMD="${PDY}" HH="${cyc}" declare_from_tmpl -rx COM_CHEM_HISTORY
81+
YMD="${PDY}" HH="${cyc}" declare_from_tmpl -rx \
82+
COMOUT_CHEM_HISTORY:COM_CHEM_HISTORY_TMPL
6683
fi
6784

6885

@@ -79,7 +96,7 @@ if [[ "${RUN}" =~ "enkf" ]] && [[ "${SENDDBN:-}" == YES ]]; then
7996
for (( fhr = FHOUT; fhr <= FHMAX; fhr + FHOUT )); do
8097
if (( fhr % 3 == 0 )); then
8198
fhr3=$(printf %03i "${fhr}")
82-
"${DBNROOT}/bin/dbn_alert" MODEL GFS_ENKF "${job}" "${COM_ATMOS_HISTORY}/${RUN}.t${cyc}z.sfcf${fhr3}.nc"
99+
"${DBNROOT}/bin/dbn_alert" MODEL GFS_ENKF "${job}" "${COMOUT_ATMOS_HISTORY}/${RUN}.t${cyc}z.sfcf${fhr3}.nc"
83100
fi
84101
done
85102
fi

parm/config/gefs/config.base

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,10 +13,12 @@ export RUN_ENVIR="emc"
1313

1414
# Account, queue, etc.
1515
export ACCOUNT="@ACCOUNT@"
16+
export ACCOUNT_SERVICE="@ACCOUNT_SERVICE@"
1617
export QUEUE="@QUEUE@"
1718
export QUEUE_SERVICE="@QUEUE_SERVICE@"
1819
export PARTITION_BATCH="@PARTITION_BATCH@"
1920
export PARTITION_SERVICE="@PARTITION_SERVICE@"
21+
export RESERVATION="@RESERVATION@"
2022

2123
# Project to use in mass store:
2224
export HPSS_PROJECT="@HPSS_PROJECT@"
@@ -163,7 +165,7 @@ case "${CASE}" in
163165
export waveGRD='glo_500'
164166
;;
165167
"C96" | "C192")
166-
export waveGRD='glo_200'
168+
export waveGRD='glo_100'
167169
;;
168170
"C384")
169171
export waveGRD='glo_025'

parm/config/gefs/config.ufs

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ if (( $# <= 1 )); then
1515
echo "--fv3 C48|C96|C192|C384|C768|C1152|C3072"
1616
echo "--mom6 500|100|025"
1717
echo "--cice6 500|100|025"
18-
echo "--ww3 gnh_10m;aoc_9km;gsh_15m|gwes_30m|glo_025|glo_200|glo_500|mx025"
18+
echo "--ww3 gnh_10m;aoc_9km;gsh_15m|gwes_30m|glo_025|glo_200|glo_500|mx025|glo_100"
1919
echo "--gocart"
2020

2121
exit 1
@@ -456,6 +456,10 @@ if [[ "${skip_ww3}" == "false" ]]; then
456456
"glo_025")
457457
ntasks_ww3=262
458458
;;
459+
"glo_100")
460+
ntasks_ww3=20
461+
nthreads_ww3=1
462+
;;
459463
"glo_200")
460464
ntasks_ww3=30
461465
nthreads_ww3=1

parm/config/gefs/config.wave

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -56,6 +56,12 @@ case "${waveGRD}" in
5656
export wavepostGRD='glo_025'
5757
export waveuoutpGRD=${waveGRD}
5858
;;
59+
"glo_100")
60+
#Global regular lat/lon 1deg deg grid
61+
export waveinterpGRD=''
62+
export wavepostGRD='glo_100'
63+
export waveuoutpGRD=${waveGRD}
64+
;;
5965
"glo_200")
6066
#Global regular lat/lon 2deg deg grid
6167
export waveinterpGRD=''

parm/config/gfs/config.base

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,10 +13,12 @@ export RUN_ENVIR="emc"
1313

1414
# Account, queue, etc.
1515
export ACCOUNT="@ACCOUNT@"
16+
export ACCOUNT_SERVICE="@ACCOUNT_SERVICE@"
1617
export QUEUE="@QUEUE@"
1718
export QUEUE_SERVICE="@QUEUE_SERVICE@"
1819
export PARTITION_BATCH="@PARTITION_BATCH@"
1920
export PARTITION_SERVICE="@PARTITION_SERVICE@"
21+
export RESERVATION="@RESERVATION@"
2022

2123
# Project to use in mass store:
2224
export HPSS_PROJECT="@HPSS_PROJECT@"

parm/config/gfs/config.ufs

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ if (( $# <= 1 )); then
1515
echo "--fv3 C48|C96|C192|C384|C768|C1152|C3072"
1616
echo "--mom6 500|100|025"
1717
echo "--cice6 500|100|025"
18-
echo "--ww3 gnh_10m;aoc_9km;gsh_15m|gwes_30m|glo_025|glo_200|glo_500|mx025|uglo_100km|uglo_m1g16"
18+
echo "--ww3 gnh_10m;aoc_9km;gsh_15m|gwes_30m|glo_025|glo_100|glo_200|glo_500|mx025|uglo_100km|uglo_m1g16"
1919
echo "--gocart"
2020

2121
exit 1
@@ -561,6 +561,10 @@ if [[ "${skip_ww3}" == "false" ]]; then
561561
"glo_025")
562562
ntasks_ww3=262
563563
;;
564+
"glo_100")
565+
ntasks_ww3=20
566+
nthreads_ww3=1
567+
;;
564568
"glo_200")
565569
ntasks_ww3=30
566570
nthreads_ww3=1

parm/config/gfs/config.wave

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -56,6 +56,12 @@ case "${waveGRD}" in
5656
export wavepostGRD='glo_025'
5757
export waveuoutpGRD=${waveGRD}
5858
;;
59+
"glo_100")
60+
#Global regular lat/lon 1deg deg grid
61+
export waveinterpGRD=''
62+
export wavepostGRD='glo_100'
63+
export waveuoutpGRD=${waveGRD}
64+
;;
5965
"glo_200")
6066
#Global regular lat/lon 2deg deg grid
6167
export waveinterpGRD=''

parm/wave/ww3_grib2.glo_100.inp.tmpl

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
$ WAVEWATCH-III gridded output input file
2+
$ ----------------------------------------
3+
TIME DT NT
4+
N
5+
FLAGS
6+
$
7+
TIME 7 MODNR GRIDNR 0 0
8+
$
9+
$ end of input file

scripts/exgfs_wave_post_gridded_sbs.sh

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -287,6 +287,7 @@ source "${USHgfs}/preamble.sh"
287287
glo_15mxt) GRDNAME='global' ; GRDRES=0p25 ; GRIDNR=255 ; MODNR=11 ;;
288288
reg025) GRDNAME='global' ; GRDRES=0p25 ; GRIDNR=255 ; MODNR=11 ;;
289289
glo_025) GRDNAME='global' ; GRDRES=0p25 ; GRIDNR=255 ; MODNR=11 ;;
290+
glo_100) GRDNAME='global' ; GRDRES=1p00 ; GRIDNR=255 ; MODNR=11 ;;
290291
glo_200) GRDNAME='global' ; GRDRES=2p00 ; GRIDNR=255 ; MODNR=11 ;;
291292
glo_500) GRDNAME='global' ; GRDRES=5p00 ; GRIDNR=255 ; MODNR=11 ;;
292293
glo_30mxt) GRDNAME='global' ; GRDRES=0p50 ; GRIDNR=255 ; MODNR=11 ;;
@@ -321,7 +322,8 @@ source "${USHgfs}/preamble.sh"
321322
glo_15mxt) GRDNAME='global' ; GRDRES=0p25 ; GRIDNR=255 ; MODNR=11 ;;
322323
reg025) GRDNAME='global' ; GRDRES=0p25 ; GRIDNR=255 ; MODNR=11 ;;
323324
glo_025) GRDNAME='global' ; GRDRES=0p25 ; GRIDNR=255 ; MODNR=11 ;;
324-
glo_200) GRDNAME='global' ; GRDRES=2p00 ; GRIDNR=255 ; MODNR=11 ;;
325+
glo_100) GRDNAME='global' ; GRDRES=1p00 ; GRIDNR=255 ; MODNR=11 ;;
326+
glo_200) GRDNAME='global' ; GRDRES=2p00 ; GRIDNR=255 ; MODNR=11 ;;
325327
glo_500) GRDNAME='global' ; GRDRES=5p00 ; GRIDNR=255 ; MODNR=11 ;;
326328
gwes_30m) GRDNAME='global' ; GRDRES=0p50 ; GRIDNR=255 ; MODNR=10 ;;
327329
esac

ush/forecast_det.sh

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ UFS_det(){
66
echo "SUB ${FUNCNAME[0]}: Run type determination for UFS"
77

88
# Determine if the current cycle is a warm start (based on the availability of restarts)
9-
if [[ -f "${COM_ATMOS_RESTART_PREV}/${model_start_date_current_cycle:0:8}.${model_start_date_current_cycle:8:2}0000.coupler.res" ]]; then
9+
if [[ -f "${COMIN_ATMOS_RESTART_PREV}/${model_start_date_current_cycle:0:8}.${model_start_date_current_cycle:8:2}0000.coupler.res" ]]; then
1010
warm_start=".true."
1111
fi
1212

@@ -16,8 +16,8 @@ UFS_det(){
1616
# Since restarts are not available from the previous cycle, this is likely a cold start
1717
# Ensure cold start ICs are present when warm start is not set
1818
# TODO: add checks for other cold start ICs as well
19-
if [[ ! -f "${COM_ATMOS_INPUT}/gfs_ctrl.nc" ]]; then
20-
echo "FATAL ERROR: Cold start ICs are missing from '${COM_ATMOS_INPUT}'"
19+
if [[ ! -f "${COMIN_ATMOS_INPUT}/gfs_ctrl.nc" ]]; then
20+
echo "FATAL ERROR: Cold start ICs are missing from '${COMIN_ATMOS_INPUT}'"
2121
exit 1
2222
fi
2323

0 commit comments

Comments
 (0)