From bb5a58541d6514d16901dca240dfbbc810bd31c8 Mon Sep 17 00:00:00 2001 From: Walter Kolczynski - NOAA Date: Fri, 29 Sep 2023 13:28:39 -0400 Subject: [PATCH] Merge S2S defaults config back into other configs (#1876) When the prototype S2S was first added, we placed some settings in a `config.defaults.s2sw` file to avoid interference with existing settings. Now that we are moving towards v17 and run S2S regularly, it is time to merge these settings back into the other config files. The wave output frequency settings are updated to the coarser fre- quency as that is more suitable for development. The prior (ops) settings are noted as comments. There are a couple of settings that control ice fields within FV3. These are placed in `config.ice`, so when the ice model is on those settings are still used. Changes the output frequency from 3 to 6. While we may leave this setting as the default for development, it is required right now because the ocean frequency is hard-coded to 6 but links are created based on `$FHOUT_GFS`. Resolving #1629 should correct this limitation. "Gaussian" archive is updated to the former override values. Resolves #1606 Refs #1629 --- parm/config/gefs/config.base.emc.dyn | 16 +++++++-------- parm/config/gefs/config.defaults.s2sw | 1 - parm/config/gfs/config.arch | 6 +++--- parm/config/gfs/config.base.emc.dyn | 16 +++++++-------- parm/config/gfs/config.defaults.s2sw | 29 --------------------------- parm/config/gfs/config.ice | 4 ++++ parm/config/gfs/config.ocnpost | 2 +- parm/config/gfs/config.wave | 20 +++++++++--------- ush/hpssarch_gen.sh | 2 +- 9 files changed, 33 insertions(+), 63 deletions(-) delete mode 120000 parm/config/gefs/config.defaults.s2sw delete mode 100644 parm/config/gfs/config.defaults.s2sw diff --git a/parm/config/gefs/config.base.emc.dyn b/parm/config/gefs/config.base.emc.dyn index 09a12bdaf3..219c5d2325 100644 --- a/parm/config/gefs/config.base.emc.dyn +++ b/parm/config/gefs/config.base.emc.dyn @@ -219,8 +219,6 @@ case "${APP}" in export confignamevarfornems="${confignamevarfornems}_outerwave" fi - source ${EXPDIR}/config.defaults.s2sw - ;; *) echo "Unrecognized APP: ${1}" @@ -234,15 +232,15 @@ export gfs_cyc=@gfs_cyc@ # 0: no GFS cycle, 1: 00Z only, 2: 00Z and 12Z only, 4: # GFS output and frequency export FHMIN_GFS=0 -export FHMAX_GFS_00=${FHMAX_GFS_00:-120} -export FHMAX_GFS_06=${FHMAX_GFS_06:-120} -export FHMAX_GFS_12=${FHMAX_GFS_12:-120} -export FHMAX_GFS_18=${FHMAX_GFS_18:-120} +export FHMAX_GFS_00=120 +export FHMAX_GFS_06=120 +export FHMAX_GFS_12=120 +export FHMAX_GFS_18=120 current_fhmax_var=FHMAX_GFS_${cyc}; declare -x FHMAX_GFS=${!current_fhmax_var} -export FHOUT_GFS=${FHOUT_GFS:-3} -export FHMAX_HF_GFS=${FHMAX_HF_GFS:-0} -export FHOUT_HF_GFS=${FHOUT_HF_GFS:-1} +export FHOUT_GFS=6 # Must be 6 for S2S until #1629 is addressed; 3 for ops +export FHMAX_HF_GFS=0 +export FHOUT_HF_GFS=1 if (( gfs_cyc != 0 )); then export STEP_GFS=$(( 24 / gfs_cyc )) else diff --git a/parm/config/gefs/config.defaults.s2sw b/parm/config/gefs/config.defaults.s2sw deleted file mode 120000 index 797a1e9ebd..0000000000 --- a/parm/config/gefs/config.defaults.s2sw +++ /dev/null @@ -1 +0,0 @@ -../gfs/config.defaults.s2sw \ No newline at end of file diff --git a/parm/config/gfs/config.arch b/parm/config/gfs/config.arch index 6a0f6306a8..31a3713fb1 100644 --- a/parm/config/gfs/config.arch +++ b/parm/config/gfs/config.arch @@ -8,9 +8,9 @@ echo "BEGIN: config.arch" # Get task specific resources . "${EXPDIR}/config.resources" arch -export ARCH_GAUSSIAN=${ARCH_GAUSSIAN:-"NO"} -export ARCH_GAUSSIAN_FHMAX=${ARCH_GAUSSIAN_FHMAX:-36} -export ARCH_GAUSSIAN_FHINC=${ARCH_GAUSSIAN_FHINC:-6} +export ARCH_GAUSSIAN="YES" +export ARCH_GAUSSIAN_FHMAX=${FHMAX_GFS} +export ARCH_GAUSSIAN_FHINC=${FHOUT_GFS} #--online archive of nemsio files for fit2obs verification export FITSARC="YES" diff --git a/parm/config/gfs/config.base.emc.dyn b/parm/config/gfs/config.base.emc.dyn index 29aff2980e..db4cd22e7f 100644 --- a/parm/config/gfs/config.base.emc.dyn +++ b/parm/config/gfs/config.base.emc.dyn @@ -227,8 +227,6 @@ case "${APP}" in export confignamevarfornems="${confignamevarfornems}_outerwave" fi - source "${EXPDIR}/config.defaults.s2sw" - ;; *) echo "Unrecognized APP: '${APP}'" @@ -258,15 +256,15 @@ export gfs_cyc=@gfs_cyc@ # 0: no GFS cycle, 1: 00Z only, 2: 00Z and 12Z only, 4: # GFS output and frequency export FHMIN_GFS=0 -export FHMAX_GFS_00=${FHMAX_GFS_00:-120} -export FHMAX_GFS_06=${FHMAX_GFS_06:-120} -export FHMAX_GFS_12=${FHMAX_GFS_12:-120} -export FHMAX_GFS_18=${FHMAX_GFS_18:-120} +export FHMAX_GFS_00=120 +export FHMAX_GFS_06=120 +export FHMAX_GFS_12=120 +export FHMAX_GFS_18=120 current_fhmax_var=FHMAX_GFS_${cyc}; declare -x FHMAX_GFS=${!current_fhmax_var} -export FHOUT_GFS=${FHOUT_GFS:-3} -export FHMAX_HF_GFS=${FHMAX_HF_GFS:-0} -export FHOUT_HF_GFS=${FHOUT_HF_GFS:-1} +export FHOUT_GFS=6 # Must be 6 for S2S until #1629 is addressed; 3 for ops +export FHMAX_HF_GFS=0 +export FHOUT_HF_GFS=1 if (( gfs_cyc != 0 )); then export STEP_GFS=$(( 24 / gfs_cyc )) else diff --git a/parm/config/gfs/config.defaults.s2sw b/parm/config/gfs/config.defaults.s2sw deleted file mode 100644 index bfbeb01e2d..0000000000 --- a/parm/config/gfs/config.defaults.s2sw +++ /dev/null @@ -1,29 +0,0 @@ -#! /usr/bin/env bash - -# Empty variables must include a space otherwise they will be overwritten - -# Turn off warnings about unused variables -# shellcheck disable=SC2034 - -# config.base -FHMAX_GFS_00=48 -FHMAX_GFS_06=48 -FHMAX_GFS_12=48 -FHMAX_GFS_18=48 -FHOUT_GFS=6 -FHOUT_HF_GFS=-1 - -# config.fcst -min_seaice="1.0e-6" -use_cice_alb=".true." - -# config.wave -FHOUT_HF_WAV=3 -DTPNT_WAV=10800 -OUTPARS_WAV="WND CUR ICE HS T01 T02 DIR FP DP PHS PTP PDIR CHA" -DOBNDPNT_WAVE='NO' - -# config.arch -export ARCH_GAUSSIAN="YES" -export ARCH_GAUSSIAN_FHMAX=${FHMAX_GFS_00} -export ARCH_GAUSSIAN_FHINC=${FHOUT_GFS} diff --git a/parm/config/gfs/config.ice b/parm/config/gfs/config.ice index 7bc1f80966..205458020f 100644 --- a/parm/config/gfs/config.ice +++ b/parm/config/gfs/config.ice @@ -2,4 +2,8 @@ echo "BEGIN: config.ice" +# Override atm-only FV3 settings when ice model is on +export min_seaice="1.0e-6" +export use_cice_alb=".true." + echo "END: config.ice" diff --git a/parm/config/gfs/config.ocnpost b/parm/config/gfs/config.ocnpost index 15dafae23f..a6330207fb 100644 --- a/parm/config/gfs/config.ocnpost +++ b/parm/config/gfs/config.ocnpost @@ -24,6 +24,6 @@ if [[ "${machine}" = "WCOSS2" ]]; then fi # No. of concurrent post jobs [0 implies sequential] -export NPOSTGRP=2 +export NPOSTGRP=5 echo "END: config.ocnpost" diff --git a/parm/config/gfs/config.wave b/parm/config/gfs/config.wave index c9b73937ee..acb4c518ba 100644 --- a/parm/config/gfs/config.wave +++ b/parm/config/gfs/config.wave @@ -96,33 +96,33 @@ if [[ "${CDUMP}" = "gdas" ]]; then else export FHMAX_WAV=${FHMAX_GFS} fi -export WAVHINDH=${WAVHINDH:-0} -export FHMIN_WAV=${FHMIN_WAV:-0} -export FHOUT_WAV=${FHOUT_WAV:-3} -export FHMAX_HF_WAV=${FHMAX_HF_WAV:-120} -export FHOUT_HF_WAV=${FHOUT_HF_WAV:-1} +export WAVHINDH=0 +export FHMIN_WAV=0 +export FHOUT_WAV=3 +export FHMAX_HF_WAV=120 +export FHOUT_HF_WAV=1 export FHMAX_WAV_IBP=180 if (( FHMAX_WAV < FHMAX_WAV_IBP )); then export FHMAX_WAV_IBP=${FHMAX_GFS} ; fi # gridded and point output rate export DTFLD_WAV=$(( FHOUT_HF_WAV * 3600 )) -export DTPNT_WAV=${DTPNT_WAV:-3600} +export DTPNT_WAV=3600 export FHINCP_WAV=$(( DTPNT_WAV / 3600 )) # Selected output parameters (gridded) -export OUTPARS_WAV=${OUTPARS_WAV:-"WND HS FP DP PHS PTP PDIR"} +export OUTPARS_WAV="WND CUR ICE HS T01 T02 DIR FP DP PHS PTP PDIR CHA" # Restart file config if [[ "${CDUMP}" = "gdas" ]]; then export WAVNCYC=4 export WAVHCYC=${assim_freq:-6} - export FHMAX_WAV_CUR=${FHMAX_WAV_CUR:-48} # RTOFS forecasts only out to 8 days + export FHMAX_WAV_CUR=48 # RTOFS forecasts only out to 8 days elif [[ ${gfs_cyc} -ne 0 ]]; then export WAVHCYC=${assim_freq:-6} - export FHMAX_WAV_CUR=${FHMAX_WAV_CUR:-192} # RTOFS forecasts only out to 8 days + export FHMAX_WAV_CUR=192 # RTOFS forecasts only out to 8 days else export WAVHCYC=0 - export FHMAX_WAV_CUR=${FHMAX_WAV_CUR:-192} # RTOFS forecasts only out to 8 days + export FHMAX_WAV_CUR=192 # RTOFS forecasts only out to 8 days fi # Restart timing business diff --git a/ush/hpssarch_gen.sh b/ush/hpssarch_gen.sh index 8707552ca1..138a5ff656 100755 --- a/ush/hpssarch_gen.sh +++ b/ush/hpssarch_gen.sh @@ -72,7 +72,7 @@ if [[ ${type} = "gfs" ]]; then "loginc.txt") for file in "${gsida_files[@]}"; do [[ -s ${COM_ATMOS_ANALYSIS}/${head}${file} ]] && echo "${COM_ATMOS_ANALYSIS/${ROTDIR}\//}/${head}${file}" - done + done } >> gfs_netcdfa.txt fi