From b6a732e18f7359ba8173b5186d31fc5bc3654824 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Tue, 3 Dec 2024 11:29:18 -0500 Subject: [PATCH 001/186] modified config.com --- parm/config/gfs/config.com | 1 + 1 file changed, 1 insertion(+) diff --git a/parm/config/gfs/config.com b/parm/config/gfs/config.com index d949edb33a..7f8a999732 100644 --- a/parm/config/gfs/config.com +++ b/parm/config/gfs/config.com @@ -74,6 +74,7 @@ declare -rx COM_WAVE_RESTART_TMPL=${COM_BASE}'/model/wave/restart' declare -rx COM_WAVE_PREP_TMPL=${COM_BASE}'/model/wave/prep' declare -rx COM_WAVE_HISTORY_TMPL=${COM_BASE}'/model/wave/history' declare -rx COM_WAVE_GRID_TMPL=${COM_BASE}'/products/wave/gridded' +declare -rx COM_WAVE_GRID_RES_TMPL=${COM_WAVE_GRID_TMPL}'/${GRID}' declare -rx COM_WAVE_STATION_TMPL=${COM_BASE}'/products/wave/station' declare -rx COM_WAVE_GEMPAK_TMPL=${COM_BASE}'/products/wave/gempak' declare -rx COM_WAVE_WMO_TMPL=${COM_BASE}'/products/wave/wmo' From 0a5ca0e2050846947f4e128e712751fac8f6965f Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Tue, 3 Dec 2024 12:07:13 -0500 Subject: [PATCH 002/186] modified jobs\JGLOBAL_ARCHIVE --- jobs/JGLOBAL_ARCHIVE | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/jobs/JGLOBAL_ARCHIVE b/jobs/JGLOBAL_ARCHIVE index 401feba35f..f1809ba7d8 100755 --- a/jobs/JGLOBAL_ARCHIVE +++ b/jobs/JGLOBAL_ARCHIVE @@ -50,6 +50,10 @@ for grid in "0p25" "0p50" "1p00"; do "COMIN_ATMOS_GRIB_${grid}:COM_ATMOS_GRIB_GRID_TMPL" done +for grid in "0p25" "0p50" "1p00"; do + YMD=${PDY} HH=${cyc} GRID=${grid} declare_from_tmpl -rx \ + "COMIN_WAVE_GRID_${grid}:COM_WAVE_GRID_RES_TMPL" +done ############################################################### # Run archive script ############################################################### From cb496d1818303d78de5a87c8aac24eea8ab1e01a Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Tue, 3 Dec 2024 12:11:05 -0500 Subject: [PATCH 003/186] modified jobs\JGLOBAL_EXTRACTVARS --- jobs/JGLOBAL_EXTRACTVARS | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/jobs/JGLOBAL_EXTRACTVARS b/jobs/JGLOBAL_EXTRACTVARS index 3478ca3976..70926b1279 100755 --- a/jobs/JGLOBAL_EXTRACTVARS +++ b/jobs/JGLOBAL_EXTRACTVARS @@ -10,6 +10,12 @@ for grid in '0p25' '0p50' '1p00'; do if [[ ! -d "${!prod_dir}" ]]; then mkdir -p "${!prod_dir}"; fi done +for grid in '0p25' '0p50' '1p00'; do + prod_dir="COMIN_WAVE_GRID_${grid}" + GRID=${grid} YMD=${PDY} HH=${cyc} declare_from_tmpl -rx "${prod_dir}:COM_WAVE_GRID_RES_TMPL" + if [[ ! -d "${!prod_dir}" ]]; then mkdir -p "${!prod_dir}"; fi +done + YMD="${PDY}" HH="${cyc}" declare_from_tmpl -rx \ "COMIN_OCEAN_HISTORY:COM_OCEAN_HISTORY_TMPL" \ "COMIN_OCEAN_GRIB:COM_OCEAN_GRIB_TMPL" \ From 3492b8c1f5beef1fabb674abe4029a47eb33cdeb Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Tue, 3 Dec 2024 13:08:24 -0500 Subject: [PATCH 004/186] modified jobs\JGLOBAL_WAVE_POST_SBS --- jobs/JGLOBAL_WAVE_POST_SBS | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/jobs/JGLOBAL_WAVE_POST_SBS b/jobs/JGLOBAL_WAVE_POST_SBS index 53ac4b2083..7f18b25c1c 100755 --- a/jobs/JGLOBAL_WAVE_POST_SBS +++ b/jobs/JGLOBAL_WAVE_POST_SBS @@ -19,6 +19,14 @@ for out_dir in "${COMOUT_WAVE_PREP}" "${COMOUT_WAVE_GRID}"; do if [[ ! -d "${out_dir}" ]]; then mkdir -p "${out_dir}"; fi done +for grid in "0p25" "0p50" "1p00"; do + GRID=${grid} YMD=${PDY} HH=${cyc} declare_from_tmpl -rx \ + COMOUT_WAVE_GRID_${grid}:COM_WAVE_GRID_RES_TMPL + COMOUT=COMOUT_WAVE_GRID_${grid} + if [[ ! -d "${COMOUT}" ]]; then + mkdir -m 775 -p "${COMOUT}" + fi +done # Set wave model ID tag to include member number # if ensemble; waveMEMB var empty in deterministic From 92cba9c1a4421a13516be8316bb8cfa93841d1e5 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Wed, 4 Dec 2024 12:19:51 -0500 Subject: [PATCH 005/186] modified jobs\JGLOBAL_WAVE_PRDGEN_GRIDDED --- jobs/JGLOBAL_WAVE_PRDGEN_GRIDDED | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/jobs/JGLOBAL_WAVE_PRDGEN_GRIDDED b/jobs/JGLOBAL_WAVE_PRDGEN_GRIDDED index 208b36c535..1b547c2c1e 100755 --- a/jobs/JGLOBAL_WAVE_PRDGEN_GRIDDED +++ b/jobs/JGLOBAL_WAVE_PRDGEN_GRIDDED @@ -13,6 +13,11 @@ export SENDDBN_NTC=${SENDDBN_NTC:-YES} export SENDDBN=${SENDDBN:-NO} export DBNROOT=${DBNROOT:-${UTILROOT}/fakedbn} +for grid in "0p25" "0p50" "1p00"; do + YMD=${PDY} HH=${cyc} GRID=${grid} declare_from_tmpl -rx \ + "COMIN_WAVE_GRID_${grid}:COM_WAVE_GRID_RES_TMPL" +done + YMD=${PDY} HH=${cyc} declare_from_tmpl -rx \ COMIN_WAVE_GRID:COM_WAVE_GRID_TMPL \ COMOUT_WAVE_WMO:COM_WAVE_WMO_TMPL From a0aa55b825944ecde1ede7ca76a47da807af0e8f Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Wed, 4 Dec 2024 12:20:08 -0500 Subject: [PATCH 006/186] updated the relevant yaml files --- parm/archive/gefs_extracted_wave.yaml.j2 | 28 +++++++++++++----------- parm/archive/gfswave.yaml.j2 | 13 +++++++---- 2 files changed, 24 insertions(+), 17 deletions(-) diff --git a/parm/archive/gefs_extracted_wave.yaml.j2 b/parm/archive/gefs_extracted_wave.yaml.j2 index e0aa07c816..7b66991a81 100644 --- a/parm/archive/gefs_extracted_wave.yaml.j2 +++ b/parm/archive/gefs_extracted_wave.yaml.j2 @@ -27,17 +27,6 @@ gefs_wave: '${YMD}':cycle_YMD, '${HH}':cycle_HH, '${MEMDIR}':mem }) %} - - {% set COMIN_WAVE_GRID = COM_WAVE_GRID_TMPL | replace_tmpl(tmpl_dict) %} - # Select grib2 files to copy to the atardir - {% if path_exists(COMIN_WAVE_GRID) %} - {% for fhr in range(ofst_hr, FHMAX_GFS + FHOUT_WAV, FHOUT_WAV) %} - {% set file_name = head ~ "global." ~ res ~ ".f" ~ '%03d'|format(fhr) ~ ".grib2" %} - {% set file_path = COMIN_WAVE_GRID ~ "/" ~ file_name %} - - "{{ file_path | relpath(ROTDIR)}}" - {% endfor %} - {% endif %} - {% set COMIN_WAVE_STATION = COM_WAVE_STATION_TMPL | replace_tmpl(tmpl_dict) %} # Select station files to copy to the atardir {% if path_exists(COMIN_WAVE_STATION) %} @@ -47,5 +36,18 @@ gefs_wave: - "{{ file_path | relpath(ROTDIR)}}" {% set file_path = COMIN_WAVE_STATION ~ "/" ~ RUN ~ "wave.t" ~ cycle_HH ~ "z.bull_tar" %} - "{{ file_path | relpath(ROTDIR)}}" - {% endif %} -{% endfor %} + + {% for res in ['0p25', '0p50', '1p00'] %} + {% set tmpl_dict = tmpl_dict.update({ '${GRID}':res }) %} + {% set COMIN_WAVE_GRID = COM_WAVE_GRID_RES_TMPL | replace_tmpl(tmpl_dict) %} + # Select grib2 files to copy to the atardir + {% if path_exists(COMIN_WAVE_GRID) %} + {% for fhr in range(ofst_hr, FHMAX_GFS + FHOUT_WAV, FHOUT_WAV) %} + {% set file_name = head ~ "global." ~ res ~ ".f" ~ '%03d'|format(fhr) ~ ".grib2" %} + {% set file_path = COMIN_WAVE_GRID ~ "/" ~ file_name %} + - "{{ file_path | relpath(ROTDIR)}}" + + {% endfor %} + {% endif %} + {% endfor %} +{% endfor %} \ No newline at end of file diff --git a/parm/archive/gfswave.yaml.j2 b/parm/archive/gfswave.yaml.j2 index 6909421757..58f1d445c4 100644 --- a/parm/archive/gfswave.yaml.j2 +++ b/parm/archive/gfswave.yaml.j2 @@ -4,17 +4,22 @@ gfswave: target: "{{ ATARDIR }}/{{ cycle_YMDH }}/gfswave.tar" required: # Wave GRIB2 regional forecast products + {% for res in ['0p25', '0p50', '1p00'] %} + {% set file_path = COMIN_WAVE_GRID ~ "/" ~ res %} + {% for fh in range(0, FHMAX_HF_WAV + FHOUT_HF_WAV, FHOUT_HF_WAV) %} # NOTE This is as explicit as possible without major logic to parse wavepostGRD. # Matches files of the form "gfswave.tCCz...fHHH.grib2". - - "{{ COMIN_WAVE_GRID | relpath(ROTDIR) }}/{{ head }}*.*.f{{ '%03d' % fh }}.grib2" - - "{{ COMIN_WAVE_GRID | relpath(ROTDIR) }}/{{ head }}*.*.f{{ '%03d' % fh }}.grib2.idx" + - "{{ file_path | relpath(ROTDIR) }}/{{ head }}*.*.f{{ '%03d' % fh }}.grib2" + - "{{ file_path | relpath(ROTDIR) }}/{{ head }}*.*.f{{ '%03d' % fh }}.grib2.idx" {% endfor %} # Global wave GRIB2 forecast products {% for fh in range(FHMAX_HF_WAV + FHOUT_WAV, FHMAX_WAV_GFS + FHOUT_WAV, FHOUT_WAV) %} - - "{{ COMIN_WAVE_GRID | relpath(ROTDIR) }}/{{ head }}*.*.f{{ '%03d' % fh }}.grib2" - - "{{ COMIN_WAVE_GRID | relpath(ROTDIR) }}/{{ head }}*.*.f{{ '%03d' % fh }}.grib2.idx" + - "{{ file_path | relpath(ROTDIR) }}/{{ head }}*.*.f{{ '%03d' % fh }}.grib2" + - "{{ file_path | relpath(ROTDIR) }}/{{ head }}*.*.f{{ '%03d' % fh }}.grib2.idx" + {% endfor %} + {% endfor %} # Wave bulletins From 52eda4b8836b2f851f61f6688d6d1af24956619c Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Wed, 4 Dec 2024 14:43:06 -0500 Subject: [PATCH 007/186] modified parm\archive\gefs_extracted_wave.yaml.j2 --- parm/archive/gefs_extracted_wave.yaml.j2 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/parm/archive/gefs_extracted_wave.yaml.j2 b/parm/archive/gefs_extracted_wave.yaml.j2 index 7b66991a81..fd9afc5a35 100644 --- a/parm/archive/gefs_extracted_wave.yaml.j2 +++ b/parm/archive/gefs_extracted_wave.yaml.j2 @@ -50,4 +50,4 @@ gefs_wave: {% endfor %} {% endif %} {% endfor %} -{% endfor %} \ No newline at end of file +{% endfor %} From c2ce78f92f981bfc24a544edc05811855ed5f287 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Thu, 5 Dec 2024 11:41:28 -0500 Subject: [PATCH 008/186] modified jobs\JGLOBAL_ARCHIVE --- jobs/JGLOBAL_ARCHIVE | 31 +++++++++++++++++++++++++++---- 1 file changed, 27 insertions(+), 4 deletions(-) diff --git a/jobs/JGLOBAL_ARCHIVE b/jobs/JGLOBAL_ARCHIVE index f1809ba7d8..6e07f1aa07 100755 --- a/jobs/JGLOBAL_ARCHIVE +++ b/jobs/JGLOBAL_ARCHIVE @@ -50,10 +50,33 @@ for grid in "0p25" "0p50" "1p00"; do "COMIN_ATMOS_GRIB_${grid}:COM_ATMOS_GRIB_GRID_TMPL" done -for grid in "0p25" "0p50" "1p00"; do - YMD=${PDY} HH=${cyc} GRID=${grid} declare_from_tmpl -rx \ - "COMIN_WAVE_GRID_${grid}:COM_WAVE_GRID_RES_TMPL" -done +for grdID in ${wavepostGRD} ${waveinterpGRD}; do + case $grdID in + glo_15mxt) GRDRES=0p25;; + reg025) GRDRES=0p25;; + glo_025) GRDRES=0p25;; + glo_100) GRDRES=1p00;; + glo_200) GRDRES=2p00;; + glo_500) GRDRES=5p00;; + glo_30mxt) GRDRES=0p50;; + glo_30m) GRDRES=0p50;; + at_10m) GRDRES=0p16;; + ep_10m) GRDRES=0p16 ;; + wc_10m) GRDRES=0p16;; + ak_10m) GRDRES=0p16;; + ant_9km) GRDRES=9km;; + glo_10m) GRDRES=0p16;; + gnh_10m) GRDRES=0p16;; + gsh_15m) GRDRES=0p25;; + glo_15m) GRDRES=0p25;; + ao_20m) GRDRES=0p33;; + so_20m) GRDRES=0p33;; + gwes_30m) GRDRES=0p50;; + esac + +YMD=${PDY} HH=${cyc} GRID=${GRDRES} declare_from_tmpl -rx \ + "COMIN_WAVE_GRID_${grid}:COM_WAVE_GRID_RES_TMPL" + ############################################################### # Run archive script ############################################################### From 261c8335c217afeb7a11aa532a1bcafbe63117b4 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Thu, 5 Dec 2024 11:44:49 -0500 Subject: [PATCH 009/186] modified jobs\JGLOBAL_ARCHIVE --- jobs/JGLOBAL_ARCHIVE | 1 + 1 file changed, 1 insertion(+) diff --git a/jobs/JGLOBAL_ARCHIVE b/jobs/JGLOBAL_ARCHIVE index 6e07f1aa07..7e6cb5e807 100755 --- a/jobs/JGLOBAL_ARCHIVE +++ b/jobs/JGLOBAL_ARCHIVE @@ -73,6 +73,7 @@ for grdID in ${wavepostGRD} ${waveinterpGRD}; do so_20m) GRDRES=0p33;; gwes_30m) GRDRES=0p50;; esac +done YMD=${PDY} HH=${cyc} GRID=${GRDRES} declare_from_tmpl -rx \ "COMIN_WAVE_GRID_${grid}:COM_WAVE_GRID_RES_TMPL" From 8b0194935d082dd545e99b0bdff7509010acc9af Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Thu, 5 Dec 2024 11:48:23 -0500 Subject: [PATCH 010/186] modified jobs\JGLOBAL_ARCHIVE --- jobs/JGLOBAL_ARCHIVE | 3 +++ 1 file changed, 3 insertions(+) diff --git a/jobs/JGLOBAL_ARCHIVE b/jobs/JGLOBAL_ARCHIVE index 7e6cb5e807..2dbbc9098b 100755 --- a/jobs/JGLOBAL_ARCHIVE +++ b/jobs/JGLOBAL_ARCHIVE @@ -72,6 +72,9 @@ for grdID in ${wavepostGRD} ${waveinterpGRD}; do ao_20m) GRDRES=0p33;; so_20m) GRDRES=0p33;; gwes_30m) GRDRES=0p50;; + *) + echo "FATAL ERROR: No grid specific wave config values exist for ${grdID}. Aborting." + exit 1;; esac done From 257cd4addd6c393799cb47efae3de43e88d09de9 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Thu, 5 Dec 2024 11:52:56 -0500 Subject: [PATCH 011/186] modified typos JGLOBAL_ARCHIVE and JGLOBAL_WAVE_POST_SBS --- jobs/JGLOBAL_ARCHIVE | 2 +- jobs/JGLOBAL_WAVE_POST_SBS | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/jobs/JGLOBAL_ARCHIVE b/jobs/JGLOBAL_ARCHIVE index 2dbbc9098b..aa64e86f3f 100755 --- a/jobs/JGLOBAL_ARCHIVE +++ b/jobs/JGLOBAL_ARCHIVE @@ -51,7 +51,7 @@ for grid in "0p25" "0p50" "1p00"; do done for grdID in ${wavepostGRD} ${waveinterpGRD}; do - case $grdID in + case ${grdID} in glo_15mxt) GRDRES=0p25;; reg025) GRDRES=0p25;; glo_025) GRDRES=0p25;; diff --git a/jobs/JGLOBAL_WAVE_POST_SBS b/jobs/JGLOBAL_WAVE_POST_SBS index 7f18b25c1c..f27a50766e 100755 --- a/jobs/JGLOBAL_WAVE_POST_SBS +++ b/jobs/JGLOBAL_WAVE_POST_SBS @@ -44,7 +44,7 @@ ${SCRgfs}/exgfs_wave_post_gridded_sbs.sh err=$? if [ ${err} -ne 0 ]; then echo "FATAL ERROR: ex-script of GWES_POST failed!" - exit ${err} + exit "${err}" fi ########################################## From 46747069582a584b720fec5af35f061b134abaf2 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Thu, 5 Dec 2024 11:54:42 -0500 Subject: [PATCH 012/186] modifed jobs\JGLOBAL_ARCHIVE --- jobs/JGLOBAL_ARCHIVE | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/jobs/JGLOBAL_ARCHIVE b/jobs/JGLOBAL_ARCHIVE index aa64e86f3f..6fc906e3b8 100755 --- a/jobs/JGLOBAL_ARCHIVE +++ b/jobs/JGLOBAL_ARCHIVE @@ -72,7 +72,7 @@ for grdID in ${wavepostGRD} ${waveinterpGRD}; do ao_20m) GRDRES=0p33;; so_20m) GRDRES=0p33;; gwes_30m) GRDRES=0p50;; - *) + *) echo "FATAL ERROR: No grid specific wave config values exist for ${grdID}. Aborting." exit 1;; esac From bac1bb9dd3b2d732b55b27ec7dc7b9da5b8bcb46 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Thu, 5 Dec 2024 11:57:01 -0500 Subject: [PATCH 013/186] modified jobs\JGLOBAL_ARCHIVE --- jobs/JGLOBAL_ARCHIVE | 44 ++++++++++++++++++++++---------------------- 1 file changed, 22 insertions(+), 22 deletions(-) diff --git a/jobs/JGLOBAL_ARCHIVE b/jobs/JGLOBAL_ARCHIVE index 6fc906e3b8..4433ea33d7 100755 --- a/jobs/JGLOBAL_ARCHIVE +++ b/jobs/JGLOBAL_ARCHIVE @@ -51,31 +51,31 @@ for grid in "0p25" "0p50" "1p00"; do done for grdID in ${wavepostGRD} ${waveinterpGRD}; do - case ${grdID} in - glo_15mxt) GRDRES=0p25;; - reg025) GRDRES=0p25;; - glo_025) GRDRES=0p25;; - glo_100) GRDRES=1p00;; - glo_200) GRDRES=2p00;; - glo_500) GRDRES=5p00;; - glo_30mxt) GRDRES=0p50;; - glo_30m) GRDRES=0p50;; - at_10m) GRDRES=0p16;; - ep_10m) GRDRES=0p16 ;; - wc_10m) GRDRES=0p16;; - ak_10m) GRDRES=0p16;; - ant_9km) GRDRES=9km;; - glo_10m) GRDRES=0p16;; - gnh_10m) GRDRES=0p16;; - gsh_15m) GRDRES=0p25;; - glo_15m) GRDRES=0p25;; - ao_20m) GRDRES=0p33;; - so_20m) GRDRES=0p33;; - gwes_30m) GRDRES=0p50;; + case ${grdID} in + glo_15mxt) GRDRES=0p25;; + reg025) GRDRES=0p25;; + glo_025) GRDRES=0p25;; + glo_100) GRDRES=1p00;; + glo_200) GRDRES=2p00;; + glo_500) GRDRES=5p00;; + glo_30mxt) GRDRES=0p50;; + glo_30m) GRDRES=0p50;; + at_10m) GRDRES=0p16;; + ep_10m) GRDRES=0p16 ;; + wc_10m) GRDRES=0p16;; + ak_10m) GRDRES=0p16;; + ant_9km) GRDRES=9km;; + glo_10m) GRDRES=0p16;; + gnh_10m) GRDRES=0p16;; + gsh_15m) GRDRES=0p25;; + glo_15m) GRDRES=0p25;; + ao_20m) GRDRES=0p33;; + so_20m) GRDRES=0p33;; + gwes_30m) GRDRES=0p50;; *) echo "FATAL ERROR: No grid specific wave config values exist for ${grdID}. Aborting." exit 1;; - esac + esac done YMD=${PDY} HH=${cyc} GRID=${GRDRES} declare_from_tmpl -rx \ From 477df47688f6ea0ea6f061a01250dbffa59688fb Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Thu, 5 Dec 2024 12:21:59 -0500 Subject: [PATCH 014/186] modified jobs\JGLOBAL_EXTRACTVARS --- jobs/JGLOBAL_EXTRACTVARS | 35 +++++++++++++++++++++++++++++++---- 1 file changed, 31 insertions(+), 4 deletions(-) diff --git a/jobs/JGLOBAL_EXTRACTVARS b/jobs/JGLOBAL_EXTRACTVARS index 70926b1279..6ee52cb6d5 100755 --- a/jobs/JGLOBAL_EXTRACTVARS +++ b/jobs/JGLOBAL_EXTRACTVARS @@ -10,12 +10,39 @@ for grid in '0p25' '0p50' '1p00'; do if [[ ! -d "${!prod_dir}" ]]; then mkdir -p "${!prod_dir}"; fi done -for grid in '0p25' '0p50' '1p00'; do - prod_dir="COMIN_WAVE_GRID_${grid}" - GRID=${grid} YMD=${PDY} HH=${cyc} declare_from_tmpl -rx "${prod_dir}:COM_WAVE_GRID_RES_TMPL" - if [[ ! -d "${!prod_dir}" ]]; then mkdir -p "${!prod_dir}"; fi +for grdID in ${wavepostGRD} ${waveinterpGRD}; do + case ${grdID} in + glo_15mxt) GRDRES=0p25;; + reg025) GRDRES=0p25;; + glo_025) GRDRES=0p25;; + glo_100) GRDRES=1p00;; + glo_200) GRDRES=2p00;; + glo_500) GRDRES=5p00;; + glo_30mxt) GRDRES=0p50;; + glo_30m) GRDRES=0p50;; + at_10m) GRDRES=0p16;; + ep_10m) GRDRES=0p16 ;; + wc_10m) GRDRES=0p16;; + ak_10m) GRDRES=0p16;; + ant_9km) GRDRES=9km;; + glo_10m) GRDRES=0p16;; + gnh_10m) GRDRES=0p16;; + gsh_15m) GRDRES=0p25;; + glo_15m) GRDRES=0p25;; + ao_20m) GRDRES=0p33;; + so_20m) GRDRES=0p33;; + gwes_30m) GRDRES=0p50;; + *) + echo "FATAL ERROR: No grid specific wave config values exist for ${grdID}. Aborting." + exit 1;; + esac done +prod_dir="COMIN_WAVE_GRID_${GRDRES}" +YMD=${PDY} HH=${cyc} GRID=${GRDRES} declare_from_tmpl -rx \ +"${prod_dir}:COM_WAVE_GRID_RES_TMPL" +if [[ ! -d "${!prod_dir}" ]]; then mkdir -p "${!prod_dir}"; fi + YMD="${PDY}" HH="${cyc}" declare_from_tmpl -rx \ "COMIN_OCEAN_HISTORY:COM_OCEAN_HISTORY_TMPL" \ "COMIN_OCEAN_GRIB:COM_OCEAN_GRIB_TMPL" \ From f1e54baf1a950a03cc55952052c93648d2de1916 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Thu, 5 Dec 2024 12:30:28 -0500 Subject: [PATCH 015/186] modified jobs\JGLOBAL_WAVE_POST_SBS --- jobs/JGLOBAL_WAVE_POST_SBS | 42 +++++++++++++++++++++++++++++++------- 1 file changed, 35 insertions(+), 7 deletions(-) diff --git a/jobs/JGLOBAL_WAVE_POST_SBS b/jobs/JGLOBAL_WAVE_POST_SBS index f27a50766e..3a5df030a3 100755 --- a/jobs/JGLOBAL_WAVE_POST_SBS +++ b/jobs/JGLOBAL_WAVE_POST_SBS @@ -19,15 +19,43 @@ for out_dir in "${COMOUT_WAVE_PREP}" "${COMOUT_WAVE_GRID}"; do if [[ ! -d "${out_dir}" ]]; then mkdir -p "${out_dir}"; fi done -for grid in "0p25" "0p50" "1p00"; do - GRID=${grid} YMD=${PDY} HH=${cyc} declare_from_tmpl -rx \ - COMOUT_WAVE_GRID_${grid}:COM_WAVE_GRID_RES_TMPL - COMOUT=COMOUT_WAVE_GRID_${grid} - if [[ ! -d "${COMOUT}" ]]; then - mkdir -m 775 -p "${COMOUT}" - fi +for grdID in ${wavepostGRD} ${waveinterpGRD}; do + case ${grdID} in + glo_15mxt) GRDRES=0p25;; + reg025) GRDRES=0p25;; + glo_025) GRDRES=0p25;; + glo_100) GRDRES=1p00;; + glo_200) GRDRES=2p00;; + glo_500) GRDRES=5p00;; + glo_30mxt) GRDRES=0p50;; + glo_30m) GRDRES=0p50;; + at_10m) GRDRES=0p16;; + ep_10m) GRDRES=0p16 ;; + wc_10m) GRDRES=0p16;; + ak_10m) GRDRES=0p16;; + ant_9km) GRDRES=9km;; + glo_10m) GRDRES=0p16;; + gnh_10m) GRDRES=0p16;; + gsh_15m) GRDRES=0p25;; + glo_15m) GRDRES=0p25;; + ao_20m) GRDRES=0p33;; + so_20m) GRDRES=0p33;; + gwes_30m) GRDRES=0p50;; + *) + echo "FATAL ERROR: No grid specific wave config values exist for ${grdID}. Aborting." + exit 1;; + esac done + +GRID=${grdID} YMD=${PDY} HH=${cyc} declare_from_tmpl -rx \ + "COMOUT_WAVE_GRID_${grdID}:COM_WAVE_GRID_RES_TMPL" +COMOUT=COMOUT_WAVE_GRID_${grdID} +if [[ ! -d "${COMOUT}" ]]; then + mkdir -m 775 -p "${COMOUT}" +fi + + # Set wave model ID tag to include member number # if ensemble; waveMEMB var empty in deterministic # Set wave model ID tag to include member number From a91797e9668a5c96d7653966a99c743845366726 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Thu, 5 Dec 2024 12:31:25 -0500 Subject: [PATCH 016/186] modified jobs\JGLOBAL_WAVE_POST_SBS --- jobs/JGLOBAL_WAVE_POST_SBS | 2 -- 1 file changed, 2 deletions(-) diff --git a/jobs/JGLOBAL_WAVE_POST_SBS b/jobs/JGLOBAL_WAVE_POST_SBS index 3a5df030a3..93d056b393 100755 --- a/jobs/JGLOBAL_WAVE_POST_SBS +++ b/jobs/JGLOBAL_WAVE_POST_SBS @@ -47,7 +47,6 @@ for grdID in ${wavepostGRD} ${waveinterpGRD}; do esac done - GRID=${grdID} YMD=${PDY} HH=${cyc} declare_from_tmpl -rx \ "COMOUT_WAVE_GRID_${grdID}:COM_WAVE_GRID_RES_TMPL" COMOUT=COMOUT_WAVE_GRID_${grdID} @@ -55,7 +54,6 @@ if [[ ! -d "${COMOUT}" ]]; then mkdir -m 775 -p "${COMOUT}" fi - # Set wave model ID tag to include member number # if ensemble; waveMEMB var empty in deterministic # Set wave model ID tag to include member number From 832141fb38c67f9b68f0e4193f21afede99ac019 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Thu, 5 Dec 2024 12:32:39 -0500 Subject: [PATCH 017/186] modified jobs\JGLOBAL_WAVE_POST_SBS --- jobs/JGLOBAL_WAVE_POST_SBS | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/jobs/JGLOBAL_WAVE_POST_SBS b/jobs/JGLOBAL_WAVE_POST_SBS index 93d056b393..5a250330ac 100755 --- a/jobs/JGLOBAL_WAVE_POST_SBS +++ b/jobs/JGLOBAL_WAVE_POST_SBS @@ -42,14 +42,14 @@ for grdID in ${wavepostGRD} ${waveinterpGRD}; do so_20m) GRDRES=0p33;; gwes_30m) GRDRES=0p50;; *) - echo "FATAL ERROR: No grid specific wave config values exist for ${grdID}. Aborting." + echo "FATAL ERROR: No grid specific wave config values exist for ${GRDRES}. Aborting." exit 1;; esac done -GRID=${grdID} YMD=${PDY} HH=${cyc} declare_from_tmpl -rx \ - "COMOUT_WAVE_GRID_${grdID}:COM_WAVE_GRID_RES_TMPL" -COMOUT=COMOUT_WAVE_GRID_${grdID} +GRID=${GRDRES} YMD=${PDY} HH=${cyc} declare_from_tmpl -rx \ + "COMOUT_WAVE_GRID_${GRDRES}:COM_WAVE_GRID_RES_TMPL" +COMOUT=COMOUT_WAVE_GRID_${GRDRES} if [[ ! -d "${COMOUT}" ]]; then mkdir -m 775 -p "${COMOUT}" fi From cccf13a3149429b30f3a9aff03fb6f98913f0ec6 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Thu, 5 Dec 2024 12:37:19 -0500 Subject: [PATCH 018/186] modified JGLOBAL --- jobs/JGLOBAL_ARCHIVE | 2 +- jobs/JGLOBAL_WAVE_PRDGEN_GRIDDED | 33 +++++++++++++++++++++++++++++--- 2 files changed, 31 insertions(+), 4 deletions(-) diff --git a/jobs/JGLOBAL_ARCHIVE b/jobs/JGLOBAL_ARCHIVE index 4433ea33d7..0ba3a12e5c 100755 --- a/jobs/JGLOBAL_ARCHIVE +++ b/jobs/JGLOBAL_ARCHIVE @@ -79,7 +79,7 @@ for grdID in ${wavepostGRD} ${waveinterpGRD}; do done YMD=${PDY} HH=${cyc} GRID=${GRDRES} declare_from_tmpl -rx \ - "COMIN_WAVE_GRID_${grid}:COM_WAVE_GRID_RES_TMPL" + "COMIN_WAVE_GRID_${GRDRES}:COM_WAVE_GRID_RES_TMPL" ############################################################### # Run archive script diff --git a/jobs/JGLOBAL_WAVE_PRDGEN_GRIDDED b/jobs/JGLOBAL_WAVE_PRDGEN_GRIDDED index 1b547c2c1e..8224076185 100755 --- a/jobs/JGLOBAL_WAVE_PRDGEN_GRIDDED +++ b/jobs/JGLOBAL_WAVE_PRDGEN_GRIDDED @@ -13,11 +13,38 @@ export SENDDBN_NTC=${SENDDBN_NTC:-YES} export SENDDBN=${SENDDBN:-NO} export DBNROOT=${DBNROOT:-${UTILROOT}/fakedbn} -for grid in "0p25" "0p50" "1p00"; do - YMD=${PDY} HH=${cyc} GRID=${grid} declare_from_tmpl -rx \ - "COMIN_WAVE_GRID_${grid}:COM_WAVE_GRID_RES_TMPL" +for grdID in ${wavepostGRD} ${waveinterpGRD}; do + case ${grdID} in + glo_15mxt) GRDRES=0p25;; + reg025) GRDRES=0p25;; + glo_025) GRDRES=0p25;; + glo_100) GRDRES=1p00;; + glo_200) GRDRES=2p00;; + glo_500) GRDRES=5p00;; + glo_30mxt) GRDRES=0p50;; + glo_30m) GRDRES=0p50;; + at_10m) GRDRES=0p16;; + ep_10m) GRDRES=0p16 ;; + wc_10m) GRDRES=0p16;; + ak_10m) GRDRES=0p16;; + ant_9km) GRDRES=9km;; + glo_10m) GRDRES=0p16;; + gnh_10m) GRDRES=0p16;; + gsh_15m) GRDRES=0p25;; + glo_15m) GRDRES=0p25;; + ao_20m) GRDRES=0p33;; + so_20m) GRDRES=0p33;; + gwes_30m) GRDRES=0p50;; + *) + echo "FATAL ERROR: No grid specific wave config values exist for ${GRDRES}. Aborting." + exit 1;; + esac done + +YMD=${PDY} HH=${cyc} GRID=${GRDRES} declare_from_tmpl -rx \ + "COMIN_WAVE_GRID_${GRDRES}:COM_WAVE_GRID_RES_TMPL" + YMD=${PDY} HH=${cyc} declare_from_tmpl -rx \ COMIN_WAVE_GRID:COM_WAVE_GRID_TMPL \ COMOUT_WAVE_WMO:COM_WAVE_WMO_TMPL From 2ce47a670b4decbd7ca5399452b34580327a46dd Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Thu, 5 Dec 2024 23:33:20 -0500 Subject: [PATCH 019/186] modified JGLOBAL jobs --- jobs/JGLOBAL_ARCHIVE | 5 +++-- jobs/JGLOBAL_EXTRACTVARS | 9 +++++---- jobs/JGLOBAL_WAVE_POST_SBS | 13 +++++++------ 3 files changed, 15 insertions(+), 12 deletions(-) diff --git a/jobs/JGLOBAL_ARCHIVE b/jobs/JGLOBAL_ARCHIVE index 0ba3a12e5c..54223cb945 100755 --- a/jobs/JGLOBAL_ARCHIVE +++ b/jobs/JGLOBAL_ARCHIVE @@ -76,10 +76,11 @@ for grdID in ${wavepostGRD} ${waveinterpGRD}; do echo "FATAL ERROR: No grid specific wave config values exist for ${grdID}. Aborting." exit 1;; esac + YMD=${PDY} HH=${cyc} GRID=${GRDRES} declare_from_tmpl -rx \ + "COMIN_WAVE_GRID_${GRDRES}:COM_WAVE_GRID_RES_TMPL" done -YMD=${PDY} HH=${cyc} GRID=${GRDRES} declare_from_tmpl -rx \ - "COMIN_WAVE_GRID_${GRDRES}:COM_WAVE_GRID_RES_TMPL" + ############################################################### # Run archive script diff --git a/jobs/JGLOBAL_EXTRACTVARS b/jobs/JGLOBAL_EXTRACTVARS index 6ee52cb6d5..5772c77b58 100755 --- a/jobs/JGLOBAL_EXTRACTVARS +++ b/jobs/JGLOBAL_EXTRACTVARS @@ -36,12 +36,13 @@ for grdID in ${wavepostGRD} ${waveinterpGRD}; do echo "FATAL ERROR: No grid specific wave config values exist for ${grdID}. Aborting." exit 1;; esac + prod_dir="COMIN_WAVE_GRID_${GRDRES}" + YMD=${PDY} HH=${cyc} GRID=${GRDRES} declare_from_tmpl -rx \ + "${prod_dir}:COM_WAVE_GRID_RES_TMPL" + if [[ ! -d "${!prod_dir}" ]]; then mkdir -p "${!prod_dir}"; fi done -prod_dir="COMIN_WAVE_GRID_${GRDRES}" -YMD=${PDY} HH=${cyc} GRID=${GRDRES} declare_from_tmpl -rx \ -"${prod_dir}:COM_WAVE_GRID_RES_TMPL" -if [[ ! -d "${!prod_dir}" ]]; then mkdir -p "${!prod_dir}"; fi + YMD="${PDY}" HH="${cyc}" declare_from_tmpl -rx \ "COMIN_OCEAN_HISTORY:COM_OCEAN_HISTORY_TMPL" \ diff --git a/jobs/JGLOBAL_WAVE_POST_SBS b/jobs/JGLOBAL_WAVE_POST_SBS index 5a250330ac..3cd5a34a15 100755 --- a/jobs/JGLOBAL_WAVE_POST_SBS +++ b/jobs/JGLOBAL_WAVE_POST_SBS @@ -45,14 +45,15 @@ for grdID in ${wavepostGRD} ${waveinterpGRD}; do echo "FATAL ERROR: No grid specific wave config values exist for ${GRDRES}. Aborting." exit 1;; esac + GRID=${GRDRES} YMD=${PDY} HH=${cyc} declare_from_tmpl -rx \ + "COMOUT_WAVE_GRID_${GRDRES}:COM_WAVE_GRID_RES_TMPL" + COMOUT=COMOUT_WAVE_GRID_${GRDRES} + if [[ ! -d "${COMOUT}" ]]; then + mkdir -m 775 -p "${COMOUT}" + fi done -GRID=${GRDRES} YMD=${PDY} HH=${cyc} declare_from_tmpl -rx \ - "COMOUT_WAVE_GRID_${GRDRES}:COM_WAVE_GRID_RES_TMPL" -COMOUT=COMOUT_WAVE_GRID_${GRDRES} -if [[ ! -d "${COMOUT}" ]]; then - mkdir -m 775 -p "${COMOUT}" -fi + # Set wave model ID tag to include member number # if ensemble; waveMEMB var empty in deterministic From fd3e0e47c9da3e759f7ea8a8db7cb45ff4aeac46 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Thu, 5 Dec 2024 23:34:37 -0500 Subject: [PATCH 020/186] modified jobs\JGLOBAL_ARCHIVE --- jobs/JGLOBAL_ARCHIVE | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/jobs/JGLOBAL_ARCHIVE b/jobs/JGLOBAL_ARCHIVE index 54223cb945..82c2f530ec 100755 --- a/jobs/JGLOBAL_ARCHIVE +++ b/jobs/JGLOBAL_ARCHIVE @@ -76,8 +76,8 @@ for grdID in ${wavepostGRD} ${waveinterpGRD}; do echo "FATAL ERROR: No grid specific wave config values exist for ${grdID}. Aborting." exit 1;; esac - YMD=${PDY} HH=${cyc} GRID=${GRDRES} declare_from_tmpl -rx \ - "COMIN_WAVE_GRID_${GRDRES}:COM_WAVE_GRID_RES_TMPL" + YMD=${PDY} HH=${cyc} GRID=${GRDRES} declare_from_tmpl -rx \ + "COMIN_WAVE_GRID_${GRDRES}:COM_WAVE_GRID_RES_TMPL" done From 75bb84a91051221cc8c404a6f69ef59b09b7f83f Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Thu, 5 Dec 2024 23:36:29 -0500 Subject: [PATCH 021/186] modified jobs\JGLOBAL_WAVE_PRDGEN_GRIDDED --- jobs/JGLOBAL_WAVE_PRDGEN_GRIDDED | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/jobs/JGLOBAL_WAVE_PRDGEN_GRIDDED b/jobs/JGLOBAL_WAVE_PRDGEN_GRIDDED index 8224076185..0773d21456 100755 --- a/jobs/JGLOBAL_WAVE_PRDGEN_GRIDDED +++ b/jobs/JGLOBAL_WAVE_PRDGEN_GRIDDED @@ -39,11 +39,12 @@ for grdID in ${wavepostGRD} ${waveinterpGRD}; do echo "FATAL ERROR: No grid specific wave config values exist for ${GRDRES}. Aborting." exit 1;; esac + YMD=${PDY} HH=${cyc} GRID=${GRDRES} declare_from_tmpl -rx \ + "COMIN_WAVE_GRID_${GRDRES}:COM_WAVE_GRID_RES_TMPL" done -YMD=${PDY} HH=${cyc} GRID=${GRDRES} declare_from_tmpl -rx \ - "COMIN_WAVE_GRID_${GRDRES}:COM_WAVE_GRID_RES_TMPL" + YMD=${PDY} HH=${cyc} declare_from_tmpl -rx \ COMIN_WAVE_GRID:COM_WAVE_GRID_TMPL \ From acee85c3d5fe41a7c81641536a64aa9c20199d19 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Fri, 6 Dec 2024 15:45:43 -0500 Subject: [PATCH 022/186] modified JGLOBAl scripts --- jobs/JGLOBAL_ARCHIVE | 51 +++++++++++++++++------------- jobs/JGLOBAL_EXTRACTVARS | 51 +++++++++++++++++------------- jobs/JGLOBAL_WAVE_POST_SBS | 53 ++++++++++++++++++-------------- jobs/JGLOBAL_WAVE_PRDGEN_GRIDDED | 53 ++++++++++++++++++-------------- 4 files changed, 118 insertions(+), 90 deletions(-) diff --git a/jobs/JGLOBAL_ARCHIVE b/jobs/JGLOBAL_ARCHIVE index 82c2f530ec..df0980ba77 100755 --- a/jobs/JGLOBAL_ARCHIVE +++ b/jobs/JGLOBAL_ARCHIVE @@ -52,32 +52,39 @@ done for grdID in ${wavepostGRD} ${waveinterpGRD}; do case ${grdID} in - glo_15mxt) GRDRES=0p25;; - reg025) GRDRES=0p25;; - glo_025) GRDRES=0p25;; - glo_100) GRDRES=1p00;; - glo_200) GRDRES=2p00;; - glo_500) GRDRES=5p00;; - glo_30mxt) GRDRES=0p50;; - glo_30m) GRDRES=0p50;; - at_10m) GRDRES=0p16;; - ep_10m) GRDRES=0p16 ;; - wc_10m) GRDRES=0p16;; - ak_10m) GRDRES=0p16;; - ant_9km) GRDRES=9km;; - glo_10m) GRDRES=0p16;; - gnh_10m) GRDRES=0p16;; - gsh_15m) GRDRES=0p25;; - glo_15m) GRDRES=0p25;; - ao_20m) GRDRES=0p33;; - so_20m) GRDRES=0p33;; - gwes_30m) GRDRES=0p50;; + glo_15mxt) GRDNAME='global' ; GRDRES=0p25;; + reg025) GRDNAME='global' ; GRDRES=0p25 ; ;; + glo_025) GRDNAME='global' ; GRDRES=0p25 ;; + glo_100) GRDNAME='global' ; GRDRES=1p00;; + glo_200) GRDNAME='global' ; GRDRES=2p00;; + glo_500) GRDNAME='global' ; GRDRES=5p00;; + glo_30mxt) GRDNAME='global' ; GRDRES=0p50 ;; + glo_30m) GRDNAME='global' ; GRDRES=0p50 ;; + at_10m) GRDNAME='atlocn' ; GRDRES=0p16 ;; + ep_10m) GRDNAME='epacif' ; GRDRES=0p16;; + wc_10m) GRDNAME='wcoast' ; GRDRES=0p16 ;; + ak_10m) GRDNAME='alaska' ; GRDRES=0p16;; + aoc_9km) GRDNAME='arctic' ; GRDRES=9km;; + ant_9km) GRDNAME='antarc' ; GRDRES=9km ;; + glo_10m) GRDNAME='global' ; GRDRES=0p16;; + gnh_10m) GRDNAME='global' ; GRDRES=0p16;; + gsh_15m) GRDNAME='gsouth' ; GRDRES=0p25;; + glo_15m) GRDNAME='global' ; GRDRES=0p25;; + ao_20m) GRDNAME='arctic' ; GRDRES=0p33;; + so_20m) GRDNAME='antarc' ; GRDRES=0p33;; + glo_15mxt) GRDNAME='global' ; GRDRES=0p25;; + reg025) GRDNAME='global' ; GRDRES=0p25;; + glo_025) GRDNAME='global' ; GRDRES=0p25;; + glo_100) GRDNAME='global' ; GRDRES=1p00;; + glo_200) GRDNAME='global' ; GRDRES=2p00;; + glo_500) GRDNAME='global' ; GRDRES=5p00;; + gwes_30m) GRDNAME='global' ; GRDRES=0p50;; *) echo "FATAL ERROR: No grid specific wave config values exist for ${grdID}. Aborting." exit 1;; esac - YMD=${PDY} HH=${cyc} GRID=${GRDRES} declare_from_tmpl -rx \ - "COMIN_WAVE_GRID_${GRDRES}:COM_WAVE_GRID_RES_TMPL" + YMD=${PDY} HH=${cyc} GRID="${GRDNAME}.${GRDRES}" declare_from_tmpl -rx \ + "COMIN_WAVE_GRID_${GRDNAME}.${GRDRES}:COM_WAVE_GRID_RES_TMPL" done diff --git a/jobs/JGLOBAL_EXTRACTVARS b/jobs/JGLOBAL_EXTRACTVARS index 5772c77b58..c226b40dfc 100755 --- a/jobs/JGLOBAL_EXTRACTVARS +++ b/jobs/JGLOBAL_EXTRACTVARS @@ -12,32 +12,39 @@ done for grdID in ${wavepostGRD} ${waveinterpGRD}; do case ${grdID} in - glo_15mxt) GRDRES=0p25;; - reg025) GRDRES=0p25;; - glo_025) GRDRES=0p25;; - glo_100) GRDRES=1p00;; - glo_200) GRDRES=2p00;; - glo_500) GRDRES=5p00;; - glo_30mxt) GRDRES=0p50;; - glo_30m) GRDRES=0p50;; - at_10m) GRDRES=0p16;; - ep_10m) GRDRES=0p16 ;; - wc_10m) GRDRES=0p16;; - ak_10m) GRDRES=0p16;; - ant_9km) GRDRES=9km;; - glo_10m) GRDRES=0p16;; - gnh_10m) GRDRES=0p16;; - gsh_15m) GRDRES=0p25;; - glo_15m) GRDRES=0p25;; - ao_20m) GRDRES=0p33;; - so_20m) GRDRES=0p33;; - gwes_30m) GRDRES=0p50;; + glo_15mxt) GRDNAME='global' ; GRDRES=0p25;; + reg025) GRDNAME='global' ; GRDRES=0p25 ; ;; + glo_025) GRDNAME='global' ; GRDRES=0p25 ;; + glo_100) GRDNAME='global' ; GRDRES=1p00;; + glo_200) GRDNAME='global' ; GRDRES=2p00;; + glo_500) GRDNAME='global' ; GRDRES=5p00;; + glo_30mxt) GRDNAME='global' ; GRDRES=0p50 ;; + glo_30m) GRDNAME='global' ; GRDRES=0p50 ;; + at_10m) GRDNAME='atlocn' ; GRDRES=0p16 ;; + ep_10m) GRDNAME='epacif' ; GRDRES=0p16;; + wc_10m) GRDNAME='wcoast' ; GRDRES=0p16 ;; + ak_10m) GRDNAME='alaska' ; GRDRES=0p16;; + aoc_9km) GRDNAME='arctic' ; GRDRES=9km;; + ant_9km) GRDNAME='antarc' ; GRDRES=9km ;; + glo_10m) GRDNAME='global' ; GRDRES=0p16;; + gnh_10m) GRDNAME='global' ; GRDRES=0p16;; + gsh_15m) GRDNAME='gsouth' ; GRDRES=0p25;; + glo_15m) GRDNAME='global' ; GRDRES=0p25;; + ao_20m) GRDNAME='arctic' ; GRDRES=0p33;; + so_20m) GRDNAME='antarc' ; GRDRES=0p33;; + glo_15mxt) GRDNAME='global' ; GRDRES=0p25;; + reg025) GRDNAME='global' ; GRDRES=0p25;; + glo_025) GRDNAME='global' ; GRDRES=0p25;; + glo_100) GRDNAME='global' ; GRDRES=1p00;; + glo_200) GRDNAME='global' ; GRDRES=2p00;; + glo_500) GRDNAME='global' ; GRDRES=5p00;; + gwes_30m) GRDNAME='global' ; GRDRES=0p50;; *) echo "FATAL ERROR: No grid specific wave config values exist for ${grdID}. Aborting." exit 1;; esac - prod_dir="COMIN_WAVE_GRID_${GRDRES}" - YMD=${PDY} HH=${cyc} GRID=${GRDRES} declare_from_tmpl -rx \ + prod_dir="COMIN_WAVE_GRID_${GRDNAME}.${GRDRES}" + YMD=${PDY} HH=${cyc} GRID="${GRDNAME}.${GRDRES}" declare_from_tmpl -rx \ "${prod_dir}:COM_WAVE_GRID_RES_TMPL" if [[ ! -d "${!prod_dir}" ]]; then mkdir -p "${!prod_dir}"; fi done diff --git a/jobs/JGLOBAL_WAVE_POST_SBS b/jobs/JGLOBAL_WAVE_POST_SBS index 3cd5a34a15..aeef95f3e8 100755 --- a/jobs/JGLOBAL_WAVE_POST_SBS +++ b/jobs/JGLOBAL_WAVE_POST_SBS @@ -21,33 +21,40 @@ done for grdID in ${wavepostGRD} ${waveinterpGRD}; do case ${grdID} in - glo_15mxt) GRDRES=0p25;; - reg025) GRDRES=0p25;; - glo_025) GRDRES=0p25;; - glo_100) GRDRES=1p00;; - glo_200) GRDRES=2p00;; - glo_500) GRDRES=5p00;; - glo_30mxt) GRDRES=0p50;; - glo_30m) GRDRES=0p50;; - at_10m) GRDRES=0p16;; - ep_10m) GRDRES=0p16 ;; - wc_10m) GRDRES=0p16;; - ak_10m) GRDRES=0p16;; - ant_9km) GRDRES=9km;; - glo_10m) GRDRES=0p16;; - gnh_10m) GRDRES=0p16;; - gsh_15m) GRDRES=0p25;; - glo_15m) GRDRES=0p25;; - ao_20m) GRDRES=0p33;; - so_20m) GRDRES=0p33;; - gwes_30m) GRDRES=0p50;; + glo_15mxt) GRDNAME='global' ; GRDRES=0p25;; + reg025) GRDNAME='global' ; GRDRES=0p25 ; ;; + glo_025) GRDNAME='global' ; GRDRES=0p25 ;; + glo_100) GRDNAME='global' ; GRDRES=1p00;; + glo_200) GRDNAME='global' ; GRDRES=2p00;; + glo_500) GRDNAME='global' ; GRDRES=5p00;; + glo_30mxt) GRDNAME='global' ; GRDRES=0p50 ;; + glo_30m) GRDNAME='global' ; GRDRES=0p50 ;; + at_10m) GRDNAME='atlocn' ; GRDRES=0p16 ;; + ep_10m) GRDNAME='epacif' ; GRDRES=0p16;; + wc_10m) GRDNAME='wcoast' ; GRDRES=0p16 ;; + ak_10m) GRDNAME='alaska' ; GRDRES=0p16;; + aoc_9km) GRDNAME='arctic' ; GRDRES=9km;; + ant_9km) GRDNAME='antarc' ; GRDRES=9km ;; + glo_10m) GRDNAME='global' ; GRDRES=0p16;; + gnh_10m) GRDNAME='global' ; GRDRES=0p16;; + gsh_15m) GRDNAME='gsouth' ; GRDRES=0p25;; + glo_15m) GRDNAME='global' ; GRDRES=0p25;; + ao_20m) GRDNAME='arctic' ; GRDRES=0p33;; + so_20m) GRDNAME='antarc' ; GRDRES=0p33;; + glo_15mxt) GRDNAME='global' ; GRDRES=0p25;; + reg025) GRDNAME='global' ; GRDRES=0p25;; + glo_025) GRDNAME='global' ; GRDRES=0p25;; + glo_100) GRDNAME='global' ; GRDRES=1p00;; + glo_200) GRDNAME='global' ; GRDRES=2p00;; + glo_500) GRDNAME='global' ; GRDRES=5p00;; + gwes_30m) GRDNAME='global' ; GRDRES=0p50;; *) - echo "FATAL ERROR: No grid specific wave config values exist for ${GRDRES}. Aborting." + echo "FATAL ERROR: No grid specific wave config values exist for ${grdID}. Aborting." exit 1;; esac GRID=${GRDRES} YMD=${PDY} HH=${cyc} declare_from_tmpl -rx \ - "COMOUT_WAVE_GRID_${GRDRES}:COM_WAVE_GRID_RES_TMPL" - COMOUT=COMOUT_WAVE_GRID_${GRDRES} + "COMOUT_WAVE_GRID_${GRDNAME}.${GRDRES}:COM_WAVE_GRID_RES_TMPL" + COMOUT=COMOUT_WAVE_GRID_${GRDNAME}.${GRDRES} if [[ ! -d "${COMOUT}" ]]; then mkdir -m 775 -p "${COMOUT}" fi diff --git a/jobs/JGLOBAL_WAVE_PRDGEN_GRIDDED b/jobs/JGLOBAL_WAVE_PRDGEN_GRIDDED index 0773d21456..1d69287b83 100755 --- a/jobs/JGLOBAL_WAVE_PRDGEN_GRIDDED +++ b/jobs/JGLOBAL_WAVE_PRDGEN_GRIDDED @@ -15,32 +15,39 @@ export DBNROOT=${DBNROOT:-${UTILROOT}/fakedbn} for grdID in ${wavepostGRD} ${waveinterpGRD}; do case ${grdID} in - glo_15mxt) GRDRES=0p25;; - reg025) GRDRES=0p25;; - glo_025) GRDRES=0p25;; - glo_100) GRDRES=1p00;; - glo_200) GRDRES=2p00;; - glo_500) GRDRES=5p00;; - glo_30mxt) GRDRES=0p50;; - glo_30m) GRDRES=0p50;; - at_10m) GRDRES=0p16;; - ep_10m) GRDRES=0p16 ;; - wc_10m) GRDRES=0p16;; - ak_10m) GRDRES=0p16;; - ant_9km) GRDRES=9km;; - glo_10m) GRDRES=0p16;; - gnh_10m) GRDRES=0p16;; - gsh_15m) GRDRES=0p25;; - glo_15m) GRDRES=0p25;; - ao_20m) GRDRES=0p33;; - so_20m) GRDRES=0p33;; - gwes_30m) GRDRES=0p50;; + glo_15mxt) GRDNAME='global' ; GRDRES=0p25;; + reg025) GRDNAME='global' ; GRDRES=0p25 ; ;; + glo_025) GRDNAME='global' ; GRDRES=0p25 ;; + glo_100) GRDNAME='global' ; GRDRES=1p00;; + glo_200) GRDNAME='global' ; GRDRES=2p00;; + glo_500) GRDNAME='global' ; GRDRES=5p00;; + glo_30mxt) GRDNAME='global' ; GRDRES=0p50 ;; + glo_30m) GRDNAME='global' ; GRDRES=0p50 ;; + at_10m) GRDNAME='atlocn' ; GRDRES=0p16 ;; + ep_10m) GRDNAME='epacif' ; GRDRES=0p16;; + wc_10m) GRDNAME='wcoast' ; GRDRES=0p16 ;; + ak_10m) GRDNAME='alaska' ; GRDRES=0p16;; + aoc_9km) GRDNAME='arctic' ; GRDRES=9km;; + ant_9km) GRDNAME='antarc' ; GRDRES=9km ;; + glo_10m) GRDNAME='global' ; GRDRES=0p16;; + gnh_10m) GRDNAME='global' ; GRDRES=0p16;; + gsh_15m) GRDNAME='gsouth' ; GRDRES=0p25;; + glo_15m) GRDNAME='global' ; GRDRES=0p25;; + ao_20m) GRDNAME='arctic' ; GRDRES=0p33;; + so_20m) GRDNAME='antarc' ; GRDRES=0p33;; + glo_15mxt) GRDNAME='global' ; GRDRES=0p25;; + reg025) GRDNAME='global' ; GRDRES=0p25;; + glo_025) GRDNAME='global' ; GRDRES=0p25;; + glo_100) GRDNAME='global' ; GRDRES=1p00;; + glo_200) GRDNAME='global' ; GRDRES=2p00;; + glo_500) GRDNAME='global' ; GRDRES=5p00;; + gwes_30m) GRDNAME='global' ; GRDRES=0p50;; *) - echo "FATAL ERROR: No grid specific wave config values exist for ${GRDRES}. Aborting." + echo "FATAL ERROR: No grid specific wave config values exist for ${grdID}. Aborting." exit 1;; esac - YMD=${PDY} HH=${cyc} GRID=${GRDRES} declare_from_tmpl -rx \ - "COMIN_WAVE_GRID_${GRDRES}:COM_WAVE_GRID_RES_TMPL" + YMD=${PDY} HH=${cyc} GRID="${GRDNAME}.${GRDRES}" declare_from_tmpl -rx \ + "COMIN_WAVE_GRID_${GRDNAME}.${GRDRES}:COM_WAVE_GRID_RES_TMPL" done From da77adbf4c287cdf16f09104e60165a7165d0538 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Fri, 6 Dec 2024 15:54:15 -0500 Subject: [PATCH 023/186] modified JGLOBAl srcipts --- jobs/JGLOBAL_ARCHIVE | 15 ++++----------- jobs/JGLOBAL_EXTRACTVARS | 15 ++++----------- jobs/JGLOBAL_WAVE_POST_SBS | 17 +++++------------ jobs/JGLOBAL_WAVE_PRDGEN_GRIDDED | 15 ++++----------- 4 files changed, 17 insertions(+), 45 deletions(-) diff --git a/jobs/JGLOBAL_ARCHIVE b/jobs/JGLOBAL_ARCHIVE index df0980ba77..31173414b1 100755 --- a/jobs/JGLOBAL_ARCHIVE +++ b/jobs/JGLOBAL_ARCHIVE @@ -52,32 +52,25 @@ done for grdID in ${wavepostGRD} ${waveinterpGRD}; do case ${grdID} in - glo_15mxt) GRDNAME='global' ; GRDRES=0p25;; - reg025) GRDNAME='global' ; GRDRES=0p25 ; ;; + glo_10m) GRDNAME='global' ; GRDRES=0p16;; + glo_15mxt) GRDNAME='global' ; GRDRES=0p25;; + glo_30mxt) GRDNAME='global' ; GRDRES=0p50 ;; + glo_30m) GRDNAME='global' ; GRDRES=0p50 ;; glo_025) GRDNAME='global' ; GRDRES=0p25 ;; glo_100) GRDNAME='global' ; GRDRES=1p00;; glo_200) GRDNAME='global' ; GRDRES=2p00;; glo_500) GRDNAME='global' ; GRDRES=5p00;; - glo_30mxt) GRDNAME='global' ; GRDRES=0p50 ;; - glo_30m) GRDNAME='global' ; GRDRES=0p50 ;; at_10m) GRDNAME='atlocn' ; GRDRES=0p16 ;; ep_10m) GRDNAME='epacif' ; GRDRES=0p16;; wc_10m) GRDNAME='wcoast' ; GRDRES=0p16 ;; ak_10m) GRDNAME='alaska' ; GRDRES=0p16;; aoc_9km) GRDNAME='arctic' ; GRDRES=9km;; ant_9km) GRDNAME='antarc' ; GRDRES=9km ;; - glo_10m) GRDNAME='global' ; GRDRES=0p16;; gnh_10m) GRDNAME='global' ; GRDRES=0p16;; gsh_15m) GRDNAME='gsouth' ; GRDRES=0p25;; - glo_15m) GRDNAME='global' ; GRDRES=0p25;; ao_20m) GRDNAME='arctic' ; GRDRES=0p33;; so_20m) GRDNAME='antarc' ; GRDRES=0p33;; - glo_15mxt) GRDNAME='global' ; GRDRES=0p25;; reg025) GRDNAME='global' ; GRDRES=0p25;; - glo_025) GRDNAME='global' ; GRDRES=0p25;; - glo_100) GRDNAME='global' ; GRDRES=1p00;; - glo_200) GRDNAME='global' ; GRDRES=2p00;; - glo_500) GRDNAME='global' ; GRDRES=5p00;; gwes_30m) GRDNAME='global' ; GRDRES=0p50;; *) echo "FATAL ERROR: No grid specific wave config values exist for ${grdID}. Aborting." diff --git a/jobs/JGLOBAL_EXTRACTVARS b/jobs/JGLOBAL_EXTRACTVARS index c226b40dfc..dfb069dddf 100755 --- a/jobs/JGLOBAL_EXTRACTVARS +++ b/jobs/JGLOBAL_EXTRACTVARS @@ -12,32 +12,25 @@ done for grdID in ${wavepostGRD} ${waveinterpGRD}; do case ${grdID} in - glo_15mxt) GRDNAME='global' ; GRDRES=0p25;; - reg025) GRDNAME='global' ; GRDRES=0p25 ; ;; + glo_10m) GRDNAME='global' ; GRDRES=0p16;; + glo_15mxt) GRDNAME='global' ; GRDRES=0p25;; + glo_30mxt) GRDNAME='global' ; GRDRES=0p50 ;; + glo_30m) GRDNAME='global' ; GRDRES=0p50 ;; glo_025) GRDNAME='global' ; GRDRES=0p25 ;; glo_100) GRDNAME='global' ; GRDRES=1p00;; glo_200) GRDNAME='global' ; GRDRES=2p00;; glo_500) GRDNAME='global' ; GRDRES=5p00;; - glo_30mxt) GRDNAME='global' ; GRDRES=0p50 ;; - glo_30m) GRDNAME='global' ; GRDRES=0p50 ;; at_10m) GRDNAME='atlocn' ; GRDRES=0p16 ;; ep_10m) GRDNAME='epacif' ; GRDRES=0p16;; wc_10m) GRDNAME='wcoast' ; GRDRES=0p16 ;; ak_10m) GRDNAME='alaska' ; GRDRES=0p16;; aoc_9km) GRDNAME='arctic' ; GRDRES=9km;; ant_9km) GRDNAME='antarc' ; GRDRES=9km ;; - glo_10m) GRDNAME='global' ; GRDRES=0p16;; gnh_10m) GRDNAME='global' ; GRDRES=0p16;; gsh_15m) GRDNAME='gsouth' ; GRDRES=0p25;; - glo_15m) GRDNAME='global' ; GRDRES=0p25;; ao_20m) GRDNAME='arctic' ; GRDRES=0p33;; so_20m) GRDNAME='antarc' ; GRDRES=0p33;; - glo_15mxt) GRDNAME='global' ; GRDRES=0p25;; reg025) GRDNAME='global' ; GRDRES=0p25;; - glo_025) GRDNAME='global' ; GRDRES=0p25;; - glo_100) GRDNAME='global' ; GRDRES=1p00;; - glo_200) GRDNAME='global' ; GRDRES=2p00;; - glo_500) GRDNAME='global' ; GRDRES=5p00;; gwes_30m) GRDNAME='global' ; GRDRES=0p50;; *) echo "FATAL ERROR: No grid specific wave config values exist for ${grdID}. Aborting." diff --git a/jobs/JGLOBAL_WAVE_POST_SBS b/jobs/JGLOBAL_WAVE_POST_SBS index aeef95f3e8..5caf0e7d59 100755 --- a/jobs/JGLOBAL_WAVE_POST_SBS +++ b/jobs/JGLOBAL_WAVE_POST_SBS @@ -20,33 +20,26 @@ for out_dir in "${COMOUT_WAVE_PREP}" "${COMOUT_WAVE_GRID}"; do done for grdID in ${wavepostGRD} ${waveinterpGRD}; do - case ${grdID} in - glo_15mxt) GRDNAME='global' ; GRDRES=0p25;; - reg025) GRDNAME='global' ; GRDRES=0p25 ; ;; + case ${grdID} in + glo_10m) GRDNAME='global' ; GRDRES=0p16;; + glo_15mxt) GRDNAME='global' ; GRDRES=0p25;; + glo_30mxt) GRDNAME='global' ; GRDRES=0p50 ;; + glo_30m) GRDNAME='global' ; GRDRES=0p50 ;; glo_025) GRDNAME='global' ; GRDRES=0p25 ;; glo_100) GRDNAME='global' ; GRDRES=1p00;; glo_200) GRDNAME='global' ; GRDRES=2p00;; glo_500) GRDNAME='global' ; GRDRES=5p00;; - glo_30mxt) GRDNAME='global' ; GRDRES=0p50 ;; - glo_30m) GRDNAME='global' ; GRDRES=0p50 ;; at_10m) GRDNAME='atlocn' ; GRDRES=0p16 ;; ep_10m) GRDNAME='epacif' ; GRDRES=0p16;; wc_10m) GRDNAME='wcoast' ; GRDRES=0p16 ;; ak_10m) GRDNAME='alaska' ; GRDRES=0p16;; aoc_9km) GRDNAME='arctic' ; GRDRES=9km;; ant_9km) GRDNAME='antarc' ; GRDRES=9km ;; - glo_10m) GRDNAME='global' ; GRDRES=0p16;; gnh_10m) GRDNAME='global' ; GRDRES=0p16;; gsh_15m) GRDNAME='gsouth' ; GRDRES=0p25;; - glo_15m) GRDNAME='global' ; GRDRES=0p25;; ao_20m) GRDNAME='arctic' ; GRDRES=0p33;; so_20m) GRDNAME='antarc' ; GRDRES=0p33;; - glo_15mxt) GRDNAME='global' ; GRDRES=0p25;; reg025) GRDNAME='global' ; GRDRES=0p25;; - glo_025) GRDNAME='global' ; GRDRES=0p25;; - glo_100) GRDNAME='global' ; GRDRES=1p00;; - glo_200) GRDNAME='global' ; GRDRES=2p00;; - glo_500) GRDNAME='global' ; GRDRES=5p00;; gwes_30m) GRDNAME='global' ; GRDRES=0p50;; *) echo "FATAL ERROR: No grid specific wave config values exist for ${grdID}. Aborting." diff --git a/jobs/JGLOBAL_WAVE_PRDGEN_GRIDDED b/jobs/JGLOBAL_WAVE_PRDGEN_GRIDDED index 1d69287b83..00eec08621 100755 --- a/jobs/JGLOBAL_WAVE_PRDGEN_GRIDDED +++ b/jobs/JGLOBAL_WAVE_PRDGEN_GRIDDED @@ -15,32 +15,25 @@ export DBNROOT=${DBNROOT:-${UTILROOT}/fakedbn} for grdID in ${wavepostGRD} ${waveinterpGRD}; do case ${grdID} in - glo_15mxt) GRDNAME='global' ; GRDRES=0p25;; - reg025) GRDNAME='global' ; GRDRES=0p25 ; ;; + glo_10m) GRDNAME='global' ; GRDRES=0p16;; + glo_15mxt) GRDNAME='global' ; GRDRES=0p25;; + glo_30mxt) GRDNAME='global' ; GRDRES=0p50 ;; + glo_30m) GRDNAME='global' ; GRDRES=0p50 ;; glo_025) GRDNAME='global' ; GRDRES=0p25 ;; glo_100) GRDNAME='global' ; GRDRES=1p00;; glo_200) GRDNAME='global' ; GRDRES=2p00;; glo_500) GRDNAME='global' ; GRDRES=5p00;; - glo_30mxt) GRDNAME='global' ; GRDRES=0p50 ;; - glo_30m) GRDNAME='global' ; GRDRES=0p50 ;; at_10m) GRDNAME='atlocn' ; GRDRES=0p16 ;; ep_10m) GRDNAME='epacif' ; GRDRES=0p16;; wc_10m) GRDNAME='wcoast' ; GRDRES=0p16 ;; ak_10m) GRDNAME='alaska' ; GRDRES=0p16;; aoc_9km) GRDNAME='arctic' ; GRDRES=9km;; ant_9km) GRDNAME='antarc' ; GRDRES=9km ;; - glo_10m) GRDNAME='global' ; GRDRES=0p16;; gnh_10m) GRDNAME='global' ; GRDRES=0p16;; gsh_15m) GRDNAME='gsouth' ; GRDRES=0p25;; - glo_15m) GRDNAME='global' ; GRDRES=0p25;; ao_20m) GRDNAME='arctic' ; GRDRES=0p33;; so_20m) GRDNAME='antarc' ; GRDRES=0p33;; - glo_15mxt) GRDNAME='global' ; GRDRES=0p25;; reg025) GRDNAME='global' ; GRDRES=0p25;; - glo_025) GRDNAME='global' ; GRDRES=0p25;; - glo_100) GRDNAME='global' ; GRDRES=1p00;; - glo_200) GRDNAME='global' ; GRDRES=2p00;; - glo_500) GRDNAME='global' ; GRDRES=5p00;; gwes_30m) GRDNAME='global' ; GRDRES=0p50;; *) echo "FATAL ERROR: No grid specific wave config values exist for ${grdID}. Aborting." From 3f547c686d7786453ad73ebc7aaa7e3529b396e0 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Tue, 10 Dec 2024 13:17:49 -0500 Subject: [PATCH 024/186] modified yamls --- parm/archive/gefs_extracted_wave.yaml.j2 | 51 +++++++++++++++++++++++- parm/archive/gfswave.yaml.j2 | 50 ++++++++++++++++++++++- 2 files changed, 98 insertions(+), 3 deletions(-) diff --git a/parm/archive/gefs_extracted_wave.yaml.j2 b/parm/archive/gefs_extracted_wave.yaml.j2 index fd9afc5a35..1602d42905 100644 --- a/parm/archive/gefs_extracted_wave.yaml.j2 +++ b/parm/archive/gefs_extracted_wave.yaml.j2 @@ -13,7 +13,54 @@ gefs_wave: {% set ofst_hr = FHMIN_GFS %} {% endif %} -{% set res = (waveGRD[-3:])[0] ~ "p" ~ (waveGRD[-3:])[-2:] %} +{% set RESOLUTION = [] %} + +{% for grdID in wavepostGRD + waveinterpGRD %} + {% if grdID == 'glo_10m' %} + {% set GRDNAME = 'global.0p16' %} + {% elif grdID == 'glo_15mxt' %} + {% set GRDNAME = 'global.0p25' %} + {% elif grdID == 'glo_30mxt' %} + {% set GRDNAME = 'global.0p50' %} + {% elif grdID == 'glo_30m' %} + {% set GRDNAME = 'global.0p50' %} + {% elif grdID == 'glo_025' %} + {% set GRDNAME = 'global.0p25' %} + {% elif grdID == 'glo_100' %} + {% set GRDNAME = 'global.1p00' %} + {% elif grdID == 'glo_200' %} + {% set GRDNAME = 'global.2p00' %} + {% elif grdID == 'glo_500' %} + {% set GRDNAME = 'global.5p00' %} + {% elif grdID == 'at_10m' %} + {% set GRDNAME = 'atlocn.0p16' %} + {% elif grdID == 'ep_10m' %} + {% set GRDNAME = 'epacif.0p16' %} + {% elif grdID == 'wc_10m' %} + {% set GRDNAME = 'wcoast.0p16' %} + {% elif grdID == 'ak_10m' %} + {% set GRDNAME = 'alaska.0p16' %} + {% elif grdID == 'aoc_9km' %} + {% set GRDNAME = 'arctic.9km' %} + {% elif grdID == 'ant_9km' %} + {% set GRDNAME = 'antarc.9km' %} + {% elif grdID == 'gnh_10m' %} + {% set GRDNAME = 'global.0p16' %} + {% elif grdID == 'gsh_15m' %} + {% set GRDNAME = 'gsouth.0p25' %} + {% elif grdID == 'ao_20m' %} + {% set GRDNAME = 'arctic.0p33' %} + {% elif grdID == 'so_20m' %} + {% set GRDNAME = 'antarc.0p33' %} + {% elif grdID == 'reg025' %} + {% set GRDNAME = 'global.0p25' %} + {% elif grdID == 'gwes_30m' %} + {% set GRDNAME = 'global.0p50' %} + {% else %} + {{ "FATAL ERROR: No grid specific wave config values exist for " ~ grdID ~ ". Aborting." }} + {% endif %} + {% do RESOLUTION.append(GRDNAME) %} +{% endfor %} #select mem%03d and ensstat files required {% set members = [] %} @@ -37,7 +84,7 @@ gefs_wave: {% set file_path = COMIN_WAVE_STATION ~ "/" ~ RUN ~ "wave.t" ~ cycle_HH ~ "z.bull_tar" %} - "{{ file_path | relpath(ROTDIR)}}" - {% for res in ['0p25', '0p50', '1p00'] %} + {% for res in RESOLUTION %} {% set tmpl_dict = tmpl_dict.update({ '${GRID}':res }) %} {% set COMIN_WAVE_GRID = COM_WAVE_GRID_RES_TMPL | replace_tmpl(tmpl_dict) %} # Select grib2 files to copy to the atardir diff --git a/parm/archive/gfswave.yaml.j2 b/parm/archive/gfswave.yaml.j2 index 58f1d445c4..a02ae11ec1 100644 --- a/parm/archive/gfswave.yaml.j2 +++ b/parm/archive/gfswave.yaml.j2 @@ -3,8 +3,56 @@ gfswave: name: "GFSWAVE" target: "{{ ATARDIR }}/{{ cycle_YMDH }}/gfswave.tar" required: + {% set RESOLUTION = [] %} + {% for grdID in wavepostGRD + waveinterpGRD %} + {% if grdID == 'glo_10m' %} + {% set GRDNAME = 'global.0p16' %} + {% elif grdID == 'glo_15mxt' %} + {% set GRDNAME = 'global.0p25' %} + {% elif grdID == 'glo_30mxt' %} + {% set GRDNAME = 'global.0p50' %} + {% elif grdID == 'glo_30m' %} + {% set GRDNAME = 'global.0p50' %} + {% elif grdID == 'glo_025' %} + {% set GRDNAME = 'global.0p25' %} + {% elif grdID == 'glo_100' %} + {% set GRDNAME = 'global.1p00' %} + {% elif grdID == 'glo_200' %} + {% set GRDNAME = 'global.2p00' %} + {% elif grdID == 'glo_500' %} + {% set GRDNAME = 'global.5p00' %} + {% elif grdID == 'at_10m' %} + {% set GRDNAME = 'atlocn.0p16' %} + {% elif grdID == 'ep_10m' %} + {% set GRDNAME = 'epacif.0p16' %} + {% elif grdID == 'wc_10m' %} + {% set GRDNAME = 'wcoast.0p16' %} + {% elif grdID == 'ak_10m' %} + {% set GRDNAME = 'alaska.0p16' %} + {% elif grdID == 'aoc_9km' %} + {% set GRDNAME = 'arctic.9km' %} + {% elif grdID == 'ant_9km' %} + {% set GRDNAME = 'antarc.9km' %} + {% elif grdID == 'gnh_10m' %} + {% set GRDNAME = 'global.0p16' %} + {% elif grdID == 'gsh_15m' %} + {% set GRDNAME = 'gsouth.0p25' %} + {% elif grdID == 'ao_20m' %} + {% set GRDNAME = 'arctic.0p33' %} + {% elif grdID == 'so_20m' %} + {% set GRDNAME = 'antarc.0p33' %} + {% elif grdID == 'reg025' %} + {% set GRDNAME = 'global.0p25' %} + {% elif grdID == 'gwes_30m' %} + {% set GRDNAME = 'global.0p50' %} + {% else %} + {{ "FATAL ERROR: No grid specific wave config values exist for " ~ grdID ~ ". Aborting." }} + {% endif %} + {% do RESOLUTION.append(GRDNAME) %} + {% endfor %} + # Wave GRIB2 regional forecast products - {% for res in ['0p25', '0p50', '1p00'] %} + {% for res in RESOLUTION %} {% set file_path = COMIN_WAVE_GRID ~ "/" ~ res %} {% for fh in range(0, FHMAX_HF_WAV + FHOUT_HF_WAV, FHOUT_HF_WAV) %} From 8092065f852927973a7c46ad4f6b5346dfe1754f Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Tue, 10 Dec 2024 15:51:55 -0500 Subject: [PATCH 025/186] modified jobs\JGLOBAL_WAVE_POST_SBS --- jobs/JGLOBAL_WAVE_POST_SBS | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/jobs/JGLOBAL_WAVE_POST_SBS b/jobs/JGLOBAL_WAVE_POST_SBS index 5caf0e7d59..7826d49bb1 100755 --- a/jobs/JGLOBAL_WAVE_POST_SBS +++ b/jobs/JGLOBAL_WAVE_POST_SBS @@ -45,7 +45,7 @@ for grdID in ${wavepostGRD} ${waveinterpGRD}; do echo "FATAL ERROR: No grid specific wave config values exist for ${grdID}. Aborting." exit 1;; esac - GRID=${GRDRES} YMD=${PDY} HH=${cyc} declare_from_tmpl -rx \ + GRID=${GRDNAME}.${GRDRES} YMD=${PDY} HH=${cyc} declare_from_tmpl -rx \ "COMOUT_WAVE_GRID_${GRDNAME}.${GRDRES}:COM_WAVE_GRID_RES_TMPL" COMOUT=COMOUT_WAVE_GRID_${GRDNAME}.${GRDRES} if [[ ! -d "${COMOUT}" ]]; then From 84bb387e224b27329ebaa307918b401ae289479f Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Tue, 10 Dec 2024 18:31:48 -0500 Subject: [PATCH 026/186] modified JGLOBAL files and yaml files --- jobs/JGLOBAL_ARCHIVE | 2 +- jobs/JGLOBAL_EXTRACTVARS | 2 +- jobs/JGLOBAL_WAVE_POST_SBS | 4 ++-- jobs/JGLOBAL_WAVE_PRDGEN_GRIDDED | 2 +- parm/archive/gfswave.yaml.j2 | 3 ++- 5 files changed, 7 insertions(+), 6 deletions(-) diff --git a/jobs/JGLOBAL_ARCHIVE b/jobs/JGLOBAL_ARCHIVE index 31173414b1..8efc2be355 100755 --- a/jobs/JGLOBAL_ARCHIVE +++ b/jobs/JGLOBAL_ARCHIVE @@ -77,7 +77,7 @@ for grdID in ${wavepostGRD} ${waveinterpGRD}; do exit 1;; esac YMD=${PDY} HH=${cyc} GRID="${GRDNAME}.${GRDRES}" declare_from_tmpl -rx \ - "COMIN_WAVE_GRID_${GRDNAME}.${GRDRES}:COM_WAVE_GRID_RES_TMPL" + "COMIN_WAVE_GRID_${grdID}:COM_WAVE_GRID_RES_TMPL" done diff --git a/jobs/JGLOBAL_EXTRACTVARS b/jobs/JGLOBAL_EXTRACTVARS index dfb069dddf..d850b657e1 100755 --- a/jobs/JGLOBAL_EXTRACTVARS +++ b/jobs/JGLOBAL_EXTRACTVARS @@ -36,7 +36,7 @@ for grdID in ${wavepostGRD} ${waveinterpGRD}; do echo "FATAL ERROR: No grid specific wave config values exist for ${grdID}. Aborting." exit 1;; esac - prod_dir="COMIN_WAVE_GRID_${GRDNAME}.${GRDRES}" + prod_dir="COMIN_WAVE_GRID_${grdID}" YMD=${PDY} HH=${cyc} GRID="${GRDNAME}.${GRDRES}" declare_from_tmpl -rx \ "${prod_dir}:COM_WAVE_GRID_RES_TMPL" if [[ ! -d "${!prod_dir}" ]]; then mkdir -p "${!prod_dir}"; fi diff --git a/jobs/JGLOBAL_WAVE_POST_SBS b/jobs/JGLOBAL_WAVE_POST_SBS index 7826d49bb1..ba643d6cb3 100755 --- a/jobs/JGLOBAL_WAVE_POST_SBS +++ b/jobs/JGLOBAL_WAVE_POST_SBS @@ -46,8 +46,8 @@ for grdID in ${wavepostGRD} ${waveinterpGRD}; do exit 1;; esac GRID=${GRDNAME}.${GRDRES} YMD=${PDY} HH=${cyc} declare_from_tmpl -rx \ - "COMOUT_WAVE_GRID_${GRDNAME}.${GRDRES}:COM_WAVE_GRID_RES_TMPL" - COMOUT=COMOUT_WAVE_GRID_${GRDNAME}.${GRDRES} + "COMOUT_WAVE_GRID_${grdID}:COM_WAVE_GRID_RES_TMPL" + COMOUT=COMOUT_WAVE_GRID_${grdID} if [[ ! -d "${COMOUT}" ]]; then mkdir -m 775 -p "${COMOUT}" fi diff --git a/jobs/JGLOBAL_WAVE_PRDGEN_GRIDDED b/jobs/JGLOBAL_WAVE_PRDGEN_GRIDDED index 00eec08621..a98c79dcbf 100755 --- a/jobs/JGLOBAL_WAVE_PRDGEN_GRIDDED +++ b/jobs/JGLOBAL_WAVE_PRDGEN_GRIDDED @@ -40,7 +40,7 @@ for grdID in ${wavepostGRD} ${waveinterpGRD}; do exit 1;; esac YMD=${PDY} HH=${cyc} GRID="${GRDNAME}.${GRDRES}" declare_from_tmpl -rx \ - "COMIN_WAVE_GRID_${GRDNAME}.${GRDRES}:COM_WAVE_GRID_RES_TMPL" + "COMIN_WAVE_GRID_${grdID}:COM_WAVE_GRID_RES_TMPL" done diff --git a/parm/archive/gfswave.yaml.j2 b/parm/archive/gfswave.yaml.j2 index a02ae11ec1..bddb7ef2f8 100644 --- a/parm/archive/gfswave.yaml.j2 +++ b/parm/archive/gfswave.yaml.j2 @@ -4,6 +4,7 @@ gfswave: target: "{{ ATARDIR }}/{{ cycle_YMDH }}/gfswave.tar" required: {% set RESOLUTION = [] %} + {% set GridID = [] %} {% for grdID in wavepostGRD + waveinterpGRD %} {% if grdID == 'glo_10m' %} {% set GRDNAME = 'global.0p16' %} @@ -48,7 +49,7 @@ gfswave: {% else %} {{ "FATAL ERROR: No grid specific wave config values exist for " ~ grdID ~ ". Aborting." }} {% endif %} - {% do RESOLUTION.append(GRDNAME) %} + {% do RESOLUTION.append(GRDNAME) %} {% endfor %} # Wave GRIB2 regional forecast products From 4ef4cf8b5b6a26d85e4a64a4dd694c6a465c446c Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Wed, 11 Dec 2024 11:58:02 -0500 Subject: [PATCH 027/186] modified jobs\JGLOBAL_EXTRACTVARS --- jobs/JGLOBAL_EXTRACTVARS | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/jobs/JGLOBAL_EXTRACTVARS b/jobs/JGLOBAL_EXTRACTVARS index d850b657e1..02faba750c 100755 --- a/jobs/JGLOBAL_EXTRACTVARS +++ b/jobs/JGLOBAL_EXTRACTVARS @@ -10,7 +10,7 @@ for grid in '0p25' '0p50' '1p00'; do if [[ ! -d "${!prod_dir}" ]]; then mkdir -p "${!prod_dir}"; fi done -for grdID in ${wavepostGRD} ${waveinterpGRD}; do +for grdID in ${wavepostGRD}; do case ${grdID} in glo_10m) GRDNAME='global' ; GRDRES=0p16;; glo_15mxt) GRDNAME='global' ; GRDRES=0p25;; From 4a74e55eb38bd042f22b258a7fa974d0740827f8 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Wed, 11 Dec 2024 12:15:30 -0500 Subject: [PATCH 028/186] modified jobs\JGLOBAL_EXTRACTVARS --- jobs/JGLOBAL_EXTRACTVARS | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/jobs/JGLOBAL_EXTRACTVARS b/jobs/JGLOBAL_EXTRACTVARS index 02faba750c..04a3c9a2c9 100755 --- a/jobs/JGLOBAL_EXTRACTVARS +++ b/jobs/JGLOBAL_EXTRACTVARS @@ -10,7 +10,7 @@ for grid in '0p25' '0p50' '1p00'; do if [[ ! -d "${!prod_dir}" ]]; then mkdir -p "${!prod_dir}"; fi done -for grdID in ${wavepostGRD}; do +for grdID in ${waveGRD}; do case ${grdID} in glo_10m) GRDNAME='global' ; GRDRES=0p16;; glo_15mxt) GRDNAME='global' ; GRDRES=0p25;; From 72ef7ed53b1833806eda62b81ee2edb926475f87 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Wed, 11 Dec 2024 13:06:51 -0500 Subject: [PATCH 029/186] modified WAVE_PRDGEN_GRIDDED scripts --- jobs/JGLOBAL_WAVE_PRDGEN_GRIDDED | 19 +++---------------- parm/archive/gefs_extracted_wave.yaml.j2 | 1 + scripts/exgfs_wave_prdgen_gridded.sh | 2 +- 3 files changed, 5 insertions(+), 17 deletions(-) diff --git a/jobs/JGLOBAL_WAVE_PRDGEN_GRIDDED b/jobs/JGLOBAL_WAVE_PRDGEN_GRIDDED index a98c79dcbf..ba5e0efb33 100755 --- a/jobs/JGLOBAL_WAVE_PRDGEN_GRIDDED +++ b/jobs/JGLOBAL_WAVE_PRDGEN_GRIDDED @@ -15,26 +15,13 @@ export DBNROOT=${DBNROOT:-${UTILROOT}/fakedbn} for grdID in ${wavepostGRD} ${waveinterpGRD}; do case ${grdID} in - glo_10m) GRDNAME='global' ; GRDRES=0p16;; - glo_15mxt) GRDNAME='global' ; GRDRES=0p25;; - glo_30mxt) GRDNAME='global' ; GRDRES=0p50 ;; - glo_30m) GRDNAME='global' ; GRDRES=0p50 ;; - glo_025) GRDNAME='global' ; GRDRES=0p25 ;; - glo_100) GRDNAME='global' ; GRDRES=1p00;; - glo_200) GRDNAME='global' ; GRDRES=2p00;; - glo_500) GRDNAME='global' ; GRDRES=5p00;; + aoc_9km) GRDNAME='arctic' ; GRDRES=9km;; at_10m) GRDNAME='atlocn' ; GRDRES=0p16 ;; ep_10m) GRDNAME='epacif' ; GRDRES=0p16;; wc_10m) GRDNAME='wcoast' ; GRDRES=0p16 ;; +# glo_30m) GRDNAME='global' ; GRDRES=0p25 ;; + glo_30m) GRDNAME='global' ; GRDRES=0p50 ;; ak_10m) GRDNAME='alaska' ; GRDRES=0p16;; - aoc_9km) GRDNAME='arctic' ; GRDRES=9km;; - ant_9km) GRDNAME='antarc' ; GRDRES=9km ;; - gnh_10m) GRDNAME='global' ; GRDRES=0p16;; - gsh_15m) GRDNAME='gsouth' ; GRDRES=0p25;; - ao_20m) GRDNAME='arctic' ; GRDRES=0p33;; - so_20m) GRDNAME='antarc' ; GRDRES=0p33;; - reg025) GRDNAME='global' ; GRDRES=0p25;; - gwes_30m) GRDNAME='global' ; GRDRES=0p50;; *) echo "FATAL ERROR: No grid specific wave config values exist for ${grdID}. Aborting." exit 1;; diff --git a/parm/archive/gefs_extracted_wave.yaml.j2 b/parm/archive/gefs_extracted_wave.yaml.j2 index 1602d42905..fd8e3d3b63 100644 --- a/parm/archive/gefs_extracted_wave.yaml.j2 +++ b/parm/archive/gefs_extracted_wave.yaml.j2 @@ -60,6 +60,7 @@ gefs_wave: {{ "FATAL ERROR: No grid specific wave config values exist for " ~ grdID ~ ". Aborting." }} {% endif %} {% do RESOLUTION.append(GRDNAME) %} + {% do GridID.append(grdID) %} {% endfor %} #select mem%03d and ensstat files required diff --git a/scripts/exgfs_wave_prdgen_gridded.sh b/scripts/exgfs_wave_prdgen_gridded.sh index 9111c81273..b8ab94c045 100755 --- a/scripts/exgfs_wave_prdgen_gridded.sh +++ b/scripts/exgfs_wave_prdgen_gridded.sh @@ -89,7 +89,7 @@ grids=${grids:-ak_10m at_10m ep_10m wc_10m glo_30m} fhr=$(printf "%03d" $fhcnt) for grdOut in $grids;do case $grdOut in - ao_9km) grdID='arctic.9km' ;; + aoc_9km) grdID='arctic.9km' ;; at_10m) grdID='atlocn.0p16' ;; ep_10m) grdID='epacif.0p16' ;; wc_10m) grdID='wcoast.0p16' ;; From 13cb413107bb25033aae249167d0198d7d3bc97d Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Wed, 11 Dec 2024 13:25:38 -0500 Subject: [PATCH 030/186] modified JGLOBAL scripts --- jobs/JGLOBAL_ARCHIVE | 2 +- jobs/JGLOBAL_WAVE_PRDGEN_GRIDDED | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/jobs/JGLOBAL_ARCHIVE b/jobs/JGLOBAL_ARCHIVE index 8efc2be355..de33036a43 100755 --- a/jobs/JGLOBAL_ARCHIVE +++ b/jobs/JGLOBAL_ARCHIVE @@ -50,7 +50,7 @@ for grid in "0p25" "0p50" "1p00"; do "COMIN_ATMOS_GRIB_${grid}:COM_ATMOS_GRIB_GRID_TMPL" done -for grdID in ${wavepostGRD} ${waveinterpGRD}; do +for grdID in ${waveGRD}; do case ${grdID} in glo_10m) GRDNAME='global' ; GRDRES=0p16;; glo_15mxt) GRDNAME='global' ; GRDRES=0p25;; diff --git a/jobs/JGLOBAL_WAVE_PRDGEN_GRIDDED b/jobs/JGLOBAL_WAVE_PRDGEN_GRIDDED index ba5e0efb33..05779e225e 100755 --- a/jobs/JGLOBAL_WAVE_PRDGEN_GRIDDED +++ b/jobs/JGLOBAL_WAVE_PRDGEN_GRIDDED @@ -13,7 +13,7 @@ export SENDDBN_NTC=${SENDDBN_NTC:-YES} export SENDDBN=${SENDDBN:-NO} export DBNROOT=${DBNROOT:-${UTILROOT}/fakedbn} -for grdID in ${wavepostGRD} ${waveinterpGRD}; do +for grdID in ${waveGRD}; do case ${grdID} in aoc_9km) GRDNAME='arctic' ; GRDRES=9km;; at_10m) GRDNAME='atlocn' ; GRDRES=0p16 ;; From 4424330af133f5fd8d3141f2e3962eb9aadec07c Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Wed, 11 Dec 2024 13:39:49 -0500 Subject: [PATCH 031/186] modified yaml files --- parm/archive/gefs_extracted_wave.yaml.j2 | 2 +- parm/archive/gfswave.yaml.j2 | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/parm/archive/gefs_extracted_wave.yaml.j2 b/parm/archive/gefs_extracted_wave.yaml.j2 index fd8e3d3b63..312a3e4e33 100644 --- a/parm/archive/gefs_extracted_wave.yaml.j2 +++ b/parm/archive/gefs_extracted_wave.yaml.j2 @@ -15,7 +15,7 @@ gefs_wave: {% set RESOLUTION = [] %} -{% for grdID in wavepostGRD + waveinterpGRD %} +{% for grdID in waveGRD %} {% if grdID == 'glo_10m' %} {% set GRDNAME = 'global.0p16' %} {% elif grdID == 'glo_15mxt' %} diff --git a/parm/archive/gfswave.yaml.j2 b/parm/archive/gfswave.yaml.j2 index bddb7ef2f8..50ee15b997 100644 --- a/parm/archive/gfswave.yaml.j2 +++ b/parm/archive/gfswave.yaml.j2 @@ -5,7 +5,7 @@ gfswave: required: {% set RESOLUTION = [] %} {% set GridID = [] %} - {% for grdID in wavepostGRD + waveinterpGRD %} + {% for grdID in waveGRD %} {% if grdID == 'glo_10m' %} {% set GRDNAME = 'global.0p16' %} {% elif grdID == 'glo_15mxt' %} From 73280215b7267800539c3ae998ef0825482d12e8 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Thu, 12 Dec 2024 10:51:31 -0500 Subject: [PATCH 032/186] modifed ush\wave_grib2_sbs.sh --- ush/wave_grib2_sbs.sh | 26 +++++++++++++------------- 1 file changed, 13 insertions(+), 13 deletions(-) diff --git a/ush/wave_grib2_sbs.sh b/ush/wave_grib2_sbs.sh index 99f89f3f37..be7d6611b0 100755 --- a/ush/wave_grib2_sbs.sh +++ b/ush/wave_grib2_sbs.sh @@ -72,7 +72,7 @@ if [[ -n ${waveMEMB} ]]; then ENSTAG=".${membTAG}${waveMEMB}" ; fi outfile="${WAV_MOD_TAG}.${cycle}${ENSTAG}.${grdnam}.${grdres}.f${FH3}.grib2" # Only create file if not present in COM -if [[ ! -s "${COMOUT_WAVE_GRID}/${outfile}.idx" ]]; then +if [[ ! -s "${COMOUT_WAVE_GRID}/${grdID}/${outfile}.idx" ]]; then set +x echo ' ' @@ -83,7 +83,7 @@ if [[ ! -s "${COMOUT_WAVE_GRID}/${outfile}.idx" ]]; then set_trace if [[ -z "${PDY}" ]] || [[ -z ${cyc} ]] || [[ -z "${cycle}" ]] || [[ -z "${EXECgfs}" ]] || \ - [[ -z "${COMOUT_WAVE_GRID}" ]] || [[ -z "${WAV_MOD_TAG}" ]] || [[ -z "${gribflags}" ]] || \ + [[ -z "${COMOUT_WAVE_GRID}/${grdID}" ]] || [[ -z "${WAV_MOD_TAG}" ]] || [[ -z "${gribflags}" ]] || \ [[ -z "${GRIDNR}" ]] || [[ -z "${MODNR}" ]] || \ [[ -z "${SENDDBN}" ]]; then set +x @@ -157,11 +157,11 @@ if [[ ! -s "${COMOUT_WAVE_GRID}/${outfile}.idx" ]]; then fi if (( fhr > 0 )); then - ${WGRIB2} gribfile -set_date "${PDY}${cyc}" -set_ftime "${fhr} hour fcst" -grib "${COMOUT_WAVE_GRID}/${outfile}" + ${WGRIB2} gribfile -set_date "${PDY}${cyc}" -set_ftime "${fhr} hour fcst" -grib "${COMOUT_WAVE_GRID}/${grdID}/${outfile}" err=$? else ${WGRIB2} gribfile -set_date "${PDY}${cyc}" -set_ftime "${fhr} hour fcst" \ - -set table_1.4 1 -set table_1.2 1 -grib "${COMOUT_WAVE_GRID}/${outfile}" + -set table_1.4 1 -set table_1.2 1 -grib "${COMOUT_WAVE_GRID}/${grdID}/${outfile}" err=$? fi @@ -177,7 +177,7 @@ if [[ ! -s "${COMOUT_WAVE_GRID}/${outfile}.idx" ]]; then fi # Create index - ${WGRIB2} -s "${COMOUT_WAVE_GRID}/${outfile}" > "${COMOUT_WAVE_GRID}/${outfile}.idx" + ${WGRIB2} -s "${COMOUT_WAVE_GRID}/${grdID}/${outfile}" > "${COMOUT_WAVE_GRID}/${grdID}/${outfile}.idx" # Create grib2 subgrid is this is the source grid if [[ "${grdID}" = "${WAV_SUBGRBSRC}" ]]; then @@ -186,8 +186,8 @@ if [[ ! -s "${COMOUT_WAVE_GRID}/${outfile}.idx" ]]; then subgrbnam=$(echo ${!subgrb} | cut -d " " -f 21) subgrbres=$(echo ${!subgrb} | cut -d " " -f 22) subfnam="${WAV_MOD_TAG}.${cycle}${ENSTAG}.${subgrbnam}.${subgrbres}.f${FH3}.grib2" - ${COPYGB2} -g "${subgrbref}" -i0 -x "${COMOUT_WAVE_GRID}/${outfile}" "${COMOUT_WAVE_GRID}/${subfnam}" - ${WGRIB2} -s "${COMOUT_WAVE_GRID}/${subfnam}" > "${COMOUT_WAVE_GRID}/${subfnam}.idx" + ${COPYGB2} -g "${subgrbref}" -i0 -x "${COMOUT_WAVE_GRID}/${grdID}/${outfile}" "${COMOUT_WAVE_GRID}/${grdID}/${subfnam}" + ${WGRIB2} -s "${COMOUT_WAVE_GRID}/${grdID}/${subfnam}" > "${COMOUT_WAVE_GRID}/${grdID}/${subfnam}.idx" done fi @@ -205,7 +205,7 @@ if [[ ! -s "${COMOUT_WAVE_GRID}/${outfile}.idx" ]]; then set_trace exit 4 fi - if [[ ! -s "${COMOUT_WAVE_GRID}/${outfile}.idx" ]]; then + if [[ ! -s "${COMOUT_WAVE_GRID}/${grdID}/${outfile}.idx" ]]; then set +x echo ' ' echo '*************************************************** ' @@ -220,11 +220,11 @@ if [[ ! -s "${COMOUT_WAVE_GRID}/${outfile}.idx" ]]; then if [[ "${SENDDBN}" = 'YES' ]] && [[ ${outfile} != *global.0p50* ]]; then set +x - echo " Alerting GRIB file as ${COMOUT_WAVE_GRID}/${outfile}" - echo " Alerting GRIB index file as ${COMOUT_WAVE_GRID}/${outfile}.idx" + echo " Alerting GRIB file as ${COMOUT_WAVE_GRID}/${grdID}/${outfile}" + echo " Alerting GRIB index file as ${COMOUT_WAVE_GRID}/${grdID}/${outfile}.idx" set_trace - "${DBNROOT}/bin/dbn_alert" MODEL "${alertName}_WAVE_GB2" "${job}" "${COMOUT_WAVE_GRID}/${outfile}" - "${DBNROOT}/bin/dbn_alert" MODEL "${alertName}_WAVE_GB2_WIDX" "${job}" "${COMOUT_WAVE_GRID}/${outfile}.idx" + "${DBNROOT}/bin/dbn_alert" MODEL "${alertName}_WAVE_GB2" "${job}" "${COMOUT_WAVE_GRID}/${grdID}/${outfile}" + "${DBNROOT}/bin/dbn_alert" MODEL "${alertName}_WAVE_GB2_WIDX" "${job}" "${COMOUT_WAVE_GRID}/${grdID}/${outfile}.idx" else echo "${outfile} is global.0p50 or SENDDBN is NO, no alert sent" fi @@ -245,7 +245,7 @@ if [[ ! -s "${COMOUT_WAVE_GRID}/${outfile}.idx" ]]; then else set +x echo ' ' - echo " File ${COMOUT_WAVE_GRID}/${outfile} found, skipping generation process" + echo " File ${COMOUT_WAVE_GRID}/${grdID}/${outfile} found, skipping generation process" echo ' ' set_trace fi From 8a15b34dad9ef59c3b61cf5de9243a03aa1862be Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Thu, 12 Dec 2024 11:34:52 -0500 Subject: [PATCH 033/186] modified sh scripts --- scripts/exgfs_wave_post_gridded_sbs.sh | 6 +++--- ush/wave_grib2_sbs.sh | 26 +++++++++++++------------- 2 files changed, 16 insertions(+), 16 deletions(-) diff --git a/scripts/exgfs_wave_post_gridded_sbs.sh b/scripts/exgfs_wave_post_gridded_sbs.sh index a241a00d88..1c1c5fa115 100755 --- a/scripts/exgfs_wave_post_gridded_sbs.sh +++ b/scripts/exgfs_wave_post_gridded_sbs.sh @@ -379,15 +379,15 @@ source "${USHgfs}/preamble.sh" rm -f out_grd.* # Remove large binary grid output files cd $DATA - - + if [ "$fhr" = "$fhrg" ] then # Check if grib2 file created ENSTAG="" if [ ${waveMEMB} ]; then ENSTAG=".${membTAG}${waveMEMB}" ; fi gribchk="${RUN}wave.${cycle}${ENSTAG}.${GRDNAME}.${GRDRES}.f${FH3}.grib2" - if [ ! -s ${COMOUT_WAVE_GRID}/${gribchk} ]; then + if [[ ! -s "${COMOUT_WAVE_GRID}/${wavepostGRD}/${gribchk}" \ + && ! -s "${COMOUT_WAVE_GRID}/${waveinterpGRD}/${gribchk}" ]]; then set +x echo ' ' echo '********************************************' diff --git a/ush/wave_grib2_sbs.sh b/ush/wave_grib2_sbs.sh index be7d6611b0..4b65b028a8 100755 --- a/ush/wave_grib2_sbs.sh +++ b/ush/wave_grib2_sbs.sh @@ -72,7 +72,7 @@ if [[ -n ${waveMEMB} ]]; then ENSTAG=".${membTAG}${waveMEMB}" ; fi outfile="${WAV_MOD_TAG}.${cycle}${ENSTAG}.${grdnam}.${grdres}.f${FH3}.grib2" # Only create file if not present in COM -if [[ ! -s "${COMOUT_WAVE_GRID}/${grdID}/${outfile}.idx" ]]; then +if [[ ! -s "${COMOUT_WAVE_GRID}_${grdID}/${outfile}.idx" ]]; then set +x echo ' ' @@ -83,7 +83,7 @@ if [[ ! -s "${COMOUT_WAVE_GRID}/${grdID}/${outfile}.idx" ]]; then set_trace if [[ -z "${PDY}" ]] || [[ -z ${cyc} ]] || [[ -z "${cycle}" ]] || [[ -z "${EXECgfs}" ]] || \ - [[ -z "${COMOUT_WAVE_GRID}/${grdID}" ]] || [[ -z "${WAV_MOD_TAG}" ]] || [[ -z "${gribflags}" ]] || \ + [[ -z "${COMOUT_WAVE_GRID}_${grdID}" ]] || [[ -z "${WAV_MOD_TAG}" ]] || [[ -z "${gribflags}" ]] || \ [[ -z "${GRIDNR}" ]] || [[ -z "${MODNR}" ]] || \ [[ -z "${SENDDBN}" ]]; then set +x @@ -157,11 +157,11 @@ if [[ ! -s "${COMOUT_WAVE_GRID}/${grdID}/${outfile}.idx" ]]; then fi if (( fhr > 0 )); then - ${WGRIB2} gribfile -set_date "${PDY}${cyc}" -set_ftime "${fhr} hour fcst" -grib "${COMOUT_WAVE_GRID}/${grdID}/${outfile}" + ${WGRIB2} gribfile -set_date "${PDY}${cyc}" -set_ftime "${fhr} hour fcst" -grib "${COMOUT_WAVE_GRID}_${grdID}/${outfile}" err=$? else ${WGRIB2} gribfile -set_date "${PDY}${cyc}" -set_ftime "${fhr} hour fcst" \ - -set table_1.4 1 -set table_1.2 1 -grib "${COMOUT_WAVE_GRID}/${grdID}/${outfile}" + -set table_1.4 1 -set table_1.2 1 -grib "${COMOUT_WAVE_GRID}_${grdID}/${outfile}" err=$? fi @@ -177,7 +177,7 @@ if [[ ! -s "${COMOUT_WAVE_GRID}/${grdID}/${outfile}.idx" ]]; then fi # Create index - ${WGRIB2} -s "${COMOUT_WAVE_GRID}/${grdID}/${outfile}" > "${COMOUT_WAVE_GRID}/${grdID}/${outfile}.idx" + ${WGRIB2} -s "${COMOUT_WAVE_GRID}_${grdID}/${outfile}" > "${COMOUT_WAVE_GRID}_${grdID}/${outfile}.idx" # Create grib2 subgrid is this is the source grid if [[ "${grdID}" = "${WAV_SUBGRBSRC}" ]]; then @@ -186,8 +186,8 @@ if [[ ! -s "${COMOUT_WAVE_GRID}/${grdID}/${outfile}.idx" ]]; then subgrbnam=$(echo ${!subgrb} | cut -d " " -f 21) subgrbres=$(echo ${!subgrb} | cut -d " " -f 22) subfnam="${WAV_MOD_TAG}.${cycle}${ENSTAG}.${subgrbnam}.${subgrbres}.f${FH3}.grib2" - ${COPYGB2} -g "${subgrbref}" -i0 -x "${COMOUT_WAVE_GRID}/${grdID}/${outfile}" "${COMOUT_WAVE_GRID}/${grdID}/${subfnam}" - ${WGRIB2} -s "${COMOUT_WAVE_GRID}/${grdID}/${subfnam}" > "${COMOUT_WAVE_GRID}/${grdID}/${subfnam}.idx" + ${COPYGB2} -g "${subgrbref}" -i0 -x "${COMOUT_WAVE_GRID}_${grdID}/${outfile}" "${COMOUT_WAVE_GRID}_${grdID}/${subfnam}" + ${WGRIB2} -s "${COMOUT_WAVE_GRID}_${grdID}/${subfnam}" > "${COMOUT_WAVE_GRID}_${grdID}/${subfnam}.idx" done fi @@ -205,7 +205,7 @@ if [[ ! -s "${COMOUT_WAVE_GRID}/${grdID}/${outfile}.idx" ]]; then set_trace exit 4 fi - if [[ ! -s "${COMOUT_WAVE_GRID}/${grdID}/${outfile}.idx" ]]; then + if [[ ! -s "${COMOUT_WAVE_GRID}_${grdID}/${outfile}.idx" ]]; then set +x echo ' ' echo '*************************************************** ' @@ -220,11 +220,11 @@ if [[ ! -s "${COMOUT_WAVE_GRID}/${grdID}/${outfile}.idx" ]]; then if [[ "${SENDDBN}" = 'YES' ]] && [[ ${outfile} != *global.0p50* ]]; then set +x - echo " Alerting GRIB file as ${COMOUT_WAVE_GRID}/${grdID}/${outfile}" - echo " Alerting GRIB index file as ${COMOUT_WAVE_GRID}/${grdID}/${outfile}.idx" + echo " Alerting GRIB file as ${COMOUT_WAVE_GRID}_${grdID}/${outfile}" + echo " Alerting GRIB index file as ${COMOUT_WAVE_GRID}_${grdID}/${outfile}.idx" set_trace - "${DBNROOT}/bin/dbn_alert" MODEL "${alertName}_WAVE_GB2" "${job}" "${COMOUT_WAVE_GRID}/${grdID}/${outfile}" - "${DBNROOT}/bin/dbn_alert" MODEL "${alertName}_WAVE_GB2_WIDX" "${job}" "${COMOUT_WAVE_GRID}/${grdID}/${outfile}.idx" + "${DBNROOT}/bin/dbn_alert" MODEL "${alertName}_WAVE_GB2" "${job}" "${COMOUT_WAVE_GRID}_${grdID}/${outfile}" + "${DBNROOT}/bin/dbn_alert" MODEL "${alertName}_WAVE_GB2_WIDX" "${job}" "${COMOUT_WAVE_GRID}_${grdID}/${outfile}.idx" else echo "${outfile} is global.0p50 or SENDDBN is NO, no alert sent" fi @@ -245,7 +245,7 @@ if [[ ! -s "${COMOUT_WAVE_GRID}/${grdID}/${outfile}.idx" ]]; then else set +x echo ' ' - echo " File ${COMOUT_WAVE_GRID}/${grdID}/${outfile} found, skipping generation process" + echo " File ${COMOUT_WAVE_GRID}_${grdID}/${outfile} found, skipping generation process" echo ' ' set_trace fi From df91f126297372773a7b306524c9e1a50f28f5ed Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Thu, 12 Dec 2024 11:37:45 -0500 Subject: [PATCH 034/186] modified ush\wave_grib2_sbs.sh --- ush/wave_grib2_sbs.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ush/wave_grib2_sbs.sh b/ush/wave_grib2_sbs.sh index 4b65b028a8..42e4f8b4cc 100755 --- a/ush/wave_grib2_sbs.sh +++ b/ush/wave_grib2_sbs.sh @@ -83,7 +83,7 @@ if [[ ! -s "${COMOUT_WAVE_GRID}_${grdID}/${outfile}.idx" ]]; then set_trace if [[ -z "${PDY}" ]] || [[ -z ${cyc} ]] || [[ -z "${cycle}" ]] || [[ -z "${EXECgfs}" ]] || \ - [[ -z "${COMOUT_WAVE_GRID}_${grdID}" ]] || [[ -z "${WAV_MOD_TAG}" ]] || [[ -z "${gribflags}" ]] || \ + [[ -z "${COMOUT_WAVE_GRID}" ]] || [[ -z "${WAV_MOD_TAG}" ]] || [[ -z "${gribflags}" ]] || \ [[ -z "${GRIDNR}" ]] || [[ -z "${MODNR}" ]] || \ [[ -z "${SENDDBN}" ]]; then set +x From f9022dc36e1be8367fe1249cbc2c53b642eee6ca Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Thu, 12 Dec 2024 13:10:47 -0500 Subject: [PATCH 035/186] modified sh scripts --- scripts/exgfs_wave_post_gridded_sbs.sh | 3 +- ush/wave_grib2_sbs.sh | 49 +++++++++++++++++++------- 2 files changed, 38 insertions(+), 14 deletions(-) diff --git a/scripts/exgfs_wave_post_gridded_sbs.sh b/scripts/exgfs_wave_post_gridded_sbs.sh index 1c1c5fa115..f3f2936ca1 100755 --- a/scripts/exgfs_wave_post_gridded_sbs.sh +++ b/scripts/exgfs_wave_post_gridded_sbs.sh @@ -386,8 +386,7 @@ source "${USHgfs}/preamble.sh" ENSTAG="" if [ ${waveMEMB} ]; then ENSTAG=".${membTAG}${waveMEMB}" ; fi gribchk="${RUN}wave.${cycle}${ENSTAG}.${GRDNAME}.${GRDRES}.f${FH3}.grib2" - if [[ ! -s "${COMOUT_WAVE_GRID}/${wavepostGRD}/${gribchk}" \ - && ! -s "${COMOUT_WAVE_GRID}/${waveinterpGRD}/${gribchk}" ]]; then + if [[ ! -s "${COMOUT_WAVE_GRID}/${wavepostGRD:-${waveinterpGRD}}/${gribchk}"]]; then set +x echo ' ' echo '********************************************' diff --git a/ush/wave_grib2_sbs.sh b/ush/wave_grib2_sbs.sh index 42e4f8b4cc..422335691e 100755 --- a/ush/wave_grib2_sbs.sh +++ b/ush/wave_grib2_sbs.sh @@ -38,6 +38,31 @@ gribDIR="${grdID}_grib" rm -rfd "${gribDIR}" mkdir "${gribDIR}" err=$? +case ${grdID} in + glo_10m) GRDNAME='global.0p16';; + glo_15mxt) GRDNAME='global.0p25';; + glo_30mxt) GRDNAME='global.0p50';; + glo_30m) GRDNAME='global.0p50';; + glo_025) GRDNAME='global.0p25';; + glo_100) GRDNAME='global.1p00';; + glo_200) GRDNAME='global.2p00';; + glo_500) GRDNAME='global.5p00';; + at_10m) GRDNAME='atlocn.0p16';; + ep_10m) GRDNAME='epacif.0p16';; + wc_10m) GRDNAME='wcoast.0p16';; + ak_10m) GRDNAME='alaska.0p16';; + aoc_9km) GRDNAME='arctic.9km';; + ant_9km) GRDNAME='antarc.9km';; + gnh_10m) GRDNAME='global.0p16';; + gsh_15m) GRDNAME='gsouth.0p25';; + ao_20m) GRDNAME='arctic.0p33';; + so_20m) GRDNAME='antarc.0p33';; + reg025) GRDNAME='global.0p25';; + gwes_30m) GRDNAME='global.0p50';; + *) + echo "FATAL ERROR: No grid specific wave config values exist for ${grdID}. Aborting." + exit 1;; +esac if [[ ${err} != 0 ]]; then set +x echo ' ' @@ -72,7 +97,7 @@ if [[ -n ${waveMEMB} ]]; then ENSTAG=".${membTAG}${waveMEMB}" ; fi outfile="${WAV_MOD_TAG}.${cycle}${ENSTAG}.${grdnam}.${grdres}.f${FH3}.grib2" # Only create file if not present in COM -if [[ ! -s "${COMOUT_WAVE_GRID}_${grdID}/${outfile}.idx" ]]; then +if [[ ! -s "${COMOUT_WAVE_GRID}/${GRDNAME}/${outfile}.idx" ]]; then set +x echo ' ' @@ -157,11 +182,11 @@ if [[ ! -s "${COMOUT_WAVE_GRID}_${grdID}/${outfile}.idx" ]]; then fi if (( fhr > 0 )); then - ${WGRIB2} gribfile -set_date "${PDY}${cyc}" -set_ftime "${fhr} hour fcst" -grib "${COMOUT_WAVE_GRID}_${grdID}/${outfile}" + ${WGRIB2} gribfile -set_date "${PDY}${cyc}" -set_ftime "${fhr} hour fcst" -grib "${COMOUT_WAVE_GRID}/${GRDNAME}/${outfile}" err=$? else ${WGRIB2} gribfile -set_date "${PDY}${cyc}" -set_ftime "${fhr} hour fcst" \ - -set table_1.4 1 -set table_1.2 1 -grib "${COMOUT_WAVE_GRID}_${grdID}/${outfile}" + -set table_1.4 1 -set table_1.2 1 -grib "${COMOUT_WAVE_GRID}/${GRDNAME}/${outfile}" err=$? fi @@ -177,7 +202,7 @@ if [[ ! -s "${COMOUT_WAVE_GRID}_${grdID}/${outfile}.idx" ]]; then fi # Create index - ${WGRIB2} -s "${COMOUT_WAVE_GRID}_${grdID}/${outfile}" > "${COMOUT_WAVE_GRID}_${grdID}/${outfile}.idx" + ${WGRIB2} -s "${COMOUT_WAVE_GRID}/${GRDNAME}/${outfile}" > "${COMOUT_WAVE_GRID}/${GRDNAME}/${outfile}.idx" # Create grib2 subgrid is this is the source grid if [[ "${grdID}" = "${WAV_SUBGRBSRC}" ]]; then @@ -186,8 +211,8 @@ if [[ ! -s "${COMOUT_WAVE_GRID}_${grdID}/${outfile}.idx" ]]; then subgrbnam=$(echo ${!subgrb} | cut -d " " -f 21) subgrbres=$(echo ${!subgrb} | cut -d " " -f 22) subfnam="${WAV_MOD_TAG}.${cycle}${ENSTAG}.${subgrbnam}.${subgrbres}.f${FH3}.grib2" - ${COPYGB2} -g "${subgrbref}" -i0 -x "${COMOUT_WAVE_GRID}_${grdID}/${outfile}" "${COMOUT_WAVE_GRID}_${grdID}/${subfnam}" - ${WGRIB2} -s "${COMOUT_WAVE_GRID}_${grdID}/${subfnam}" > "${COMOUT_WAVE_GRID}_${grdID}/${subfnam}.idx" + ${COPYGB2} -g "${subgrbref}" -i0 -x "${COMOUT_WAVE_GRID}/${GRDNAME}/${outfile}" "${COMOUT_WAVE_GRID}/${GRDNAME}/${subfnam}" + ${WGRIB2} -s "${COMOUT_WAVE_GRID}/${GRDNAME}/${subfnam}" > "${COMOUT_WAVE_GRID}/${GRDNAME}/${subfnam}.idx" done fi @@ -205,7 +230,7 @@ if [[ ! -s "${COMOUT_WAVE_GRID}_${grdID}/${outfile}.idx" ]]; then set_trace exit 4 fi - if [[ ! -s "${COMOUT_WAVE_GRID}_${grdID}/${outfile}.idx" ]]; then + if [[ ! -s "${COMOUT_WAVE_GRID}/${GRDNAME}/${outfile}.idx" ]]; then set +x echo ' ' echo '*************************************************** ' @@ -220,11 +245,11 @@ if [[ ! -s "${COMOUT_WAVE_GRID}_${grdID}/${outfile}.idx" ]]; then if [[ "${SENDDBN}" = 'YES' ]] && [[ ${outfile} != *global.0p50* ]]; then set +x - echo " Alerting GRIB file as ${COMOUT_WAVE_GRID}_${grdID}/${outfile}" - echo " Alerting GRIB index file as ${COMOUT_WAVE_GRID}_${grdID}/${outfile}.idx" + echo " Alerting GRIB file as ${COMOUT_WAVE_GRID}/${GRDNAME}/${outfile}" + echo " Alerting GRIB index file as ${COMOUT_WAVE_GRID}/${GRDNAME}/${outfile}.idx" set_trace - "${DBNROOT}/bin/dbn_alert" MODEL "${alertName}_WAVE_GB2" "${job}" "${COMOUT_WAVE_GRID}_${grdID}/${outfile}" - "${DBNROOT}/bin/dbn_alert" MODEL "${alertName}_WAVE_GB2_WIDX" "${job}" "${COMOUT_WAVE_GRID}_${grdID}/${outfile}.idx" + "${DBNROOT}/bin/dbn_alert" MODEL "${alertName}_WAVE_GB2" "${job}" "${COMOUT_WAVE_GRID}/${GRDNAME}/${outfile}" + "${DBNROOT}/bin/dbn_alert" MODEL "${alertName}_WAVE_GB2_WIDX" "${job}" "${COMOUT_WAVE_GRID}/${GRDNAME}/${outfile}.idx" else echo "${outfile} is global.0p50 or SENDDBN is NO, no alert sent" fi @@ -245,7 +270,7 @@ if [[ ! -s "${COMOUT_WAVE_GRID}_${grdID}/${outfile}.idx" ]]; then else set +x echo ' ' - echo " File ${COMOUT_WAVE_GRID}_${grdID}/${outfile} found, skipping generation process" + echo " File ${COMOUT_WAVE_GRID}/${GRDNAME}/${outfile} found, skipping generation process" echo ' ' set_trace fi From aa89ceae888f96158d6a6be248cd7fb5ac020c4c Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Thu, 12 Dec 2024 13:51:37 -0500 Subject: [PATCH 036/186] modified scripts\exgfs_wave_post_gridded_sbs.sh --- scripts/exgfs_wave_post_gridded_sbs.sh | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/scripts/exgfs_wave_post_gridded_sbs.sh b/scripts/exgfs_wave_post_gridded_sbs.sh index f3f2936ca1..3c0b2f2e27 100755 --- a/scripts/exgfs_wave_post_gridded_sbs.sh +++ b/scripts/exgfs_wave_post_gridded_sbs.sh @@ -384,9 +384,10 @@ source "${USHgfs}/preamble.sh" then # Check if grib2 file created ENSTAG="" + res=${wavepostGRD:-${waveinterpGRD}} if [ ${waveMEMB} ]; then ENSTAG=".${membTAG}${waveMEMB}" ; fi gribchk="${RUN}wave.${cycle}${ENSTAG}.${GRDNAME}.${GRDRES}.f${FH3}.grib2" - if [[ ! -s "${COMOUT_WAVE_GRID}/${wavepostGRD:-${waveinterpGRD}}/${gribchk}"]]; then + if [[ ! -s "${COMOUT_WAVE_GRID}/${res}/${gribchk}" ]]; then set +x echo ' ' echo '********************************************' From df06e3d3e8037886c36c4cb6fdad8c378480bd52 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Thu, 12 Dec 2024 15:03:48 -0500 Subject: [PATCH 037/186] modified ush\wave_grib2_sbs.sh --- ush/wave_grib2_sbs.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ush/wave_grib2_sbs.sh b/ush/wave_grib2_sbs.sh index 422335691e..b520d0fce8 100755 --- a/ush/wave_grib2_sbs.sh +++ b/ush/wave_grib2_sbs.sh @@ -218,7 +218,7 @@ if [[ ! -s "${COMOUT_WAVE_GRID}/${GRDNAME}/${outfile}.idx" ]]; then # 1.e Save in /com - if [[ ! -s "${COMOUT_WAVE_GRID}/${outfile}" ]]; then + if [[ ! -s "${COMOUT_WAVE_GRID}/${GRDNAME}/${outfile}" ]]; then set +x echo ' ' echo '********************************************* ' From 670150e64fd8be10f30aa008a2f8cb054d4a0737 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Fri, 13 Dec 2024 18:02:22 -0500 Subject: [PATCH 038/186] modifed scripts\exgfs_wave_post_gridded_sbs.sh --- scripts/exgfs_wave_post_gridded_sbs.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/exgfs_wave_post_gridded_sbs.sh b/scripts/exgfs_wave_post_gridded_sbs.sh index 3c0b2f2e27..eeb91c3590 100755 --- a/scripts/exgfs_wave_post_gridded_sbs.sh +++ b/scripts/exgfs_wave_post_gridded_sbs.sh @@ -387,7 +387,7 @@ source "${USHgfs}/preamble.sh" res=${wavepostGRD:-${waveinterpGRD}} if [ ${waveMEMB} ]; then ENSTAG=".${membTAG}${waveMEMB}" ; fi gribchk="${RUN}wave.${cycle}${ENSTAG}.${GRDNAME}.${GRDRES}.f${FH3}.grib2" - if [[ ! -s "${COMOUT_WAVE_GRID}/${res}/${gribchk}" ]]; then + if [[ ! -s "${COMOUT_WAVE_GRID}/${GRDNAME}.${GRDRES}/${gribchk}" ]]; then set +x echo ' ' echo '********************************************' From 903651e91cc9e599286d337cd644c8763e6e90a2 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Fri, 13 Dec 2024 19:27:50 -0500 Subject: [PATCH 039/186] modified ush\wave_grib2_sbs.sh --- ush/wave_grib2_sbs.sh | 52 ++++++++++++------------------------------- 1 file changed, 14 insertions(+), 38 deletions(-) diff --git a/ush/wave_grib2_sbs.sh b/ush/wave_grib2_sbs.sh index b520d0fce8..a495d37ca4 100755 --- a/ush/wave_grib2_sbs.sh +++ b/ush/wave_grib2_sbs.sh @@ -38,31 +38,7 @@ gribDIR="${grdID}_grib" rm -rfd "${gribDIR}" mkdir "${gribDIR}" err=$? -case ${grdID} in - glo_10m) GRDNAME='global.0p16';; - glo_15mxt) GRDNAME='global.0p25';; - glo_30mxt) GRDNAME='global.0p50';; - glo_30m) GRDNAME='global.0p50';; - glo_025) GRDNAME='global.0p25';; - glo_100) GRDNAME='global.1p00';; - glo_200) GRDNAME='global.2p00';; - glo_500) GRDNAME='global.5p00';; - at_10m) GRDNAME='atlocn.0p16';; - ep_10m) GRDNAME='epacif.0p16';; - wc_10m) GRDNAME='wcoast.0p16';; - ak_10m) GRDNAME='alaska.0p16';; - aoc_9km) GRDNAME='arctic.9km';; - ant_9km) GRDNAME='antarc.9km';; - gnh_10m) GRDNAME='global.0p16';; - gsh_15m) GRDNAME='gsouth.0p25';; - ao_20m) GRDNAME='arctic.0p33';; - so_20m) GRDNAME='antarc.0p33';; - reg025) GRDNAME='global.0p25';; - gwes_30m) GRDNAME='global.0p50';; - *) - echo "FATAL ERROR: No grid specific wave config values exist for ${grdID}. Aborting." - exit 1;; -esac + if [[ ${err} != 0 ]]; then set +x echo ' ' @@ -97,7 +73,7 @@ if [[ -n ${waveMEMB} ]]; then ENSTAG=".${membTAG}${waveMEMB}" ; fi outfile="${WAV_MOD_TAG}.${cycle}${ENSTAG}.${grdnam}.${grdres}.f${FH3}.grib2" # Only create file if not present in COM -if [[ ! -s "${COMOUT_WAVE_GRID}/${GRDNAME}/${outfile}.idx" ]]; then +if [[ ! -s "${COMOUT_WAVE_GRID}/${GRDNAME}.${GRDRES}/${outfile}.idx" ]]; then set +x echo ' ' @@ -182,11 +158,11 @@ if [[ ! -s "${COMOUT_WAVE_GRID}/${GRDNAME}/${outfile}.idx" ]]; then fi if (( fhr > 0 )); then - ${WGRIB2} gribfile -set_date "${PDY}${cyc}" -set_ftime "${fhr} hour fcst" -grib "${COMOUT_WAVE_GRID}/${GRDNAME}/${outfile}" + ${WGRIB2} gribfile -set_date "${PDY}${cyc}" -set_ftime "${fhr} hour fcst" -grib "${COMOUT_WAVE_GRID}/${GRDNAME}.${GRDRES}/${outfile}" err=$? else ${WGRIB2} gribfile -set_date "${PDY}${cyc}" -set_ftime "${fhr} hour fcst" \ - -set table_1.4 1 -set table_1.2 1 -grib "${COMOUT_WAVE_GRID}/${GRDNAME}/${outfile}" + -set table_1.4 1 -set table_1.2 1 -grib "${COMOUT_WAVE_GRID}/${GRDNAME}.${GRDRES}/${outfile}" err=$? fi @@ -202,7 +178,7 @@ if [[ ! -s "${COMOUT_WAVE_GRID}/${GRDNAME}/${outfile}.idx" ]]; then fi # Create index - ${WGRIB2} -s "${COMOUT_WAVE_GRID}/${GRDNAME}/${outfile}" > "${COMOUT_WAVE_GRID}/${GRDNAME}/${outfile}.idx" + ${WGRIB2} -s "${COMOUT_WAVE_GRID}/${GRDNAME}.${GRDRES}/${outfile}" > "${COMOUT_WAVE_GRID}/${GRDNAME}.${GRDRES}/${outfile}.idx" # Create grib2 subgrid is this is the source grid if [[ "${grdID}" = "${WAV_SUBGRBSRC}" ]]; then @@ -211,14 +187,14 @@ if [[ ! -s "${COMOUT_WAVE_GRID}/${GRDNAME}/${outfile}.idx" ]]; then subgrbnam=$(echo ${!subgrb} | cut -d " " -f 21) subgrbres=$(echo ${!subgrb} | cut -d " " -f 22) subfnam="${WAV_MOD_TAG}.${cycle}${ENSTAG}.${subgrbnam}.${subgrbres}.f${FH3}.grib2" - ${COPYGB2} -g "${subgrbref}" -i0 -x "${COMOUT_WAVE_GRID}/${GRDNAME}/${outfile}" "${COMOUT_WAVE_GRID}/${GRDNAME}/${subfnam}" - ${WGRIB2} -s "${COMOUT_WAVE_GRID}/${GRDNAME}/${subfnam}" > "${COMOUT_WAVE_GRID}/${GRDNAME}/${subfnam}.idx" + ${COPYGB2} -g "${subgrbref}" -i0 -x "${COMOUT_WAVE_GRID}/${GRDNAME}.${GRDRES}/${outfile}" "${COMOUT_WAVE_GRID}/${GRDNAME}.${GRDRES}/${subfnam}" + ${WGRIB2} -s "${COMOUT_WAVE_GRID}/${GRDNAME}.${GRDRES}/${subfnam}" > "${COMOUT_WAVE_GRID}/${GRDNAME}.${GRDRES}/${subfnam}.idx" done fi # 1.e Save in /com - if [[ ! -s "${COMOUT_WAVE_GRID}/${GRDNAME}/${outfile}" ]]; then + if [[ ! -s "${COMOUT_WAVE_GRID}/${GRDNAME}.${GRDRES}/${outfile}" ]]; then set +x echo ' ' echo '********************************************* ' @@ -230,7 +206,7 @@ if [[ ! -s "${COMOUT_WAVE_GRID}/${GRDNAME}/${outfile}.idx" ]]; then set_trace exit 4 fi - if [[ ! -s "${COMOUT_WAVE_GRID}/${GRDNAME}/${outfile}.idx" ]]; then + if [[ ! -s "${COMOUT_WAVE_GRID}/${GRDNAME}.${GRDRES}/${outfile}.idx" ]]; then set +x echo ' ' echo '*************************************************** ' @@ -245,11 +221,11 @@ if [[ ! -s "${COMOUT_WAVE_GRID}/${GRDNAME}/${outfile}.idx" ]]; then if [[ "${SENDDBN}" = 'YES' ]] && [[ ${outfile} != *global.0p50* ]]; then set +x - echo " Alerting GRIB file as ${COMOUT_WAVE_GRID}/${GRDNAME}/${outfile}" - echo " Alerting GRIB index file as ${COMOUT_WAVE_GRID}/${GRDNAME}/${outfile}.idx" + echo " Alerting GRIB file as ${COMOUT_WAVE_GRID}/${GRDNAME}.${GRDRES}/${outfile}" + echo " Alerting GRIB index file as ${COMOUT_WAVE_GRID}/${GRDNAME}.${GRDRES}/${outfile}.idx" set_trace - "${DBNROOT}/bin/dbn_alert" MODEL "${alertName}_WAVE_GB2" "${job}" "${COMOUT_WAVE_GRID}/${GRDNAME}/${outfile}" - "${DBNROOT}/bin/dbn_alert" MODEL "${alertName}_WAVE_GB2_WIDX" "${job}" "${COMOUT_WAVE_GRID}/${GRDNAME}/${outfile}.idx" + "${DBNROOT}/bin/dbn_alert" MODEL "${alertName}_WAVE_GB2" "${job}" "${COMOUT_WAVE_GRID}/${GRDNAME}.${GRDRES}/${outfile}" + "${DBNROOT}/bin/dbn_alert" MODEL "${alertName}_WAVE_GB2_WIDX" "${job}" "${COMOUT_WAVE_GRID}/${GRDNAME}.${GRDRES}/${outfile}.idx" else echo "${outfile} is global.0p50 or SENDDBN is NO, no alert sent" fi @@ -270,7 +246,7 @@ if [[ ! -s "${COMOUT_WAVE_GRID}/${GRDNAME}/${outfile}.idx" ]]; then else set +x echo ' ' - echo " File ${COMOUT_WAVE_GRID}/${GRDNAME}/${outfile} found, skipping generation process" + echo " File ${COMOUT_WAVE_GRID}/${GRDNAME}.${GRDRES}/${outfile} found, skipping generation process" echo ' ' set_trace fi From de4676600c5d5ccb0d14ae1e7012a6dde200f795 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Fri, 13 Dec 2024 19:53:26 -0500 Subject: [PATCH 040/186] modified ush\wave_grib2_sbs.sh --- ush/wave_grib2_sbs.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ush/wave_grib2_sbs.sh b/ush/wave_grib2_sbs.sh index a495d37ca4..a30927c788 100755 --- a/ush/wave_grib2_sbs.sh +++ b/ush/wave_grib2_sbs.sh @@ -84,7 +84,7 @@ if [[ ! -s "${COMOUT_WAVE_GRID}/${GRDNAME}.${GRDRES}/${outfile}.idx" ]]; then set_trace if [[ -z "${PDY}" ]] || [[ -z ${cyc} ]] || [[ -z "${cycle}" ]] || [[ -z "${EXECgfs}" ]] || \ - [[ -z "${COMOUT_WAVE_GRID}" ]] || [[ -z "${WAV_MOD_TAG}" ]] || [[ -z "${gribflags}" ]] || \ + [[ -z "${COMOUT_WAVE_GRID}/${grdID}" ]] || [[ -z "${WAV_MOD_TAG}" ]] || [[ -z "${gribflags}" ]] || \ [[ -z "${GRIDNR}" ]] || [[ -z "${MODNR}" ]] || \ [[ -z "${SENDDBN}" ]]; then set +x From 128b795e2d6645f36fb6d863384fec4f3133c36d Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Fri, 13 Dec 2024 20:09:23 -0500 Subject: [PATCH 041/186] modified ush\wave_grib2_sbs.sh --- ush/wave_grib2_sbs.sh | 26 +++++++++++++------------- 1 file changed, 13 insertions(+), 13 deletions(-) diff --git a/ush/wave_grib2_sbs.sh b/ush/wave_grib2_sbs.sh index a30927c788..bc11f1fbae 100755 --- a/ush/wave_grib2_sbs.sh +++ b/ush/wave_grib2_sbs.sh @@ -73,7 +73,7 @@ if [[ -n ${waveMEMB} ]]; then ENSTAG=".${membTAG}${waveMEMB}" ; fi outfile="${WAV_MOD_TAG}.${cycle}${ENSTAG}.${grdnam}.${grdres}.f${FH3}.grib2" # Only create file if not present in COM -if [[ ! -s "${COMOUT_WAVE_GRID}/${GRDNAME}.${GRDRES}/${outfile}.idx" ]]; then +if [[ ! -s "${COMOUT_WAVE_GRID}/${grdnam}.${grdres}/${outfile}.idx" ]]; then set +x echo ' ' @@ -158,11 +158,11 @@ if [[ ! -s "${COMOUT_WAVE_GRID}/${GRDNAME}.${GRDRES}/${outfile}.idx" ]]; then fi if (( fhr > 0 )); then - ${WGRIB2} gribfile -set_date "${PDY}${cyc}" -set_ftime "${fhr} hour fcst" -grib "${COMOUT_WAVE_GRID}/${GRDNAME}.${GRDRES}/${outfile}" + ${WGRIB2} gribfile -set_date "${PDY}${cyc}" -set_ftime "${fhr} hour fcst" -grib "${COMOUT_WAVE_GRID}/${grdnam}.${grdres}/${outfile}" err=$? else ${WGRIB2} gribfile -set_date "${PDY}${cyc}" -set_ftime "${fhr} hour fcst" \ - -set table_1.4 1 -set table_1.2 1 -grib "${COMOUT_WAVE_GRID}/${GRDNAME}.${GRDRES}/${outfile}" + -set table_1.4 1 -set table_1.2 1 -grib "${COMOUT_WAVE_GRID}/${grdnam}.${grdres}/${outfile}" err=$? fi @@ -178,7 +178,7 @@ if [[ ! -s "${COMOUT_WAVE_GRID}/${GRDNAME}.${GRDRES}/${outfile}.idx" ]]; then fi # Create index - ${WGRIB2} -s "${COMOUT_WAVE_GRID}/${GRDNAME}.${GRDRES}/${outfile}" > "${COMOUT_WAVE_GRID}/${GRDNAME}.${GRDRES}/${outfile}.idx" + ${WGRIB2} -s "${COMOUT_WAVE_GRID}/${grdnam}.${grdres}/${outfile}" > "${COMOUT_WAVE_GRID}/${grdnam}.${grdres}/${outfile}.idx" # Create grib2 subgrid is this is the source grid if [[ "${grdID}" = "${WAV_SUBGRBSRC}" ]]; then @@ -187,14 +187,14 @@ if [[ ! -s "${COMOUT_WAVE_GRID}/${GRDNAME}.${GRDRES}/${outfile}.idx" ]]; then subgrbnam=$(echo ${!subgrb} | cut -d " " -f 21) subgrbres=$(echo ${!subgrb} | cut -d " " -f 22) subfnam="${WAV_MOD_TAG}.${cycle}${ENSTAG}.${subgrbnam}.${subgrbres}.f${FH3}.grib2" - ${COPYGB2} -g "${subgrbref}" -i0 -x "${COMOUT_WAVE_GRID}/${GRDNAME}.${GRDRES}/${outfile}" "${COMOUT_WAVE_GRID}/${GRDNAME}.${GRDRES}/${subfnam}" - ${WGRIB2} -s "${COMOUT_WAVE_GRID}/${GRDNAME}.${GRDRES}/${subfnam}" > "${COMOUT_WAVE_GRID}/${GRDNAME}.${GRDRES}/${subfnam}.idx" + ${COPYGB2} -g "${subgrbref}" -i0 -x "${COMOUT_WAVE_GRID}/${grdnam}.${grdres}/${outfile}" "${COMOUT_WAVE_GRID}/${grdnam}.${grdres}/${subfnam}" + ${WGRIB2} -s "${COMOUT_WAVE_GRID}/${grdnam}.${grdres}/${subfnam}" > "${COMOUT_WAVE_GRID}/${grdnam}.${grdres}/${subfnam}.idx" done fi # 1.e Save in /com - if [[ ! -s "${COMOUT_WAVE_GRID}/${GRDNAME}.${GRDRES}/${outfile}" ]]; then + if [[ ! -s "${COMOUT_WAVE_GRID}/${grdnam}.${grdres}/${outfile}" ]]; then set +x echo ' ' echo '********************************************* ' @@ -206,7 +206,7 @@ if [[ ! -s "${COMOUT_WAVE_GRID}/${GRDNAME}.${GRDRES}/${outfile}.idx" ]]; then set_trace exit 4 fi - if [[ ! -s "${COMOUT_WAVE_GRID}/${GRDNAME}.${GRDRES}/${outfile}.idx" ]]; then + if [[ ! -s "${COMOUT_WAVE_GRID}/${grdnam}.${grdres}/${outfile}.idx" ]]; then set +x echo ' ' echo '*************************************************** ' @@ -221,11 +221,11 @@ if [[ ! -s "${COMOUT_WAVE_GRID}/${GRDNAME}.${GRDRES}/${outfile}.idx" ]]; then if [[ "${SENDDBN}" = 'YES' ]] && [[ ${outfile} != *global.0p50* ]]; then set +x - echo " Alerting GRIB file as ${COMOUT_WAVE_GRID}/${GRDNAME}.${GRDRES}/${outfile}" - echo " Alerting GRIB index file as ${COMOUT_WAVE_GRID}/${GRDNAME}.${GRDRES}/${outfile}.idx" + echo " Alerting GRIB file as ${COMOUT_WAVE_GRID}/${grdnam}.${grdres}/${outfile}" + echo " Alerting GRIB index file as ${COMOUT_WAVE_GRID}/${grdnam}.${grdres}/${outfile}.idx" set_trace - "${DBNROOT}/bin/dbn_alert" MODEL "${alertName}_WAVE_GB2" "${job}" "${COMOUT_WAVE_GRID}/${GRDNAME}.${GRDRES}/${outfile}" - "${DBNROOT}/bin/dbn_alert" MODEL "${alertName}_WAVE_GB2_WIDX" "${job}" "${COMOUT_WAVE_GRID}/${GRDNAME}.${GRDRES}/${outfile}.idx" + "${DBNROOT}/bin/dbn_alert" MODEL "${alertName}_WAVE_GB2" "${job}" "${COMOUT_WAVE_GRID}/${grdnam}.${grdres}/${outfile}" + "${DBNROOT}/bin/dbn_alert" MODEL "${alertName}_WAVE_GB2_WIDX" "${job}" "${COMOUT_WAVE_GRID}/${grdnam}.${grdres}/${outfile}.idx" else echo "${outfile} is global.0p50 or SENDDBN is NO, no alert sent" fi @@ -246,7 +246,7 @@ if [[ ! -s "${COMOUT_WAVE_GRID}/${GRDNAME}.${GRDRES}/${outfile}.idx" ]]; then else set +x echo ' ' - echo " File ${COMOUT_WAVE_GRID}/${GRDNAME}.${GRDRES}/${outfile} found, skipping generation process" + echo " File ${COMOUT_WAVE_GRID}/${grdnam}.${grdres}/${outfile} found, skipping generation process" echo ' ' set_trace fi From 4ca3eee609d29b302e3b82b20e32c67c4f079e4c Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Fri, 13 Dec 2024 20:20:33 -0500 Subject: [PATCH 042/186] modified ush\wave_grib2_sbs.sh --- ush/wave_grib2_sbs.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ush/wave_grib2_sbs.sh b/ush/wave_grib2_sbs.sh index bc11f1fbae..e383dffc28 100755 --- a/ush/wave_grib2_sbs.sh +++ b/ush/wave_grib2_sbs.sh @@ -82,9 +82,9 @@ if [[ ! -s "${COMOUT_WAVE_GRID}/${grdnam}.${grdres}/${outfile}.idx" ]]; then echo '+--------------------------------+' echo " Model ID : $WAV_MOD_TAG" set_trace - + comout="${COMOUT_WAVE_GRID}/${grdnam}.${grdres}" if [[ -z "${PDY}" ]] || [[ -z ${cyc} ]] || [[ -z "${cycle}" ]] || [[ -z "${EXECgfs}" ]] || \ - [[ -z "${COMOUT_WAVE_GRID}/${grdID}" ]] || [[ -z "${WAV_MOD_TAG}" ]] || [[ -z "${gribflags}" ]] || \ + [[ -z "comout" ]] || [[ -z "${WAV_MOD_TAG}" ]] || [[ -z "${gribflags}" ]] || \ [[ -z "${GRIDNR}" ]] || [[ -z "${MODNR}" ]] || \ [[ -z "${SENDDBN}" ]]; then set +x From f71079dc49f0faa140926551bc135cfec614600a Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Fri, 13 Dec 2024 20:22:50 -0500 Subject: [PATCH 043/186] modified ush\wave_grib2_sbs.sh --- ush/wave_grib2_sbs.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ush/wave_grib2_sbs.sh b/ush/wave_grib2_sbs.sh index e383dffc28..dbe7779216 100755 --- a/ush/wave_grib2_sbs.sh +++ b/ush/wave_grib2_sbs.sh @@ -84,7 +84,7 @@ if [[ ! -s "${COMOUT_WAVE_GRID}/${grdnam}.${grdres}/${outfile}.idx" ]]; then set_trace comout="${COMOUT_WAVE_GRID}/${grdnam}.${grdres}" if [[ -z "${PDY}" ]] || [[ -z ${cyc} ]] || [[ -z "${cycle}" ]] || [[ -z "${EXECgfs}" ]] || \ - [[ -z "comout" ]] || [[ -z "${WAV_MOD_TAG}" ]] || [[ -z "${gribflags}" ]] || \ + [[ -z "${comout}" ]] || [[ -z "${WAV_MOD_TAG}" ]] || [[ -z "${gribflags}" ]] || \ [[ -z "${GRIDNR}" ]] || [[ -z "${MODNR}" ]] || \ [[ -z "${SENDDBN}" ]]; then set +x From 8a3ee568d6072c9007f691f4d3be6642d0cb752a Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Fri, 13 Dec 2024 20:26:18 -0500 Subject: [PATCH 044/186] modified scripts\exgfs_wave_post_gridded_sbs.sh --- scripts/exgfs_wave_post_gridded_sbs.sh | 1 - 1 file changed, 1 deletion(-) diff --git a/scripts/exgfs_wave_post_gridded_sbs.sh b/scripts/exgfs_wave_post_gridded_sbs.sh index eeb91c3590..922edf4608 100755 --- a/scripts/exgfs_wave_post_gridded_sbs.sh +++ b/scripts/exgfs_wave_post_gridded_sbs.sh @@ -384,7 +384,6 @@ source "${USHgfs}/preamble.sh" then # Check if grib2 file created ENSTAG="" - res=${wavepostGRD:-${waveinterpGRD}} if [ ${waveMEMB} ]; then ENSTAG=".${membTAG}${waveMEMB}" ; fi gribchk="${RUN}wave.${cycle}${ENSTAG}.${GRDNAME}.${GRDRES}.f${FH3}.grib2" if [[ ! -s "${COMOUT_WAVE_GRID}/${GRDNAME}.${GRDRES}/${gribchk}" ]]; then From c76bca865b069ee9187b763bb63827c643c54ace Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Fri, 13 Dec 2024 20:58:57 -0500 Subject: [PATCH 045/186] modified ush\wave_grib2_sbs.sh --- ush/wave_grib2_sbs.sh | 28 ++++++++++++++-------------- 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a/ush/wave_grib2_sbs.sh b/ush/wave_grib2_sbs.sh index dbe7779216..cad1ad846d 100755 --- a/ush/wave_grib2_sbs.sh +++ b/ush/wave_grib2_sbs.sh @@ -73,7 +73,7 @@ if [[ -n ${waveMEMB} ]]; then ENSTAG=".${membTAG}${waveMEMB}" ; fi outfile="${WAV_MOD_TAG}.${cycle}${ENSTAG}.${grdnam}.${grdres}.f${FH3}.grib2" # Only create file if not present in COM -if [[ ! -s "${COMOUT_WAVE_GRID}/${grdnam}.${grdres}/${outfile}.idx" ]]; then +if [[ ! -s "${COMOUT_WAVE_GRID}/${outfile}.idx" ]]; then set +x echo ' ' @@ -82,7 +82,7 @@ if [[ ! -s "${COMOUT_WAVE_GRID}/${grdnam}.${grdres}/${outfile}.idx" ]]; then echo '+--------------------------------+' echo " Model ID : $WAV_MOD_TAG" set_trace - comout="${COMOUT_WAVE_GRID}/${grdnam}.${grdres}" + comout="${COMOUT_WAVE_GRID}" if [[ -z "${PDY}" ]] || [[ -z ${cyc} ]] || [[ -z "${cycle}" ]] || [[ -z "${EXECgfs}" ]] || \ [[ -z "${comout}" ]] || [[ -z "${WAV_MOD_TAG}" ]] || [[ -z "${gribflags}" ]] || \ [[ -z "${GRIDNR}" ]] || [[ -z "${MODNR}" ]] || \ @@ -158,11 +158,11 @@ if [[ ! -s "${COMOUT_WAVE_GRID}/${grdnam}.${grdres}/${outfile}.idx" ]]; then fi if (( fhr > 0 )); then - ${WGRIB2} gribfile -set_date "${PDY}${cyc}" -set_ftime "${fhr} hour fcst" -grib "${COMOUT_WAVE_GRID}/${grdnam}.${grdres}/${outfile}" + ${WGRIB2} gribfile -set_date "${PDY}${cyc}" -set_ftime "${fhr} hour fcst" -grib "${COMOUT_WAVE_GRID}/${outfile}" err=$? else ${WGRIB2} gribfile -set_date "${PDY}${cyc}" -set_ftime "${fhr} hour fcst" \ - -set table_1.4 1 -set table_1.2 1 -grib "${COMOUT_WAVE_GRID}/${grdnam}.${grdres}/${outfile}" + -set table_1.4 1 -set table_1.2 1 -grib "${COMOUT_WAVE_GRID}/${outfile}" err=$? fi @@ -178,7 +178,7 @@ if [[ ! -s "${COMOUT_WAVE_GRID}/${grdnam}.${grdres}/${outfile}.idx" ]]; then fi # Create index - ${WGRIB2} -s "${COMOUT_WAVE_GRID}/${grdnam}.${grdres}/${outfile}" > "${COMOUT_WAVE_GRID}/${grdnam}.${grdres}/${outfile}.idx" + ${WGRIB2} -s "${COMOUT_WAVE_GRID}/${outfile}" > "${COMOUT_WAVE_GRID}/${outfile}.idx" # Create grib2 subgrid is this is the source grid if [[ "${grdID}" = "${WAV_SUBGRBSRC}" ]]; then @@ -187,14 +187,14 @@ if [[ ! -s "${COMOUT_WAVE_GRID}/${grdnam}.${grdres}/${outfile}.idx" ]]; then subgrbnam=$(echo ${!subgrb} | cut -d " " -f 21) subgrbres=$(echo ${!subgrb} | cut -d " " -f 22) subfnam="${WAV_MOD_TAG}.${cycle}${ENSTAG}.${subgrbnam}.${subgrbres}.f${FH3}.grib2" - ${COPYGB2} -g "${subgrbref}" -i0 -x "${COMOUT_WAVE_GRID}/${grdnam}.${grdres}/${outfile}" "${COMOUT_WAVE_GRID}/${grdnam}.${grdres}/${subfnam}" - ${WGRIB2} -s "${COMOUT_WAVE_GRID}/${grdnam}.${grdres}/${subfnam}" > "${COMOUT_WAVE_GRID}/${grdnam}.${grdres}/${subfnam}.idx" + ${COPYGB2} -g "${subgrbref}" -i0 -x "${COMOUT_WAVE_GRID}/${outfile}" "${COMOUT_WAVE_GRID}/${subfnam}" + ${WGRIB2} -s "${COMOUT_WAVE_GRID}/${subfnam}" > "${COMOUT_WAVE_GRID}/${subfnam}.idx" done fi # 1.e Save in /com - if [[ ! -s "${COMOUT_WAVE_GRID}/${grdnam}.${grdres}/${outfile}" ]]; then + if [[ ! -s "${COMOUT_WAVE_GRID}/${outfile}" ]]; then set +x echo ' ' echo '********************************************* ' @@ -206,7 +206,7 @@ if [[ ! -s "${COMOUT_WAVE_GRID}/${grdnam}.${grdres}/${outfile}.idx" ]]; then set_trace exit 4 fi - if [[ ! -s "${COMOUT_WAVE_GRID}/${grdnam}.${grdres}/${outfile}.idx" ]]; then + if [[ ! -s "${COMOUT_WAVE_GRID}/${outfile}.idx" ]]; then set +x echo ' ' echo '*************************************************** ' @@ -221,11 +221,11 @@ if [[ ! -s "${COMOUT_WAVE_GRID}/${grdnam}.${grdres}/${outfile}.idx" ]]; then if [[ "${SENDDBN}" = 'YES' ]] && [[ ${outfile} != *global.0p50* ]]; then set +x - echo " Alerting GRIB file as ${COMOUT_WAVE_GRID}/${grdnam}.${grdres}/${outfile}" - echo " Alerting GRIB index file as ${COMOUT_WAVE_GRID}/${grdnam}.${grdres}/${outfile}.idx" + echo " Alerting GRIB file as ${COMOUT_WAVE_GRID}/${outfile}" + echo " Alerting GRIB index file as ${COMOUT_WAVE_GRID}/${outfile}.idx" set_trace - "${DBNROOT}/bin/dbn_alert" MODEL "${alertName}_WAVE_GB2" "${job}" "${COMOUT_WAVE_GRID}/${grdnam}.${grdres}/${outfile}" - "${DBNROOT}/bin/dbn_alert" MODEL "${alertName}_WAVE_GB2_WIDX" "${job}" "${COMOUT_WAVE_GRID}/${grdnam}.${grdres}/${outfile}.idx" + "${DBNROOT}/bin/dbn_alert" MODEL "${alertName}_WAVE_GB2" "${job}" "${COMOUT_WAVE_GRID}/${outfile}" + "${DBNROOT}/bin/dbn_alert" MODEL "${alertName}_WAVE_GB2_WIDX" "${job}" "${COMOUT_WAVE_GRID}/${outfile}.idx" else echo "${outfile} is global.0p50 or SENDDBN is NO, no alert sent" fi @@ -246,7 +246,7 @@ if [[ ! -s "${COMOUT_WAVE_GRID}/${grdnam}.${grdres}/${outfile}.idx" ]]; then else set +x echo ' ' - echo " File ${COMOUT_WAVE_GRID}/${grdnam}.${grdres}/${outfile} found, skipping generation process" + echo " File ${COMOUT_WAVE_GRID}/${outfile} found, skipping generation process" echo ' ' set_trace fi From deedc41e19aacaae59990354ae4146fe63ea0b90 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Fri, 13 Dec 2024 21:20:25 -0500 Subject: [PATCH 046/186] modified scripts\exgfs_wave_post_gridded_sbs.sh --- scripts/exgfs_wave_post_gridded_sbs.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/exgfs_wave_post_gridded_sbs.sh b/scripts/exgfs_wave_post_gridded_sbs.sh index 922edf4608..656ef2f868 100755 --- a/scripts/exgfs_wave_post_gridded_sbs.sh +++ b/scripts/exgfs_wave_post_gridded_sbs.sh @@ -386,7 +386,7 @@ source "${USHgfs}/preamble.sh" ENSTAG="" if [ ${waveMEMB} ]; then ENSTAG=".${membTAG}${waveMEMB}" ; fi gribchk="${RUN}wave.${cycle}${ENSTAG}.${GRDNAME}.${GRDRES}.f${FH3}.grib2" - if [[ ! -s "${COMOUT_WAVE_GRID}/${GRDNAME}.${GRDRES}/${gribchk}" ]]; then + if [[ ! -s "${COMOUT_WAVE_GRID}/${gribchk}" ]]; then set +x echo ' ' echo '********************************************' From ca1ec7e0614da0a15c4ba24cfcfa16f3d8089ea8 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Fri, 13 Dec 2024 21:32:09 -0500 Subject: [PATCH 047/186] modifed scripts\exgfs_wave_post_gridded_sbs.sh --- scripts/exgfs_wave_post_gridded_sbs.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/exgfs_wave_post_gridded_sbs.sh b/scripts/exgfs_wave_post_gridded_sbs.sh index 656ef2f868..922edf4608 100755 --- a/scripts/exgfs_wave_post_gridded_sbs.sh +++ b/scripts/exgfs_wave_post_gridded_sbs.sh @@ -386,7 +386,7 @@ source "${USHgfs}/preamble.sh" ENSTAG="" if [ ${waveMEMB} ]; then ENSTAG=".${membTAG}${waveMEMB}" ; fi gribchk="${RUN}wave.${cycle}${ENSTAG}.${GRDNAME}.${GRDRES}.f${FH3}.grib2" - if [[ ! -s "${COMOUT_WAVE_GRID}/${gribchk}" ]]; then + if [[ ! -s "${COMOUT_WAVE_GRID}/${GRDNAME}.${GRDRES}/${gribchk}" ]]; then set +x echo ' ' echo '********************************************' From 909bbde01f0a880a7a0d03412adfdfc2fe23a765 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Fri, 13 Dec 2024 22:42:24 -0500 Subject: [PATCH 048/186] modified sh scripts --- scripts/exgfs_wave_post_gridded_sbs.sh | 2 +- ush/wave_grib2_sbs.sh | 28 +++++++++++++++----------- 2 files changed, 17 insertions(+), 13 deletions(-) diff --git a/scripts/exgfs_wave_post_gridded_sbs.sh b/scripts/exgfs_wave_post_gridded_sbs.sh index 922edf4608..656ef2f868 100755 --- a/scripts/exgfs_wave_post_gridded_sbs.sh +++ b/scripts/exgfs_wave_post_gridded_sbs.sh @@ -386,7 +386,7 @@ source "${USHgfs}/preamble.sh" ENSTAG="" if [ ${waveMEMB} ]; then ENSTAG=".${membTAG}${waveMEMB}" ; fi gribchk="${RUN}wave.${cycle}${ENSTAG}.${GRDNAME}.${GRDRES}.f${FH3}.grib2" - if [[ ! -s "${COMOUT_WAVE_GRID}/${GRDNAME}.${GRDRES}/${gribchk}" ]]; then + if [[ ! -s "${COMOUT_WAVE_GRID}/${gribchk}" ]]; then set +x echo ' ' echo '********************************************' diff --git a/ush/wave_grib2_sbs.sh b/ush/wave_grib2_sbs.sh index cad1ad846d..9f7b07b48b 100755 --- a/ush/wave_grib2_sbs.sh +++ b/ush/wave_grib2_sbs.sh @@ -82,7 +82,7 @@ if [[ ! -s "${COMOUT_WAVE_GRID}/${outfile}.idx" ]]; then echo '+--------------------------------+' echo " Model ID : $WAV_MOD_TAG" set_trace - comout="${COMOUT_WAVE_GRID}" + comout="${COMOUT_WAVE_GRID}/${grdnam}.${grdres}" if [[ -z "${PDY}" ]] || [[ -z ${cyc} ]] || [[ -z "${cycle}" ]] || [[ -z "${EXECgfs}" ]] || \ [[ -z "${comout}" ]] || [[ -z "${WAV_MOD_TAG}" ]] || [[ -z "${gribflags}" ]] || \ [[ -z "${GRIDNR}" ]] || [[ -z "${MODNR}" ]] || \ @@ -158,11 +158,12 @@ if [[ ! -s "${COMOUT_WAVE_GRID}/${outfile}.idx" ]]; then fi if (( fhr > 0 )); then - ${WGRIB2} gribfile -set_date "${PDY}${cyc}" -set_ftime "${fhr} hour fcst" -grib "${COMOUT_WAVE_GRID}/${outfile}" + ${WGRIB2} gribfile -set_date "${PDY}${cyc}" -set_ftime "${fhr} hour fcst" -grib "${COMOUT_WAVE_GRID}/${grdnam}.${grdres}/${outfile}" + echo "${WGRIB2} gribfile -set_date "${PDY}${cyc}" -set_ftime "${fhr} hour fcst" -grib "${COMOUT_WAVE_GRID}/${grdnam}.${grdres}/${outfile}" err=$? else ${WGRIB2} gribfile -set_date "${PDY}${cyc}" -set_ftime "${fhr} hour fcst" \ - -set table_1.4 1 -set table_1.2 1 -grib "${COMOUT_WAVE_GRID}/${outfile}" + -set table_1.4 1 -set table_1.2 1 -grib "${COMOUT_WAVE_GRID}/${grdnam}.${grdres}/${outfile}" err=$? fi @@ -178,7 +179,7 @@ if [[ ! -s "${COMOUT_WAVE_GRID}/${outfile}.idx" ]]; then fi # Create index - ${WGRIB2} -s "${COMOUT_WAVE_GRID}/${outfile}" > "${COMOUT_WAVE_GRID}/${outfile}.idx" + ${WGRIB2} -s "${COMOUT_WAVE_GRID}/${grdnam}.${grdres}/${outfile}" > "${COMOUT_WAVE_GRID}/${grdnam}.${grdres}/${outfile}.idx" # Create grib2 subgrid is this is the source grid if [[ "${grdID}" = "${WAV_SUBGRBSRC}" ]]; then @@ -187,14 +188,16 @@ if [[ ! -s "${COMOUT_WAVE_GRID}/${outfile}.idx" ]]; then subgrbnam=$(echo ${!subgrb} | cut -d " " -f 21) subgrbres=$(echo ${!subgrb} | cut -d " " -f 22) subfnam="${WAV_MOD_TAG}.${cycle}${ENSTAG}.${subgrbnam}.${subgrbres}.f${FH3}.grib2" - ${COPYGB2} -g "${subgrbref}" -i0 -x "${COMOUT_WAVE_GRID}/${outfile}" "${COMOUT_WAVE_GRID}/${subfnam}" - ${WGRIB2} -s "${COMOUT_WAVE_GRID}/${subfnam}" > "${COMOUT_WAVE_GRID}/${subfnam}.idx" + ${COPYGB2} -g "${subgrbref}" -i0 -x "${COMOUT_WAVE_GRID}/${grdnam}.${grdres}/${outfile}" \ + "${COMOUT_WAVE_GRID}/${grdnam}.${grdres}/${subfnam}" + ${WGRIB2} -s "${COMOUT_WAVE_GRID}/${grdnam}.${grdres}/${subfnam}" > \ + "${COMOUT_WAVE_GRID}/${grdnam}.${grdres}/${subfnam}.idx" done fi # 1.e Save in /com - if [[ ! -s "${COMOUT_WAVE_GRID}/${outfile}" ]]; then + if [[ ! -s "${COMOUT_WAVE_GRID}/${grdnam}.${grdres}/${outfile}" ]]; then set +x echo ' ' echo '********************************************* ' @@ -206,7 +209,7 @@ if [[ ! -s "${COMOUT_WAVE_GRID}/${outfile}.idx" ]]; then set_trace exit 4 fi - if [[ ! -s "${COMOUT_WAVE_GRID}/${outfile}.idx" ]]; then + if [[ ! -s "${COMOUT_WAVE_GRID}/${grdnam}.${grdres}/${outfile}.idx" ]]; then set +x echo ' ' echo '*************************************************** ' @@ -221,11 +224,12 @@ if [[ ! -s "${COMOUT_WAVE_GRID}/${outfile}.idx" ]]; then if [[ "${SENDDBN}" = 'YES' ]] && [[ ${outfile} != *global.0p50* ]]; then set +x - echo " Alerting GRIB file as ${COMOUT_WAVE_GRID}/${outfile}" + echo " Alerting GRIB file as ${COMOUT_WAVE_GRID}/${grdnam}.${grdres}/${outfile}" echo " Alerting GRIB index file as ${COMOUT_WAVE_GRID}/${outfile}.idx" set_trace - "${DBNROOT}/bin/dbn_alert" MODEL "${alertName}_WAVE_GB2" "${job}" "${COMOUT_WAVE_GRID}/${outfile}" - "${DBNROOT}/bin/dbn_alert" MODEL "${alertName}_WAVE_GB2_WIDX" "${job}" "${COMOUT_WAVE_GRID}/${outfile}.idx" + "${DBNROOT}/bin/dbn_alert" MODEL "${alertName}_WAVE_GB2" "${job}" "${COMOUT_WAVE_GRID}/${grdnam}.${grdres}/${outfile}" + "${DBNROOT}/bin/dbn_alert" MODEL "${alertName}_WAVE_GB2_WIDX" \ + "${job}" "${COMOUT_WAVE_GRID}/${grdnam}.${grdres}/${outfile}.idx" else echo "${outfile} is global.0p50 or SENDDBN is NO, no alert sent" fi @@ -246,7 +250,7 @@ if [[ ! -s "${COMOUT_WAVE_GRID}/${outfile}.idx" ]]; then else set +x echo ' ' - echo " File ${COMOUT_WAVE_GRID}/${outfile} found, skipping generation process" + echo " File ${COMOUT_WAVE_GRID}/${grdnam}.${grdres}/${outfile} found, skipping generation process" echo ' ' set_trace fi From 7345a00f6a89d8fe7f43344e785484a1861a3061 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Fri, 13 Dec 2024 23:08:05 -0500 Subject: [PATCH 049/186] modified ush\wave_grib2_sbs.sh --- ush/wave_grib2_sbs.sh | 58 +++++++++++++++++++++---------------------- 1 file changed, 29 insertions(+), 29 deletions(-) diff --git a/ush/wave_grib2_sbs.sh b/ush/wave_grib2_sbs.sh index 9f7b07b48b..f836cae84a 100755 --- a/ush/wave_grib2_sbs.sh +++ b/ush/wave_grib2_sbs.sh @@ -38,9 +38,10 @@ gribDIR="${grdID}_grib" rm -rfd "${gribDIR}" mkdir "${gribDIR}" err=$? +compath="${COMOUT_WAVE_GRID}_${grdID}" if [[ ${err} != 0 ]]; then - set +x + set -x echo ' ' echo '******************************************************************************* ' echo '*** FATAL ERROR : ERROR IN ww3_grib2 (COULD NOT CREATE TEMP DIRECTORY) *** ' @@ -75,19 +76,18 @@ outfile="${WAV_MOD_TAG}.${cycle}${ENSTAG}.${grdnam}.${grdres}.f${FH3}.grib2" # Only create file if not present in COM if [[ ! -s "${COMOUT_WAVE_GRID}/${outfile}.idx" ]]; then - set +x + set -x echo ' ' echo '+--------------------------------+' echo '! Make GRIB files |' echo '+--------------------------------+' echo " Model ID : $WAV_MOD_TAG" set_trace - comout="${COMOUT_WAVE_GRID}/${grdnam}.${grdres}" if [[ -z "${PDY}" ]] || [[ -z ${cyc} ]] || [[ -z "${cycle}" ]] || [[ -z "${EXECgfs}" ]] || \ - [[ -z "${comout}" ]] || [[ -z "${WAV_MOD_TAG}" ]] || [[ -z "${gribflags}" ]] || \ + [[ -z "${compath}" ]] || [[ -z "${WAV_MOD_TAG}" ]] || [[ -z "${gribflags}" ]] || \ [[ -z "${GRIDNR}" ]] || [[ -z "${MODNR}" ]] || \ [[ -z "${SENDDBN}" ]]; then - set +x + set -x echo ' ' echo '***************************************************' echo '*** EXPORTED VARIABLES IN postprocessor NOT SET ***' @@ -101,7 +101,7 @@ if [[ ! -s "${COMOUT_WAVE_GRID}/${outfile}.idx" ]]; then tstart="${ymdh:0:8} ${ymdh:8:2}0000" - set +x + set -x echo " Starting time : ${tstart}" echo " Time step : Single SBS" echo " Number of times : Single SBS" @@ -119,7 +119,7 @@ if [[ ! -s "${COMOUT_WAVE_GRID}/${outfile}.idx" ]]; then # 1.a Generate input file for ww3_grib2 # Template copied in mother script ... - set +x + set -x echo " Generate input file for ww3_grib2" set_trace @@ -137,7 +137,7 @@ if [[ ! -s "${COMOUT_WAVE_GRID}/${outfile}.idx" ]]; then # 1.b Run GRIB packing program - set +x + set -x echo " Run ww3_grib2" echo " Executing ${EXECgfs}/ww3_grib" set_trace @@ -147,7 +147,7 @@ if [[ ! -s "${COMOUT_WAVE_GRID}/${outfile}.idx" ]]; then export err=$?;err_chk if [ ! -s gribfile ]; then - set +x + set -x echo ' ' echo '************************************************ ' echo '*** FATAL ERROR : ERROR IN ww3_grib encoding *** ' @@ -158,17 +158,17 @@ if [[ ! -s "${COMOUT_WAVE_GRID}/${outfile}.idx" ]]; then fi if (( fhr > 0 )); then - ${WGRIB2} gribfile -set_date "${PDY}${cyc}" -set_ftime "${fhr} hour fcst" -grib "${COMOUT_WAVE_GRID}/${grdnam}.${grdres}/${outfile}" - echo "${WGRIB2} gribfile -set_date "${PDY}${cyc}" -set_ftime "${fhr} hour fcst" -grib "${COMOUT_WAVE_GRID}/${grdnam}.${grdres}/${outfile}" + ${WGRIB2} gribfile -set_date "${PDY}${cyc}" -set_ftime "${fhr} hour fcst" -grib "${COMOUT_WAVE_GRID}_${grdnam}.${grdres}/${outfile}" + echo "${WGRIB2} gribfile -set_date "${PDY}${cyc}" -set_ftime "${fhr} hour fcst" -grib "${compath}/${outfile}" err=$? else ${WGRIB2} gribfile -set_date "${PDY}${cyc}" -set_ftime "${fhr} hour fcst" \ - -set table_1.4 1 -set table_1.2 1 -grib "${COMOUT_WAVE_GRID}/${grdnam}.${grdres}/${outfile}" + -set table_1.4 1 -set table_1.2 1 -grib "${compath}/${outfile}" err=$? fi if [[ ${err} != 0 ]]; then - set +x + set -x echo ' ' echo '********************************************* ' echo '*** FATAL ERROR : ERROR IN ww3_grib2 *** ' @@ -179,7 +179,7 @@ if [[ ! -s "${COMOUT_WAVE_GRID}/${outfile}.idx" ]]; then fi # Create index - ${WGRIB2} -s "${COMOUT_WAVE_GRID}/${grdnam}.${grdres}/${outfile}" > "${COMOUT_WAVE_GRID}/${grdnam}.${grdres}/${outfile}.idx" + ${WGRIB2} -s "${compath}/${outfile}" > "${compath}/${outfile}.idx" # Create grib2 subgrid is this is the source grid if [[ "${grdID}" = "${WAV_SUBGRBSRC}" ]]; then @@ -188,17 +188,17 @@ if [[ ! -s "${COMOUT_WAVE_GRID}/${outfile}.idx" ]]; then subgrbnam=$(echo ${!subgrb} | cut -d " " -f 21) subgrbres=$(echo ${!subgrb} | cut -d " " -f 22) subfnam="${WAV_MOD_TAG}.${cycle}${ENSTAG}.${subgrbnam}.${subgrbres}.f${FH3}.grib2" - ${COPYGB2} -g "${subgrbref}" -i0 -x "${COMOUT_WAVE_GRID}/${grdnam}.${grdres}/${outfile}" \ - "${COMOUT_WAVE_GRID}/${grdnam}.${grdres}/${subfnam}" - ${WGRIB2} -s "${COMOUT_WAVE_GRID}/${grdnam}.${grdres}/${subfnam}" > \ - "${COMOUT_WAVE_GRID}/${grdnam}.${grdres}/${subfnam}.idx" + ${COPYGB2} -g "${subgrbref}" -i0 -x "${compath}/${outfile}" \ + "${compath}/${subfnam}" + ${WGRIB2} -s "${compath}/${subfnam}" > \ + "${compath}/${subfnam}.idx" done fi # 1.e Save in /com - if [[ ! -s "${COMOUT_WAVE_GRID}/${grdnam}.${grdres}/${outfile}" ]]; then - set +x + if [[ ! -s "${compath}/${outfile}" ]]; then + set -x echo ' ' echo '********************************************* ' echo '*** FATAL ERROR : ERROR IN ww3_grib2 *** ' @@ -209,8 +209,8 @@ if [[ ! -s "${COMOUT_WAVE_GRID}/${outfile}.idx" ]]; then set_trace exit 4 fi - if [[ ! -s "${COMOUT_WAVE_GRID}/${grdnam}.${grdres}/${outfile}.idx" ]]; then - set +x + if [[ ! -s "${compath}/${outfile}.idx" ]]; then + set -x echo ' ' echo '*************************************************** ' echo '*** FATAL ERROR : ERROR IN ww3_grib2 INDEX FILE *** ' @@ -223,13 +223,13 @@ if [[ ! -s "${COMOUT_WAVE_GRID}/${outfile}.idx" ]]; then fi if [[ "${SENDDBN}" = 'YES' ]] && [[ ${outfile} != *global.0p50* ]]; then - set +x - echo " Alerting GRIB file as ${COMOUT_WAVE_GRID}/${grdnam}.${grdres}/${outfile}" + set -x + echo " Alerting GRIB file as ${compath}/${outfile}" echo " Alerting GRIB index file as ${COMOUT_WAVE_GRID}/${outfile}.idx" set_trace - "${DBNROOT}/bin/dbn_alert" MODEL "${alertName}_WAVE_GB2" "${job}" "${COMOUT_WAVE_GRID}/${grdnam}.${grdres}/${outfile}" + "${DBNROOT}/bin/dbn_alert" MODEL "${alertName}_WAVE_GB2" "${job}" "${compath}/${outfile}" "${DBNROOT}/bin/dbn_alert" MODEL "${alertName}_WAVE_GB2_WIDX" \ - "${job}" "${COMOUT_WAVE_GRID}/${grdnam}.${grdres}/${outfile}.idx" + "${job}" "${compath}/${outfile}.idx" else echo "${outfile} is global.0p50 or SENDDBN is NO, no alert sent" fi @@ -240,7 +240,7 @@ if [[ ! -s "${COMOUT_WAVE_GRID}/${outfile}.idx" ]]; then rm -f gribfile - set +x + set -x echo " Removing work directory after success." set_trace @@ -248,9 +248,9 @@ if [[ ! -s "${COMOUT_WAVE_GRID}/${outfile}.idx" ]]; then mv -f "${gribDIR}" "done.${gribDIR}" else - set +x + set -x echo ' ' - echo " File ${COMOUT_WAVE_GRID}/${grdnam}.${grdres}/${outfile} found, skipping generation process" + echo " File ${compath}/${outfile} found, skipping generation process" echo ' ' set_trace fi From 0e883e292903efd78896a711714f1f5b6cdfa3da Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Fri, 13 Dec 2024 23:13:06 -0500 Subject: [PATCH 050/186] modified ush\wave_grib2_sbs.sh --- ush/wave_grib2_sbs.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ush/wave_grib2_sbs.sh b/ush/wave_grib2_sbs.sh index f836cae84a..14b36044ec 100755 --- a/ush/wave_grib2_sbs.sh +++ b/ush/wave_grib2_sbs.sh @@ -38,7 +38,6 @@ gribDIR="${grdID}_grib" rm -rfd "${gribDIR}" mkdir "${gribDIR}" err=$? -compath="${COMOUT_WAVE_GRID}_${grdID}" if [[ ${err} != 0 ]]; then set -x @@ -67,7 +66,8 @@ ngrib=1 # only one time slice dtgrib=3600 # only one time slice # SBS one time slice per file FH3=$(printf %03i "${fhr}") - +compath="${COMOUT_WAVE_GRID}/${grdnam}.${grdres}" +echo "compath=${compath}" # Verify if grib2 file exists from interrupted run ENSTAG="" if [[ -n ${waveMEMB} ]]; then ENSTAG=".${membTAG}${waveMEMB}" ; fi From 84d07d5d7d2d343d435de3f039e2d60b85a30cf9 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Fri, 13 Dec 2024 23:18:55 -0500 Subject: [PATCH 051/186] modified ush\wave_grib2_sbs.sh --- ush/wave_grib2_sbs.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ush/wave_grib2_sbs.sh b/ush/wave_grib2_sbs.sh index 14b36044ec..77784fa2e4 100755 --- a/ush/wave_grib2_sbs.sh +++ b/ush/wave_grib2_sbs.sh @@ -250,7 +250,7 @@ if [[ ! -s "${COMOUT_WAVE_GRID}/${outfile}.idx" ]]; then else set -x echo ' ' - echo " File ${compath}/${outfile} found, skipping generation process" + echo " File "${compath}/${outfile}" found, skipping generation process" echo ' ' set_trace fi From 73c9798be7ed488947c39f28d74e6aa979509cf2 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Fri, 13 Dec 2024 23:21:21 -0500 Subject: [PATCH 052/186] modified ush\wave_grib2_sbs.sh --- ush/wave_grib2_sbs.sh | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/ush/wave_grib2_sbs.sh b/ush/wave_grib2_sbs.sh index 77784fa2e4..c0a6c97331 100755 --- a/ush/wave_grib2_sbs.sh +++ b/ush/wave_grib2_sbs.sh @@ -159,11 +159,10 @@ if [[ ! -s "${COMOUT_WAVE_GRID}/${outfile}.idx" ]]; then if (( fhr > 0 )); then ${WGRIB2} gribfile -set_date "${PDY}${cyc}" -set_ftime "${fhr} hour fcst" -grib "${COMOUT_WAVE_GRID}_${grdnam}.${grdres}/${outfile}" - echo "${WGRIB2} gribfile -set_date "${PDY}${cyc}" -set_ftime "${fhr} hour fcst" -grib "${compath}/${outfile}" + echo "${WGRIB2} gribfile -set_date "${PDY}${cyc}" -set_ftime "${fhr} hour fcst" -grib ${compath}/${outfile}" err=$? else - ${WGRIB2} gribfile -set_date "${PDY}${cyc}" -set_ftime "${fhr} hour fcst" \ - -set table_1.4 1 -set table_1.2 1 -grib "${compath}/${outfile}" + ${WGRIB2} gribfile -set_date "${PDY}${cyc}" -set_ftime "${fhr} hour fcst" -set table_1.4 1 -set table_1.2 1 -grib "${compath}/${outfile}" err=$? fi From 38b102c2175bb1f08bb8c12dc7165d65c079f60c Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Fri, 13 Dec 2024 23:32:25 -0500 Subject: [PATCH 053/186] modified sh scripts --- scripts/exgfs_wave_post_gridded_sbs.sh | 2 +- ush/wave_grib2_sbs.sh | 26 +++++++++++++------------- 2 files changed, 14 insertions(+), 14 deletions(-) diff --git a/scripts/exgfs_wave_post_gridded_sbs.sh b/scripts/exgfs_wave_post_gridded_sbs.sh index 656ef2f868..922edf4608 100755 --- a/scripts/exgfs_wave_post_gridded_sbs.sh +++ b/scripts/exgfs_wave_post_gridded_sbs.sh @@ -386,7 +386,7 @@ source "${USHgfs}/preamble.sh" ENSTAG="" if [ ${waveMEMB} ]; then ENSTAG=".${membTAG}${waveMEMB}" ; fi gribchk="${RUN}wave.${cycle}${ENSTAG}.${GRDNAME}.${GRDRES}.f${FH3}.grib2" - if [[ ! -s "${COMOUT_WAVE_GRID}/${gribchk}" ]]; then + if [[ ! -s "${COMOUT_WAVE_GRID}/${GRDNAME}.${GRDRES}/${gribchk}" ]]; then set +x echo ' ' echo '********************************************' diff --git a/ush/wave_grib2_sbs.sh b/ush/wave_grib2_sbs.sh index c0a6c97331..b0fa9330ee 100755 --- a/ush/wave_grib2_sbs.sh +++ b/ush/wave_grib2_sbs.sh @@ -46,7 +46,7 @@ if [[ ${err} != 0 ]]; then echo '*** FATAL ERROR : ERROR IN ww3_grib2 (COULD NOT CREATE TEMP DIRECTORY) *** ' echo '******************************************************************************* ' echo ' ' - set_trace + exit 1 fi @@ -82,7 +82,7 @@ if [[ ! -s "${COMOUT_WAVE_GRID}/${outfile}.idx" ]]; then echo '! Make GRIB files |' echo '+--------------------------------+' echo " Model ID : $WAV_MOD_TAG" - set_trace + if [[ -z "${PDY}" ]] || [[ -z ${cyc} ]] || [[ -z "${cycle}" ]] || [[ -z "${EXECgfs}" ]] || \ [[ -z "${compath}" ]] || [[ -z "${WAV_MOD_TAG}" ]] || [[ -z "${gribflags}" ]] || \ [[ -z "${GRIDNR}" ]] || [[ -z "${MODNR}" ]] || \ @@ -93,7 +93,7 @@ if [[ ! -s "${COMOUT_WAVE_GRID}/${outfile}.idx" ]]; then echo '*** EXPORTED VARIABLES IN postprocessor NOT SET ***' echo '***************************************************' echo ' ' - set_trace + exit 1 fi @@ -107,7 +107,7 @@ if [[ ! -s "${COMOUT_WAVE_GRID}/${outfile}.idx" ]]; then echo " Number of times : Single SBS" echo " GRIB field flags : ${gribflags}" echo ' ' - set_trace + # 0.e Links to working directory @@ -121,7 +121,7 @@ if [[ ! -s "${COMOUT_WAVE_GRID}/${outfile}.idx" ]]; then set -x echo " Generate input file for ww3_grib2" - set_trace + sed -e "s/TIME/${tstart}/g" \ -e "s/DT/${dtgrib}/g" \ @@ -140,7 +140,7 @@ if [[ ! -s "${COMOUT_WAVE_GRID}/${outfile}.idx" ]]; then set -x echo " Run ww3_grib2" echo " Executing ${EXECgfs}/ww3_grib" - set_trace + export pgm=ww3_grib;. prep_step "${EXECgfs}/ww3_grib" > "grib2_${grdnam}_${FH3}.out" 2>&1 @@ -153,7 +153,7 @@ if [[ ! -s "${COMOUT_WAVE_GRID}/${outfile}.idx" ]]; then echo '*** FATAL ERROR : ERROR IN ww3_grib encoding *** ' echo '************************************************ ' echo ' ' - set_trace + exit 3 fi @@ -173,7 +173,7 @@ if [[ ! -s "${COMOUT_WAVE_GRID}/${outfile}.idx" ]]; then echo '*** FATAL ERROR : ERROR IN ww3_grib2 *** ' echo '********************************************* ' echo ' ' - set_trace + exit 3 fi @@ -205,7 +205,7 @@ if [[ ! -s "${COMOUT_WAVE_GRID}/${outfile}.idx" ]]; then echo ' ' echo " Error in moving grib file ${outfile} to com" echo ' ' - set_trace + exit 4 fi if [[ ! -s "${compath}/${outfile}.idx" ]]; then @@ -217,7 +217,7 @@ if [[ ! -s "${COMOUT_WAVE_GRID}/${outfile}.idx" ]]; then echo ' ' echo " Error in moving grib file ${outfile}.idx to com" echo ' ' - set_trace + exit 4 fi @@ -225,7 +225,7 @@ if [[ ! -s "${COMOUT_WAVE_GRID}/${outfile}.idx" ]]; then set -x echo " Alerting GRIB file as ${compath}/${outfile}" echo " Alerting GRIB index file as ${COMOUT_WAVE_GRID}/${outfile}.idx" - set_trace + "${DBNROOT}/bin/dbn_alert" MODEL "${alertName}_WAVE_GB2" "${job}" "${compath}/${outfile}" "${DBNROOT}/bin/dbn_alert" MODEL "${alertName}_WAVE_GB2_WIDX" \ "${job}" "${compath}/${outfile}.idx" @@ -241,7 +241,7 @@ if [[ ! -s "${COMOUT_WAVE_GRID}/${outfile}.idx" ]]; then set -x echo " Removing work directory after success." - set_trace + cd ../ mv -f "${gribDIR}" "done.${gribDIR}" @@ -251,7 +251,7 @@ else echo ' ' echo " File "${compath}/${outfile}" found, skipping generation process" echo ' ' - set_trace + fi From 9cc88eec4b31ca9085cbb17abc5f25efa546c508 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Fri, 13 Dec 2024 23:47:59 -0500 Subject: [PATCH 054/186] modified ush\wave_grib2_sbs.sh --- ush/wave_grib2_sbs.sh | 58 +++++++++++++++++++++---------------------- 1 file changed, 29 insertions(+), 29 deletions(-) diff --git a/ush/wave_grib2_sbs.sh b/ush/wave_grib2_sbs.sh index b0fa9330ee..757a148edc 100755 --- a/ush/wave_grib2_sbs.sh +++ b/ush/wave_grib2_sbs.sh @@ -40,13 +40,13 @@ mkdir "${gribDIR}" err=$? if [[ ${err} != 0 ]]; then - set -x + set +x echo ' ' echo '******************************************************************************* ' echo '*** FATAL ERROR : ERROR IN ww3_grib2 (COULD NOT CREATE TEMP DIRECTORY) *** ' echo '******************************************************************************* ' echo ' ' - + set_trace exit 1 fi @@ -67,33 +67,33 @@ dtgrib=3600 # only one time slice # SBS one time slice per file FH3=$(printf %03i "${fhr}") compath="${COMOUT_WAVE_GRID}/${grdnam}.${grdres}" -echo "compath=${compath}" + # Verify if grib2 file exists from interrupted run ENSTAG="" if [[ -n ${waveMEMB} ]]; then ENSTAG=".${membTAG}${waveMEMB}" ; fi outfile="${WAV_MOD_TAG}.${cycle}${ENSTAG}.${grdnam}.${grdres}.f${FH3}.grib2" # Only create file if not present in COM -if [[ ! -s "${COMOUT_WAVE_GRID}/${outfile}.idx" ]]; then +if [[ ! -s "${compath}/${outfile}.idx" ]]; then - set -x + set +x echo ' ' echo '+--------------------------------+' echo '! Make GRIB files |' echo '+--------------------------------+' echo " Model ID : $WAV_MOD_TAG" - + set_trace if [[ -z "${PDY}" ]] || [[ -z ${cyc} ]] || [[ -z "${cycle}" ]] || [[ -z "${EXECgfs}" ]] || \ [[ -z "${compath}" ]] || [[ -z "${WAV_MOD_TAG}" ]] || [[ -z "${gribflags}" ]] || \ [[ -z "${GRIDNR}" ]] || [[ -z "${MODNR}" ]] || \ [[ -z "${SENDDBN}" ]]; then - set -x + set +x echo ' ' echo '***************************************************' echo '*** EXPORTED VARIABLES IN postprocessor NOT SET ***' echo '***************************************************' echo ' ' - + set_trace exit 1 fi @@ -101,13 +101,13 @@ if [[ ! -s "${COMOUT_WAVE_GRID}/${outfile}.idx" ]]; then tstart="${ymdh:0:8} ${ymdh:8:2}0000" - set -x + set +x echo " Starting time : ${tstart}" echo " Time step : Single SBS" echo " Number of times : Single SBS" echo " GRIB field flags : ${gribflags}" echo ' ' - + set_trace # 0.e Links to working directory @@ -119,9 +119,9 @@ if [[ ! -s "${COMOUT_WAVE_GRID}/${outfile}.idx" ]]; then # 1.a Generate input file for ww3_grib2 # Template copied in mother script ... - set -x + set +x echo " Generate input file for ww3_grib2" - + set_trace sed -e "s/TIME/${tstart}/g" \ -e "s/DT/${dtgrib}/g" \ @@ -137,28 +137,28 @@ if [[ ! -s "${COMOUT_WAVE_GRID}/${outfile}.idx" ]]; then # 1.b Run GRIB packing program - set -x + set +x echo " Run ww3_grib2" echo " Executing ${EXECgfs}/ww3_grib" - + set_trace export pgm=ww3_grib;. prep_step "${EXECgfs}/ww3_grib" > "grib2_${grdnam}_${FH3}.out" 2>&1 export err=$?;err_chk if [ ! -s gribfile ]; then - set -x + set +x echo ' ' echo '************************************************ ' echo '*** FATAL ERROR : ERROR IN ww3_grib encoding *** ' echo '************************************************ ' echo ' ' - + set_trace exit 3 fi if (( fhr > 0 )); then - ${WGRIB2} gribfile -set_date "${PDY}${cyc}" -set_ftime "${fhr} hour fcst" -grib "${COMOUT_WAVE_GRID}_${grdnam}.${grdres}/${outfile}" + ${WGRIB2} gribfile -set_date "${PDY}${cyc}" -set_ftime "${fhr} hour fcst" -grib "${compath}/${outfile}" echo "${WGRIB2} gribfile -set_date "${PDY}${cyc}" -set_ftime "${fhr} hour fcst" -grib ${compath}/${outfile}" err=$? else @@ -167,13 +167,13 @@ if [[ ! -s "${COMOUT_WAVE_GRID}/${outfile}.idx" ]]; then fi if [[ ${err} != 0 ]]; then - set -x + set +x echo ' ' echo '********************************************* ' echo '*** FATAL ERROR : ERROR IN ww3_grib2 *** ' echo '********************************************* ' echo ' ' - + set_trace exit 3 fi @@ -197,7 +197,7 @@ if [[ ! -s "${COMOUT_WAVE_GRID}/${outfile}.idx" ]]; then # 1.e Save in /com if [[ ! -s "${compath}/${outfile}" ]]; then - set -x + set +x echo ' ' echo '********************************************* ' echo '*** FATAL ERROR : ERROR IN ww3_grib2 *** ' @@ -205,11 +205,11 @@ if [[ ! -s "${COMOUT_WAVE_GRID}/${outfile}.idx" ]]; then echo ' ' echo " Error in moving grib file ${outfile} to com" echo ' ' - + set_trace exit 4 fi if [[ ! -s "${compath}/${outfile}.idx" ]]; then - set -x + set +x echo ' ' echo '*************************************************** ' echo '*** FATAL ERROR : ERROR IN ww3_grib2 INDEX FILE *** ' @@ -217,15 +217,15 @@ if [[ ! -s "${COMOUT_WAVE_GRID}/${outfile}.idx" ]]; then echo ' ' echo " Error in moving grib file ${outfile}.idx to com" echo ' ' - + set_trace exit 4 fi if [[ "${SENDDBN}" = 'YES' ]] && [[ ${outfile} != *global.0p50* ]]; then - set -x + set +x echo " Alerting GRIB file as ${compath}/${outfile}" echo " Alerting GRIB index file as ${COMOUT_WAVE_GRID}/${outfile}.idx" - + set_trace "${DBNROOT}/bin/dbn_alert" MODEL "${alertName}_WAVE_GB2" "${job}" "${compath}/${outfile}" "${DBNROOT}/bin/dbn_alert" MODEL "${alertName}_WAVE_GB2_WIDX" \ "${job}" "${compath}/${outfile}.idx" @@ -239,19 +239,19 @@ if [[ ! -s "${COMOUT_WAVE_GRID}/${outfile}.idx" ]]; then rm -f gribfile - set -x + set +x echo " Removing work directory after success." - + set_trace cd ../ mv -f "${gribDIR}" "done.${gribDIR}" else - set -x + set +x echo ' ' echo " File "${compath}/${outfile}" found, skipping generation process" echo ' ' - + set_trace fi From cffdf5f1d6e6272b9097b49754358e16c9f9c980 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Fri, 13 Dec 2024 23:57:53 -0500 Subject: [PATCH 055/186] modified sh scripts --- scripts/exgfs_wave_post_gridded_sbs.sh | 1 + ush/wave_grib2_sbs.sh | 34 ++++++++++++-------------- 2 files changed, 16 insertions(+), 19 deletions(-) diff --git a/scripts/exgfs_wave_post_gridded_sbs.sh b/scripts/exgfs_wave_post_gridded_sbs.sh index 922edf4608..5dfc16ee0a 100755 --- a/scripts/exgfs_wave_post_gridded_sbs.sh +++ b/scripts/exgfs_wave_post_gridded_sbs.sh @@ -387,6 +387,7 @@ source "${USHgfs}/preamble.sh" if [ ${waveMEMB} ]; then ENSTAG=".${membTAG}${waveMEMB}" ; fi gribchk="${RUN}wave.${cycle}${ENSTAG}.${GRDNAME}.${GRDRES}.f${FH3}.grib2" if [[ ! -s "${COMOUT_WAVE_GRID}/${GRDNAME}.${GRDRES}/${gribchk}" ]]; then + mv -f "$gribchk" "${COMOUT_WAVE_GRID}/${GRDNAME}.${GRDRES}" set +x echo ' ' echo '********************************************' diff --git a/ush/wave_grib2_sbs.sh b/ush/wave_grib2_sbs.sh index 757a148edc..99f89f3f37 100755 --- a/ush/wave_grib2_sbs.sh +++ b/ush/wave_grib2_sbs.sh @@ -38,7 +38,6 @@ gribDIR="${grdID}_grib" rm -rfd "${gribDIR}" mkdir "${gribDIR}" err=$? - if [[ ${err} != 0 ]]; then set +x echo ' ' @@ -66,7 +65,6 @@ ngrib=1 # only one time slice dtgrib=3600 # only one time slice # SBS one time slice per file FH3=$(printf %03i "${fhr}") -compath="${COMOUT_WAVE_GRID}/${grdnam}.${grdres}" # Verify if grib2 file exists from interrupted run ENSTAG="" @@ -74,7 +72,7 @@ if [[ -n ${waveMEMB} ]]; then ENSTAG=".${membTAG}${waveMEMB}" ; fi outfile="${WAV_MOD_TAG}.${cycle}${ENSTAG}.${grdnam}.${grdres}.f${FH3}.grib2" # Only create file if not present in COM -if [[ ! -s "${compath}/${outfile}.idx" ]]; then +if [[ ! -s "${COMOUT_WAVE_GRID}/${outfile}.idx" ]]; then set +x echo ' ' @@ -83,8 +81,9 @@ if [[ ! -s "${compath}/${outfile}.idx" ]]; then echo '+--------------------------------+' echo " Model ID : $WAV_MOD_TAG" set_trace + if [[ -z "${PDY}" ]] || [[ -z ${cyc} ]] || [[ -z "${cycle}" ]] || [[ -z "${EXECgfs}" ]] || \ - [[ -z "${compath}" ]] || [[ -z "${WAV_MOD_TAG}" ]] || [[ -z "${gribflags}" ]] || \ + [[ -z "${COMOUT_WAVE_GRID}" ]] || [[ -z "${WAV_MOD_TAG}" ]] || [[ -z "${gribflags}" ]] || \ [[ -z "${GRIDNR}" ]] || [[ -z "${MODNR}" ]] || \ [[ -z "${SENDDBN}" ]]; then set +x @@ -158,11 +157,11 @@ if [[ ! -s "${compath}/${outfile}.idx" ]]; then fi if (( fhr > 0 )); then - ${WGRIB2} gribfile -set_date "${PDY}${cyc}" -set_ftime "${fhr} hour fcst" -grib "${compath}/${outfile}" - echo "${WGRIB2} gribfile -set_date "${PDY}${cyc}" -set_ftime "${fhr} hour fcst" -grib ${compath}/${outfile}" + ${WGRIB2} gribfile -set_date "${PDY}${cyc}" -set_ftime "${fhr} hour fcst" -grib "${COMOUT_WAVE_GRID}/${outfile}" err=$? else - ${WGRIB2} gribfile -set_date "${PDY}${cyc}" -set_ftime "${fhr} hour fcst" -set table_1.4 1 -set table_1.2 1 -grib "${compath}/${outfile}" + ${WGRIB2} gribfile -set_date "${PDY}${cyc}" -set_ftime "${fhr} hour fcst" \ + -set table_1.4 1 -set table_1.2 1 -grib "${COMOUT_WAVE_GRID}/${outfile}" err=$? fi @@ -178,7 +177,7 @@ if [[ ! -s "${compath}/${outfile}.idx" ]]; then fi # Create index - ${WGRIB2} -s "${compath}/${outfile}" > "${compath}/${outfile}.idx" + ${WGRIB2} -s "${COMOUT_WAVE_GRID}/${outfile}" > "${COMOUT_WAVE_GRID}/${outfile}.idx" # Create grib2 subgrid is this is the source grid if [[ "${grdID}" = "${WAV_SUBGRBSRC}" ]]; then @@ -187,16 +186,14 @@ if [[ ! -s "${compath}/${outfile}.idx" ]]; then subgrbnam=$(echo ${!subgrb} | cut -d " " -f 21) subgrbres=$(echo ${!subgrb} | cut -d " " -f 22) subfnam="${WAV_MOD_TAG}.${cycle}${ENSTAG}.${subgrbnam}.${subgrbres}.f${FH3}.grib2" - ${COPYGB2} -g "${subgrbref}" -i0 -x "${compath}/${outfile}" \ - "${compath}/${subfnam}" - ${WGRIB2} -s "${compath}/${subfnam}" > \ - "${compath}/${subfnam}.idx" + ${COPYGB2} -g "${subgrbref}" -i0 -x "${COMOUT_WAVE_GRID}/${outfile}" "${COMOUT_WAVE_GRID}/${subfnam}" + ${WGRIB2} -s "${COMOUT_WAVE_GRID}/${subfnam}" > "${COMOUT_WAVE_GRID}/${subfnam}.idx" done fi # 1.e Save in /com - if [[ ! -s "${compath}/${outfile}" ]]; then + if [[ ! -s "${COMOUT_WAVE_GRID}/${outfile}" ]]; then set +x echo ' ' echo '********************************************* ' @@ -208,7 +205,7 @@ if [[ ! -s "${compath}/${outfile}.idx" ]]; then set_trace exit 4 fi - if [[ ! -s "${compath}/${outfile}.idx" ]]; then + if [[ ! -s "${COMOUT_WAVE_GRID}/${outfile}.idx" ]]; then set +x echo ' ' echo '*************************************************** ' @@ -223,12 +220,11 @@ if [[ ! -s "${compath}/${outfile}.idx" ]]; then if [[ "${SENDDBN}" = 'YES' ]] && [[ ${outfile} != *global.0p50* ]]; then set +x - echo " Alerting GRIB file as ${compath}/${outfile}" + echo " Alerting GRIB file as ${COMOUT_WAVE_GRID}/${outfile}" echo " Alerting GRIB index file as ${COMOUT_WAVE_GRID}/${outfile}.idx" set_trace - "${DBNROOT}/bin/dbn_alert" MODEL "${alertName}_WAVE_GB2" "${job}" "${compath}/${outfile}" - "${DBNROOT}/bin/dbn_alert" MODEL "${alertName}_WAVE_GB2_WIDX" \ - "${job}" "${compath}/${outfile}.idx" + "${DBNROOT}/bin/dbn_alert" MODEL "${alertName}_WAVE_GB2" "${job}" "${COMOUT_WAVE_GRID}/${outfile}" + "${DBNROOT}/bin/dbn_alert" MODEL "${alertName}_WAVE_GB2_WIDX" "${job}" "${COMOUT_WAVE_GRID}/${outfile}.idx" else echo "${outfile} is global.0p50 or SENDDBN is NO, no alert sent" fi @@ -249,7 +245,7 @@ if [[ ! -s "${compath}/${outfile}.idx" ]]; then else set +x echo ' ' - echo " File "${compath}/${outfile}" found, skipping generation process" + echo " File ${COMOUT_WAVE_GRID}/${outfile} found, skipping generation process" echo ' ' set_trace fi From dc8426d1554dfa17f6e4f25ae9da04ef4e2b42ae Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Sat, 14 Dec 2024 00:02:06 -0500 Subject: [PATCH 056/186] modified scripts\exgfs_wave_post_gridded_sbs.sh --- scripts/exgfs_wave_post_gridded_sbs.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/exgfs_wave_post_gridded_sbs.sh b/scripts/exgfs_wave_post_gridded_sbs.sh index 5dfc16ee0a..556321c218 100755 --- a/scripts/exgfs_wave_post_gridded_sbs.sh +++ b/scripts/exgfs_wave_post_gridded_sbs.sh @@ -386,7 +386,7 @@ source "${USHgfs}/preamble.sh" ENSTAG="" if [ ${waveMEMB} ]; then ENSTAG=".${membTAG}${waveMEMB}" ; fi gribchk="${RUN}wave.${cycle}${ENSTAG}.${GRDNAME}.${GRDRES}.f${FH3}.grib2" - if [[ ! -s "${COMOUT_WAVE_GRID}/${GRDNAME}.${GRDRES}/${gribchk}" ]]; then + if [[ ! -s "${COMOUT_WAVE_GRID}/${gribchk}" ]]; then mv -f "$gribchk" "${COMOUT_WAVE_GRID}/${GRDNAME}.${GRDRES}" set +x echo ' ' From a2d0db246b708f4d11de22046e0ff9b426385f94 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Sat, 14 Dec 2024 00:06:17 -0500 Subject: [PATCH 057/186] modified scripts\exgfs_wave_post_gridded_sbs.sh --- scripts/exgfs_wave_post_gridded_sbs.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/exgfs_wave_post_gridded_sbs.sh b/scripts/exgfs_wave_post_gridded_sbs.sh index 556321c218..85966c6478 100755 --- a/scripts/exgfs_wave_post_gridded_sbs.sh +++ b/scripts/exgfs_wave_post_gridded_sbs.sh @@ -404,6 +404,6 @@ source "${USHgfs}/preamble.sh" # --------------------------------------------------------------------------- # # 7. Ending output -echo "$exit_code" +echo "${exit_code}" # End of MWW3 prostprocessor script ---------------------------------------- # From ada6bf548fb3d90f7d5c50fba4cd7c34b44697a6 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Sat, 14 Dec 2024 00:19:01 -0500 Subject: [PATCH 058/186] modified scripts\exgfs_wave_post_gridded_sbs.sh --- scripts/exgfs_wave_post_gridded_sbs.sh | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/scripts/exgfs_wave_post_gridded_sbs.sh b/scripts/exgfs_wave_post_gridded_sbs.sh index 85966c6478..f80a2d0d64 100755 --- a/scripts/exgfs_wave_post_gridded_sbs.sh +++ b/scripts/exgfs_wave_post_gridded_sbs.sh @@ -380,14 +380,14 @@ source "${USHgfs}/preamble.sh" cd $DATA - if [ "$fhr" = "$fhrg" ] - then + if [ "$fhr" = "$fhrg" ]; then # Check if grib2 file created ENSTAG="" if [ ${waveMEMB} ]; then ENSTAG=".${membTAG}${waveMEMB}" ; fi gribchk="${RUN}wave.${cycle}${ENSTAG}.${GRDNAME}.${GRDRES}.f${FH3}.grib2" - if [[ ! -s "${COMOUT_WAVE_GRID}/${gribchk}" ]]; then - mv -f "$gribchk" "${COMOUT_WAVE_GRID}/${GRDNAME}.${GRDRES}" + if [[ -s "${COMOUT_WAVE_GRID}/${gribchk}" ]]; then + mv -f "${COMOUT_WAVE_GRID}/${gribchk}" "${COMOUT_WAVE_GRID}/${GRDNAME}.${GRDRES}" + else set +x echo ' ' echo '********************************************' @@ -404,6 +404,6 @@ source "${USHgfs}/preamble.sh" # --------------------------------------------------------------------------- # # 7. Ending output -echo "${exit_code}" +echo "$exit_code" # End of MWW3 prostprocessor script ---------------------------------------- # From 93e11db7a01144e9d1991a53ce93cf9b07e6c9ba Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Sat, 14 Dec 2024 00:26:01 -0500 Subject: [PATCH 059/186] modified scripts\exgfs_wave_post_gridded_sbs.sh --- scripts/exgfs_wave_post_gridded_sbs.sh | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/scripts/exgfs_wave_post_gridded_sbs.sh b/scripts/exgfs_wave_post_gridded_sbs.sh index f80a2d0d64..158fad372f 100755 --- a/scripts/exgfs_wave_post_gridded_sbs.sh +++ b/scripts/exgfs_wave_post_gridded_sbs.sh @@ -385,8 +385,11 @@ source "${USHgfs}/preamble.sh" ENSTAG="" if [ ${waveMEMB} ]; then ENSTAG=".${membTAG}${waveMEMB}" ; fi gribchk="${RUN}wave.${cycle}${ENSTAG}.${GRDNAME}.${GRDRES}.f${FH3}.grib2" - if [[ -s "${COMOUT_WAVE_GRID}/${gribchk}" ]]; then + gribchk_idx="${RUN}wave.${cycle}${ENSTAG}.${GRDNAME}.${GRDRES}.f${FH3}.grib2" + + if [[ -s "${COMOUT_WAVE_GRID}/${gribchk}" && -s "${COMOUT_WAVE_GRID}/${gribchk_idx}" ]]; then mv -f "${COMOUT_WAVE_GRID}/${gribchk}" "${COMOUT_WAVE_GRID}/${GRDNAME}.${GRDRES}" + mv -f "${COMOUT_WAVE_GRID}/${gribchk_idx}" "${COMOUT_WAVE_GRID}/${GRDNAME}.${GRDRES}.idx" else set +x echo ' ' From 5af3e0647e8a1aef4f9d9ebf96b35df36cc6847c Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Sat, 14 Dec 2024 00:32:03 -0500 Subject: [PATCH 060/186] modified scripts\exgfs_wave_post_gridded_sbs.sh --- scripts/exgfs_wave_post_gridded_sbs.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/exgfs_wave_post_gridded_sbs.sh b/scripts/exgfs_wave_post_gridded_sbs.sh index 158fad372f..acc12dc724 100755 --- a/scripts/exgfs_wave_post_gridded_sbs.sh +++ b/scripts/exgfs_wave_post_gridded_sbs.sh @@ -385,7 +385,7 @@ source "${USHgfs}/preamble.sh" ENSTAG="" if [ ${waveMEMB} ]; then ENSTAG=".${membTAG}${waveMEMB}" ; fi gribchk="${RUN}wave.${cycle}${ENSTAG}.${GRDNAME}.${GRDRES}.f${FH3}.grib2" - gribchk_idx="${RUN}wave.${cycle}${ENSTAG}.${GRDNAME}.${GRDRES}.f${FH3}.grib2" + gribchk_idx="${RUN}wave.${cycle}${ENSTAG}.${GRDNAME}.${GRDRES}.f${FH3}.grib2.idx" if [[ -s "${COMOUT_WAVE_GRID}/${gribchk}" && -s "${COMOUT_WAVE_GRID}/${gribchk_idx}" ]]; then mv -f "${COMOUT_WAVE_GRID}/${gribchk}" "${COMOUT_WAVE_GRID}/${GRDNAME}.${GRDRES}" From 1197a98105489d5b17a5aab6fb659155ab5899da Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Sat, 14 Dec 2024 01:21:10 -0500 Subject: [PATCH 061/186] modified scripts\exgfs_wave_post_gridded_sbs.sh --- scripts/exgfs_wave_post_gridded_sbs.sh | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/scripts/exgfs_wave_post_gridded_sbs.sh b/scripts/exgfs_wave_post_gridded_sbs.sh index acc12dc724..47e732e288 100755 --- a/scripts/exgfs_wave_post_gridded_sbs.sh +++ b/scripts/exgfs_wave_post_gridded_sbs.sh @@ -386,7 +386,8 @@ source "${USHgfs}/preamble.sh" if [ ${waveMEMB} ]; then ENSTAG=".${membTAG}${waveMEMB}" ; fi gribchk="${RUN}wave.${cycle}${ENSTAG}.${GRDNAME}.${GRDRES}.f${FH3}.grib2" gribchk_idx="${RUN}wave.${cycle}${ENSTAG}.${GRDNAME}.${GRDRES}.f${FH3}.grib2.idx" - + if [[ ! -d "${COMOUT_WAVE_GRID}/${GRDNAME}.${GRDRES}" ]]; then + mkdir -m 775 -p "${COMOUT_WAVE_GRID}/${GRDNAME}.${GRDRES}" if [[ -s "${COMOUT_WAVE_GRID}/${gribchk}" && -s "${COMOUT_WAVE_GRID}/${gribchk_idx}" ]]; then mv -f "${COMOUT_WAVE_GRID}/${gribchk}" "${COMOUT_WAVE_GRID}/${GRDNAME}.${GRDRES}" mv -f "${COMOUT_WAVE_GRID}/${gribchk_idx}" "${COMOUT_WAVE_GRID}/${GRDNAME}.${GRDRES}.idx" From d314b3de992058c84fdfad94ce7b16b0ed6031c6 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Sat, 14 Dec 2024 01:24:49 -0500 Subject: [PATCH 062/186] modified wave scripts --- jobs/JGLOBAL_WAVE_POST_SBS | 39 ++------------------------ scripts/exgfs_wave_post_gridded_sbs.sh | 1 + 2 files changed, 3 insertions(+), 37 deletions(-) diff --git a/jobs/JGLOBAL_WAVE_POST_SBS b/jobs/JGLOBAL_WAVE_POST_SBS index ba643d6cb3..317a6bf962 100755 --- a/jobs/JGLOBAL_WAVE_POST_SBS +++ b/jobs/JGLOBAL_WAVE_POST_SBS @@ -19,41 +19,6 @@ for out_dir in "${COMOUT_WAVE_PREP}" "${COMOUT_WAVE_GRID}"; do if [[ ! -d "${out_dir}" ]]; then mkdir -p "${out_dir}"; fi done -for grdID in ${wavepostGRD} ${waveinterpGRD}; do - case ${grdID} in - glo_10m) GRDNAME='global' ; GRDRES=0p16;; - glo_15mxt) GRDNAME='global' ; GRDRES=0p25;; - glo_30mxt) GRDNAME='global' ; GRDRES=0p50 ;; - glo_30m) GRDNAME='global' ; GRDRES=0p50 ;; - glo_025) GRDNAME='global' ; GRDRES=0p25 ;; - glo_100) GRDNAME='global' ; GRDRES=1p00;; - glo_200) GRDNAME='global' ; GRDRES=2p00;; - glo_500) GRDNAME='global' ; GRDRES=5p00;; - at_10m) GRDNAME='atlocn' ; GRDRES=0p16 ;; - ep_10m) GRDNAME='epacif' ; GRDRES=0p16;; - wc_10m) GRDNAME='wcoast' ; GRDRES=0p16 ;; - ak_10m) GRDNAME='alaska' ; GRDRES=0p16;; - aoc_9km) GRDNAME='arctic' ; GRDRES=9km;; - ant_9km) GRDNAME='antarc' ; GRDRES=9km ;; - gnh_10m) GRDNAME='global' ; GRDRES=0p16;; - gsh_15m) GRDNAME='gsouth' ; GRDRES=0p25;; - ao_20m) GRDNAME='arctic' ; GRDRES=0p33;; - so_20m) GRDNAME='antarc' ; GRDRES=0p33;; - reg025) GRDNAME='global' ; GRDRES=0p25;; - gwes_30m) GRDNAME='global' ; GRDRES=0p50;; - *) - echo "FATAL ERROR: No grid specific wave config values exist for ${grdID}. Aborting." - exit 1;; - esac - GRID=${GRDNAME}.${GRDRES} YMD=${PDY} HH=${cyc} declare_from_tmpl -rx \ - "COMOUT_WAVE_GRID_${grdID}:COM_WAVE_GRID_RES_TMPL" - COMOUT=COMOUT_WAVE_GRID_${grdID} - if [[ ! -d "${COMOUT}" ]]; then - mkdir -m 775 -p "${COMOUT}" - fi -done - - # Set wave model ID tag to include member number # if ensemble; waveMEMB var empty in deterministic @@ -71,7 +36,7 @@ ${SCRgfs}/exgfs_wave_post_gridded_sbs.sh err=$? if [ ${err} -ne 0 ]; then echo "FATAL ERROR: ex-script of GWES_POST failed!" - exit "${err}" + exit ${err} fi ########################################## @@ -81,4 +46,4 @@ cd ${DATAROOT} [[ ${KEEPDATA} = "NO" ]] && rm -rf ${DATA} -exit 0 +exit 0 \ No newline at end of file diff --git a/scripts/exgfs_wave_post_gridded_sbs.sh b/scripts/exgfs_wave_post_gridded_sbs.sh index 47e732e288..908cc09945 100755 --- a/scripts/exgfs_wave_post_gridded_sbs.sh +++ b/scripts/exgfs_wave_post_gridded_sbs.sh @@ -388,6 +388,7 @@ source "${USHgfs}/preamble.sh" gribchk_idx="${RUN}wave.${cycle}${ENSTAG}.${GRDNAME}.${GRDRES}.f${FH3}.grib2.idx" if [[ ! -d "${COMOUT_WAVE_GRID}/${GRDNAME}.${GRDRES}" ]]; then mkdir -m 775 -p "${COMOUT_WAVE_GRID}/${GRDNAME}.${GRDRES}" +# move grib2 files to domain.dimension if [[ -s "${COMOUT_WAVE_GRID}/${gribchk}" && -s "${COMOUT_WAVE_GRID}/${gribchk_idx}" ]]; then mv -f "${COMOUT_WAVE_GRID}/${gribchk}" "${COMOUT_WAVE_GRID}/${GRDNAME}.${GRDRES}" mv -f "${COMOUT_WAVE_GRID}/${gribchk_idx}" "${COMOUT_WAVE_GRID}/${GRDNAME}.${GRDRES}.idx" From f58a972dc6213ae51109eba3fce8803060553922 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Sat, 14 Dec 2024 01:25:33 -0500 Subject: [PATCH 063/186] modified jobs\JGLOBAL_WAVE_POST_SBS --- jobs/JGLOBAL_WAVE_POST_SBS | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/jobs/JGLOBAL_WAVE_POST_SBS b/jobs/JGLOBAL_WAVE_POST_SBS index 317a6bf962..53ac4b2083 100755 --- a/jobs/JGLOBAL_WAVE_POST_SBS +++ b/jobs/JGLOBAL_WAVE_POST_SBS @@ -46,4 +46,4 @@ cd ${DATAROOT} [[ ${KEEPDATA} = "NO" ]] && rm -rf ${DATA} -exit 0 \ No newline at end of file +exit 0 From ac2cf8183e08a0c1155b2a8352e113e53b59d147 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Sat, 14 Dec 2024 01:27:13 -0500 Subject: [PATCH 064/186] modified scripts\exgfs_wave_post_gridded_sbs.sh --- scripts/exgfs_wave_post_gridded_sbs.sh | 1 + 1 file changed, 1 insertion(+) diff --git a/scripts/exgfs_wave_post_gridded_sbs.sh b/scripts/exgfs_wave_post_gridded_sbs.sh index 908cc09945..92dc65e05f 100755 --- a/scripts/exgfs_wave_post_gridded_sbs.sh +++ b/scripts/exgfs_wave_post_gridded_sbs.sh @@ -388,6 +388,7 @@ source "${USHgfs}/preamble.sh" gribchk_idx="${RUN}wave.${cycle}${ENSTAG}.${GRDNAME}.${GRDRES}.f${FH3}.grib2.idx" if [[ ! -d "${COMOUT_WAVE_GRID}/${GRDNAME}.${GRDRES}" ]]; then mkdir -m 775 -p "${COMOUT_WAVE_GRID}/${GRDNAME}.${GRDRES}" + fi # move grib2 files to domain.dimension if [[ -s "${COMOUT_WAVE_GRID}/${gribchk}" && -s "${COMOUT_WAVE_GRID}/${gribchk_idx}" ]]; then mv -f "${COMOUT_WAVE_GRID}/${gribchk}" "${COMOUT_WAVE_GRID}/${GRDNAME}.${GRDRES}" From 2a5a464be77493ea1caa3afac9e4cc7740b2f12b Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Mon, 16 Dec 2024 14:14:04 -0500 Subject: [PATCH 065/186] remove path from config.com and yamls --- parm/archive/gefs_extracted_wave.yaml.j2 | 6 ++---- parm/config/gfs/config.com | 1 - 2 files changed, 2 insertions(+), 5 deletions(-) diff --git a/parm/archive/gefs_extracted_wave.yaml.j2 b/parm/archive/gefs_extracted_wave.yaml.j2 index 312a3e4e33..c57cf20804 100644 --- a/parm/archive/gefs_extracted_wave.yaml.j2 +++ b/parm/archive/gefs_extracted_wave.yaml.j2 @@ -86,15 +86,13 @@ gefs_wave: - "{{ file_path | relpath(ROTDIR)}}" {% for res in RESOLUTION %} - {% set tmpl_dict = tmpl_dict.update({ '${GRID}':res }) %} - {% set COMIN_WAVE_GRID = COM_WAVE_GRID_RES_TMPL | replace_tmpl(tmpl_dict) %} + {% set COMIN_WAVE_GRID = COM_WAVE_GRID_TMPL | replace_tmpl(tmpl_dict) %} # Select grib2 files to copy to the atardir {% if path_exists(COMIN_WAVE_GRID) %} {% for fhr in range(ofst_hr, FHMAX_GFS + FHOUT_WAV, FHOUT_WAV) %} {% set file_name = head ~ "global." ~ res ~ ".f" ~ '%03d'|format(fhr) ~ ".grib2" %} - {% set file_path = COMIN_WAVE_GRID ~ "/" ~ file_name %} + {% set file_path = COMIN_WAVE_GRID ~ "/" ~ res ~ "/" ~ file_name %} - "{{ file_path | relpath(ROTDIR)}}" - {% endfor %} {% endif %} {% endfor %} diff --git a/parm/config/gfs/config.com b/parm/config/gfs/config.com index 7f8a999732..d949edb33a 100644 --- a/parm/config/gfs/config.com +++ b/parm/config/gfs/config.com @@ -74,7 +74,6 @@ declare -rx COM_WAVE_RESTART_TMPL=${COM_BASE}'/model/wave/restart' declare -rx COM_WAVE_PREP_TMPL=${COM_BASE}'/model/wave/prep' declare -rx COM_WAVE_HISTORY_TMPL=${COM_BASE}'/model/wave/history' declare -rx COM_WAVE_GRID_TMPL=${COM_BASE}'/products/wave/gridded' -declare -rx COM_WAVE_GRID_RES_TMPL=${COM_WAVE_GRID_TMPL}'/${GRID}' declare -rx COM_WAVE_STATION_TMPL=${COM_BASE}'/products/wave/station' declare -rx COM_WAVE_GEMPAK_TMPL=${COM_BASE}'/products/wave/gempak' declare -rx COM_WAVE_WMO_TMPL=${COM_BASE}'/products/wave/wmo' From 9627ffbb5253a25bcbcf0be0e577b2ff90e2922e Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Mon, 16 Dec 2024 14:18:52 -0500 Subject: [PATCH 066/186] modified yamls files --- parm/archive/gefs_extracted_wave.yaml.j2 | 1 - parm/archive/gfswave.yaml.j2 | 1 - 2 files changed, 2 deletions(-) diff --git a/parm/archive/gefs_extracted_wave.yaml.j2 b/parm/archive/gefs_extracted_wave.yaml.j2 index c57cf20804..498a56dc5d 100644 --- a/parm/archive/gefs_extracted_wave.yaml.j2 +++ b/parm/archive/gefs_extracted_wave.yaml.j2 @@ -60,7 +60,6 @@ gefs_wave: {{ "FATAL ERROR: No grid specific wave config values exist for " ~ grdID ~ ". Aborting." }} {% endif %} {% do RESOLUTION.append(GRDNAME) %} - {% do GridID.append(grdID) %} {% endfor %} #select mem%03d and ensstat files required diff --git a/parm/archive/gfswave.yaml.j2 b/parm/archive/gfswave.yaml.j2 index 50ee15b997..bfdc0767d1 100644 --- a/parm/archive/gfswave.yaml.j2 +++ b/parm/archive/gfswave.yaml.j2 @@ -4,7 +4,6 @@ gfswave: target: "{{ ATARDIR }}/{{ cycle_YMDH }}/gfswave.tar" required: {% set RESOLUTION = [] %} - {% set GridID = [] %} {% for grdID in waveGRD %} {% if grdID == 'glo_10m' %} {% set GRDNAME = 'global.0p16' %} From 9abd6857c68e36a07da957f9662cd94784ab06aa Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Mon, 16 Dec 2024 14:20:03 -0500 Subject: [PATCH 067/186] modified parm\archive\gefs_extracted_wave.yaml.j2 --- parm/archive/gefs_extracted_wave.yaml.j2 | 1 - 1 file changed, 1 deletion(-) diff --git a/parm/archive/gefs_extracted_wave.yaml.j2 b/parm/archive/gefs_extracted_wave.yaml.j2 index 498a56dc5d..fb8f52d3c1 100644 --- a/parm/archive/gefs_extracted_wave.yaml.j2 +++ b/parm/archive/gefs_extracted_wave.yaml.j2 @@ -14,7 +14,6 @@ gefs_wave: {% endif %} {% set RESOLUTION = [] %} - {% for grdID in waveGRD %} {% if grdID == 'glo_10m' %} {% set GRDNAME = 'global.0p16' %} From 33fc0d54913187a151c595430666dcf7c554ece6 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Mon, 16 Dec 2024 14:58:27 -0500 Subject: [PATCH 068/186] modify jobs\JGLOBAL_WAVE_PRDGEN_GRIDDED --- jobs/JGLOBAL_WAVE_PRDGEN_GRIDDED | 21 --------------------- 1 file changed, 21 deletions(-) diff --git a/jobs/JGLOBAL_WAVE_PRDGEN_GRIDDED b/jobs/JGLOBAL_WAVE_PRDGEN_GRIDDED index 05779e225e..8aaa1f713f 100755 --- a/jobs/JGLOBAL_WAVE_PRDGEN_GRIDDED +++ b/jobs/JGLOBAL_WAVE_PRDGEN_GRIDDED @@ -13,26 +13,6 @@ export SENDDBN_NTC=${SENDDBN_NTC:-YES} export SENDDBN=${SENDDBN:-NO} export DBNROOT=${DBNROOT:-${UTILROOT}/fakedbn} -for grdID in ${waveGRD}; do - case ${grdID} in - aoc_9km) GRDNAME='arctic' ; GRDRES=9km;; - at_10m) GRDNAME='atlocn' ; GRDRES=0p16 ;; - ep_10m) GRDNAME='epacif' ; GRDRES=0p16;; - wc_10m) GRDNAME='wcoast' ; GRDRES=0p16 ;; -# glo_30m) GRDNAME='global' ; GRDRES=0p25 ;; - glo_30m) GRDNAME='global' ; GRDRES=0p50 ;; - ak_10m) GRDNAME='alaska' ; GRDRES=0p16;; - *) - echo "FATAL ERROR: No grid specific wave config values exist for ${grdID}. Aborting." - exit 1;; - esac - YMD=${PDY} HH=${cyc} GRID="${GRDNAME}.${GRDRES}" declare_from_tmpl -rx \ - "COMIN_WAVE_GRID_${grdID}:COM_WAVE_GRID_RES_TMPL" -done - - - - YMD=${PDY} HH=${cyc} declare_from_tmpl -rx \ COMIN_WAVE_GRID:COM_WAVE_GRID_TMPL \ COMOUT_WAVE_WMO:COM_WAVE_WMO_TMPL @@ -57,4 +37,3 @@ fi exit 0 - From 922c95925346fd07e52ac67caef5eb05c0981381 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Mon, 16 Dec 2024 14:59:07 -0500 Subject: [PATCH 069/186] modified jobs\JGLOBAL_WAVE_PRDGEN_GRIDDED --- jobs/JGLOBAL_WAVE_PRDGEN_GRIDDED | 1 + 1 file changed, 1 insertion(+) diff --git a/jobs/JGLOBAL_WAVE_PRDGEN_GRIDDED b/jobs/JGLOBAL_WAVE_PRDGEN_GRIDDED index 8aaa1f713f..208b36c535 100755 --- a/jobs/JGLOBAL_WAVE_PRDGEN_GRIDDED +++ b/jobs/JGLOBAL_WAVE_PRDGEN_GRIDDED @@ -37,3 +37,4 @@ fi exit 0 + From df7ae3feef893cbd90cb61f52a735f7d4e8cc6d2 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Mon, 16 Dec 2024 15:00:19 -0500 Subject: [PATCH 070/186] modified jobs\JGLOBAL_ARCHIVE --- jobs/JGLOBAL_ARCHIVE | 32 -------------------------------- 1 file changed, 32 deletions(-) diff --git a/jobs/JGLOBAL_ARCHIVE b/jobs/JGLOBAL_ARCHIVE index de33036a43..401feba35f 100755 --- a/jobs/JGLOBAL_ARCHIVE +++ b/jobs/JGLOBAL_ARCHIVE @@ -50,38 +50,6 @@ for grid in "0p25" "0p50" "1p00"; do "COMIN_ATMOS_GRIB_${grid}:COM_ATMOS_GRIB_GRID_TMPL" done -for grdID in ${waveGRD}; do - case ${grdID} in - glo_10m) GRDNAME='global' ; GRDRES=0p16;; - glo_15mxt) GRDNAME='global' ; GRDRES=0p25;; - glo_30mxt) GRDNAME='global' ; GRDRES=0p50 ;; - glo_30m) GRDNAME='global' ; GRDRES=0p50 ;; - glo_025) GRDNAME='global' ; GRDRES=0p25 ;; - glo_100) GRDNAME='global' ; GRDRES=1p00;; - glo_200) GRDNAME='global' ; GRDRES=2p00;; - glo_500) GRDNAME='global' ; GRDRES=5p00;; - at_10m) GRDNAME='atlocn' ; GRDRES=0p16 ;; - ep_10m) GRDNAME='epacif' ; GRDRES=0p16;; - wc_10m) GRDNAME='wcoast' ; GRDRES=0p16 ;; - ak_10m) GRDNAME='alaska' ; GRDRES=0p16;; - aoc_9km) GRDNAME='arctic' ; GRDRES=9km;; - ant_9km) GRDNAME='antarc' ; GRDRES=9km ;; - gnh_10m) GRDNAME='global' ; GRDRES=0p16;; - gsh_15m) GRDNAME='gsouth' ; GRDRES=0p25;; - ao_20m) GRDNAME='arctic' ; GRDRES=0p33;; - so_20m) GRDNAME='antarc' ; GRDRES=0p33;; - reg025) GRDNAME='global' ; GRDRES=0p25;; - gwes_30m) GRDNAME='global' ; GRDRES=0p50;; - *) - echo "FATAL ERROR: No grid specific wave config values exist for ${grdID}. Aborting." - exit 1;; - esac - YMD=${PDY} HH=${cyc} GRID="${GRDNAME}.${GRDRES}" declare_from_tmpl -rx \ - "COMIN_WAVE_GRID_${grdID}:COM_WAVE_GRID_RES_TMPL" -done - - - ############################################################### # Run archive script ############################################################### From f9ee0a513e759f4f2d29037ecb16bd8c486afa56 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Mon, 16 Dec 2024 15:12:29 -0500 Subject: [PATCH 071/186] modified scripts\exgfs_wave_prdgen_gridded.sh --- scripts/exgfs_wave_prdgen_gridded.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/exgfs_wave_prdgen_gridded.sh b/scripts/exgfs_wave_prdgen_gridded.sh index b8ab94c045..dce6d83fe7 100755 --- a/scripts/exgfs_wave_prdgen_gridded.sh +++ b/scripts/exgfs_wave_prdgen_gridded.sh @@ -100,7 +100,7 @@ grids=${grids:-ak_10m at_10m ep_10m wc_10m glo_30m} esac # - GRIBIN="${COM_WAVE_GRID}/${RUNwave}.${cycle}.${grdID}.f${fhr}.grib2" + GRIBIN="${COM_WAVE_GRID}/${grdID}/${RUNwave}.${cycle}.${grdID}.f${fhr}.grib2" GRIBIN_chk="${GRIBIN}.idx" sleep_interval=5 max_tries=1000 From 05492e8cf81aa638952243d60dccd54b9dec1df1 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Mon, 16 Dec 2024 15:15:27 -0500 Subject: [PATCH 072/186] modified jobs\JGLOBAL_EXTRACTVARS --- jobs/JGLOBAL_EXTRACTVARS | 34 ---------------------------------- 1 file changed, 34 deletions(-) diff --git a/jobs/JGLOBAL_EXTRACTVARS b/jobs/JGLOBAL_EXTRACTVARS index 04a3c9a2c9..3478ca3976 100755 --- a/jobs/JGLOBAL_EXTRACTVARS +++ b/jobs/JGLOBAL_EXTRACTVARS @@ -10,40 +10,6 @@ for grid in '0p25' '0p50' '1p00'; do if [[ ! -d "${!prod_dir}" ]]; then mkdir -p "${!prod_dir}"; fi done -for grdID in ${waveGRD}; do - case ${grdID} in - glo_10m) GRDNAME='global' ; GRDRES=0p16;; - glo_15mxt) GRDNAME='global' ; GRDRES=0p25;; - glo_30mxt) GRDNAME='global' ; GRDRES=0p50 ;; - glo_30m) GRDNAME='global' ; GRDRES=0p50 ;; - glo_025) GRDNAME='global' ; GRDRES=0p25 ;; - glo_100) GRDNAME='global' ; GRDRES=1p00;; - glo_200) GRDNAME='global' ; GRDRES=2p00;; - glo_500) GRDNAME='global' ; GRDRES=5p00;; - at_10m) GRDNAME='atlocn' ; GRDRES=0p16 ;; - ep_10m) GRDNAME='epacif' ; GRDRES=0p16;; - wc_10m) GRDNAME='wcoast' ; GRDRES=0p16 ;; - ak_10m) GRDNAME='alaska' ; GRDRES=0p16;; - aoc_9km) GRDNAME='arctic' ; GRDRES=9km;; - ant_9km) GRDNAME='antarc' ; GRDRES=9km ;; - gnh_10m) GRDNAME='global' ; GRDRES=0p16;; - gsh_15m) GRDNAME='gsouth' ; GRDRES=0p25;; - ao_20m) GRDNAME='arctic' ; GRDRES=0p33;; - so_20m) GRDNAME='antarc' ; GRDRES=0p33;; - reg025) GRDNAME='global' ; GRDRES=0p25;; - gwes_30m) GRDNAME='global' ; GRDRES=0p50;; - *) - echo "FATAL ERROR: No grid specific wave config values exist for ${grdID}. Aborting." - exit 1;; - esac - prod_dir="COMIN_WAVE_GRID_${grdID}" - YMD=${PDY} HH=${cyc} GRID="${GRDNAME}.${GRDRES}" declare_from_tmpl -rx \ - "${prod_dir}:COM_WAVE_GRID_RES_TMPL" - if [[ ! -d "${!prod_dir}" ]]; then mkdir -p "${!prod_dir}"; fi -done - - - YMD="${PDY}" HH="${cyc}" declare_from_tmpl -rx \ "COMIN_OCEAN_HISTORY:COM_OCEAN_HISTORY_TMPL" \ "COMIN_OCEAN_GRIB:COM_OCEAN_GRIB_TMPL" \ From 49deb1a128904d561dd140bd34c5729ad2a45082 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Mon, 16 Dec 2024 15:24:02 -0500 Subject: [PATCH 073/186] modified scripts\exgfs_wave_prdgen_gridded.sh --- scripts/exgfs_wave_prdgen_gridded.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/exgfs_wave_prdgen_gridded.sh b/scripts/exgfs_wave_prdgen_gridded.sh index dce6d83fe7..960b27b552 100755 --- a/scripts/exgfs_wave_prdgen_gridded.sh +++ b/scripts/exgfs_wave_prdgen_gridded.sh @@ -9,7 +9,7 @@ # - Supplemental error output is witten to the wave.log file. # # # # COM inputs: # -# - ${COMIN_WAVE_GRID}/${RUNwave}.${cycle}.${grdID}.f${fhr}.grib2 # +# - ${COMIN_WAVE_GRID}/${grdID}/${RUNwave}.${cycle}.${grdID}.f${fhr}.grib2 # # # # COM outputs: # # - ${COMOUT_WAVE_WMO}/grib2.${cycle}.f${fhr}.awipsww3_${grdOut} # From 2446f7de6c7ec2719b208415fb3e89852354abf5 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Mon, 16 Dec 2024 16:25:29 -0500 Subject: [PATCH 074/186] modified ush\wave_extractvars.sh --- ush/wave_extractvars.sh | 32 ++++++++++++++++++++++++++++++-- 1 file changed, 30 insertions(+), 2 deletions(-) diff --git a/ush/wave_extractvars.sh b/ush/wave_extractvars.sh index 32ee44986b..c7d097f947 100755 --- a/ush/wave_extractvars.sh +++ b/ush/wave_extractvars.sh @@ -13,13 +13,41 @@ source "${USHgfs}/preamble.sh" subdata=${1} +for grdID in ${waveGRD}; do + case ${grdID} in + glo_10m) GRDNAME='global' ; GRDRES=0p16;; + glo_15mxt) GRDNAME='global' ; GRDRES=0p25;; + glo_30mxt) GRDNAME='global' ; GRDRES=0p50 ;; + glo_30m) GRDNAME='global' ; GRDRES=0p50 ;; + glo_025) GRDNAME='global' ; GRDRES=0p25 ;; + glo_100) GRDNAME='global' ; GRDRES=1p00;; + glo_200) GRDNAME='global' ; GRDRES=2p00;; + glo_500) GRDNAME='global' ; GRDRES=5p00;; + at_10m) GRDNAME='atlocn' ; GRDRES=0p16 ;; + ep_10m) GRDNAME='epacif' ; GRDRES=0p16;; + wc_10m) GRDNAME='wcoast' ; GRDRES=0p16 ;; + ak_10m) GRDNAME='alaska' ; GRDRES=0p16;; + aoc_9km) GRDNAME='arctic' ; GRDRES=9km;; + ant_9km) GRDNAME='antarc' ; GRDRES=9km ;; + gnh_10m) GRDNAME='global' ; GRDRES=0p16;; + gsh_15m) GRDNAME='gsouth' ; GRDRES=0p25;; + ao_20m) GRDNAME='arctic' ; GRDRES=0p33;; + so_20m) GRDNAME='antarc' ; GRDRES=0p33;; + reg025) GRDNAME='global' ; GRDRES=0p25;; + gwes_30m) GRDNAME='global' ; GRDRES=0p50;; + *) + echo "FATAL ERROR: No grid specific wave config values exist for ${grdID}. Aborting." + exit 1;; + esac +done + [[ -d "${subdata}" ]] || mkdir -p "${subdata}" for (( nh = FHOUT_WAV_EXTRACT; nh <= FHMAX_WAV; nh = nh + FHOUT_WAV_EXTRACT )); do fnh=$(printf "%3.3d" "${nh}") - infile=${COMIN_WAVE_GRID}/${RUN}wave.t${cyc}z.global.${wavres}.f${fnh}.grib2 - outfile=${subdata}/${RUN}wave.t${cyc}z.global.${wavres}.f${fnh}.grib2 + infile="${COMIN_WAVE_GRID}/${GRDNAME}.${GRDRES}/${RUN}wave.t${cyc}z.global.${wavres}.f${fnh}.grib2" + outfile="${subdata}/${RUN}wave.t${cyc}z.global.${wavres}.f${fnh}.grib2" rm -f "${outfile}" # Remove outfile if it already exists before extraction if [[ -f "${infile}" ]]; then # Check if input file exists before extraction From 852371f8f71c31e889c83e5e4b262c77c3aab695 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Mon, 16 Dec 2024 22:36:33 -0500 Subject: [PATCH 075/186] modified yaml files --- parm/archive/gefs_extracted_wave.yaml.j2 | 1 + parm/archive/gfswave.yaml.j2 | 1 + 2 files changed, 2 insertions(+) diff --git a/parm/archive/gefs_extracted_wave.yaml.j2 b/parm/archive/gefs_extracted_wave.yaml.j2 index fb8f52d3c1..3927cb52ae 100644 --- a/parm/archive/gefs_extracted_wave.yaml.j2 +++ b/parm/archive/gefs_extracted_wave.yaml.j2 @@ -56,6 +56,7 @@ gefs_wave: {% elif grdID == 'gwes_30m' %} {% set GRDNAME = 'global.0p50' %} {% else %} + {% set GRDNAME = 'unknown' %} {{ "FATAL ERROR: No grid specific wave config values exist for " ~ grdID ~ ". Aborting." }} {% endif %} {% do RESOLUTION.append(GRDNAME) %} diff --git a/parm/archive/gfswave.yaml.j2 b/parm/archive/gfswave.yaml.j2 index bfdc0767d1..52175b3a0e 100644 --- a/parm/archive/gfswave.yaml.j2 +++ b/parm/archive/gfswave.yaml.j2 @@ -46,6 +46,7 @@ gfswave: {% elif grdID == 'gwes_30m' %} {% set GRDNAME = 'global.0p50' %} {% else %} + {% set GRDNAME = 'unknown' %} {{ "FATAL ERROR: No grid specific wave config values exist for " ~ grdID ~ ". Aborting." }} {% endif %} {% do RESOLUTION.append(GRDNAME) %} From e0892ca5acbe090070223ca121f1178d02e47999 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Tue, 17 Dec 2024 13:53:16 -0500 Subject: [PATCH 076/186] modified scripts\exgfs_wave_post_gridded_sbs.sh --- scripts/exgfs_wave_post_gridded_sbs.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/exgfs_wave_post_gridded_sbs.sh b/scripts/exgfs_wave_post_gridded_sbs.sh index 92dc65e05f..56d6ca55fe 100755 --- a/scripts/exgfs_wave_post_gridded_sbs.sh +++ b/scripts/exgfs_wave_post_gridded_sbs.sh @@ -392,7 +392,7 @@ source "${USHgfs}/preamble.sh" # move grib2 files to domain.dimension if [[ -s "${COMOUT_WAVE_GRID}/${gribchk}" && -s "${COMOUT_WAVE_GRID}/${gribchk_idx}" ]]; then mv -f "${COMOUT_WAVE_GRID}/${gribchk}" "${COMOUT_WAVE_GRID}/${GRDNAME}.${GRDRES}" - mv -f "${COMOUT_WAVE_GRID}/${gribchk_idx}" "${COMOUT_WAVE_GRID}/${GRDNAME}.${GRDRES}.idx" + mv -f "${COMOUT_WAVE_GRID}/${gribchk_idx}" "${COMOUT_WAVE_GRID}/${GRDNAME}.${GRDRES}" else set +x echo ' ' From e491b500cadb9a45e93d62e8fe7c70666a80bc67 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Tue, 17 Dec 2024 14:25:33 -0500 Subject: [PATCH 077/186] modified parm\archive\gefs_extracted_wave.yaml.j2 --- parm/archive/gefs_extracted_wave.yaml.j2 | 1 + 1 file changed, 1 insertion(+) diff --git a/parm/archive/gefs_extracted_wave.yaml.j2 b/parm/archive/gefs_extracted_wave.yaml.j2 index 3927cb52ae..b3c02c2299 100644 --- a/parm/archive/gefs_extracted_wave.yaml.j2 +++ b/parm/archive/gefs_extracted_wave.yaml.j2 @@ -83,6 +83,7 @@ gefs_wave: - "{{ file_path | relpath(ROTDIR)}}" {% set file_path = COMIN_WAVE_STATION ~ "/" ~ RUN ~ "wave.t" ~ cycle_HH ~ "z.bull_tar" %} - "{{ file_path | relpath(ROTDIR)}}" + {% endif %} {% for res in RESOLUTION %} {% set COMIN_WAVE_GRID = COM_WAVE_GRID_TMPL | replace_tmpl(tmpl_dict) %} From b3ffd3c18bb8237a7b452b644ac922680f41b810 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Tue, 17 Dec 2024 14:35:05 -0500 Subject: [PATCH 078/186] modified parm\archive\gefs_extracted_wave.yaml.j2 --- parm/archive/gefs_extracted_wave.yaml.j2 | 2 +- scripts/exglobal_extractvars.sh | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/parm/archive/gefs_extracted_wave.yaml.j2 b/parm/archive/gefs_extracted_wave.yaml.j2 index b3c02c2299..aadf786eb3 100644 --- a/parm/archive/gefs_extracted_wave.yaml.j2 +++ b/parm/archive/gefs_extracted_wave.yaml.j2 @@ -92,7 +92,7 @@ gefs_wave: {% for fhr in range(ofst_hr, FHMAX_GFS + FHOUT_WAV, FHOUT_WAV) %} {% set file_name = head ~ "global." ~ res ~ ".f" ~ '%03d'|format(fhr) ~ ".grib2" %} {% set file_path = COMIN_WAVE_GRID ~ "/" ~ res ~ "/" ~ file_name %} - - "{{ file_path | relpath(ROTDIR)}}" + - "{{ file_path | relpath(ROTDIR)}}" {% endfor %} {% endif %} {% endfor %} diff --git a/scripts/exglobal_extractvars.sh b/scripts/exglobal_extractvars.sh index a124667679..edc2d1acf1 100755 --- a/scripts/exglobal_extractvars.sh +++ b/scripts/exglobal_extractvars.sh @@ -47,7 +47,7 @@ fi # Extract variables for wave if [[ "${DO_WAVE}" == "YES" ]]; then export component_name="wav" - ${EXTRCTVARW} "${DATA}/wav" + ${EXTRCTVARW} "${DATA}/wav" "${waveGRD}" fi exit 0 From 4abd558ca13512aa0eb0b3b065afa9e01d86d8e5 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Tue, 17 Dec 2024 23:10:05 -0500 Subject: [PATCH 079/186] modified parm\archive\gefs_extracted_wave.yaml.j2 --- parm/archive/gefs_extracted_wave.yaml.j2 | 92 +++++++++--------------- 1 file changed, 35 insertions(+), 57 deletions(-) diff --git a/parm/archive/gefs_extracted_wave.yaml.j2 b/parm/archive/gefs_extracted_wave.yaml.j2 index aadf786eb3..74c11079a3 100644 --- a/parm/archive/gefs_extracted_wave.yaml.j2 +++ b/parm/archive/gefs_extracted_wave.yaml.j2 @@ -13,54 +13,33 @@ gefs_wave: {% set ofst_hr = FHMIN_GFS %} {% endif %} -{% set RESOLUTION = [] %} -{% for grdID in waveGRD %} - {% if grdID == 'glo_10m' %} - {% set GRDNAME = 'global.0p16' %} - {% elif grdID == 'glo_15mxt' %} - {% set GRDNAME = 'global.0p25' %} - {% elif grdID == 'glo_30mxt' %} - {% set GRDNAME = 'global.0p50' %} - {% elif grdID == 'glo_30m' %} - {% set GRDNAME = 'global.0p50' %} - {% elif grdID == 'glo_025' %} - {% set GRDNAME = 'global.0p25' %} - {% elif grdID == 'glo_100' %} - {% set GRDNAME = 'global.1p00' %} - {% elif grdID == 'glo_200' %} - {% set GRDNAME = 'global.2p00' %} - {% elif grdID == 'glo_500' %} - {% set GRDNAME = 'global.5p00' %} - {% elif grdID == 'at_10m' %} - {% set GRDNAME = 'atlocn.0p16' %} - {% elif grdID == 'ep_10m' %} - {% set GRDNAME = 'epacif.0p16' %} - {% elif grdID == 'wc_10m' %} - {% set GRDNAME = 'wcoast.0p16' %} - {% elif grdID == 'ak_10m' %} - {% set GRDNAME = 'alaska.0p16' %} - {% elif grdID == 'aoc_9km' %} - {% set GRDNAME = 'arctic.9km' %} - {% elif grdID == 'ant_9km' %} - {% set GRDNAME = 'antarc.9km' %} - {% elif grdID == 'gnh_10m' %} - {% set GRDNAME = 'global.0p16' %} - {% elif grdID == 'gsh_15m' %} - {% set GRDNAME = 'gsouth.0p25' %} - {% elif grdID == 'ao_20m' %} - {% set GRDNAME = 'arctic.0p33' %} - {% elif grdID == 'so_20m' %} - {% set GRDNAME = 'antarc.0p33' %} - {% elif grdID == 'reg025' %} - {% set GRDNAME = 'global.0p25' %} - {% elif grdID == 'gwes_30m' %} - {% set GRDNAME = 'global.0p50' %} - {% else %} - {% set GRDNAME = 'unknown' %} - {{ "FATAL ERROR: No grid specific wave config values exist for " ~ grdID ~ ". Aborting." }} - {% endif %} - {% do RESOLUTION.append(GRDNAME) %} -{% endfor %} +{% set grid_mapping = { + 'glo_10m': 'global.0p16', + 'glo_15mxt': 'global.0p25', + 'glo_30mxt': 'global.0p50', + 'glo_30m': 'global.0p50', + 'glo_025': 'global.0p25', + 'glo_100': 'global.1p00', + 'glo_200': 'global.2p00', + 'glo_500': 'global.5p00', + 'at_10m': 'atlocn.0p16', + 'ep_10m': 'epacif.0p16', + 'wc_10m': 'wcoast.0p16', + 'ak_10m': 'alaska.0p16', + 'aoc_9km': 'arctic.9km', + 'ant_9km': 'antarc.9km', + 'gnh_10m': 'global.0p16', + 'gsh_15m': 'gsouth.0p25', + 'ao_20m': 'arctic.0p33', + 'so_20m': 'antarc.0p33', + 'reg025': 'global.0p25', + 'gwes_30m': 'global.0p50' +} %} + +{% set res = grid_mapping.get(waveGRD, 'unknown') %} +{% if res == 'unknown' %} + {{ "FATAL ERROR: No grid specific wave config values exist. Aborting." }} +{% endif %} #select mem%03d and ensstat files required {% set members = [] %} @@ -85,15 +64,14 @@ gefs_wave: - "{{ file_path | relpath(ROTDIR)}}" {% endif %} - {% for res in RESOLUTION %} - {% set COMIN_WAVE_GRID = COM_WAVE_GRID_TMPL | replace_tmpl(tmpl_dict) %} + + {% set COMIN_WAVE_GRID = COM_WAVE_GRID_TMPL | replace_tmpl(tmpl_dict) %} # Select grib2 files to copy to the atardir - {% if path_exists(COMIN_WAVE_GRID) %} - {% for fhr in range(ofst_hr, FHMAX_GFS + FHOUT_WAV, FHOUT_WAV) %} - {% set file_name = head ~ "global." ~ res ~ ".f" ~ '%03d'|format(fhr) ~ ".grib2" %} - {% set file_path = COMIN_WAVE_GRID ~ "/" ~ res ~ "/" ~ file_name %} + {% if path_exists(COMIN_WAVE_GRID) %} + {% for fhr in range(ofst_hr, FHMAX_GFS + FHOUT_WAV, FHOUT_WAV) %} + {% set file_name = head ~ res ~ ".f" ~ '%03d'|format(fhr) ~ ".grib2" %} + {% set file_path = COMIN_WAVE_GRID ~ "/" ~ res ~ "/" ~ file_name %} - "{{ file_path | relpath(ROTDIR)}}" - {% endfor %} - {% endif %} - {% endfor %} + {% endfor %} + {% endif %} {% endfor %} From fce5b4200873a57bbd70056a633b30797623bcd8 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Tue, 17 Dec 2024 23:17:46 -0500 Subject: [PATCH 080/186] modified gfswave.yaml.j2 --- parm/archive/gfswave.yaml.j2 | 78 +++++++++++++----------------------- 1 file changed, 27 insertions(+), 51 deletions(-) diff --git a/parm/archive/gfswave.yaml.j2 b/parm/archive/gfswave.yaml.j2 index 52175b3a0e..d9234b570e 100644 --- a/parm/archive/gfswave.yaml.j2 +++ b/parm/archive/gfswave.yaml.j2 @@ -3,57 +3,35 @@ gfswave: name: "GFSWAVE" target: "{{ ATARDIR }}/{{ cycle_YMDH }}/gfswave.tar" required: - {% set RESOLUTION = [] %} - {% for grdID in waveGRD %} - {% if grdID == 'glo_10m' %} - {% set GRDNAME = 'global.0p16' %} - {% elif grdID == 'glo_15mxt' %} - {% set GRDNAME = 'global.0p25' %} - {% elif grdID == 'glo_30mxt' %} - {% set GRDNAME = 'global.0p50' %} - {% elif grdID == 'glo_30m' %} - {% set GRDNAME = 'global.0p50' %} - {% elif grdID == 'glo_025' %} - {% set GRDNAME = 'global.0p25' %} - {% elif grdID == 'glo_100' %} - {% set GRDNAME = 'global.1p00' %} - {% elif grdID == 'glo_200' %} - {% set GRDNAME = 'global.2p00' %} - {% elif grdID == 'glo_500' %} - {% set GRDNAME = 'global.5p00' %} - {% elif grdID == 'at_10m' %} - {% set GRDNAME = 'atlocn.0p16' %} - {% elif grdID == 'ep_10m' %} - {% set GRDNAME = 'epacif.0p16' %} - {% elif grdID == 'wc_10m' %} - {% set GRDNAME = 'wcoast.0p16' %} - {% elif grdID == 'ak_10m' %} - {% set GRDNAME = 'alaska.0p16' %} - {% elif grdID == 'aoc_9km' %} - {% set GRDNAME = 'arctic.9km' %} - {% elif grdID == 'ant_9km' %} - {% set GRDNAME = 'antarc.9km' %} - {% elif grdID == 'gnh_10m' %} - {% set GRDNAME = 'global.0p16' %} - {% elif grdID == 'gsh_15m' %} - {% set GRDNAME = 'gsouth.0p25' %} - {% elif grdID == 'ao_20m' %} - {% set GRDNAME = 'arctic.0p33' %} - {% elif grdID == 'so_20m' %} - {% set GRDNAME = 'antarc.0p33' %} - {% elif grdID == 'reg025' %} - {% set GRDNAME = 'global.0p25' %} - {% elif grdID == 'gwes_30m' %} - {% set GRDNAME = 'global.0p50' %} - {% else %} - {% set GRDNAME = 'unknown' %} - {{ "FATAL ERROR: No grid specific wave config values exist for " ~ grdID ~ ". Aborting." }} - {% endif %} - {% do RESOLUTION.append(GRDNAME) %} - {% endfor %} + {% set grid_mapping = { + 'glo_10m': 'global.0p16', + 'glo_15mxt': 'global.0p25', + 'glo_30mxt': 'global.0p50', + 'glo_30m': 'global.0p50', + 'glo_025': 'global.0p25', + 'glo_100': 'global.1p00', + 'glo_200': 'global.2p00', + 'glo_500': 'global.5p00', + 'at_10m': 'atlocn.0p16', + 'ep_10m': 'epacif.0p16', + 'wc_10m': 'wcoast.0p16', + 'ak_10m': 'alaska.0p16', + 'aoc_9km': 'arctic.9km', + 'ant_9km': 'antarc.9km', + 'gnh_10m': 'global.0p16', + 'gsh_15m': 'gsouth.0p25', + 'ao_20m': 'arctic.0p33', + 'so_20m': 'antarc.0p33', + 'reg025': 'global.0p25', + 'gwes_30m': 'global.0p50' + } %} + + {% set res = grid_mapping.get(waveGRD, 'unknown') %} + {% if res == 'unknown' %} + {{ "FATAL ERROR: No grid specific wave config values exist. Aborting." }} + {% endif %} # Wave GRIB2 regional forecast products - {% for res in RESOLUTION %} {% set file_path = COMIN_WAVE_GRID ~ "/" ~ res %} {% for fh in range(0, FHMAX_HF_WAV + FHOUT_HF_WAV, FHOUT_HF_WAV) %} @@ -69,8 +47,6 @@ gfswave: - "{{ file_path | relpath(ROTDIR) }}/{{ head }}*.*.f{{ '%03d' % fh }}.grib2.idx" {% endfor %} - {% endfor %} - # Wave bulletins - "{{ COMIN_WAVE_STATION | relpath(ROTDIR) }}/{{ head }}bull_tar" - "{{ COMIN_WAVE_STATION | relpath(ROTDIR) }}/{{ head }}cbull_tar" From e17462602366a49c15e78f719c2c3153f34753b6 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Tue, 17 Dec 2024 23:18:45 -0500 Subject: [PATCH 081/186] modified parm\archive\gefs_extracted_wave.yaml.j2 --- parm/archive/gefs_extracted_wave.yaml.j2 | 1 - 1 file changed, 1 deletion(-) diff --git a/parm/archive/gefs_extracted_wave.yaml.j2 b/parm/archive/gefs_extracted_wave.yaml.j2 index 74c11079a3..6bf8115c24 100644 --- a/parm/archive/gefs_extracted_wave.yaml.j2 +++ b/parm/archive/gefs_extracted_wave.yaml.j2 @@ -64,7 +64,6 @@ gefs_wave: - "{{ file_path | relpath(ROTDIR)}}" {% endif %} - {% set COMIN_WAVE_GRID = COM_WAVE_GRID_TMPL | replace_tmpl(tmpl_dict) %} # Select grib2 files to copy to the atardir {% if path_exists(COMIN_WAVE_GRID) %} From c24fb1f2ce64f16656228710326c3534d3ee702c Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Tue, 17 Dec 2024 23:36:47 -0500 Subject: [PATCH 082/186] modified scripts\exglobal_extractvars.sh --- scripts/exglobal_extractvars.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/exglobal_extractvars.sh b/scripts/exglobal_extractvars.sh index edc2d1acf1..a124667679 100755 --- a/scripts/exglobal_extractvars.sh +++ b/scripts/exglobal_extractvars.sh @@ -47,7 +47,7 @@ fi # Extract variables for wave if [[ "${DO_WAVE}" == "YES" ]]; then export component_name="wav" - ${EXTRCTVARW} "${DATA}/wav" "${waveGRD}" + ${EXTRCTVARW} "${DATA}/wav" fi exit 0 From 6ba4f73cf54fb46f751d77b1daa2c5257d6e37eb Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Thu, 19 Dec 2024 13:13:01 -0500 Subject: [PATCH 083/186] adding a function to the scripts --- scripts/exgfs_wave_post_gridded_sbs.sh | 33 ++------------------ ush/wave_domain_grid.sh | 42 ++++++++++++++++++++++++++ ush/wave_extractvars.sh | 28 +---------------- 3 files changed, 45 insertions(+), 58 deletions(-) create mode 100644 ush/wave_domain_grid.sh diff --git a/scripts/exgfs_wave_post_gridded_sbs.sh b/scripts/exgfs_wave_post_gridded_sbs.sh index 56d6ca55fe..70de933d41 100755 --- a/scripts/exgfs_wave_post_gridded_sbs.sh +++ b/scripts/exgfs_wave_post_gridded_sbs.sh @@ -261,20 +261,7 @@ source "${USHgfs}/preamble.sh" if [ "$DOGRB_WAV" = 'YES' ] then gribFL=\'$(echo ${OUTPARS_WAV})\' - case $grdID in - glo_15mxt) GRDNAME='global' ; GRDRES=0p25 ; GRIDNR=255 ; MODNR=11 ;; - reg025) GRDNAME='global' ; GRDRES=0p25 ; GRIDNR=255 ; MODNR=11 ;; - glo_025) GRDNAME='global' ; GRDRES=0p25 ; GRIDNR=255 ; MODNR=11 ;; - glo_100) GRDNAME='global' ; GRDRES=1p00 ; GRIDNR=255 ; MODNR=11 ;; - glo_200) GRDNAME='global' ; GRDRES=2p00 ; GRIDNR=255 ; MODNR=11 ;; - glo_500) GRDNAME='global' ; GRDRES=5p00 ; GRIDNR=255 ; MODNR=11 ;; - glo_30mxt) GRDNAME='global' ; GRDRES=0p50 ; GRIDNR=255 ; MODNR=11 ;; - glo_30m) GRDNAME='global' ; GRDRES=0p50 ; GRIDNR=255 ; MODNR=11 ;; - at_10m) GRDNAME='atlocn' ; GRDRES=0p16 ; GRIDNR=255 ; MODNR=11 ;; - ep_10m) GRDNAME='epacif' ; GRDRES=0p16 ; GRIDNR=255 ; MODNR=11 ;; - wc_10m) GRDNAME='wcoast' ; GRDRES=0p16 ; GRIDNR=255 ; MODNR=11 ;; - ak_10m) GRDNAME='alaska' ; GRDRES=0p16 ; GRIDNR=255 ; MODNR=11 ;; - esac + eval "$(source "${USHgfs}/wave_domain_grid.sh" $grdID)" echo "${USHgfs}/wave_grib2_sbs.sh $grdID $GRIDNR $MODNR $ymdh $fhr $GRDNAME $GRDRES $gribFL > grib_$grdID.out 2>&1" >> ${fcmdigrd}.${nigrd} fi echo "${GRIBDATA}/${fcmdigrd}.${nigrd}" >> ${fcmdnow} @@ -288,23 +275,7 @@ source "${USHgfs}/preamble.sh" for grdID in ${wavepostGRD} # First concatenate grib files for sbs grids do gribFL=\'$(echo ${OUTPARS_WAV})\' - case $grdID in - aoc_9km) GRDNAME='arctic' ; GRDRES=9km ; GRIDNR=255 ; MODNR=11 ;; - ant_9km) GRDNAME='antarc' ; GRDRES=9km ; GRIDNR=255 ; MODNR=11 ;; - glo_10m) GRDNAME='global' ; GRDRES=0p16 ; GRIDNR=255 ; MODNR=11 ;; - gnh_10m) GRDNAME='global' ; GRDRES=0p16 ; GRIDNR=255 ; MODNR=11 ;; - gsh_15m) GRDNAME='gsouth' ; GRDRES=0p25 ; GRIDNR=255 ; MODNR=11 ;; - glo_15m) GRDNAME='global' ; GRDRES=0p25 ; GRIDNR=255 ; MODNR=11 ;; - ao_20m) GRDNAME='arctic' ; GRDRES=0p33 ; GRIDNR=255 ; MODNR=11 ;; - so_20m) GRDNAME='antarc' ; GRDRES=0p33 ; GRIDNR=255 ; MODNR=11 ;; - glo_15mxt) GRDNAME='global' ; GRDRES=0p25 ; GRIDNR=255 ; MODNR=11 ;; - reg025) GRDNAME='global' ; GRDRES=0p25 ; GRIDNR=255 ; MODNR=11 ;; - glo_025) GRDNAME='global' ; GRDRES=0p25 ; GRIDNR=255 ; MODNR=11 ;; - glo_100) GRDNAME='global' ; GRDRES=1p00 ; GRIDNR=255 ; MODNR=11 ;; - glo_200) GRDNAME='global' ; GRDRES=2p00 ; GRIDNR=255 ; MODNR=11 ;; - glo_500) GRDNAME='global' ; GRDRES=5p00 ; GRIDNR=255 ; MODNR=11 ;; - gwes_30m) GRDNAME='global' ; GRDRES=0p50 ; GRIDNR=255 ; MODNR=10 ;; - esac + eval "$(source "${USHgfs}/wave_domain_grid.sh" $grdID)" echo "${USHgfs}/wave_grib2_sbs.sh $grdID $GRIDNR $MODNR $ymdh $fhr $GRDNAME $GRDRES $gribFL > grib_$grdID.out 2>&1" >> ${fcmdnow} done fi diff --git a/ush/wave_domain_grid.sh b/ush/wave_domain_grid.sh new file mode 100644 index 0000000000..643c2f320c --- /dev/null +++ b/ush/wave_domain_grid.sh @@ -0,0 +1,42 @@ +#! /usr/bin/env bash + +################################################################################ +## UNIX Script Documentation Block +## Script name: wave_domain_grid.sh +## Script description: provides the wave grid specific values that +## are needed for the wave related jobs +####################### +# Main body starts here +####################### + +source "${USHgfs}/preamble.sh" + +process_grdID() { + local grdID=$1 + case ${grdID} in + glo_10m) GRDNAME='global' ; GRDRES=0p16 ; GRIDNR=255 ; MODNR=11 ;; + glo_15mxt) GRDNAME='global' ; GRDRES=0p25 ; GRIDNR=255 ; MODNR=11 ;; + glo_30mxt) GRDNAME='global' ; GRDRES=0p50 ; GRIDNR=255 ; MODNR=11 ;; + glo_30m) GRDNAME='global' ; GRDRES=0p50 ; GRIDNR=255 ; MODNR=11 ;; + glo_025) GRDNAME='global' ; GRDRES=0p25 ; GRIDNR=255 ; MODNR=11 ;; + glo_100) GRDNAME='global' ; GRDRES=1p00 ; GRIDNR=255 ; MODNR=11 ;; + glo_200) GRDNAME='global' ; GRDRES=2p00 ; GRIDNR=255 ; MODNR=11 ;; + glo_500) GRDNAME='global' ; GRDRES=5p00 ; GRIDNR=255 ; MODNR=11 ;; + at_10m) GRDNAME='atlocn' ; GRDRES=0p16 ; GRIDNR=255 ; MODNR=11 ;; + ep_10m) GRDNAME='epacif' ; GRDRES=0p16 ; GRIDNR=255 ; MODNR=11 ;; + wc_10m) GRDNAME='wcoast' ; GRDRES=0p16 ; GRIDNR=255 ; MODNR=11 ;; + ak_10m) GRDNAME='alaska' ; GRDRES=0p16 ; GRIDNR=255 ; MODNR=11 ;; + aoc_9km) GRDNAME='arctic' ; GRDRES=9km ; GRIDNR=255 ; MODNR=11 ;; + ant_9km) GRDNAME='antarc' ; GRDRES=9km ; GRIDNR=255 ; MODNR=11 ;; + gnh_10m) GRDNAME='global' ; GRDRES=0p16 ; GRIDNR=255 ; MODNR=11 ;; + gsh_15m) GRDNAME='gsouth' ; GRDRES=0p25 ; GRIDNR=255 ; MODNR=11 ;; + ao_20m) GRDNAME='arctic' ; GRDRES=0p33 ; GRIDNR=255 ; MODNR=11 ;; + so_20m) GRDNAME='antarc' ; GRDRES=0p33 ; GRIDNR=255 ; MODNR=11 ;; + reg025) GRDNAME='global' ; GRDRES=0p25 ; GRIDNR=255 ; MODNR=11 ;; + gwes_30m) GRDNAME='global' ; GRDRES=0p50 ; GRIDNR=255 ; MODNR=11 ;; + *) + echo "FATAL ERROR: No grid specific wave config values exist for ${grdID}. Aborting." + exit 1 ;; + esac + export grdNAME="${GRDNAME}.${GRDRES}" +} diff --git a/ush/wave_extractvars.sh b/ush/wave_extractvars.sh index c7d097f947..4499d773f9 100755 --- a/ush/wave_extractvars.sh +++ b/ush/wave_extractvars.sh @@ -13,33 +13,7 @@ source "${USHgfs}/preamble.sh" subdata=${1} -for grdID in ${waveGRD}; do - case ${grdID} in - glo_10m) GRDNAME='global' ; GRDRES=0p16;; - glo_15mxt) GRDNAME='global' ; GRDRES=0p25;; - glo_30mxt) GRDNAME='global' ; GRDRES=0p50 ;; - glo_30m) GRDNAME='global' ; GRDRES=0p50 ;; - glo_025) GRDNAME='global' ; GRDRES=0p25 ;; - glo_100) GRDNAME='global' ; GRDRES=1p00;; - glo_200) GRDNAME='global' ; GRDRES=2p00;; - glo_500) GRDNAME='global' ; GRDRES=5p00;; - at_10m) GRDNAME='atlocn' ; GRDRES=0p16 ;; - ep_10m) GRDNAME='epacif' ; GRDRES=0p16;; - wc_10m) GRDNAME='wcoast' ; GRDRES=0p16 ;; - ak_10m) GRDNAME='alaska' ; GRDRES=0p16;; - aoc_9km) GRDNAME='arctic' ; GRDRES=9km;; - ant_9km) GRDNAME='antarc' ; GRDRES=9km ;; - gnh_10m) GRDNAME='global' ; GRDRES=0p16;; - gsh_15m) GRDNAME='gsouth' ; GRDRES=0p25;; - ao_20m) GRDNAME='arctic' ; GRDRES=0p33;; - so_20m) GRDNAME='antarc' ; GRDRES=0p33;; - reg025) GRDNAME='global' ; GRDRES=0p25;; - gwes_30m) GRDNAME='global' ; GRDRES=0p50;; - *) - echo "FATAL ERROR: No grid specific wave config values exist for ${grdID}. Aborting." - exit 1;; - esac -done +eval "$(source "${USHgfs}/wave_domain_grid.sh" $waveGRD)" [[ -d "${subdata}" ]] || mkdir -p "${subdata}" From b824970b529ef332dd49af7786ba19b13b24ca83 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Thu, 19 Dec 2024 13:52:52 -0500 Subject: [PATCH 084/186] modified function related stuff --- jobs/JGLOBAL_ARCHIVE | 4 +-- parm/archive/gefs_extracted_wave.yaml.j2 | 32 ++---------------------- parm/archive/gfswave.yaml.j2 | 30 +--------------------- scripts/exglobal_archive.py | 2 +- 4 files changed, 6 insertions(+), 62 deletions(-) diff --git a/jobs/JGLOBAL_ARCHIVE b/jobs/JGLOBAL_ARCHIVE index 401feba35f..2d18f06897 100755 --- a/jobs/JGLOBAL_ARCHIVE +++ b/jobs/JGLOBAL_ARCHIVE @@ -68,8 +68,8 @@ status=$? if [[ -e "${pgmout}" ]] ; then cat "${pgmout}" fi - - +#select the correct domain.grid for gridded data +source "${USHgfs}/wave_domain_grid.sh" ${waveGRD} ########################################## # Remove the Temporary working directory ########################################## diff --git a/parm/archive/gefs_extracted_wave.yaml.j2 b/parm/archive/gefs_extracted_wave.yaml.j2 index 6bf8115c24..402e27f2bf 100644 --- a/parm/archive/gefs_extracted_wave.yaml.j2 +++ b/parm/archive/gefs_extracted_wave.yaml.j2 @@ -13,34 +13,6 @@ gefs_wave: {% set ofst_hr = FHMIN_GFS %} {% endif %} -{% set grid_mapping = { - 'glo_10m': 'global.0p16', - 'glo_15mxt': 'global.0p25', - 'glo_30mxt': 'global.0p50', - 'glo_30m': 'global.0p50', - 'glo_025': 'global.0p25', - 'glo_100': 'global.1p00', - 'glo_200': 'global.2p00', - 'glo_500': 'global.5p00', - 'at_10m': 'atlocn.0p16', - 'ep_10m': 'epacif.0p16', - 'wc_10m': 'wcoast.0p16', - 'ak_10m': 'alaska.0p16', - 'aoc_9km': 'arctic.9km', - 'ant_9km': 'antarc.9km', - 'gnh_10m': 'global.0p16', - 'gsh_15m': 'gsouth.0p25', - 'ao_20m': 'arctic.0p33', - 'so_20m': 'antarc.0p33', - 'reg025': 'global.0p25', - 'gwes_30m': 'global.0p50' -} %} - -{% set res = grid_mapping.get(waveGRD, 'unknown') %} -{% if res == 'unknown' %} - {{ "FATAL ERROR: No grid specific wave config values exist. Aborting." }} -{% endif %} - #select mem%03d and ensstat files required {% set members = [] %} {% for mem_nm in range(0, NMEM_ENS + 1) %} @@ -68,8 +40,8 @@ gefs_wave: # Select grib2 files to copy to the atardir {% if path_exists(COMIN_WAVE_GRID) %} {% for fhr in range(ofst_hr, FHMAX_GFS + FHOUT_WAV, FHOUT_WAV) %} - {% set file_name = head ~ res ~ ".f" ~ '%03d'|format(fhr) ~ ".grib2" %} - {% set file_path = COMIN_WAVE_GRID ~ "/" ~ res ~ "/" ~ file_name %} + {% set file_name = head ~ grdNAME ~ ".f" ~ '%03d'|format(fhr) ~ ".grib2" %} + {% set file_path = COMIN_WAVE_GRID ~ "/" ~ grdNAME ~ "/" ~ file_name %} - "{{ file_path | relpath(ROTDIR)}}" {% endfor %} {% endif %} diff --git a/parm/archive/gfswave.yaml.j2 b/parm/archive/gfswave.yaml.j2 index d9234b570e..83d18e0d21 100644 --- a/parm/archive/gfswave.yaml.j2 +++ b/parm/archive/gfswave.yaml.j2 @@ -3,36 +3,8 @@ gfswave: name: "GFSWAVE" target: "{{ ATARDIR }}/{{ cycle_YMDH }}/gfswave.tar" required: - {% set grid_mapping = { - 'glo_10m': 'global.0p16', - 'glo_15mxt': 'global.0p25', - 'glo_30mxt': 'global.0p50', - 'glo_30m': 'global.0p50', - 'glo_025': 'global.0p25', - 'glo_100': 'global.1p00', - 'glo_200': 'global.2p00', - 'glo_500': 'global.5p00', - 'at_10m': 'atlocn.0p16', - 'ep_10m': 'epacif.0p16', - 'wc_10m': 'wcoast.0p16', - 'ak_10m': 'alaska.0p16', - 'aoc_9km': 'arctic.9km', - 'ant_9km': 'antarc.9km', - 'gnh_10m': 'global.0p16', - 'gsh_15m': 'gsouth.0p25', - 'ao_20m': 'arctic.0p33', - 'so_20m': 'antarc.0p33', - 'reg025': 'global.0p25', - 'gwes_30m': 'global.0p50' - } %} - - {% set res = grid_mapping.get(waveGRD, 'unknown') %} - {% if res == 'unknown' %} - {{ "FATAL ERROR: No grid specific wave config values exist. Aborting." }} - {% endif %} - # Wave GRIB2 regional forecast products - {% set file_path = COMIN_WAVE_GRID ~ "/" ~ res %} + {% set file_path = COMIN_WAVE_GRID ~ "/" ~ grdNAME %} {% for fh in range(0, FHMAX_HF_WAV + FHOUT_HF_WAV, FHOUT_HF_WAV) %} # NOTE This is as explicit as possible without major logic to parse wavepostGRD. diff --git a/scripts/exglobal_archive.py b/scripts/exglobal_archive.py index 5ae57ca7e3..a312f4660a 100755 --- a/scripts/exglobal_archive.py +++ b/scripts/exglobal_archive.py @@ -33,7 +33,7 @@ def main(): 'NMEM_ENS', 'DO_JEDIATMVAR', 'DO_VRFY_OCEANDA', 'FHMAX_FITS', 'waveGRD', 'IAUFHRS', 'DO_FIT2OBS', 'NET', 'FHOUT_HF_GFS', 'FHMAX_HF_GFS', 'REPLAY_ICS', 'OFFSET_START_HOUR', 'ARCH_EXPDIR', 'EXPDIR', 'ARCH_EXPDIR_FREQ', 'ARCH_HASHES', - 'ARCH_DIFFS', 'SDATE', 'EDATE', 'HOMEgfs'] + 'ARCH_DIFFS', 'SDATE', 'EDATE', 'HOMEgfs', 'grdNAME'] archive_dict = AttrDict() for key in keys: From 5246106118b19d93f2f095f5f34eecd2bdcc00d3 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Thu, 19 Dec 2024 15:49:47 -0500 Subject: [PATCH 085/186] modified ush\wave_domain_grid.sh --- ush/wave_domain_grid.sh | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/ush/wave_domain_grid.sh b/ush/wave_domain_grid.sh index 643c2f320c..9122902012 100644 --- a/ush/wave_domain_grid.sh +++ b/ush/wave_domain_grid.sh @@ -12,7 +12,7 @@ source "${USHgfs}/preamble.sh" process_grdID() { - local grdID=$1 + grdID=$1 case ${grdID} in glo_10m) GRDNAME='global' ; GRDRES=0p16 ; GRIDNR=255 ; MODNR=11 ;; glo_15mxt) GRDNAME='global' ; GRDRES=0p25 ; GRIDNR=255 ; MODNR=11 ;; @@ -39,4 +39,5 @@ process_grdID() { exit 1 ;; esac export grdNAME="${GRDNAME}.${GRDRES}" + echo "grdNAME=${grdNAME}" } From 7354fff796b1ac0036e64569ac772899d8bf49e9 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Thu, 19 Dec 2024 15:54:21 -0500 Subject: [PATCH 086/186] modified ush\wave_domain_grid.sh --- ush/wave_domain_grid.sh | 2 ++ 1 file changed, 2 insertions(+) diff --git a/ush/wave_domain_grid.sh b/ush/wave_domain_grid.sh index 9122902012..ce12930eae 100644 --- a/ush/wave_domain_grid.sh +++ b/ush/wave_domain_grid.sh @@ -41,3 +41,5 @@ process_grdID() { export grdNAME="${GRDNAME}.${GRDRES}" echo "grdNAME=${grdNAME}" } + +process_grdID $1 \ No newline at end of file From 2da9187173a0ee5f4d91cd2651f19bf83384b506 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Thu, 19 Dec 2024 16:14:05 -0500 Subject: [PATCH 087/186] modified the function --- scripts/exgfs_wave_post_gridded_sbs.sh | 4 +++- ush/wave_domain_grid.sh | 6 ++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/scripts/exgfs_wave_post_gridded_sbs.sh b/scripts/exgfs_wave_post_gridded_sbs.sh index 70de933d41..f961d7e763 100755 --- a/scripts/exgfs_wave_post_gridded_sbs.sh +++ b/scripts/exgfs_wave_post_gridded_sbs.sh @@ -275,7 +275,9 @@ source "${USHgfs}/preamble.sh" for grdID in ${wavepostGRD} # First concatenate grib files for sbs grids do gribFL=\'$(echo ${OUTPARS_WAV})\' - eval "$(source "${USHgfs}/wave_domain_grid.sh" $grdID)" + source "${USHgfs}/wave_domain_grid.sh" $grdID + + echo "GRDNAME=${$GRDNAME}" echo "${USHgfs}/wave_grib2_sbs.sh $grdID $GRIDNR $MODNR $ymdh $fhr $GRDNAME $GRDRES $gribFL > grib_$grdID.out 2>&1" >> ${fcmdnow} done fi diff --git a/ush/wave_domain_grid.sh b/ush/wave_domain_grid.sh index ce12930eae..67356b6c89 100644 --- a/ush/wave_domain_grid.sh +++ b/ush/wave_domain_grid.sh @@ -11,7 +11,7 @@ source "${USHgfs}/preamble.sh" -process_grdID() { +function process_grdID() { grdID=$1 case ${grdID} in glo_10m) GRDNAME='global' ; GRDRES=0p16 ; GRIDNR=255 ; MODNR=11 ;; @@ -40,6 +40,4 @@ process_grdID() { esac export grdNAME="${GRDNAME}.${GRDRES}" echo "grdNAME=${grdNAME}" -} - -process_grdID $1 \ No newline at end of file +} \ No newline at end of file From 853d0fa55fcfa067b3db0570843174df29e51792 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Thu, 19 Dec 2024 16:18:07 -0500 Subject: [PATCH 088/186] modified scripts\exgfs_wave_post_gridded_sbs.sh --- scripts/exgfs_wave_post_gridded_sbs.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/exgfs_wave_post_gridded_sbs.sh b/scripts/exgfs_wave_post_gridded_sbs.sh index f961d7e763..a68b3c0c25 100755 --- a/scripts/exgfs_wave_post_gridded_sbs.sh +++ b/scripts/exgfs_wave_post_gridded_sbs.sh @@ -276,7 +276,7 @@ source "${USHgfs}/preamble.sh" do gribFL=\'$(echo ${OUTPARS_WAV})\' source "${USHgfs}/wave_domain_grid.sh" $grdID - + process_grdID() echo "GRDNAME=${$GRDNAME}" echo "${USHgfs}/wave_grib2_sbs.sh $grdID $GRIDNR $MODNR $ymdh $fhr $GRDNAME $GRDRES $gribFL > grib_$grdID.out 2>&1" >> ${fcmdnow} done From 7f76c14214b984a4e5da13540ddab140841a45df Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Thu, 19 Dec 2024 16:28:09 -0500 Subject: [PATCH 089/186] modified scripts\exgfs_wave_post_gridded_sbs.sh --- scripts/exgfs_wave_post_gridded_sbs.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/scripts/exgfs_wave_post_gridded_sbs.sh b/scripts/exgfs_wave_post_gridded_sbs.sh index a68b3c0c25..ae7049ae26 100755 --- a/scripts/exgfs_wave_post_gridded_sbs.sh +++ b/scripts/exgfs_wave_post_gridded_sbs.sh @@ -276,8 +276,8 @@ source "${USHgfs}/preamble.sh" do gribFL=\'$(echo ${OUTPARS_WAV})\' source "${USHgfs}/wave_domain_grid.sh" $grdID - process_grdID() - echo "GRDNAME=${$GRDNAME}" + process_grdID $grdID + echo "${$GRDNAME}" echo "${USHgfs}/wave_grib2_sbs.sh $grdID $GRIDNR $MODNR $ymdh $fhr $GRDNAME $GRDRES $gribFL > grib_$grdID.out 2>&1" >> ${fcmdnow} done fi From faf873bded9b99d1538b8d18504719266cdfc890 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Thu, 19 Dec 2024 16:38:38 -0500 Subject: [PATCH 090/186] modified the function --- scripts/exgfs_wave_post_gridded_sbs.sh | 3 +-- ush/wave_domain_grid.sh | 5 ++++- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/scripts/exgfs_wave_post_gridded_sbs.sh b/scripts/exgfs_wave_post_gridded_sbs.sh index ae7049ae26..1f7a7f3464 100755 --- a/scripts/exgfs_wave_post_gridded_sbs.sh +++ b/scripts/exgfs_wave_post_gridded_sbs.sh @@ -276,8 +276,7 @@ source "${USHgfs}/preamble.sh" do gribFL=\'$(echo ${OUTPARS_WAV})\' source "${USHgfs}/wave_domain_grid.sh" $grdID - process_grdID $grdID - echo "${$GRDNAME}" + echo "passed ${$GRDNAME}" echo "${USHgfs}/wave_grib2_sbs.sh $grdID $GRIDNR $MODNR $ymdh $fhr $GRDNAME $GRDRES $gribFL > grib_$grdID.out 2>&1" >> ${fcmdnow} done fi diff --git a/ush/wave_domain_grid.sh b/ush/wave_domain_grid.sh index 67356b6c89..f82299003c 100644 --- a/ush/wave_domain_grid.sh +++ b/ush/wave_domain_grid.sh @@ -11,7 +11,7 @@ source "${USHgfs}/preamble.sh" -function process_grdID() { +process_grdID() { grdID=$1 case ${grdID} in glo_10m) GRDNAME='global' ; GRDRES=0p16 ; GRIDNR=255 ; MODNR=11 ;; @@ -40,4 +40,7 @@ function process_grdID() { esac export grdNAME="${GRDNAME}.${GRDRES}" echo "grdNAME=${grdNAME}" + echo "GRDRES=${GRDRES}" + echo "GRIDNR=${GRIDNR}" + echo "MODNR=${MODNR}" } \ No newline at end of file From 56cde1477565a4d22c5fb4dfdcffcafcae6e79bf Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Thu, 19 Dec 2024 21:12:39 -0500 Subject: [PATCH 091/186] modifief gridded sh --- scripts/exgfs_wave_post_gridded_sbs.sh | 7 ++++--- ush/wave_domain_grid.sh | 4 ---- 2 files changed, 4 insertions(+), 7 deletions(-) diff --git a/scripts/exgfs_wave_post_gridded_sbs.sh b/scripts/exgfs_wave_post_gridded_sbs.sh index 1f7a7f3464..58632b820e 100755 --- a/scripts/exgfs_wave_post_gridded_sbs.sh +++ b/scripts/exgfs_wave_post_gridded_sbs.sh @@ -261,7 +261,8 @@ source "${USHgfs}/preamble.sh" if [ "$DOGRB_WAV" = 'YES' ] then gribFL=\'$(echo ${OUTPARS_WAV})\' - eval "$(source "${USHgfs}/wave_domain_grid.sh" $grdID)" + source "${USHgfs}/wave_domain_grid.sh" + process_grdID $grdID echo "${USHgfs}/wave_grib2_sbs.sh $grdID $GRIDNR $MODNR $ymdh $fhr $GRDNAME $GRDRES $gribFL > grib_$grdID.out 2>&1" >> ${fcmdigrd}.${nigrd} fi echo "${GRIBDATA}/${fcmdigrd}.${nigrd}" >> ${fcmdnow} @@ -275,8 +276,8 @@ source "${USHgfs}/preamble.sh" for grdID in ${wavepostGRD} # First concatenate grib files for sbs grids do gribFL=\'$(echo ${OUTPARS_WAV})\' - source "${USHgfs}/wave_domain_grid.sh" $grdID - echo "passed ${$GRDNAME}" + source "${USHgfs}/wave_domain_grid.sh" + process_grdID $grdID echo "${USHgfs}/wave_grib2_sbs.sh $grdID $GRIDNR $MODNR $ymdh $fhr $GRDNAME $GRDRES $gribFL > grib_$grdID.out 2>&1" >> ${fcmdnow} done fi diff --git a/ush/wave_domain_grid.sh b/ush/wave_domain_grid.sh index f82299003c..7b6a6243df 100644 --- a/ush/wave_domain_grid.sh +++ b/ush/wave_domain_grid.sh @@ -39,8 +39,4 @@ process_grdID() { exit 1 ;; esac export grdNAME="${GRDNAME}.${GRDRES}" - echo "grdNAME=${grdNAME}" - echo "GRDRES=${GRDRES}" - echo "GRIDNR=${GRIDNR}" - echo "MODNR=${MODNR}" } \ No newline at end of file From 5319296520fe45a9af7eb8227b043a85aa08c893 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Thu, 19 Dec 2024 21:19:18 -0500 Subject: [PATCH 092/186] modified ush\wave_domain_grid.sh --- ush/wave_domain_grid.sh | 2 -- 1 file changed, 2 deletions(-) diff --git a/ush/wave_domain_grid.sh b/ush/wave_domain_grid.sh index 7b6a6243df..d19c3bbc86 100644 --- a/ush/wave_domain_grid.sh +++ b/ush/wave_domain_grid.sh @@ -9,8 +9,6 @@ # Main body starts here ####################### -source "${USHgfs}/preamble.sh" - process_grdID() { grdID=$1 case ${grdID} in From 494ac195fe28b25949d40d30765ade01dfd64eeb Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Thu, 19 Dec 2024 21:24:58 -0500 Subject: [PATCH 093/186] modified wave_extractvars and archive scripts --- jobs/JGLOBAL_ARCHIVE | 3 ++- ush/wave_extractvars.sh | 3 ++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/jobs/JGLOBAL_ARCHIVE b/jobs/JGLOBAL_ARCHIVE index 2d18f06897..4fa42d622e 100755 --- a/jobs/JGLOBAL_ARCHIVE +++ b/jobs/JGLOBAL_ARCHIVE @@ -69,7 +69,8 @@ if [[ -e "${pgmout}" ]] ; then cat "${pgmout}" fi #select the correct domain.grid for gridded data -source "${USHgfs}/wave_domain_grid.sh" ${waveGRD} +source "${USHgfs}/wave_domain_grid.sh" +process_grdID ${waveGRD} ########################################## # Remove the Temporary working directory ########################################## diff --git a/ush/wave_extractvars.sh b/ush/wave_extractvars.sh index 4499d773f9..13663a8f38 100755 --- a/ush/wave_extractvars.sh +++ b/ush/wave_extractvars.sh @@ -13,7 +13,8 @@ source "${USHgfs}/preamble.sh" subdata=${1} -eval "$(source "${USHgfs}/wave_domain_grid.sh" $waveGRD)" +source "${USHgfs}/wave_domain_grid.sh" +process_grdID $waveGRD [[ -d "${subdata}" ]] || mkdir -p "${subdata}" From 586793af4d7aa97aa3ea7cfe15c5595b33725a3d Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Thu, 19 Dec 2024 23:53:09 -0500 Subject: [PATCH 094/186] modified ush\wave_domain_grid.sh --- ush/wave_domain_grid.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ush/wave_domain_grid.sh b/ush/wave_domain_grid.sh index d19c3bbc86..c8b53db012 100644 --- a/ush/wave_domain_grid.sh +++ b/ush/wave_domain_grid.sh @@ -31,7 +31,7 @@ process_grdID() { ao_20m) GRDNAME='arctic' ; GRDRES=0p33 ; GRIDNR=255 ; MODNR=11 ;; so_20m) GRDNAME='antarc' ; GRDRES=0p33 ; GRIDNR=255 ; MODNR=11 ;; reg025) GRDNAME='global' ; GRDRES=0p25 ; GRIDNR=255 ; MODNR=11 ;; - gwes_30m) GRDNAME='global' ; GRDRES=0p50 ; GRIDNR=255 ; MODNR=11 ;; + gwes_30m) GRDNAME='global' ; GRDRES=0p50 ; GRIDNR=255 ; MODNR=10 ;; *) echo "FATAL ERROR: No grid specific wave config values exist for ${grdID}. Aborting." exit 1 ;; From d456d626100a9f075934048a6e6527fb751fa598 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Fri, 20 Dec 2024 00:15:39 -0500 Subject: [PATCH 095/186] modified jobs\JGLOBAL_ARCHIVE --- jobs/JGLOBAL_ARCHIVE | 1 + 1 file changed, 1 insertion(+) diff --git a/jobs/JGLOBAL_ARCHIVE b/jobs/JGLOBAL_ARCHIVE index 4fa42d622e..070d63f109 100755 --- a/jobs/JGLOBAL_ARCHIVE +++ b/jobs/JGLOBAL_ARCHIVE @@ -71,6 +71,7 @@ fi #select the correct domain.grid for gridded data source "${USHgfs}/wave_domain_grid.sh" process_grdID ${waveGRD} +echo "${grdNAME}" ########################################## # Remove the Temporary working directory ########################################## From aaef28fa52b1137514c765c4cd7605de59a6e3c5 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Fri, 20 Dec 2024 00:20:50 -0500 Subject: [PATCH 096/186] updated jobs\JGLOBAL_ARCHIVE --- jobs/JGLOBAL_ARCHIVE | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/jobs/JGLOBAL_ARCHIVE b/jobs/JGLOBAL_ARCHIVE index 070d63f109..f05d713d51 100755 --- a/jobs/JGLOBAL_ARCHIVE +++ b/jobs/JGLOBAL_ARCHIVE @@ -49,7 +49,11 @@ for grid in "0p25" "0p50" "1p00"; do YMD=${PDY} HH=${cyc} GRID=${grid} declare_from_tmpl -rx \ "COMIN_ATMOS_GRIB_${grid}:COM_ATMOS_GRIB_GRID_TMPL" done - +############################################################### +#select the correct domain.grid for gridded data +source "${USHgfs}/wave_domain_grid.sh" +process_grdID ${waveGRD} +echo "${grdNAME}" ############################################################### # Run archive script ############################################################### @@ -68,10 +72,6 @@ status=$? if [[ -e "${pgmout}" ]] ; then cat "${pgmout}" fi -#select the correct domain.grid for gridded data -source "${USHgfs}/wave_domain_grid.sh" -process_grdID ${waveGRD} -echo "${grdNAME}" ########################################## # Remove the Temporary working directory ########################################## From 7f22b5eec59c51bf46805cfffed7cbdf7482decb Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Fri, 20 Dec 2024 00:33:43 -0500 Subject: [PATCH 097/186] modifed jobs\JGLOBAL_ARCHIVE --- jobs/JGLOBAL_ARCHIVE | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/jobs/JGLOBAL_ARCHIVE b/jobs/JGLOBAL_ARCHIVE index f05d713d51..6de855761a 100755 --- a/jobs/JGLOBAL_ARCHIVE +++ b/jobs/JGLOBAL_ARCHIVE @@ -3,6 +3,12 @@ source "${HOMEgfs}/ush/preamble.sh" source "${HOMEgfs}/ush/jjob_header.sh" -e "arch" -c "base arch" +############################################################### +#select the correct domain.grid for gridded data +source "${USHgfs}/wave_domain_grid.sh" +process_grdID ${waveGRD} +echo "${grdNAME}" +############################################################### ############################################## # Set variables used in the script @@ -49,12 +55,7 @@ for grid in "0p25" "0p50" "1p00"; do YMD=${PDY} HH=${cyc} GRID=${grid} declare_from_tmpl -rx \ "COMIN_ATMOS_GRIB_${grid}:COM_ATMOS_GRIB_GRID_TMPL" done -############################################################### -#select the correct domain.grid for gridded data -source "${USHgfs}/wave_domain_grid.sh" -process_grdID ${waveGRD} -echo "${grdNAME}" -############################################################### + # Run archive script ############################################################### From 4fa01f43c6925ff40ebc024892ddc2493ff9e6f2 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Fri, 20 Dec 2024 00:52:01 -0500 Subject: [PATCH 098/186] modified jobs\JGLOBAL_ARCHIVE --- jobs/JGLOBAL_ARCHIVE | 1 - 1 file changed, 1 deletion(-) diff --git a/jobs/JGLOBAL_ARCHIVE b/jobs/JGLOBAL_ARCHIVE index 6de855761a..1c73aa301d 100755 --- a/jobs/JGLOBAL_ARCHIVE +++ b/jobs/JGLOBAL_ARCHIVE @@ -7,7 +7,6 @@ source "${HOMEgfs}/ush/jjob_header.sh" -e "arch" -c "base arch" #select the correct domain.grid for gridded data source "${USHgfs}/wave_domain_grid.sh" process_grdID ${waveGRD} -echo "${grdNAME}" ############################################################### ############################################## From 51c4527acbda28804269dae747040eb08397ae14 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Fri, 20 Dec 2024 11:24:54 -0500 Subject: [PATCH 099/186] correcting shell check warnings --- jobs/JGLOBAL_ARCHIVE | 2 +- scripts/exgfs_wave_post_gridded_sbs.sh | 4 ++-- ush/wave_extractvars.sh | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/jobs/JGLOBAL_ARCHIVE b/jobs/JGLOBAL_ARCHIVE index 1c73aa301d..66d57887c1 100755 --- a/jobs/JGLOBAL_ARCHIVE +++ b/jobs/JGLOBAL_ARCHIVE @@ -6,7 +6,7 @@ source "${HOMEgfs}/ush/jjob_header.sh" -e "arch" -c "base arch" ############################################################### #select the correct domain.grid for gridded data source "${USHgfs}/wave_domain_grid.sh" -process_grdID ${waveGRD} +process_grdID "${waveGRD}" ############################################################### ############################################## diff --git a/scripts/exgfs_wave_post_gridded_sbs.sh b/scripts/exgfs_wave_post_gridded_sbs.sh index 58632b820e..38ae7985ee 100755 --- a/scripts/exgfs_wave_post_gridded_sbs.sh +++ b/scripts/exgfs_wave_post_gridded_sbs.sh @@ -262,7 +262,7 @@ source "${USHgfs}/preamble.sh" then gribFL=\'$(echo ${OUTPARS_WAV})\' source "${USHgfs}/wave_domain_grid.sh" - process_grdID $grdID + process_grdID "$grdID" echo "${USHgfs}/wave_grib2_sbs.sh $grdID $GRIDNR $MODNR $ymdh $fhr $GRDNAME $GRDRES $gribFL > grib_$grdID.out 2>&1" >> ${fcmdigrd}.${nigrd} fi echo "${GRIBDATA}/${fcmdigrd}.${nigrd}" >> ${fcmdnow} @@ -277,7 +277,7 @@ source "${USHgfs}/preamble.sh" do gribFL=\'$(echo ${OUTPARS_WAV})\' source "${USHgfs}/wave_domain_grid.sh" - process_grdID $grdID + process_grdID "$grdID" echo "${USHgfs}/wave_grib2_sbs.sh $grdID $GRIDNR $MODNR $ymdh $fhr $GRDNAME $GRDRES $gribFL > grib_$grdID.out 2>&1" >> ${fcmdnow} done fi diff --git a/ush/wave_extractvars.sh b/ush/wave_extractvars.sh index 13663a8f38..74e2fa2b7c 100755 --- a/ush/wave_extractvars.sh +++ b/ush/wave_extractvars.sh @@ -14,7 +14,7 @@ source "${USHgfs}/preamble.sh" subdata=${1} source "${USHgfs}/wave_domain_grid.sh" -process_grdID $waveGRD +process_grdID "$waveGRD" [[ -d "${subdata}" ]] || mkdir -p "${subdata}" From 54588fe7168c36060fc0912ceaca4067b3ca1ac9 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Fri, 20 Dec 2024 11:27:31 -0500 Subject: [PATCH 100/186] correcting shellcheck warnings --- scripts/exgfs_wave_post_gridded_sbs.sh | 4 ++-- ush/wave_extractvars.sh | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/scripts/exgfs_wave_post_gridded_sbs.sh b/scripts/exgfs_wave_post_gridded_sbs.sh index 38ae7985ee..277cee33cf 100755 --- a/scripts/exgfs_wave_post_gridded_sbs.sh +++ b/scripts/exgfs_wave_post_gridded_sbs.sh @@ -262,7 +262,7 @@ source "${USHgfs}/preamble.sh" then gribFL=\'$(echo ${OUTPARS_WAV})\' source "${USHgfs}/wave_domain_grid.sh" - process_grdID "$grdID" + process_grdID "${grdID}" echo "${USHgfs}/wave_grib2_sbs.sh $grdID $GRIDNR $MODNR $ymdh $fhr $GRDNAME $GRDRES $gribFL > grib_$grdID.out 2>&1" >> ${fcmdigrd}.${nigrd} fi echo "${GRIBDATA}/${fcmdigrd}.${nigrd}" >> ${fcmdnow} @@ -277,7 +277,7 @@ source "${USHgfs}/preamble.sh" do gribFL=\'$(echo ${OUTPARS_WAV})\' source "${USHgfs}/wave_domain_grid.sh" - process_grdID "$grdID" + process_grdID "${grdID}" echo "${USHgfs}/wave_grib2_sbs.sh $grdID $GRIDNR $MODNR $ymdh $fhr $GRDNAME $GRDRES $gribFL > grib_$grdID.out 2>&1" >> ${fcmdnow} done fi diff --git a/ush/wave_extractvars.sh b/ush/wave_extractvars.sh index 74e2fa2b7c..64af28e8d2 100755 --- a/ush/wave_extractvars.sh +++ b/ush/wave_extractvars.sh @@ -14,7 +14,7 @@ source "${USHgfs}/preamble.sh" subdata=${1} source "${USHgfs}/wave_domain_grid.sh" -process_grdID "$waveGRD" +process_grdID "${waveGRD}" [[ -d "${subdata}" ]] || mkdir -p "${subdata}" From 50ff44119ed1c8237565aeebea4ea50dbe89dcd1 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Fri, 20 Dec 2024 11:28:23 -0500 Subject: [PATCH 101/186] modified jobs\JGLOBAL_ARCHIVE --- jobs/JGLOBAL_ARCHIVE | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/jobs/JGLOBAL_ARCHIVE b/jobs/JGLOBAL_ARCHIVE index 66d57887c1..e094516489 100755 --- a/jobs/JGLOBAL_ARCHIVE +++ b/jobs/JGLOBAL_ARCHIVE @@ -54,7 +54,7 @@ for grid in "0p25" "0p50" "1p00"; do YMD=${PDY} HH=${cyc} GRID=${grid} declare_from_tmpl -rx \ "COMIN_ATMOS_GRIB_${grid}:COM_ATMOS_GRIB_GRID_TMPL" done - +############################################################### # Run archive script ############################################################### From 3df76602e9964373a5e64e3aab224f8307bb7b03 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Fri, 20 Dec 2024 11:35:58 -0500 Subject: [PATCH 102/186] corrected typos --- ush/wave_domain_grid.sh | 2 +- ush/wave_extractvars.sh | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/ush/wave_domain_grid.sh b/ush/wave_domain_grid.sh index c8b53db012..24c60ca5ac 100644 --- a/ush/wave_domain_grid.sh +++ b/ush/wave_domain_grid.sh @@ -37,4 +37,4 @@ process_grdID() { exit 1 ;; esac export grdNAME="${GRDNAME}.${GRDRES}" -} \ No newline at end of file +} diff --git a/ush/wave_extractvars.sh b/ush/wave_extractvars.sh index 64af28e8d2..46c23b85db 100755 --- a/ush/wave_extractvars.sh +++ b/ush/wave_extractvars.sh @@ -21,7 +21,7 @@ process_grdID "${waveGRD}" for (( nh = FHOUT_WAV_EXTRACT; nh <= FHMAX_WAV; nh = nh + FHOUT_WAV_EXTRACT )); do fnh=$(printf "%3.3d" "${nh}") - infile="${COMIN_WAVE_GRID}/${GRDNAME}.${GRDRES}/${RUN}wave.t${cyc}z.global.${wavres}.f${fnh}.grib2" + infile="${COMIN_WAVE_GRID}/${grdNAME}/${RUN}wave.t${cyc}z.global.${wavres}.f${fnh}.grib2" outfile="${subdata}/${RUN}wave.t${cyc}z.global.${wavres}.f${fnh}.grib2" rm -f "${outfile}" # Remove outfile if it already exists before extraction From 5d20aba3ddacac5d85c2b668f87642cd4f092587 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Fri, 20 Dec 2024 12:01:30 -0500 Subject: [PATCH 103/186] modified ush\wave_domain_grid.sh --- ush/wave_domain_grid.sh | 2 ++ 1 file changed, 2 insertions(+) diff --git a/ush/wave_domain_grid.sh b/ush/wave_domain_grid.sh index 24c60ca5ac..076a284f82 100644 --- a/ush/wave_domain_grid.sh +++ b/ush/wave_domain_grid.sh @@ -37,4 +37,6 @@ process_grdID() { exit 1 ;; esac export grdNAME="${GRDNAME}.${GRDRES}" + echo "GRIDNR=${GRIDNR}" + echo "MODNR=${MODNR}" } From f7a7ddaf313abbacef3246682e69d0a68a9bf09a Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Fri, 20 Dec 2024 12:57:25 -0500 Subject: [PATCH 104/186] modified ush\wave_domain_grid.sh --- ush/wave_domain_grid.sh | 58 ++++++++++++++++++++--------------------- 1 file changed, 29 insertions(+), 29 deletions(-) diff --git a/ush/wave_domain_grid.sh b/ush/wave_domain_grid.sh index 076a284f82..0912718695 100644 --- a/ush/wave_domain_grid.sh +++ b/ush/wave_domain_grid.sh @@ -10,33 +10,33 @@ ####################### process_grdID() { - grdID=$1 - case ${grdID} in - glo_10m) GRDNAME='global' ; GRDRES=0p16 ; GRIDNR=255 ; MODNR=11 ;; - glo_15mxt) GRDNAME='global' ; GRDRES=0p25 ; GRIDNR=255 ; MODNR=11 ;; - glo_30mxt) GRDNAME='global' ; GRDRES=0p50 ; GRIDNR=255 ; MODNR=11 ;; - glo_30m) GRDNAME='global' ; GRDRES=0p50 ; GRIDNR=255 ; MODNR=11 ;; - glo_025) GRDNAME='global' ; GRDRES=0p25 ; GRIDNR=255 ; MODNR=11 ;; - glo_100) GRDNAME='global' ; GRDRES=1p00 ; GRIDNR=255 ; MODNR=11 ;; - glo_200) GRDNAME='global' ; GRDRES=2p00 ; GRIDNR=255 ; MODNR=11 ;; - glo_500) GRDNAME='global' ; GRDRES=5p00 ; GRIDNR=255 ; MODNR=11 ;; - at_10m) GRDNAME='atlocn' ; GRDRES=0p16 ; GRIDNR=255 ; MODNR=11 ;; - ep_10m) GRDNAME='epacif' ; GRDRES=0p16 ; GRIDNR=255 ; MODNR=11 ;; - wc_10m) GRDNAME='wcoast' ; GRDRES=0p16 ; GRIDNR=255 ; MODNR=11 ;; - ak_10m) GRDNAME='alaska' ; GRDRES=0p16 ; GRIDNR=255 ; MODNR=11 ;; - aoc_9km) GRDNAME='arctic' ; GRDRES=9km ; GRIDNR=255 ; MODNR=11 ;; - ant_9km) GRDNAME='antarc' ; GRDRES=9km ; GRIDNR=255 ; MODNR=11 ;; - gnh_10m) GRDNAME='global' ; GRDRES=0p16 ; GRIDNR=255 ; MODNR=11 ;; - gsh_15m) GRDNAME='gsouth' ; GRDRES=0p25 ; GRIDNR=255 ; MODNR=11 ;; - ao_20m) GRDNAME='arctic' ; GRDRES=0p33 ; GRIDNR=255 ; MODNR=11 ;; - so_20m) GRDNAME='antarc' ; GRDRES=0p33 ; GRIDNR=255 ; MODNR=11 ;; - reg025) GRDNAME='global' ; GRDRES=0p25 ; GRIDNR=255 ; MODNR=11 ;; - gwes_30m) GRDNAME='global' ; GRDRES=0p50 ; GRIDNR=255 ; MODNR=10 ;; - *) - echo "FATAL ERROR: No grid specific wave config values exist for ${grdID}. Aborting." - exit 1 ;; - esac - export grdNAME="${GRDNAME}.${GRDRES}" - echo "GRIDNR=${GRIDNR}" - echo "MODNR=${MODNR}" + grdID=$1 + case ${grdID} in + glo_10m) GRDNAME='global' ; GRDRES=0p16 ; GRIDNR=255 ; MODNR=11 ;; + glo_15mxt) GRDNAME='global' ; GRDRES=0p25 ; GRIDNR=255 ; MODNR=11 ;; + glo_30mxt) GRDNAME='global' ; GRDRES=0p50 ; GRIDNR=255 ; MODNR=11 ;; + glo_30m) GRDNAME='global' ; GRDRES=0p50 ; GRIDNR=255 ; MODNR=11 ;; + glo_025) GRDNAME='global' ; GRDRES=0p25 ; GRIDNR=255 ; MODNR=11 ;; + glo_100) GRDNAME='global' ; GRDRES=1p00 ; GRIDNR=255 ; MODNR=11 ;; + glo_200) GRDNAME='global' ; GRDRES=2p00 ; GRIDNR=255 ; MODNR=11 ;; + glo_500) GRDNAME='global' ; GRDRES=5p00 ; GRIDNR=255 ; MODNR=11 ;; + at_10m) GRDNAME='atlocn' ; GRDRES=0p16 ; GRIDNR=255 ; MODNR=11 ;; + ep_10m) GRDNAME='epacif' ; GRDRES=0p16 ; GRIDNR=255 ; MODNR=11 ;; + wc_10m) GRDNAME='wcoast' ; GRDRES=0p16 ; GRIDNR=255 ; MODNR=11 ;; + ak_10m) GRDNAME='alaska' ; GRDRES=0p16 ; GRIDNR=255 ; MODNR=11 ;; + aoc_9km) GRDNAME='arctic' ; GRDRES=9km ; GRIDNR=255 ; MODNR=11 ;; + ant_9km) GRDNAME='antarc' ; GRDRES=9km ; GRIDNR=255 ; MODNR=11 ;; + gnh_10m) GRDNAME='global' ; GRDRES=0p16 ; GRIDNR=255 ; MODNR=11 ;; + gsh_15m) GRDNAME='gsouth' ; GRDRES=0p25 ; GRIDNR=255 ; MODNR=11 ;; + ao_20m) GRDNAME='arctic' ; GRDRES=0p33 ; GRIDNR=255 ; MODNR=11 ;; + so_20m) GRDNAME='antarc' ; GRDRES=0p33 ; GRIDNR=255 ; MODNR=11 ;; + reg025) GRDNAME='global' ; GRDRES=0p25 ; GRIDNR=255 ; MODNR=11 ;; + gwes_30m) GRDNAME='global' ; GRDRES=0p50 ; GRIDNR=255 ; MODNR=10 ;; + *) + echo "FATAL ERROR: No grid specific wave config values exist for ${grdID}. Aborting." + exit 1 ;; + esac + export grdNAME="${GRDNAME}.${GRDRES}" + echo "GRIDNR=${GRIDNR}" + echo "MODNR=${MODNR}" } From 52a4233d251a2f8c539a898821c3f74998d4cce4 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Wed, 8 Jan 2025 18:34:39 -0500 Subject: [PATCH 105/186] updated scripts yaml and confid files --- jobs/JGLOBAL_ARCHIVE | 4 +++- parm/archive/gefs_extracted_wave.yaml.j2 | 7 ++++--- parm/archive/gfswave.yaml.j2 | 2 +- parm/config/gfs/config.com | 1 + 4 files changed, 9 insertions(+), 5 deletions(-) diff --git a/jobs/JGLOBAL_ARCHIVE b/jobs/JGLOBAL_ARCHIVE index e094516489..99d95f3d68 100755 --- a/jobs/JGLOBAL_ARCHIVE +++ b/jobs/JGLOBAL_ARCHIVE @@ -48,12 +48,14 @@ YMD=${PDY} HH=${cyc} declare_from_tmpl -rx \ COMIN_ATMOS_RADMON:COM_ATMOS_RADMON_TMPL \ COMIN_ATMOS_MINMON:COM_ATMOS_MINMON_TMPL \ COMIN_CONF:COM_CONF_TMPL \ - COMOUT_ATMOS_TRACK:COM_ATMOS_TRACK_TMPL + COMOUT_ATMOS_TRACK:COM_ATMOS_TRACK_TMPL \ for grid in "0p25" "0p50" "1p00"; do YMD=${PDY} HH=${cyc} GRID=${grid} declare_from_tmpl -rx \ "COMIN_ATMOS_GRIB_${grid}:COM_ATMOS_GRIB_GRID_TMPL" done +YMD=${PDY} HH=${cyc} GRDRESNAME=${grdNAME} declare_from_tmpl -rx \ + "COMIN_WAVE_GRID_RES:COM_WAVE_GRID_RES_TMPL" ############################################################### # Run archive script ############################################################### diff --git a/parm/archive/gefs_extracted_wave.yaml.j2 b/parm/archive/gefs_extracted_wave.yaml.j2 index 402e27f2bf..0c7c6ebd68 100644 --- a/parm/archive/gefs_extracted_wave.yaml.j2 +++ b/parm/archive/gefs_extracted_wave.yaml.j2 @@ -36,12 +36,13 @@ gefs_wave: - "{{ file_path | relpath(ROTDIR)}}" {% endif %} - {% set COMIN_WAVE_GRID = COM_WAVE_GRID_TMPL | replace_tmpl(tmpl_dict) %} + {% do tmpl_dict.update({'${grdNAME}': grdNAME}) %} + {% set COMIN_WAVE_GRID_RES = COM_WAVE_GRID_RES_TMPL | replace_tmpl(tmpl_dict) %} # Select grib2 files to copy to the atardir - {% if path_exists(COMIN_WAVE_GRID) %} + {% if path_exists(COMIN_WAVE_GRID_RES) %} {% for fhr in range(ofst_hr, FHMAX_GFS + FHOUT_WAV, FHOUT_WAV) %} {% set file_name = head ~ grdNAME ~ ".f" ~ '%03d'|format(fhr) ~ ".grib2" %} - {% set file_path = COMIN_WAVE_GRID ~ "/" ~ grdNAME ~ "/" ~ file_name %} + {% set file_path = COMIN_WAVE_GRID_RES ~ "/" ~ file_name %} - "{{ file_path | relpath(ROTDIR)}}" {% endfor %} {% endif %} diff --git a/parm/archive/gfswave.yaml.j2 b/parm/archive/gfswave.yaml.j2 index 83d18e0d21..cbc7b43a96 100644 --- a/parm/archive/gfswave.yaml.j2 +++ b/parm/archive/gfswave.yaml.j2 @@ -4,7 +4,7 @@ gfswave: target: "{{ ATARDIR }}/{{ cycle_YMDH }}/gfswave.tar" required: # Wave GRIB2 regional forecast products - {% set file_path = COMIN_WAVE_GRID ~ "/" ~ grdNAME %} + {% set file_path = COMIN_WAVE_GRID_RES %} {% for fh in range(0, FHMAX_HF_WAV + FHOUT_HF_WAV, FHOUT_HF_WAV) %} # NOTE This is as explicit as possible without major logic to parse wavepostGRD. diff --git a/parm/config/gfs/config.com b/parm/config/gfs/config.com index d949edb33a..8b6da376f3 100644 --- a/parm/config/gfs/config.com +++ b/parm/config/gfs/config.com @@ -74,6 +74,7 @@ declare -rx COM_WAVE_RESTART_TMPL=${COM_BASE}'/model/wave/restart' declare -rx COM_WAVE_PREP_TMPL=${COM_BASE}'/model/wave/prep' declare -rx COM_WAVE_HISTORY_TMPL=${COM_BASE}'/model/wave/history' declare -rx COM_WAVE_GRID_TMPL=${COM_BASE}'/products/wave/gridded' +declare -rx COM_WAVE_GRID_RES_TMPL=${COM_BASE}'/products/wave/gridded/${GRDRESNAME}' declare -rx COM_WAVE_STATION_TMPL=${COM_BASE}'/products/wave/station' declare -rx COM_WAVE_GEMPAK_TMPL=${COM_BASE}'/products/wave/gempak' declare -rx COM_WAVE_WMO_TMPL=${COM_BASE}'/products/wave/wmo' From f4e528e0096ef1ec968ffb68d05dc3f2c3ed5c5b Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Wed, 8 Jan 2025 18:49:26 -0500 Subject: [PATCH 106/186] updated jobs\JGLOBAL_ARCHIVE --- jobs/JGLOBAL_ARCHIVE | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/jobs/JGLOBAL_ARCHIVE b/jobs/JGLOBAL_ARCHIVE index 99d95f3d68..bd02cc59d4 100755 --- a/jobs/JGLOBAL_ARCHIVE +++ b/jobs/JGLOBAL_ARCHIVE @@ -48,7 +48,7 @@ YMD=${PDY} HH=${cyc} declare_from_tmpl -rx \ COMIN_ATMOS_RADMON:COM_ATMOS_RADMON_TMPL \ COMIN_ATMOS_MINMON:COM_ATMOS_MINMON_TMPL \ COMIN_CONF:COM_CONF_TMPL \ - COMOUT_ATMOS_TRACK:COM_ATMOS_TRACK_TMPL \ + COMOUT_ATMOS_TRACK:COM_ATMOS_TRACK_TMPL for grid in "0p25" "0p50" "1p00"; do YMD=${PDY} HH=${cyc} GRID=${grid} declare_from_tmpl -rx \ From eb1610870cd56a8926d4a7eceb54d7c5f4bd1e00 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Wed, 8 Jan 2025 19:01:28 -0500 Subject: [PATCH 107/186] modified scripts\exgfs_wave_post_gridded_sbs.sh --- scripts/exgfs_wave_post_gridded_sbs.sh | 51 ++++++++++++-------------- 1 file changed, 23 insertions(+), 28 deletions(-) diff --git a/scripts/exgfs_wave_post_gridded_sbs.sh b/scripts/exgfs_wave_post_gridded_sbs.sh index b5c69660fb..a9184ac9d5 100755 --- a/scripts/exgfs_wave_post_gridded_sbs.sh +++ b/scripts/exgfs_wave_post_gridded_sbs.sh @@ -218,7 +218,6 @@ source "${USHgfs}/preamble.sh" echo ' Making command file for sbs grib2 and GRID Interpolation ' set_trace fhr=$(( 10#${FHR3} )) - fhrg=$fhr ymdh=$($NDATE $fhr ${PDY}${cyc}) YMD=$(echo $ymdh | cut -c1-8) HMS="$(echo $ymdh | cut -c9-10)0000" @@ -238,36 +237,32 @@ source "${USHgfs}/preamble.sh" export GRDIDATA=${DATA}/output_$YMDHMS # Gridded data (main part, need to be run side-by-side with forecast + gfile="${COMIN_WAVE_HISTORY}/${WAV_MOD_TAG}.out_grd.${waveGRD}.${YMD}.${HMS}" + if [[ ! -s "${gfile}" ]]; then + echo " FATAL ERROR : NO RAW FIELD OUTPUT FILE ${gfile}" + err=3; export err; "${errchk}" + exit "${err}" + fi + ${NLN} "${gfile}" "./out_grd.${waveGRD}" - if [ $fhr = $fhrg ] + if [ "$DOGRI_WAV" = 'YES' ] then - gfile="${COMIN_WAVE_HISTORY}/${WAV_MOD_TAG}.out_grd.${waveGRD}.${YMD}.${HMS}" - if [[ ! -s "${gfile}" ]]; then - echo " FATAL ERROR : NO RAW FIELD OUTPUT FILE ${gfile}" - err=3; export err; "${errchk}" - exit "${err}" + nigrd=1 + for grdID in $waveinterpGRD + do + ymdh_int=$($NDATE -${WAVHINDH} $ymdh); dt_int=3600.; n_int=9999 ; + echo "${USHgfs}/wave_grid_interp_sbs.sh $grdID $ymdh_int $dt_int $n_int > grint_$grdID.out 2>&1" >> ${fcmdigrd}.${nigrd} + if [ "$DOGRB_WAV" = 'YES' ] + then + gribFL=\'$(echo ${OUTPARS_WAV})\' + source "${USHgfs}/wave_domain_grid.sh" + process_grdID "${grdID}" + echo "${USHgfs}/wave_grib2_sbs.sh $grdID $GRIDNR $MODNR $ymdh $fhr $GRDNAME $GRDRES $gribFL > grib_$grdID.out 2>&1" >> ${fcmdigrd}.${nigrd} fi - ${NLN} "${gfile}" "./out_grd.${waveGRD}" - - if [ "$DOGRI_WAV" = 'YES' ] - then - nigrd=1 - for grdID in $waveinterpGRD - do - ymdh_int=$($NDATE -${WAVHINDH} $ymdh); dt_int=3600.; n_int=9999 ; - echo "${USHgfs}/wave_grid_interp_sbs.sh $grdID $ymdh_int $dt_int $n_int > grint_$grdID.out 2>&1" >> ${fcmdigrd}.${nigrd} - if [ "$DOGRB_WAV" = 'YES' ] - then - gribFL=\'$(echo ${OUTPARS_WAV})\' - source "${USHgfs}/wave_domain_grid.sh" - process_grdID "${grdID}" - echo "${USHgfs}/wave_grib2_sbs.sh $grdID $GRIDNR $MODNR $ymdh $fhr $GRDNAME $GRDRES $gribFL > grib_$grdID.out 2>&1" >> ${fcmdigrd}.${nigrd} - fi - echo "${GRIBDATA}/${fcmdigrd}.${nigrd}" >> ${fcmdnow} - chmod 744 ${fcmdigrd}.${nigrd} - nigrd=$((nigrd+1)) - done - fi + echo "${GRIBDATA}/${fcmdigrd}.${nigrd}" >> ${fcmdnow} + chmod 744 ${fcmdigrd}.${nigrd} + nigrd=$((nigrd+1)) + done if [ "$DOGRB_WAV" = 'YES' ] then From dfd20a07dbf534e9046d6c31977a754e34573544 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Wed, 8 Jan 2025 19:03:59 -0500 Subject: [PATCH 108/186] modified scripts\exgfs_wave_post_gridded_sbs.sh --- scripts/exgfs_wave_post_gridded_sbs.sh | 44 ++++++++++++-------------- 1 file changed, 21 insertions(+), 23 deletions(-) diff --git a/scripts/exgfs_wave_post_gridded_sbs.sh b/scripts/exgfs_wave_post_gridded_sbs.sh index a9184ac9d5..82e217557f 100755 --- a/scripts/exgfs_wave_post_gridded_sbs.sh +++ b/scripts/exgfs_wave_post_gridded_sbs.sh @@ -346,31 +346,29 @@ source "${USHgfs}/preamble.sh" cd $DATA - if [ "$fhr" = "$fhrg" ]; then # Check if grib2 file created - ENSTAG="" - if [ ${waveMEMB} ]; then ENSTAG=".${membTAG}${waveMEMB}" ; fi - gribchk="${RUN}wave.${cycle}${ENSTAG}.${GRDNAME}.${GRDRES}.f${FH3}.grib2" - gribchk_idx="${RUN}wave.${cycle}${ENSTAG}.${GRDNAME}.${GRDRES}.f${FH3}.grib2.idx" - if [[ ! -d "${COMOUT_WAVE_GRID}/${GRDNAME}.${GRDRES}" ]]; then - mkdir -m 775 -p "${COMOUT_WAVE_GRID}/${GRDNAME}.${GRDRES}" - fi + ENSTAG="" + if [ ${waveMEMB} ]; then ENSTAG=".${membTAG}${waveMEMB}" ; fi + gribchk="${RUN}wave.${cycle}${ENSTAG}.${GRDNAME}.${GRDRES}.f${FH3}.grib2" + gribchk_idx="${RUN}wave.${cycle}${ENSTAG}.${GRDNAME}.${GRDRES}.f${FH3}.grib2.idx" + if [[ ! -d "${COMOUT_WAVE_GRID}/${GRDNAME}.${GRDRES}" ]]; then + mkdir -m 775 -p "${COMOUT_WAVE_GRID}/${GRDNAME}.${GRDRES}" + fi # move grib2 files to domain.dimension - if [[ -s "${COMOUT_WAVE_GRID}/${gribchk}" && -s "${COMOUT_WAVE_GRID}/${gribchk_idx}" ]]; then - mv -f "${COMOUT_WAVE_GRID}/${gribchk}" "${COMOUT_WAVE_GRID}/${GRDNAME}.${GRDRES}" - mv -f "${COMOUT_WAVE_GRID}/${gribchk_idx}" "${COMOUT_WAVE_GRID}/${GRDNAME}.${GRDRES}" - else - set +x - echo ' ' - echo '********************************************' - echo "*** FATAL ERROR: $gribchk not generated " - echo '********************************************' - echo ' See Details Below ' - echo ' ' - set_trace - err=5; export err;${errchk} - exit "$err" - fi + if [[ -s "${COMOUT_WAVE_GRID}/${gribchk}" && -s "${COMOUT_WAVE_GRID}/${gribchk_idx}" ]]; then + mv -f "${COMOUT_WAVE_GRID}/${gribchk}" "${COMOUT_WAVE_GRID}/${GRDNAME}.${GRDRES}" + mv -f "${COMOUT_WAVE_GRID}/${gribchk_idx}" "${COMOUT_WAVE_GRID}/${GRDNAME}.${GRDRES}" + else + set +x + echo ' ' + echo '********************************************' + echo "*** FATAL ERROR: $gribchk not generated " + echo '********************************************' + echo ' See Details Below ' + echo ' ' + set_trace + err=5; export err;${errchk} + exit "$err" fi # --------------------------------------------------------------------------- # From 1ee7029fe57faf60bbc40375e4b63f752c8a166b Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Wed, 8 Jan 2025 19:26:41 -0500 Subject: [PATCH 109/186] updated scripts\exgfs_wave_post_gridded_sbs.sh --- scripts/exgfs_wave_post_gridded_sbs.sh | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/scripts/exgfs_wave_post_gridded_sbs.sh b/scripts/exgfs_wave_post_gridded_sbs.sh index 82e217557f..9018fb6f61 100755 --- a/scripts/exgfs_wave_post_gridded_sbs.sh +++ b/scripts/exgfs_wave_post_gridded_sbs.sh @@ -349,15 +349,15 @@ source "${USHgfs}/preamble.sh" # Check if grib2 file created ENSTAG="" if [ ${waveMEMB} ]; then ENSTAG=".${membTAG}${waveMEMB}" ; fi - gribchk="${RUN}wave.${cycle}${ENSTAG}.${GRDNAME}.${GRDRES}.f${FH3}.grib2" - gribchk_idx="${RUN}wave.${cycle}${ENSTAG}.${GRDNAME}.${GRDRES}.f${FH3}.grib2.idx" - if [[ ! -d "${COMOUT_WAVE_GRID}/${GRDNAME}.${GRDRES}" ]]; then - mkdir -m 775 -p "${COMOUT_WAVE_GRID}/${GRDNAME}.${GRDRES}" + gribchk="${RUN}wave.${cycle}${ENSTAG}.${grdNAME}.f${FH3}.grib2" + gribchk_idx="${RUN}wave.${cycle}${ENSTAG}.${grdNAME}.f${FH3}.grib2.idx" + if [[ ! -d "${COMOUT_WAVE_GRID}/${grdNAME}" ]]; then + mkdir -m 775 -p "${COMOUT_WAVE_GRID}/${grdNAME}" fi # move grib2 files to domain.dimension if [[ -s "${COMOUT_WAVE_GRID}/${gribchk}" && -s "${COMOUT_WAVE_GRID}/${gribchk_idx}" ]]; then - mv -f "${COMOUT_WAVE_GRID}/${gribchk}" "${COMOUT_WAVE_GRID}/${GRDNAME}.${GRDRES}" - mv -f "${COMOUT_WAVE_GRID}/${gribchk_idx}" "${COMOUT_WAVE_GRID}/${GRDNAME}.${GRDRES}" + mv -f "${COMOUT_WAVE_GRID}/${gribchk}" "${COMOUT_WAVE_GRID}/${grdNAME}" + mv -f "${COMOUT_WAVE_GRID}/${gribchk_idx}" "${COMOUT_WAVE_GRID}/${grdNAME}" else set +x echo ' ' From cb8fceb91885c8ad9ddb4b4816211a5b0309e4b0 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Wed, 8 Jan 2025 20:20:18 -0500 Subject: [PATCH 110/186] modified jobs\JGLOBAL_WAVE_POST_SBS --- jobs/JGLOBAL_WAVE_POST_SBS | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/jobs/JGLOBAL_WAVE_POST_SBS b/jobs/JGLOBAL_WAVE_POST_SBS index 53ac4b2083..d49e87b4fc 100755 --- a/jobs/JGLOBAL_WAVE_POST_SBS +++ b/jobs/JGLOBAL_WAVE_POST_SBS @@ -18,7 +18,8 @@ YMD=${PDY} HH=${cyc} declare_from_tmpl -rx \ for out_dir in "${COMOUT_WAVE_PREP}" "${COMOUT_WAVE_GRID}"; do if [[ ! -d "${out_dir}" ]]; then mkdir -p "${out_dir}"; fi done - +YMD=${PDY} HH=${cyc} GRDRESNAME=${grdNAME} declare_from_tmpl -rx \ + "COMOUT_WAVE_GRID_RES:COM_WAVE_GRID_RES_TMPL" # Set wave model ID tag to include member number # if ensemble; waveMEMB var empty in deterministic From a60142339bcf2e46f92810223bac6149332d952f Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Wed, 8 Jan 2025 20:27:50 -0500 Subject: [PATCH 111/186] update COMOUT_WAVE_GRID_RES --- scripts/exgfs_wave_post_gridded_sbs.sh | 37 +++++++++++--------------- ush/wave_grib2_sbs.sh | 28 +++++++++---------- 2 files changed, 29 insertions(+), 36 deletions(-) diff --git a/scripts/exgfs_wave_post_gridded_sbs.sh b/scripts/exgfs_wave_post_gridded_sbs.sh index 9018fb6f61..f537439d20 100755 --- a/scripts/exgfs_wave_post_gridded_sbs.sh +++ b/scripts/exgfs_wave_post_gridded_sbs.sh @@ -347,28 +347,21 @@ source "${USHgfs}/preamble.sh" cd $DATA # Check if grib2 file created - ENSTAG="" - if [ ${waveMEMB} ]; then ENSTAG=".${membTAG}${waveMEMB}" ; fi - gribchk="${RUN}wave.${cycle}${ENSTAG}.${grdNAME}.f${FH3}.grib2" - gribchk_idx="${RUN}wave.${cycle}${ENSTAG}.${grdNAME}.f${FH3}.grib2.idx" - if [[ ! -d "${COMOUT_WAVE_GRID}/${grdNAME}" ]]; then - mkdir -m 775 -p "${COMOUT_WAVE_GRID}/${grdNAME}" - fi -# move grib2 files to domain.dimension - if [[ -s "${COMOUT_WAVE_GRID}/${gribchk}" && -s "${COMOUT_WAVE_GRID}/${gribchk_idx}" ]]; then - mv -f "${COMOUT_WAVE_GRID}/${gribchk}" "${COMOUT_WAVE_GRID}/${grdNAME}" - mv -f "${COMOUT_WAVE_GRID}/${gribchk_idx}" "${COMOUT_WAVE_GRID}/${grdNAME}" - else - set +x - echo ' ' - echo '********************************************' - echo "*** FATAL ERROR: $gribchk not generated " - echo '********************************************' - echo ' See Details Below ' - echo ' ' - set_trace - err=5; export err;${errchk} - exit "$err" + ENSTAG="" + if [ ${waveMEMB} ]; then ENSTAG=".${membTAG}${waveMEMB}" ; fi + gribchk="${RUN}wave.${cycle}${ENSTAG}.${grdNAME}.f${FH3}.grib2" + if [ ! -s ${COMOUT_WAVE_GRID_RES}/${gribchk} ]; then + set +x + echo ' ' + echo '********************************************' + echo "*** FATAL ERROR: $gribchk not generated " + echo '********************************************' + echo ' See Details Below ' + echo ' ' + set_trace + err=5; export err;${errchk} + exit "$err" + fi fi # --------------------------------------------------------------------------- # diff --git a/ush/wave_grib2_sbs.sh b/ush/wave_grib2_sbs.sh index 22eb361a0d..57acb884e5 100755 --- a/ush/wave_grib2_sbs.sh +++ b/ush/wave_grib2_sbs.sh @@ -72,7 +72,7 @@ if [[ -n ${waveMEMB} ]]; then ENSTAG=".${membTAG}${waveMEMB}" ; fi outfile="${WAV_MOD_TAG}.${cycle}${ENSTAG}.${grdnam}.${grdres}.f${FH3}.grib2" # Only create file if not present in COM -if [[ ! -s "${COMOUT_WAVE_GRID}/${outfile}.idx" ]]; then +if [[ ! -s "${COMOUT_WAVE_GRID_RES}/${outfile}.idx" ]]; then set +x echo ' ' @@ -83,7 +83,7 @@ if [[ ! -s "${COMOUT_WAVE_GRID}/${outfile}.idx" ]]; then set_trace if [[ -z "${PDY}" ]] || [[ -z ${cyc} ]] || [[ -z "${cycle}" ]] || [[ -z "${EXECgfs}" ]] || \ - [[ -z "${COMOUT_WAVE_GRID}" ]] || [[ -z "${WAV_MOD_TAG}" ]] || [[ -z "${gribflags}" ]] || \ + [[ -z "${COMOUT_WAVE_GRID_RES}" ]] || [[ -z "${WAV_MOD_TAG}" ]] || [[ -z "${gribflags}" ]] || \ [[ -z "${GRIDNR}" ]] || [[ -z "${MODNR}" ]] || \ [[ -z "${SENDDBN}" ]]; then set +x @@ -158,11 +158,11 @@ if [[ ! -s "${COMOUT_WAVE_GRID}/${outfile}.idx" ]]; then fi if (( fhr > 0 )); then - ${WGRIB2} gribfile -set_date "${PDY}${cyc}" -set_ftime "${fhr} hour fcst" -grib "${COMOUT_WAVE_GRID}/${outfile}" + ${WGRIB2} gribfile -set_date "${PDY}${cyc}" -set_ftime "${fhr} hour fcst" -grib "${COMOUT_WAVE_GRID_RES}/${outfile}" err=$? else ${WGRIB2} gribfile -set_date "${PDY}${cyc}" -set_ftime "${fhr} hour fcst" \ - -set table_1.4 1 -set table_1.2 1 -grib "${COMOUT_WAVE_GRID}/${outfile}" + -set table_1.4 1 -set table_1.2 1 -grib "${COMOUT_WAVE_GRID_RES}/${outfile}" err=$? fi @@ -178,7 +178,7 @@ if [[ ! -s "${COMOUT_WAVE_GRID}/${outfile}.idx" ]]; then fi # Create index - ${WGRIB2} -s "${COMOUT_WAVE_GRID}/${outfile}" > "${COMOUT_WAVE_GRID}/${outfile}.idx" + ${WGRIB2} -s "${COMOUT_WAVE_GRID_RES}/${outfile}" > "${COMOUT_WAVE_GRID_RES}/${outfile}.idx" # Create grib2 subgrid is this is the source grid if [[ "${grdID}" = "${WAV_SUBGRBSRC}" ]]; then @@ -187,14 +187,14 @@ if [[ ! -s "${COMOUT_WAVE_GRID}/${outfile}.idx" ]]; then subgrbnam=$(echo ${!subgrb} | cut -d " " -f 21) subgrbres=$(echo ${!subgrb} | cut -d " " -f 22) subfnam="${WAV_MOD_TAG}.${cycle}${ENSTAG}.${subgrbnam}.${subgrbres}.f${FH3}.grib2" - ${COPYGB2} -g "${subgrbref}" -i0 -x "${COMOUT_WAVE_GRID}/${outfile}" "${COMOUT_WAVE_GRID}/${subfnam}" - ${WGRIB2} -s "${COMOUT_WAVE_GRID}/${subfnam}" > "${COMOUT_WAVE_GRID}/${subfnam}.idx" + ${COPYGB2} -g "${subgrbref}" -i0 -x "${COMOUT_WAVE_GRID_RES}/${outfile}" "${COMOUT_WAVE_GRID_RES}/${subfnam}" + ${WGRIB2} -s "${COMOUT_WAVE_GRID_RES}/${subfnam}" > "${COMOUT_WAVE_GRID_RES}/${subfnam}.idx" done fi # 1.e Save in /com - if [[ ! -s "${COMOUT_WAVE_GRID}/${outfile}" ]]; then + if [[ ! -s "${COMOUT_WAVE_GRID_RES}/${outfile}" ]]; then set +x echo ' ' echo '********************************************* ' @@ -206,7 +206,7 @@ if [[ ! -s "${COMOUT_WAVE_GRID}/${outfile}.idx" ]]; then set_trace exit 4 fi - if [[ ! -s "${COMOUT_WAVE_GRID}/${outfile}.idx" ]]; then + if [[ ! -s "${COMOUT_WAVE_GRID_RES}/${outfile}.idx" ]]; then set +x echo ' ' echo '*************************************************** ' @@ -221,11 +221,11 @@ if [[ ! -s "${COMOUT_WAVE_GRID}/${outfile}.idx" ]]; then if [[ "${SENDDBN}" = 'YES' ]] && [[ ${outfile} != *global.0p50* ]]; then set +x - echo " Alerting GRIB file as ${COMOUT_WAVE_GRID}/${outfile}" - echo " Alerting GRIB index file as ${COMOUT_WAVE_GRID}/${outfile}.idx" + echo " Alerting GRIB file as ${COMOUT_WAVE_GRID_RES}/${outfile}" + echo " Alerting GRIB index file as ${COMOUT_WAVE_GRID_RES}/${outfile}.idx" set_trace - "${DBNROOT}/bin/dbn_alert" MODEL "${alertName}_WAVE_GB2" "${job}" "${COMOUT_WAVE_GRID}/${outfile}" - "${DBNROOT}/bin/dbn_alert" MODEL "${alertName}_WAVE_GB2_WIDX" "${job}" "${COMOUT_WAVE_GRID}/${outfile}.idx" + "${DBNROOT}/bin/dbn_alert" MODEL "${alertName}_WAVE_GB2" "${job}" "${COMOUT_WAVE_GRID_RES}/${outfile}" + "${DBNROOT}/bin/dbn_alert" MODEL "${alertName}_WAVE_GB2_WIDX" "${job}" "${COMOUT_WAVE_GRID_RES}/${outfile}.idx" else echo "${outfile} is global.0p50 or SENDDBN is NO, no alert sent" fi @@ -246,7 +246,7 @@ if [[ ! -s "${COMOUT_WAVE_GRID}/${outfile}.idx" ]]; then else set +x echo ' ' - echo " File ${COMOUT_WAVE_GRID}/${outfile} found, skipping generation process" + echo " File ${COMOUT_WAVE_GRID_RES}/${outfile} found, skipping generation process" echo ' ' set_trace fi From e3373d22635057492771fade97279785efa75960 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Wed, 8 Jan 2025 20:48:20 -0500 Subject: [PATCH 112/186] added COMOUT var --- jobs/JGLOBAL_ARCHIVE | 15 +++++++-------- jobs/JGLOBAL_WAVE_POST_SBS | 8 ++++++-- 2 files changed, 13 insertions(+), 10 deletions(-) diff --git a/jobs/JGLOBAL_ARCHIVE b/jobs/JGLOBAL_ARCHIVE index bd02cc59d4..6894e55f00 100755 --- a/jobs/JGLOBAL_ARCHIVE +++ b/jobs/JGLOBAL_ARCHIVE @@ -3,12 +3,6 @@ source "${HOMEgfs}/ush/preamble.sh" source "${HOMEgfs}/ush/jjob_header.sh" -e "arch" -c "base arch" -############################################################### -#select the correct domain.grid for gridded data -source "${USHgfs}/wave_domain_grid.sh" -process_grdID "${waveGRD}" -############################################################### - ############################################## # Set variables used in the script ############################################## @@ -54,8 +48,13 @@ for grid in "0p25" "0p50" "1p00"; do YMD=${PDY} HH=${cyc} GRID=${grid} declare_from_tmpl -rx \ "COMIN_ATMOS_GRIB_${grid}:COM_ATMOS_GRIB_GRID_TMPL" done -YMD=${PDY} HH=${cyc} GRDRESNAME=${grdNAME} declare_from_tmpl -rx \ - "COMIN_WAVE_GRID_RES:COM_WAVE_GRID_RES_TMPL" + +for grdID in ${wavepostGRD} ${waveinterpGRD}; do + source "${USHgfs}/wave_domain_grid.sh" + process_grdID "${grdID}" + YMD=${PDY} HH=${cyc} GRDRESNAME=${grdNAME} declare_from_tmpl -rx \ + "COMIN_WAVE_GRID_${GRDNAME}_${GRDRES}:COM_WAVE_GRID_RES_TMPL" +done ############################################################### # Run archive script ############################################################### diff --git a/jobs/JGLOBAL_WAVE_POST_SBS b/jobs/JGLOBAL_WAVE_POST_SBS index d49e87b4fc..351ae7cb2c 100755 --- a/jobs/JGLOBAL_WAVE_POST_SBS +++ b/jobs/JGLOBAL_WAVE_POST_SBS @@ -18,9 +18,13 @@ YMD=${PDY} HH=${cyc} declare_from_tmpl -rx \ for out_dir in "${COMOUT_WAVE_PREP}" "${COMOUT_WAVE_GRID}"; do if [[ ! -d "${out_dir}" ]]; then mkdir -p "${out_dir}"; fi done -YMD=${PDY} HH=${cyc} GRDRESNAME=${grdNAME} declare_from_tmpl -rx \ - "COMOUT_WAVE_GRID_RES:COM_WAVE_GRID_RES_TMPL" +for grdID in ${wavepostGRD} ${waveinterpGRD}; do + source "${USHgfs}/wave_domain_grid.sh" + process_grdID "${grdID}" + YMD=${PDY} HH=${cyc} GRDRESNAME=${grdNAME} declare_from_tmpl -rx \ + "COMOUT_WAVE_GRID_${GRDNAME}_${GRDRES}:COM_WAVE_GRID_RES_TMPL" +done # Set wave model ID tag to include member number # if ensemble; waveMEMB var empty in deterministic # Set wave model ID tag to include member number From 0c187798dc069ac1dd1fe776bf7a24433873a94b Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Wed, 8 Jan 2025 22:11:12 -0500 Subject: [PATCH 113/186] modified ush\wave_grib2_sbs.sh --- ush/wave_grib2_sbs.sh | 30 ++++++++++++++++-------------- 1 file changed, 16 insertions(+), 14 deletions(-) diff --git a/ush/wave_grib2_sbs.sh b/ush/wave_grib2_sbs.sh index 57acb884e5..62f1d7d9a7 100755 --- a/ush/wave_grib2_sbs.sh +++ b/ush/wave_grib2_sbs.sh @@ -71,8 +71,10 @@ ENSTAG="" if [[ -n ${waveMEMB} ]]; then ENSTAG=".${membTAG}${waveMEMB}" ; fi outfile="${WAV_MOD_TAG}.${cycle}${ENSTAG}.${grdnam}.${grdres}.f${FH3}.grib2" +#create the COM directory var +com_dir="COM_WAVE_GRID_${grdnam}_${grdres}" # Only create file if not present in COM -if [[ ! -s "${COMOUT_WAVE_GRID_RES}/${outfile}.idx" ]]; then +if [[ ! -s "${!com_dir}/${outfile}.idx" ]]; then set +x echo ' ' @@ -83,7 +85,7 @@ if [[ ! -s "${COMOUT_WAVE_GRID_RES}/${outfile}.idx" ]]; then set_trace if [[ -z "${PDY}" ]] || [[ -z ${cyc} ]] || [[ -z "${cycle}" ]] || [[ -z "${EXECgfs}" ]] || \ - [[ -z "${COMOUT_WAVE_GRID_RES}" ]] || [[ -z "${WAV_MOD_TAG}" ]] || [[ -z "${gribflags}" ]] || \ + [[ -z "${!com_dir}" ]] || [[ -z "${WAV_MOD_TAG}" ]] || [[ -z "${gribflags}" ]] || \ [[ -z "${GRIDNR}" ]] || [[ -z "${MODNR}" ]] || \ [[ -z "${SENDDBN}" ]]; then set +x @@ -158,11 +160,11 @@ if [[ ! -s "${COMOUT_WAVE_GRID_RES}/${outfile}.idx" ]]; then fi if (( fhr > 0 )); then - ${WGRIB2} gribfile -set_date "${PDY}${cyc}" -set_ftime "${fhr} hour fcst" -grib "${COMOUT_WAVE_GRID_RES}/${outfile}" + ${WGRIB2} gribfile -set_date "${PDY}${cyc}" -set_ftime "${fhr} hour fcst" -grib "${!com_dir}/${outfile}" err=$? else ${WGRIB2} gribfile -set_date "${PDY}${cyc}" -set_ftime "${fhr} hour fcst" \ - -set table_1.4 1 -set table_1.2 1 -grib "${COMOUT_WAVE_GRID_RES}/${outfile}" + -set table_1.4 1 -set table_1.2 1 -grib "${!com_dir}/${outfile}" err=$? fi @@ -178,7 +180,7 @@ if [[ ! -s "${COMOUT_WAVE_GRID_RES}/${outfile}.idx" ]]; then fi # Create index - ${WGRIB2} -s "${COMOUT_WAVE_GRID_RES}/${outfile}" > "${COMOUT_WAVE_GRID_RES}/${outfile}.idx" + ${WGRIB2} -s "${!com_dir}/${outfile}" > "${!com_dir}/${outfile}.idx" # Create grib2 subgrid is this is the source grid if [[ "${grdID}" = "${WAV_SUBGRBSRC}" ]]; then @@ -187,14 +189,14 @@ if [[ ! -s "${COMOUT_WAVE_GRID_RES}/${outfile}.idx" ]]; then subgrbnam=$(echo ${!subgrb} | cut -d " " -f 21) subgrbres=$(echo ${!subgrb} | cut -d " " -f 22) subfnam="${WAV_MOD_TAG}.${cycle}${ENSTAG}.${subgrbnam}.${subgrbres}.f${FH3}.grib2" - ${COPYGB2} -g "${subgrbref}" -i0 -x "${COMOUT_WAVE_GRID_RES}/${outfile}" "${COMOUT_WAVE_GRID_RES}/${subfnam}" - ${WGRIB2} -s "${COMOUT_WAVE_GRID_RES}/${subfnam}" > "${COMOUT_WAVE_GRID_RES}/${subfnam}.idx" + ${COPYGB2} -g "${subgrbref}" -i0 -x "${!com_dir}/${outfile}" "${!com_dir}/${subfnam}" + ${WGRIB2} -s "${!com_dir}/${subfnam}" > "${!com_dir}/${subfnam}.idx" done fi # 1.e Save in /com - if [[ ! -s "${COMOUT_WAVE_GRID_RES}/${outfile}" ]]; then + if [[ ! -s "${!com_dir}/${outfile}" ]]; then set +x echo ' ' echo '********************************************* ' @@ -206,7 +208,7 @@ if [[ ! -s "${COMOUT_WAVE_GRID_RES}/${outfile}.idx" ]]; then set_trace exit 4 fi - if [[ ! -s "${COMOUT_WAVE_GRID_RES}/${outfile}.idx" ]]; then + if [[ ! -s "${!com_dir}/${outfile}.idx" ]]; then set +x echo ' ' echo '*************************************************** ' @@ -221,11 +223,11 @@ if [[ ! -s "${COMOUT_WAVE_GRID_RES}/${outfile}.idx" ]]; then if [[ "${SENDDBN}" = 'YES' ]] && [[ ${outfile} != *global.0p50* ]]; then set +x - echo " Alerting GRIB file as ${COMOUT_WAVE_GRID_RES}/${outfile}" - echo " Alerting GRIB index file as ${COMOUT_WAVE_GRID_RES}/${outfile}.idx" + echo " Alerting GRIB file as ${!com_dir}/${outfile}" + echo " Alerting GRIB index file as ${!com_dir}/${outfile}.idx" set_trace - "${DBNROOT}/bin/dbn_alert" MODEL "${alertName}_WAVE_GB2" "${job}" "${COMOUT_WAVE_GRID_RES}/${outfile}" - "${DBNROOT}/bin/dbn_alert" MODEL "${alertName}_WAVE_GB2_WIDX" "${job}" "${COMOUT_WAVE_GRID_RES}/${outfile}.idx" + "${DBNROOT}/bin/dbn_alert" MODEL "${alertName}_WAVE_GB2" "${job}" "${!com_dir}/${outfile}" + "${DBNROOT}/bin/dbn_alert" MODEL "${alertName}_WAVE_GB2_WIDX" "${job}" "${!com_dir}/${outfile}.idx" else echo "${outfile} is global.0p50 or SENDDBN is NO, no alert sent" fi @@ -246,7 +248,7 @@ if [[ ! -s "${COMOUT_WAVE_GRID_RES}/${outfile}.idx" ]]; then else set +x echo ' ' - echo " File ${COMOUT_WAVE_GRID_RES}/${outfile} found, skipping generation process" + echo " File ${!com_dir}/${outfile} found, skipping generation process" echo ' ' set_trace fi From 046ef814e8a058cd2db27b79e65aff9e63733dc7 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Wed, 8 Jan 2025 22:21:51 -0500 Subject: [PATCH 114/186] update scripts\exgfs_wave_post_gridded_sbs.sh --- scripts/exgfs_wave_post_gridded_sbs.sh | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/scripts/exgfs_wave_post_gridded_sbs.sh b/scripts/exgfs_wave_post_gridded_sbs.sh index f537439d20..94d28f9ca3 100755 --- a/scripts/exgfs_wave_post_gridded_sbs.sh +++ b/scripts/exgfs_wave_post_gridded_sbs.sh @@ -348,9 +348,10 @@ source "${USHgfs}/preamble.sh" # Check if grib2 file created ENSTAG="" + com_dir="COM_WAVE_GRID_${GRDNAME}_${GRDRES}" if [ ${waveMEMB} ]; then ENSTAG=".${membTAG}${waveMEMB}" ; fi - gribchk="${RUN}wave.${cycle}${ENSTAG}.${grdNAME}.f${FH3}.grib2" - if [ ! -s ${COMOUT_WAVE_GRID_RES}/${gribchk} ]; then + gribchk="${RUN}wave.${cycle}${ENSTAG}.${GRDNAME}.${GRDRES}.f${FH3}.grib2" + if [ ! -s ${!com_dir}/${gribchk} ]; then set +x echo ' ' echo '********************************************' From d00697328ca564225c52442a704802347d49bb57 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Wed, 8 Jan 2025 22:28:59 -0500 Subject: [PATCH 115/186] updated ush\wave_extractvars.sh --- ush/wave_extractvars.sh | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/ush/wave_extractvars.sh b/ush/wave_extractvars.sh index 46c23b85db..5fcc974415 100755 --- a/ush/wave_extractvars.sh +++ b/ush/wave_extractvars.sh @@ -15,13 +15,14 @@ subdata=${1} source "${USHgfs}/wave_domain_grid.sh" process_grdID "${waveGRD}" +com_dir="COM_WAVE_GRID_${GRDNAME}_${GRDRES}" [[ -d "${subdata}" ]] || mkdir -p "${subdata}" for (( nh = FHOUT_WAV_EXTRACT; nh <= FHMAX_WAV; nh = nh + FHOUT_WAV_EXTRACT )); do fnh=$(printf "%3.3d" "${nh}") - infile="${COMIN_WAVE_GRID}/${grdNAME}/${RUN}wave.t${cyc}z.global.${wavres}.f${fnh}.grib2" + infile="${!com_dir}/${RUN}wave.t${cyc}z.global.${wavres}.f${fnh}.grib2" outfile="${subdata}/${RUN}wave.t${cyc}z.global.${wavres}.f${fnh}.grib2" rm -f "${outfile}" # Remove outfile if it already exists before extraction From 6706340811cf0b494202a658098d452a94deffa7 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Wed, 8 Jan 2025 23:02:42 -0500 Subject: [PATCH 116/186] added com path --- parm/archive/gefs_extracted_wave.yaml.j2 | 7 +++---- parm/archive/gfswave.yaml.j2 | 2 +- 2 files changed, 4 insertions(+), 5 deletions(-) diff --git a/parm/archive/gefs_extracted_wave.yaml.j2 b/parm/archive/gefs_extracted_wave.yaml.j2 index 0c7c6ebd68..dbba7ec440 100644 --- a/parm/archive/gefs_extracted_wave.yaml.j2 +++ b/parm/archive/gefs_extracted_wave.yaml.j2 @@ -36,13 +36,12 @@ gefs_wave: - "{{ file_path | relpath(ROTDIR)}}" {% endif %} - {% do tmpl_dict.update({'${grdNAME}': grdNAME}) %} - {% set COMIN_WAVE_GRID_RES = COM_WAVE_GRID_RES_TMPL | replace_tmpl(tmpl_dict) %} + {% set COMIN_WAVE_GRID = COM_WAVE_GRID_RES_TMPL | replace_tmpl(tmpl_dict) %} # Select grib2 files to copy to the atardir - {% if path_exists(COMIN_WAVE_GRID_RES) %} + {% if path_exists(COMIN_WAVE_GRID ~ "/" ~ grdNAME) %} {% for fhr in range(ofst_hr, FHMAX_GFS + FHOUT_WAV, FHOUT_WAV) %} {% set file_name = head ~ grdNAME ~ ".f" ~ '%03d'|format(fhr) ~ ".grib2" %} - {% set file_path = COMIN_WAVE_GRID_RES ~ "/" ~ file_name %} + {% set file_path = COMIN_WAVE_GRID ~ "/" ~ grdNAME ~ "/" ~ file_name %} - "{{ file_path | relpath(ROTDIR)}}" {% endfor %} {% endif %} diff --git a/parm/archive/gfswave.yaml.j2 b/parm/archive/gfswave.yaml.j2 index cbc7b43a96..83d18e0d21 100644 --- a/parm/archive/gfswave.yaml.j2 +++ b/parm/archive/gfswave.yaml.j2 @@ -4,7 +4,7 @@ gfswave: target: "{{ ATARDIR }}/{{ cycle_YMDH }}/gfswave.tar" required: # Wave GRIB2 regional forecast products - {% set file_path = COMIN_WAVE_GRID_RES %} + {% set file_path = COMIN_WAVE_GRID ~ "/" ~ grdNAME %} {% for fh in range(0, FHMAX_HF_WAV + FHOUT_HF_WAV, FHOUT_HF_WAV) %} # NOTE This is as explicit as possible without major logic to parse wavepostGRD. From 59e32f905b4a6d907564bf5c9a29afb95e2706fc Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Wed, 8 Jan 2025 23:10:57 -0500 Subject: [PATCH 117/186] modified scripts\exgfs_wave_prdgen_gridded.sh --- scripts/exgfs_wave_prdgen_gridded.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/exgfs_wave_prdgen_gridded.sh b/scripts/exgfs_wave_prdgen_gridded.sh index 960b27b552..7c010c3337 100755 --- a/scripts/exgfs_wave_prdgen_gridded.sh +++ b/scripts/exgfs_wave_prdgen_gridded.sh @@ -100,7 +100,7 @@ grids=${grids:-ak_10m at_10m ep_10m wc_10m glo_30m} esac # - GRIBIN="${COM_WAVE_GRID}/${grdID}/${RUNwave}.${cycle}.${grdID}.f${fhr}.grib2" + GRIBIN="${COMIN_WAVE_GRID}/${grdID}/${RUNwave}.${cycle}.${grdID}.f${fhr}.grib2" GRIBIN_chk="${GRIBIN}.idx" sleep_interval=5 max_tries=1000 From 2d25467689888ee6c0cc165b469e765d35e6ad4c Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Thu, 9 Jan 2025 01:06:59 -0500 Subject: [PATCH 118/186] modified scripts\exgfs_wave_post_gridded_sbs.sh --- scripts/exgfs_wave_post_gridded_sbs.sh | 2 ++ 1 file changed, 2 insertions(+) diff --git a/scripts/exgfs_wave_post_gridded_sbs.sh b/scripts/exgfs_wave_post_gridded_sbs.sh index 94d28f9ca3..5c846f6c15 100755 --- a/scripts/exgfs_wave_post_gridded_sbs.sh +++ b/scripts/exgfs_wave_post_gridded_sbs.sh @@ -348,6 +348,8 @@ source "${USHgfs}/preamble.sh" # Check if grib2 file created ENSTAG="" + source "${USHgfs}/wave_domain_grid.sh" + process_grdID "${grdID}" com_dir="COM_WAVE_GRID_${GRDNAME}_${GRDRES}" if [ ${waveMEMB} ]; then ENSTAG=".${membTAG}${waveMEMB}" ; fi gribchk="${RUN}wave.${cycle}${ENSTAG}.${GRDNAME}.${GRDRES}.f${FH3}.grib2" From bd345cb631d9c760ba875f9634aac2a834a71cee Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Thu, 9 Jan 2025 01:13:57 -0500 Subject: [PATCH 119/186] modified scripts\exgfs_wave_post_gridded_sbs.sh --- scripts/exgfs_wave_post_gridded_sbs.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/exgfs_wave_post_gridded_sbs.sh b/scripts/exgfs_wave_post_gridded_sbs.sh index 5c846f6c15..fa22cdbecf 100755 --- a/scripts/exgfs_wave_post_gridded_sbs.sh +++ b/scripts/exgfs_wave_post_gridded_sbs.sh @@ -350,7 +350,7 @@ source "${USHgfs}/preamble.sh" ENSTAG="" source "${USHgfs}/wave_domain_grid.sh" process_grdID "${grdID}" - com_dir="COM_WAVE_GRID_${GRDNAME}_${GRDRES}" + com_dir="COMOUT_WAVE_GRID_${GRDNAME}_${GRDRES}" if [ ${waveMEMB} ]; then ENSTAG=".${membTAG}${waveMEMB}" ; fi gribchk="${RUN}wave.${cycle}${ENSTAG}.${GRDNAME}.${GRDRES}.f${FH3}.grib2" if [ ! -s ${!com_dir}/${gribchk} ]; then From b8a03adeb222f5d5044b09b19aaf7e80058a54ae Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Thu, 9 Jan 2025 01:40:11 -0500 Subject: [PATCH 120/186] modified scripts\exgfs_wave_post_gridded_sbs.sh --- scripts/exgfs_wave_post_gridded_sbs.sh | 21 ++++++++++----------- 1 file changed, 10 insertions(+), 11 deletions(-) diff --git a/scripts/exgfs_wave_post_gridded_sbs.sh b/scripts/exgfs_wave_post_gridded_sbs.sh index fa22cdbecf..f2fe8027bb 100755 --- a/scripts/exgfs_wave_post_gridded_sbs.sh +++ b/scripts/exgfs_wave_post_gridded_sbs.sh @@ -263,18 +263,17 @@ source "${USHgfs}/preamble.sh" chmod 744 ${fcmdigrd}.${nigrd} nigrd=$((nigrd+1)) done + fi - if [ "$DOGRB_WAV" = 'YES' ] - then - for grdID in ${wavepostGRD} # First concatenate grib files for sbs grids - do - gribFL=\'$(echo ${OUTPARS_WAV})\' - source "${USHgfs}/wave_domain_grid.sh" - process_grdID "${grdID}" - echo "${USHgfs}/wave_grib2_sbs.sh $grdID $GRIDNR $MODNR $ymdh $fhr $GRDNAME $GRDRES $gribFL > grib_$grdID.out 2>&1" >> ${fcmdnow} - done - fi - + if [ "$DOGRB_WAV" = 'YES' ] + then + for grdID in ${wavepostGRD} # First concatenate grib files for sbs grids + do + gribFL=\'$(echo ${OUTPARS_WAV})\' + source "${USHgfs}/wave_domain_grid.sh" + process_grdID "${grdID}" + echo "${USHgfs}/wave_grib2_sbs.sh $grdID $GRIDNR $MODNR $ymdh $fhr $GRDNAME $GRDRES $gribFL > grib_$grdID.out 2>&1" >> ${fcmdnow} + done fi if [ ${CFP_MP:-"NO"} = "YES" ]; then From 060312296613cc9bb25a4ffead39e80c95515b52 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Thu, 9 Jan 2025 01:52:43 -0500 Subject: [PATCH 121/186] added COMOUT --- ush/wave_grib2_sbs.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ush/wave_grib2_sbs.sh b/ush/wave_grib2_sbs.sh index 62f1d7d9a7..fe56f07e63 100755 --- a/ush/wave_grib2_sbs.sh +++ b/ush/wave_grib2_sbs.sh @@ -72,7 +72,7 @@ if [[ -n ${waveMEMB} ]]; then ENSTAG=".${membTAG}${waveMEMB}" ; fi outfile="${WAV_MOD_TAG}.${cycle}${ENSTAG}.${grdnam}.${grdres}.f${FH3}.grib2" #create the COM directory var -com_dir="COM_WAVE_GRID_${grdnam}_${grdres}" +com_dir="COMOUT_WAVE_GRID_${grdnam}_${grdres}" # Only create file if not present in COM if [[ ! -s "${!com_dir}/${outfile}.idx" ]]; then From 521ff5175550e6197d0ec6d02428d3280a58dc8c Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Thu, 9 Jan 2025 01:53:30 -0500 Subject: [PATCH 122/186] modified com var --- scripts/exgfs_wave_post_gridded_sbs.sh | 2 -- 1 file changed, 2 deletions(-) diff --git a/scripts/exgfs_wave_post_gridded_sbs.sh b/scripts/exgfs_wave_post_gridded_sbs.sh index f2fe8027bb..81b4c4827e 100755 --- a/scripts/exgfs_wave_post_gridded_sbs.sh +++ b/scripts/exgfs_wave_post_gridded_sbs.sh @@ -347,8 +347,6 @@ source "${USHgfs}/preamble.sh" # Check if grib2 file created ENSTAG="" - source "${USHgfs}/wave_domain_grid.sh" - process_grdID "${grdID}" com_dir="COMOUT_WAVE_GRID_${GRDNAME}_${GRDRES}" if [ ${waveMEMB} ]; then ENSTAG=".${membTAG}${waveMEMB}" ; fi gribchk="${RUN}wave.${cycle}${ENSTAG}.${GRDNAME}.${GRDRES}.f${FH3}.grib2" From d17860da8feaaf49c836a803a94f68e1ff2901e6 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Thu, 9 Jan 2025 02:13:56 -0500 Subject: [PATCH 123/186] modified scripts\exgfs_wave_post_gridded_sbs.sh --- scripts/exgfs_wave_post_gridded_sbs.sh | 1 + 1 file changed, 1 insertion(+) diff --git a/scripts/exgfs_wave_post_gridded_sbs.sh b/scripts/exgfs_wave_post_gridded_sbs.sh index 81b4c4827e..317ba789bb 100755 --- a/scripts/exgfs_wave_post_gridded_sbs.sh +++ b/scripts/exgfs_wave_post_gridded_sbs.sh @@ -258,6 +258,7 @@ source "${USHgfs}/preamble.sh" source "${USHgfs}/wave_domain_grid.sh" process_grdID "${grdID}" echo "${USHgfs}/wave_grib2_sbs.sh $grdID $GRIDNR $MODNR $ymdh $fhr $GRDNAME $GRDRES $gribFL > grib_$grdID.out 2>&1" >> ${fcmdigrd}.${nigrd} + cp grib_$grdID.out /scratch1/NCEPDEV/global/Anton.Fernando/RUNTESTS/grib_$grdID.out fi echo "${GRIBDATA}/${fcmdigrd}.${nigrd}" >> ${fcmdnow} chmod 744 ${fcmdigrd}.${nigrd} From 82eb2633cc2715da073cd68039d4eb9fc3aee457 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Thu, 9 Jan 2025 02:19:26 -0500 Subject: [PATCH 124/186] modified scripts\exgfs_wave_post_gridded_sbs.sh --- scripts/exgfs_wave_post_gridded_sbs.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/exgfs_wave_post_gridded_sbs.sh b/scripts/exgfs_wave_post_gridded_sbs.sh index 317ba789bb..bd4bc99350 100755 --- a/scripts/exgfs_wave_post_gridded_sbs.sh +++ b/scripts/exgfs_wave_post_gridded_sbs.sh @@ -258,7 +258,6 @@ source "${USHgfs}/preamble.sh" source "${USHgfs}/wave_domain_grid.sh" process_grdID "${grdID}" echo "${USHgfs}/wave_grib2_sbs.sh $grdID $GRIDNR $MODNR $ymdh $fhr $GRDNAME $GRDRES $gribFL > grib_$grdID.out 2>&1" >> ${fcmdigrd}.${nigrd} - cp grib_$grdID.out /scratch1/NCEPDEV/global/Anton.Fernando/RUNTESTS/grib_$grdID.out fi echo "${GRIBDATA}/${fcmdigrd}.${nigrd}" >> ${fcmdnow} chmod 744 ${fcmdigrd}.${nigrd} @@ -274,6 +273,7 @@ source "${USHgfs}/preamble.sh" source "${USHgfs}/wave_domain_grid.sh" process_grdID "${grdID}" echo "${USHgfs}/wave_grib2_sbs.sh $grdID $GRIDNR $MODNR $ymdh $fhr $GRDNAME $GRDRES $gribFL > grib_$grdID.out 2>&1" >> ${fcmdnow} + cp "grib_$grdID.out" "/scratch1/NCEPDEV/global/Anton.Fernando/RUNTESTS/grib_$grdID.out" done fi From e0bc9e4537b7d3a34987d2054aa01728595e6d0d Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Thu, 9 Jan 2025 02:26:55 -0500 Subject: [PATCH 125/186] modified scripts\exgfs_wave_post_gridded_sbs.sh --- scripts/exgfs_wave_post_gridded_sbs.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/exgfs_wave_post_gridded_sbs.sh b/scripts/exgfs_wave_post_gridded_sbs.sh index bd4bc99350..5758ef18ae 100755 --- a/scripts/exgfs_wave_post_gridded_sbs.sh +++ b/scripts/exgfs_wave_post_gridded_sbs.sh @@ -273,7 +273,7 @@ source "${USHgfs}/preamble.sh" source "${USHgfs}/wave_domain_grid.sh" process_grdID "${grdID}" echo "${USHgfs}/wave_grib2_sbs.sh $grdID $GRIDNR $MODNR $ymdh $fhr $GRDNAME $GRDRES $gribFL > grib_$grdID.out 2>&1" >> ${fcmdnow} - cp "grib_$grdID.out" "/scratch1/NCEPDEV/global/Anton.Fernando/RUNTESTS/grib_$grdID.out" + cp ${fcmdnow} "/scratch1/NCEPDEV/global/Anton.Fernando/RUNTESTS/grib_$grdID.out" done fi From a75fd1be709df557076bdda22de2eea76be8274c Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Thu, 9 Jan 2025 02:50:06 -0500 Subject: [PATCH 126/186] update ush\wave_grib2_sbs.sh --- ush/wave_grib2_sbs.sh | 1 + 1 file changed, 1 insertion(+) diff --git a/ush/wave_grib2_sbs.sh b/ush/wave_grib2_sbs.sh index fe56f07e63..4150168ac2 100755 --- a/ush/wave_grib2_sbs.sh +++ b/ush/wave_grib2_sbs.sh @@ -73,6 +73,7 @@ outfile="${WAV_MOD_TAG}.${cycle}${ENSTAG}.${grdnam}.${grdres}.f${FH3}.grib2" #create the COM directory var com_dir="COMOUT_WAVE_GRID_${grdnam}_${grdres}" +mkdir -p -m 775 "${!com_dir}" # Only create file if not present in COM if [[ ! -s "${!com_dir}/${outfile}.idx" ]]; then From dea66ded1161c2f707fffbda7579c6df57c38110 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Thu, 9 Jan 2025 02:51:21 -0500 Subject: [PATCH 127/186] modified scripts\exgfs_wave_post_gridded_sbs.sh --- scripts/exgfs_wave_post_gridded_sbs.sh | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/scripts/exgfs_wave_post_gridded_sbs.sh b/scripts/exgfs_wave_post_gridded_sbs.sh index 5758ef18ae..324e389482 100755 --- a/scripts/exgfs_wave_post_gridded_sbs.sh +++ b/scripts/exgfs_wave_post_gridded_sbs.sh @@ -272,8 +272,7 @@ source "${USHgfs}/preamble.sh" gribFL=\'$(echo ${OUTPARS_WAV})\' source "${USHgfs}/wave_domain_grid.sh" process_grdID "${grdID}" - echo "${USHgfs}/wave_grib2_sbs.sh $grdID $GRIDNR $MODNR $ymdh $fhr $GRDNAME $GRDRES $gribFL > grib_$grdID.out 2>&1" >> ${fcmdnow} - cp ${fcmdnow} "/scratch1/NCEPDEV/global/Anton.Fernando/RUNTESTS/grib_$grdID.out" + echo "${USHgfs}/wave_grib2_sbs.sh $grdID $GRIDNR $MODNR $ymdh $fhr $GRDNAME $GRDRES $gribFL > grib_$grdID.out 2>&1" >> ${fcmdnow}\ done fi From 115029947e7dc64943a1fdcdc072c054d387d180 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Thu, 9 Jan 2025 02:58:02 -0500 Subject: [PATCH 128/186] modified scripts\exgfs_wave_post_gridded_sbs.sh --- scripts/exgfs_wave_post_gridded_sbs.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/exgfs_wave_post_gridded_sbs.sh b/scripts/exgfs_wave_post_gridded_sbs.sh index 324e389482..81b4c4827e 100755 --- a/scripts/exgfs_wave_post_gridded_sbs.sh +++ b/scripts/exgfs_wave_post_gridded_sbs.sh @@ -272,7 +272,7 @@ source "${USHgfs}/preamble.sh" gribFL=\'$(echo ${OUTPARS_WAV})\' source "${USHgfs}/wave_domain_grid.sh" process_grdID "${grdID}" - echo "${USHgfs}/wave_grib2_sbs.sh $grdID $GRIDNR $MODNR $ymdh $fhr $GRDNAME $GRDRES $gribFL > grib_$grdID.out 2>&1" >> ${fcmdnow}\ + echo "${USHgfs}/wave_grib2_sbs.sh $grdID $GRIDNR $MODNR $ymdh $fhr $GRDNAME $GRDRES $gribFL > grib_$grdID.out 2>&1" >> ${fcmdnow} done fi From 100bf662d2c63d54128c7df308fe567ead98daf0 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Thu, 9 Jan 2025 03:00:46 -0500 Subject: [PATCH 129/186] modified scripts\exgfs_wave_post_gridded_sbs.sh --- scripts/exgfs_wave_post_gridded_sbs.sh | 1 - 1 file changed, 1 deletion(-) diff --git a/scripts/exgfs_wave_post_gridded_sbs.sh b/scripts/exgfs_wave_post_gridded_sbs.sh index 81b4c4827e..fc84589e04 100755 --- a/scripts/exgfs_wave_post_gridded_sbs.sh +++ b/scripts/exgfs_wave_post_gridded_sbs.sh @@ -362,7 +362,6 @@ source "${USHgfs}/preamble.sh" err=5; export err;${errchk} exit "$err" fi - fi # --------------------------------------------------------------------------- # # 7. Ending output From 0419e47f7cda32c552a1320d425bf2013d5d4304 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Thu, 9 Jan 2025 03:20:09 -0500 Subject: [PATCH 130/186] modified jobs\JGLOBAL_ARCHIVE --- jobs/JGLOBAL_ARCHIVE | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/jobs/JGLOBAL_ARCHIVE b/jobs/JGLOBAL_ARCHIVE index 6894e55f00..02c3ab5bbe 100755 --- a/jobs/JGLOBAL_ARCHIVE +++ b/jobs/JGLOBAL_ARCHIVE @@ -49,12 +49,9 @@ for grid in "0p25" "0p50" "1p00"; do "COMIN_ATMOS_GRIB_${grid}:COM_ATMOS_GRIB_GRID_TMPL" done -for grdID in ${wavepostGRD} ${waveinterpGRD}; do - source "${USHgfs}/wave_domain_grid.sh" - process_grdID "${grdID}" - YMD=${PDY} HH=${cyc} GRDRESNAME=${grdNAME} declare_from_tmpl -rx \ - "COMIN_WAVE_GRID_${GRDNAME}_${GRDRES}:COM_WAVE_GRID_RES_TMPL" -done +YMD=${PDY} HH=${cyc} GRDRESNAME=${grdNAME} declare_from_tmpl -rx \ + "COMIN_WAVE_GRID_${GRDNAME}_${GRDRES}:COM_WAVE_GRID_RES_TMPL" + ############################################################### # Run archive script ############################################################### From 169566f3de4f08868f5d89f5b73e14a7a42a661c Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Thu, 9 Jan 2025 03:22:48 -0500 Subject: [PATCH 131/186] modified jobs\JGLOBAL_ARCHIVE --- jobs/JGLOBAL_ARCHIVE | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/jobs/JGLOBAL_ARCHIVE b/jobs/JGLOBAL_ARCHIVE index 02c3ab5bbe..ab60be42ce 100755 --- a/jobs/JGLOBAL_ARCHIVE +++ b/jobs/JGLOBAL_ARCHIVE @@ -3,6 +3,10 @@ source "${HOMEgfs}/ush/preamble.sh" source "${HOMEgfs}/ush/jjob_header.sh" -e "arch" -c "base arch" +############################################## +# get the domain and grid resiolution +source "${USHgfs}/wave_domain_grid.sh" +process_grdID "{$waveGRD}" ############################################## # Set variables used in the script ############################################## From bf997443b6f177e7fe91b89c43dba542114be2a0 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Thu, 9 Jan 2025 03:25:57 -0500 Subject: [PATCH 132/186] modified parm\archive\gefs_extracted_wave.yaml.j2 --- parm/archive/gefs_extracted_wave.yaml.j2 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/parm/archive/gefs_extracted_wave.yaml.j2 b/parm/archive/gefs_extracted_wave.yaml.j2 index dbba7ec440..b2267514e6 100644 --- a/parm/archive/gefs_extracted_wave.yaml.j2 +++ b/parm/archive/gefs_extracted_wave.yaml.j2 @@ -36,7 +36,7 @@ gefs_wave: - "{{ file_path | relpath(ROTDIR)}}" {% endif %} - {% set COMIN_WAVE_GRID = COM_WAVE_GRID_RES_TMPL | replace_tmpl(tmpl_dict) %} + {% set COMIN_WAVE_GRID = COM_WAVE_GRID_TMPL | replace_tmpl(tmpl_dict) %} # Select grib2 files to copy to the atardir {% if path_exists(COMIN_WAVE_GRID ~ "/" ~ grdNAME) %} {% for fhr in range(ofst_hr, FHMAX_GFS + FHOUT_WAV, FHOUT_WAV) %} From 8ae0e5337a5730b006d9e4fe3a831ffd4a4518de Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Thu, 9 Jan 2025 12:32:02 -0500 Subject: [PATCH 133/186] modified arch files --- jobs/JGLOBAL_ARCHIVE | 8 -------- parm/archive/gefs_extracted_wave.yaml.j2 | 7 ++++--- parm/archive/gfswave.yaml.j2 | 3 ++- scripts/exglobal_archive.py | 2 +- 4 files changed, 7 insertions(+), 13 deletions(-) diff --git a/jobs/JGLOBAL_ARCHIVE b/jobs/JGLOBAL_ARCHIVE index ab60be42ce..1a3dc2aa5c 100755 --- a/jobs/JGLOBAL_ARCHIVE +++ b/jobs/JGLOBAL_ARCHIVE @@ -2,11 +2,6 @@ source "${HOMEgfs}/ush/preamble.sh" source "${HOMEgfs}/ush/jjob_header.sh" -e "arch" -c "base arch" - -############################################## -# get the domain and grid resiolution -source "${USHgfs}/wave_domain_grid.sh" -process_grdID "{$waveGRD}" ############################################## # Set variables used in the script ############################################## @@ -53,9 +48,6 @@ for grid in "0p25" "0p50" "1p00"; do "COMIN_ATMOS_GRIB_${grid}:COM_ATMOS_GRIB_GRID_TMPL" done -YMD=${PDY} HH=${cyc} GRDRESNAME=${grdNAME} declare_from_tmpl -rx \ - "COMIN_WAVE_GRID_${GRDNAME}_${GRDRES}:COM_WAVE_GRID_RES_TMPL" - ############################################################### # Run archive script ############################################################### diff --git a/parm/archive/gefs_extracted_wave.yaml.j2 b/parm/archive/gefs_extracted_wave.yaml.j2 index b2267514e6..e29f4bf5c6 100644 --- a/parm/archive/gefs_extracted_wave.yaml.j2 +++ b/parm/archive/gefs_extracted_wave.yaml.j2 @@ -2,6 +2,7 @@ {% set cycle_YMD = current_cycle | to_YMD %} {% set cycle_YMDH = current_cycle | to_YMDH %} {% set head = RUN + "wave.t" + cycle_HH + "z." %} +{% set GRDNAME = "global.5p00" %} gefs_wave: name: "GEFS_WAVE" @@ -38,10 +39,10 @@ gefs_wave: {% set COMIN_WAVE_GRID = COM_WAVE_GRID_TMPL | replace_tmpl(tmpl_dict) %} # Select grib2 files to copy to the atardir - {% if path_exists(COMIN_WAVE_GRID ~ "/" ~ grdNAME) %} + {% if path_exists(COMIN_WAVE_GRID ~ "/" ~ GRDNAME) %} {% for fhr in range(ofst_hr, FHMAX_GFS + FHOUT_WAV, FHOUT_WAV) %} - {% set file_name = head ~ grdNAME ~ ".f" ~ '%03d'|format(fhr) ~ ".grib2" %} - {% set file_path = COMIN_WAVE_GRID ~ "/" ~ grdNAME ~ "/" ~ file_name %} + {% set file_name = head ~ GRDNAME ~ ".f" ~ '%03d'|format(fhr) ~ ".grib2" %} + {% set file_path = COMIN_WAVE_GRID ~ "/" ~ GRDNAME ~ "/" ~ file_name %} - "{{ file_path | relpath(ROTDIR)}}" {% endfor %} {% endif %} diff --git a/parm/archive/gfswave.yaml.j2 b/parm/archive/gfswave.yaml.j2 index 83d18e0d21..69ed41bd59 100644 --- a/parm/archive/gfswave.yaml.j2 +++ b/parm/archive/gfswave.yaml.j2 @@ -1,10 +1,11 @@ gfswave: {% set head = "gfswave.t" + cycle_HH + "z." %} + {% set GRDNAME = "global.2p00" %} name: "GFSWAVE" target: "{{ ATARDIR }}/{{ cycle_YMDH }}/gfswave.tar" required: # Wave GRIB2 regional forecast products - {% set file_path = COMIN_WAVE_GRID ~ "/" ~ grdNAME %} + {% set file_path = COMIN_WAVE_GRID ~ "/" ~ GRDNAME %} {% for fh in range(0, FHMAX_HF_WAV + FHOUT_HF_WAV, FHOUT_HF_WAV) %} # NOTE This is as explicit as possible without major logic to parse wavepostGRD. diff --git a/scripts/exglobal_archive.py b/scripts/exglobal_archive.py index c16e5e3b9c..ae613fb39c 100755 --- a/scripts/exglobal_archive.py +++ b/scripts/exglobal_archive.py @@ -40,7 +40,7 @@ def main(): 'NMEM_ENS', 'DO_JEDIATMVAR', 'DO_VRFY_OCEANDA', 'FHMAX_FITS', 'waveGRD', 'IAUFHRS', 'DO_FIT2OBS', 'NET', 'FHOUT_HF_GFS', 'FHMAX_HF_GFS', 'REPLAY_ICS', 'OFFSET_START_HOUR', 'ARCH_EXPDIR', 'EXPDIR', 'ARCH_EXPDIR_FREQ', 'ARCH_HASHES', - 'ARCH_DIFFS', 'SDATE', 'EDATE', 'HOMEgfs', 'grdNAME'] + 'ARCH_DIFFS', 'SDATE', 'EDATE', 'HOMEgfs'] archive_dict = AttrDict() for key in keys: From 0c88458efb496382d7d218b867644cb138fbc663 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Thu, 9 Jan 2025 12:32:54 -0500 Subject: [PATCH 134/186] modified ush\wave_extractvars.sh --- ush/wave_extractvars.sh | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/ush/wave_extractvars.sh b/ush/wave_extractvars.sh index 5fcc974415..32ee44986b 100755 --- a/ush/wave_extractvars.sh +++ b/ush/wave_extractvars.sh @@ -13,17 +13,13 @@ source "${USHgfs}/preamble.sh" subdata=${1} -source "${USHgfs}/wave_domain_grid.sh" -process_grdID "${waveGRD}" -com_dir="COM_WAVE_GRID_${GRDNAME}_${GRDRES}" - [[ -d "${subdata}" ]] || mkdir -p "${subdata}" for (( nh = FHOUT_WAV_EXTRACT; nh <= FHMAX_WAV; nh = nh + FHOUT_WAV_EXTRACT )); do fnh=$(printf "%3.3d" "${nh}") - infile="${!com_dir}/${RUN}wave.t${cyc}z.global.${wavres}.f${fnh}.grib2" - outfile="${subdata}/${RUN}wave.t${cyc}z.global.${wavres}.f${fnh}.grib2" + infile=${COMIN_WAVE_GRID}/${RUN}wave.t${cyc}z.global.${wavres}.f${fnh}.grib2 + outfile=${subdata}/${RUN}wave.t${cyc}z.global.${wavres}.f${fnh}.grib2 rm -f "${outfile}" # Remove outfile if it already exists before extraction if [[ -f "${infile}" ]]; then # Check if input file exists before extraction From d36f83723b03e6bbd2a4599c87f71cf9230a1ede Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Thu, 9 Jan 2025 12:35:06 -0500 Subject: [PATCH 135/186] modified jobs\JGLOBAL_ARCHIVE --- jobs/JGLOBAL_ARCHIVE | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/jobs/JGLOBAL_ARCHIVE b/jobs/JGLOBAL_ARCHIVE index 1a3dc2aa5c..401feba35f 100755 --- a/jobs/JGLOBAL_ARCHIVE +++ b/jobs/JGLOBAL_ARCHIVE @@ -2,6 +2,8 @@ source "${HOMEgfs}/ush/preamble.sh" source "${HOMEgfs}/ush/jjob_header.sh" -e "arch" -c "base arch" + + ############################################## # Set variables used in the script ############################################## @@ -66,6 +68,8 @@ status=$? if [[ -e "${pgmout}" ]] ; then cat "${pgmout}" fi + + ########################################## # Remove the Temporary working directory ########################################## From ef0fbb78edfca3a950ef5a222fdfca846e23c742 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Thu, 9 Jan 2025 14:23:31 -0500 Subject: [PATCH 136/186] modified ush\wave_grib2_sbs.sh --- ush/wave_grib2_sbs.sh | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/ush/wave_grib2_sbs.sh b/ush/wave_grib2_sbs.sh index 4150168ac2..ea73ba71ae 100755 --- a/ush/wave_grib2_sbs.sh +++ b/ush/wave_grib2_sbs.sh @@ -73,7 +73,14 @@ outfile="${WAV_MOD_TAG}.${cycle}${ENSTAG}.${grdnam}.${grdres}.f${FH3}.grib2" #create the COM directory var com_dir="COMOUT_WAVE_GRID_${grdnam}_${grdres}" -mkdir -p -m 775 "${!com_dir}" + +# Check if the COM directory exists, create it if necessary +if [[ ! -d "${!com_dir}" ]]; then + mkdir -p -m "${!com_dir}" + echo "Directory "${!com_dir}" created." +else + echo "Directory "${!com_dir}" already exists." +fi # Only create file if not present in COM if [[ ! -s "${!com_dir}/${outfile}.idx" ]]; then From 2e42747fb1990b62f150a5daaeb818eb56d9f95c Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Thu, 9 Jan 2025 14:26:27 -0500 Subject: [PATCH 137/186] modified ush\wave_grib2_sbs.sh --- ush/wave_grib2_sbs.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ush/wave_grib2_sbs.sh b/ush/wave_grib2_sbs.sh index ea73ba71ae..b2661f4d23 100755 --- a/ush/wave_grib2_sbs.sh +++ b/ush/wave_grib2_sbs.sh @@ -77,9 +77,9 @@ com_dir="COMOUT_WAVE_GRID_${grdnam}_${grdres}" # Check if the COM directory exists, create it if necessary if [[ ! -d "${!com_dir}" ]]; then mkdir -p -m "${!com_dir}" - echo "Directory "${!com_dir}" created." + echo "Directory ${!com_dir} created." else - echo "Directory "${!com_dir}" already exists." + echo "Directory ${!com_dir} already exists." fi # Only create file if not present in COM if [[ ! -s "${!com_dir}/${outfile}.idx" ]]; then From 381f4d2ca7ee2ab2efabcfa951a0c9cd14a49031 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Thu, 9 Jan 2025 14:30:04 -0500 Subject: [PATCH 138/186] modifed yamls files --- parm/archive/gefs_extracted_wave.yaml.j2 | 8 ++++---- parm/archive/gfswave.yaml.j2 | 4 ++-- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/parm/archive/gefs_extracted_wave.yaml.j2 b/parm/archive/gefs_extracted_wave.yaml.j2 index e29f4bf5c6..a756f54d26 100644 --- a/parm/archive/gefs_extracted_wave.yaml.j2 +++ b/parm/archive/gefs_extracted_wave.yaml.j2 @@ -2,7 +2,7 @@ {% set cycle_YMD = current_cycle | to_YMD %} {% set cycle_YMDH = current_cycle | to_YMDH %} {% set head = RUN + "wave.t" + cycle_HH + "z." %} -{% set GRDNAME = "global.5p00" %} +{% set grdNAME = "global.5p00" %} gefs_wave: name: "GEFS_WAVE" @@ -39,10 +39,10 @@ gefs_wave: {% set COMIN_WAVE_GRID = COM_WAVE_GRID_TMPL | replace_tmpl(tmpl_dict) %} # Select grib2 files to copy to the atardir - {% if path_exists(COMIN_WAVE_GRID ~ "/" ~ GRDNAME) %} + {% if path_exists(COMIN_WAVE_GRID ~ "/" ~ grdNAME) %} {% for fhr in range(ofst_hr, FHMAX_GFS + FHOUT_WAV, FHOUT_WAV) %} - {% set file_name = head ~ GRDNAME ~ ".f" ~ '%03d'|format(fhr) ~ ".grib2" %} - {% set file_path = COMIN_WAVE_GRID ~ "/" ~ GRDNAME ~ "/" ~ file_name %} + {% set file_name = head ~ grdNAME ~ ".f" ~ '%03d'|format(fhr) ~ ".grib2" %} + {% set file_path = COMIN_WAVE_GRID ~ "/" ~ grdNAME ~ "/" ~ file_name %} - "{{ file_path | relpath(ROTDIR)}}" {% endfor %} {% endif %} diff --git a/parm/archive/gfswave.yaml.j2 b/parm/archive/gfswave.yaml.j2 index 69ed41bd59..7fa3f080fe 100644 --- a/parm/archive/gfswave.yaml.j2 +++ b/parm/archive/gfswave.yaml.j2 @@ -1,11 +1,11 @@ gfswave: {% set head = "gfswave.t" + cycle_HH + "z." %} - {% set GRDNAME = "global.2p00" %} + {% set grdNAME = "global.2p00" %} name: "GFSWAVE" target: "{{ ATARDIR }}/{{ cycle_YMDH }}/gfswave.tar" required: # Wave GRIB2 regional forecast products - {% set file_path = COMIN_WAVE_GRID ~ "/" ~ GRDNAME %} + {% set file_path = COMIN_WAVE_GRID ~ "/" ~ grdNAME %} {% for fh in range(0, FHMAX_HF_WAV + FHOUT_HF_WAV, FHOUT_HF_WAV) %} # NOTE This is as explicit as possible without major logic to parse wavepostGRD. From 5f70bdf37c4085c7ab8a41ec291b4d74aa0a581c Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Thu, 9 Jan 2025 14:58:20 -0500 Subject: [PATCH 139/186] modified scripts\exgfs_wave_prdgen_gridded.sh --- scripts/exgfs_wave_prdgen_gridded.sh | 62 ++++++++++++++-------------- 1 file changed, 30 insertions(+), 32 deletions(-) diff --git a/scripts/exgfs_wave_prdgen_gridded.sh b/scripts/exgfs_wave_prdgen_gridded.sh index 7c010c3337..944fade938 100755 --- a/scripts/exgfs_wave_prdgen_gridded.sh +++ b/scripts/exgfs_wave_prdgen_gridded.sh @@ -9,7 +9,7 @@ # - Supplemental error output is witten to the wave.log file. # # # # COM inputs: # -# - ${COMIN_WAVE_GRID}/${grdID}/${RUNwave}.${cycle}.${grdID}.f${fhr}.grib2 # +# - ${COMIN_WAVE_GRID}/${grdNAME}/${RUNwave}.${cycle}.${grdNAME}.f${fhr}.grib2 # # # # COM outputs: # # - ${COMOUT_WAVE_WMO}/grib2.${cycle}.f${fhr}.awipsww3_${grdOut} # @@ -88,28 +88,26 @@ grids=${grids:-ak_10m at_10m ep_10m wc_10m glo_30m} while [ $fhcnt -le $FHMAX_WAV ]; do fhr=$(printf "%03d" $fhcnt) for grdOut in $grids;do - case $grdOut in - aoc_9km) grdID='arctic.9km' ;; - at_10m) grdID='atlocn.0p16' ;; - ep_10m) grdID='epacif.0p16' ;; - wc_10m) grdID='wcoast.0p16' ;; -# glo_30m) grdID='global.0p25' ;; - glo_30m) grdID='global.0p50' ;; - ak_10m) grdID='alaska.0p16' ;; - *) grdID= ;; - esac - # + source "${USHgfs}/wave_domain_grid.sh" + process_grdID "${grdout}" + com_dir="${COMIN_WAVE_GRID}/${grdNAME}" + if [[ ! -d "${!com_dir}" ]]; then + mkdir -p -m "${!com_dir}" + echo "Directory ${!com_dir} created." + else + echo "Directory ${!com_dir} already exists." + fi - GRIBIN="${COMIN_WAVE_GRID}/${grdID}/${RUNwave}.${cycle}.${grdID}.f${fhr}.grib2" + GRIBIN="${com_dir}/${RUNwave}.${cycle}.${grdNAME}.f${fhr}.grib2" GRIBIN_chk="${GRIBIN}.idx" sleep_interval=5 max_tries=1000 if ! wait_for_file "${GRIBIN_chk}" "${sleep_interval}" "${max_tries}"; then echo "FATAL ERROR: ${GRIBIN_chk} not found after waiting $((sleep_interval * ( max_tries - 1))) secs" - echo "$RUNwave $grdID ${fhr} prdgen $date $cycle : GRIB file missing." >> $wavelog + echo "$RUNwave $grdNAME ${fhr} prdgen $date $cycle : GRIB file missing." >> $wavelog err=1;export err;${errchk} || exit ${err} fi - GRIBOUT=$RUNwave.$cycle.$grdID.f${fhr}.clipped.grib2 + GRIBOUT=$RUNwave.$cycle.$grdNAME.f${fhr}.clipped.grib2 iparam=1 while [ ${iparam} -le ${nparam} ]; do @@ -136,19 +134,19 @@ grids=${grids:-ak_10m at_10m ep_10m wc_10m glo_30m} iparam=$(expr ${iparam} + 1) done #end wave param loop #====================================================================== - GRIBIN=$RUNwave.$cycle.$grdID.f${fhr}.clipped.grib2 + GRIBIN=$RUNwave.$cycle.$grdNAME.f${fhr}.clipped.grib2 GRIBIN_chk=$GRIBIN.idx - ${NLN} $GRIBIN gribfile.$grdID.f${fhr} + ${NLN} $GRIBIN gribfile.$grdNAME.f${fhr} # # 1.d Input template files parmfile=${PARMgfs}/wave/grib2_${RUNwave}.$grdOut.f${fhr} if [ -f $parmfile ]; then - ${NLN} $parmfile awipsgrb.$grdID.f${fhr} + ${NLN} $parmfile awipsgrb.$grdNAME.f${fhr} else - echo '*** ERROR : NO template grib2_${RUNwave}.$grdID.f${fhr} *** ' - echo "$RUNwave $grdID $fhr prdgen $date $cycle : GRIB template file missing." >> $wavelog + echo '*** ERROR : NO template grib2_${RUNwave}.$grdNAME.f${fhr} *** ' + echo "$RUNwave $grdNAME $fhr prdgen $date $cycle : GRIB template file missing." >> $wavelog err=3;export err;${errchk} || exit ${err} fi # @@ -161,17 +159,17 @@ grids=${grids:-ak_10m at_10m ep_10m wc_10m glo_30m} # 2.a.1 Set up for tocgrib2 echo " Do set up for tocgrib2." set_trace - #AWIPSGRB=awipsgrib.$grdID.f${fhr} + #AWIPSGRB=awipsgrib.$grdNAME.f${fhr} AWIPSGRB=awipsgrib # 2.a.2 Make GRIB index echo " Make GRIB index for tocgrib2." set_trace - $GRB2INDEX gribfile.$grdID.f${fhr} gribindex.$grdID.f${fhr} + $GRB2INDEX gribfile.$grdNAME.f${fhr} gribindex.$grdNAME.f${fhr} OK=$? if [ "$OK" != '0' ] then - msg="ABNORMAL EXIT: ERROR IN grb2index MWW3 for grid $grdID" + msg="ABNORMAL EXIT: ERROR IN grb2index MWW3 for grid $grdNAME" #set +x echo ' ' echo '******************************************** ' @@ -180,7 +178,7 @@ grids=${grids:-ak_10m at_10m ep_10m wc_10m glo_30m} echo ' ' echo $msg #set_trace - echo "$RUNwave $grdID prdgen $date $cycle : error in grbindex." >> $wavelog + echo "$RUNwave $grdNAME prdgen $date $cycle : error in grbindex." >> $wavelog err=4;export err;err_chk fi @@ -192,11 +190,11 @@ grids=${grids:-ak_10m at_10m ep_10m wc_10m glo_30m} export pgmout=tocgrib2.out . prep_step - export FORT11="gribfile.$grdID.f${fhr}" - export FORT31="gribindex.$grdID.f${fhr}" - export FORT51="$AWIPSGRB.$grdID.f${fhr}" + export FORT11="gribfile.$grdNAME.f${fhr}" + export FORT31="gribindex.$grdNAME.f${fhr}" + export FORT51="$AWIPSGRB.$grdNAME.f${fhr}" - $TOCGRIB2 < awipsgrb.$grdID.f${fhr} > tocgrib2.out 2>&1 + $TOCGRIB2 < awipsgrb.$grdNAME.f${fhr} > tocgrib2.out 2>&1 OK=$? if [ "$OK" != '0' ]; then cat tocgrib2.out @@ -219,19 +217,19 @@ grids=${grids:-ak_10m at_10m ep_10m wc_10m glo_30m} echo " Get awips GRIB bulletins out ..." #set_trace #set +x - echo " Saving $AWIPSGRB.$grdOut.f${fhr} as grib2.$cycle.awipsww3_${grdID}.f${fhr}" + echo " Saving $AWIPSGRB.$grdOut.f${fhr} as grib2.$cycle.awipsww3_${grdNAME}.f${fhr}" echo " in ${COMOUT_WAVE_WMO}" #set_trace - cp "${AWIPSGRB}.${grdID}.f${fhr}" "${COMOUT_WAVE_WMO}/grib2.${cycle}.f${fhr}.awipsww3_${grdOut}" + cp "${AWIPSGRB}.${grdNAME}.f${fhr}" "${COMOUT_WAVE_WMO}/grib2.${cycle}.f${fhr}.awipsww3_${grdOut}" #set +x if [ "$SENDDBN" = 'YES' ] then - echo " Sending $AWIPSGRB.$grdID.f${fhr} to DBRUN." + echo " Sending $AWIPSGRB.$grdNAME.f${fhr} to DBRUN." "${DBNROOT}/bin/dbn_alert" GRIB_LOW "${RUN}" "${job}" "${COMOUT_WAVE_WMO}/grib2.${cycle}.f${fhr}.awipsww3_${grdOut}" fi - rm -f $AWIPSGRB.$grdID.f${fhr} tocgrib2.out + rm -f $AWIPSGRB.$grdNAME.f${fhr} tocgrib2.out done # For grids if [ $fhcnt -ge $FHMAX_HF_WAV ]; then From 439d5cc4af540730c8d2dc85f2600fde6a3e82d0 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Thu, 9 Jan 2025 15:00:17 -0500 Subject: [PATCH 140/186] modified scripts\exgfs_wave_prdgen_gridded.sh --- scripts/exgfs_wave_prdgen_gridded.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/exgfs_wave_prdgen_gridded.sh b/scripts/exgfs_wave_prdgen_gridded.sh index 944fade938..0b21bbc090 100755 --- a/scripts/exgfs_wave_prdgen_gridded.sh +++ b/scripts/exgfs_wave_prdgen_gridded.sh @@ -98,7 +98,7 @@ grids=${grids:-ak_10m at_10m ep_10m wc_10m glo_30m} echo "Directory ${!com_dir} already exists." fi - GRIBIN="${com_dir}/${RUNwave}.${cycle}.${grdNAME}.f${fhr}.grib2" + GRIBIN="${!com_dir}/${RUNwave}.${cycle}.${grdNAME}.f${fhr}.grib2" GRIBIN_chk="${GRIBIN}.idx" sleep_interval=5 max_tries=1000 From 18907e4481441c3f7e2ea15ae22acdecfd3a56d3 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Thu, 9 Jan 2025 15:12:13 -0500 Subject: [PATCH 141/186] modified jobs\JGLOBAL_WAVE_POST_SBS --- jobs/JGLOBAL_WAVE_POST_SBS | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) diff --git a/jobs/JGLOBAL_WAVE_POST_SBS b/jobs/JGLOBAL_WAVE_POST_SBS index 351ae7cb2c..999244ba37 100755 --- a/jobs/JGLOBAL_WAVE_POST_SBS +++ b/jobs/JGLOBAL_WAVE_POST_SBS @@ -19,12 +19,18 @@ for out_dir in "${COMOUT_WAVE_PREP}" "${COMOUT_WAVE_GRID}"; do if [[ ! -d "${out_dir}" ]]; then mkdir -p "${out_dir}"; fi done -for grdID in ${wavepostGRD} ${waveinterpGRD}; do - source "${USHgfs}/wave_domain_grid.sh" - process_grdID "${grdID}" - YMD=${PDY} HH=${cyc} GRDRESNAME=${grdNAME} declare_from_tmpl -rx \ - "COMOUT_WAVE_GRID_${GRDNAME}_${GRDRES}:COM_WAVE_GRID_RES_TMPL" -done +if [[ -n "${wavepostGRD}" || -n "${waveinterpGRD}" ]]; then + for grdID in ${wavepostGRD} ${waveinterpGRD}; do + source "${USHgfs}/wave_domain_grid.sh" + process_grdID "${grdID}" + YMD=${PDY} HH=${cyc} GRDRESNAME=${grdNAME} declare_from_tmpl -rx \ + "COMOUT_WAVE_GRID_${GRDNAME}_${GRDRES}:COM_WAVE_GRID_RES_TMPL" + out_dir=${COMOUT_WAVE_GRID}_${GRDNAME}_${GRDRES} + if [[ ! -d "${!out_dir}" ]]; then mkdir -p "${!out_dir}"; fi + done +else + echo "Both wavepostGRD and waveinterpGRD are empty. No grids to process." +fi # Set wave model ID tag to include member number # if ensemble; waveMEMB var empty in deterministic # Set wave model ID tag to include member number From 7f98237ac32589c52fff10e4cb3b19108d6020bc Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Thu, 9 Jan 2025 15:24:23 -0500 Subject: [PATCH 142/186] modified scripts\exgfs_wave_prdgen_gridded.sh --- scripts/exgfs_wave_prdgen_gridded.sh | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/scripts/exgfs_wave_prdgen_gridded.sh b/scripts/exgfs_wave_prdgen_gridded.sh index 0b21bbc090..d1e3df9334 100755 --- a/scripts/exgfs_wave_prdgen_gridded.sh +++ b/scripts/exgfs_wave_prdgen_gridded.sh @@ -205,9 +205,9 @@ grids=${grids:-ak_10m at_10m ep_10m wc_10m glo_30m} echo '*** FATAL ERROR : ERROR IN tocgrib2 *** ' echo '*************************************** ' echo ' ' - echo $msg + echo "$msg" #set_trace - echo "$RUNwave prdgen $date $cycle : error in tocgrib2." >> $wavelog + echo "$RUNwave prdgen $date $cycle : error in tocgrib2." >> "$wavelog" err=5;export err;err_chk else echo '*** tocgrib2 ran succesfully *** ' @@ -229,10 +229,10 @@ grids=${grids:-ak_10m at_10m ep_10m wc_10m glo_30m} echo " Sending $AWIPSGRB.$grdNAME.f${fhr} to DBRUN." "${DBNROOT}/bin/dbn_alert" GRIB_LOW "${RUN}" "${job}" "${COMOUT_WAVE_WMO}/grib2.${cycle}.f${fhr}.awipsww3_${grdOut}" fi - rm -f $AWIPSGRB.$grdNAME.f${fhr} tocgrib2.out + rm -f "$AWIPSGRB.$grdNAME.f${fhr}" "tocgrib2.out" done # For grids - if [ $fhcnt -ge $FHMAX_HF_WAV ]; then + if [ "$fhcnt" -ge "$FHMAX_HF_WAV" ]; then inc=$FHOUT_WAV else inc=$FHOUT_HF_WAV From c51d912489667f25b091fabeb9dad859ee8cb2d9 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Thu, 9 Jan 2025 15:28:01 -0500 Subject: [PATCH 143/186] modified scripts\exgfs_wave_prdgen_gridded.sh --- scripts/exgfs_wave_prdgen_gridded.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/scripts/exgfs_wave_prdgen_gridded.sh b/scripts/exgfs_wave_prdgen_gridded.sh index d1e3df9334..b6163910d5 100755 --- a/scripts/exgfs_wave_prdgen_gridded.sh +++ b/scripts/exgfs_wave_prdgen_gridded.sh @@ -9,8 +9,8 @@ # - Supplemental error output is witten to the wave.log file. # # # # COM inputs: # -# - ${COMIN_WAVE_GRID}/${grdNAME}/${RUNwave}.${cycle}.${grdNAME}.f${fhr}.grib2 # -# # +# - ${com_dir}/${RUNwave}.${cycle}.${grdNAME}.f${fhr}.grib2 # +# - com_dir = ${COMIN_WAVE_GRID}/${grdNAME} # # COM outputs: # # - ${COMOUT_WAVE_WMO}/grib2.${cycle}.f${fhr}.awipsww3_${grdOut} # # # From e5ab3e0a5c1b38e70d152bff420f81d60315c496 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Fri, 10 Jan 2025 12:46:24 -0500 Subject: [PATCH 144/186] edited com_dir --- scripts/exgfs_wave_post_gridded_sbs.sh | 5 ++-- scripts/exgfs_wave_prdgen_gridded.sh | 13 +++++---- ush/wave_grib2_sbs.sh | 39 +++++++++++++------------- 3 files changed, 30 insertions(+), 27 deletions(-) diff --git a/scripts/exgfs_wave_post_gridded_sbs.sh b/scripts/exgfs_wave_post_gridded_sbs.sh index fc84589e04..c4329b2f88 100755 --- a/scripts/exgfs_wave_post_gridded_sbs.sh +++ b/scripts/exgfs_wave_post_gridded_sbs.sh @@ -347,10 +347,11 @@ source "${USHgfs}/preamble.sh" # Check if grib2 file created ENSTAG="" - com_dir="COMOUT_WAVE_GRID_${GRDNAME}_${GRDRES}" + com_varname="COMOUT_WAVE_GRID_${GRDNAME}_${GRDRES}" + com_dir=${!com_varname} if [ ${waveMEMB} ]; then ENSTAG=".${membTAG}${waveMEMB}" ; fi gribchk="${RUN}wave.${cycle}${ENSTAG}.${GRDNAME}.${GRDRES}.f${FH3}.grib2" - if [ ! -s ${!com_dir}/${gribchk} ]; then + if [ ! -s ${com_dir}/${gribchk} ]; then set +x echo ' ' echo '********************************************' diff --git a/scripts/exgfs_wave_prdgen_gridded.sh b/scripts/exgfs_wave_prdgen_gridded.sh index b6163910d5..32e9df78c5 100755 --- a/scripts/exgfs_wave_prdgen_gridded.sh +++ b/scripts/exgfs_wave_prdgen_gridded.sh @@ -90,15 +90,16 @@ grids=${grids:-ak_10m at_10m ep_10m wc_10m glo_30m} for grdOut in $grids;do source "${USHgfs}/wave_domain_grid.sh" process_grdID "${grdout}" - com_dir="${COMIN_WAVE_GRID}/${grdNAME}" - if [[ ! -d "${!com_dir}" ]]; then - mkdir -p -m "${!com_dir}" - echo "Directory ${!com_dir} created." + com_varname="${COMIN_WAVE_GRID}/${grdNAME}" + com_dir="${!com_varname}" + if [[ ! -d "${com_dir}" ]]; then + mkdir -p -m "${com_dir}" + echo "Directory ${com_dir} created." else - echo "Directory ${!com_dir} already exists." + echo "Directory ${com_dir} already exists." fi - GRIBIN="${!com_dir}/${RUNwave}.${cycle}.${grdNAME}.f${fhr}.grib2" + GRIBIN="${com_dir}/${RUNwave}.${cycle}.${grdNAME}.f${fhr}.grib2" GRIBIN_chk="${GRIBIN}.idx" sleep_interval=5 max_tries=1000 diff --git a/ush/wave_grib2_sbs.sh b/ush/wave_grib2_sbs.sh index b2661f4d23..60e8d2a337 100755 --- a/ush/wave_grib2_sbs.sh +++ b/ush/wave_grib2_sbs.sh @@ -72,17 +72,18 @@ if [[ -n ${waveMEMB} ]]; then ENSTAG=".${membTAG}${waveMEMB}" ; fi outfile="${WAV_MOD_TAG}.${cycle}${ENSTAG}.${grdnam}.${grdres}.f${FH3}.grib2" #create the COM directory var -com_dir="COMOUT_WAVE_GRID_${grdnam}_${grdres}" +com_varname="COMOUT_WAVE_GRID_${grdnam}_${grdres}" +com_dir="${!com_varname}" # Check if the COM directory exists, create it if necessary -if [[ ! -d "${!com_dir}" ]]; then - mkdir -p -m "${!com_dir}" - echo "Directory ${!com_dir} created." +if [[ ! -d "${com_dir}" ]]; then + mkdir -p -m "${com_dir}" + echo "Directory ${com_dir} created." else - echo "Directory ${!com_dir} already exists." + echo "Directory ${com_dir} already exists." fi # Only create file if not present in COM -if [[ ! -s "${!com_dir}/${outfile}.idx" ]]; then +if [[ ! -s "${com_dir}/${outfile}.idx" ]]; then set +x echo ' ' @@ -93,7 +94,7 @@ if [[ ! -s "${!com_dir}/${outfile}.idx" ]]; then set_trace if [[ -z "${PDY}" ]] || [[ -z ${cyc} ]] || [[ -z "${cycle}" ]] || [[ -z "${EXECgfs}" ]] || \ - [[ -z "${!com_dir}" ]] || [[ -z "${WAV_MOD_TAG}" ]] || [[ -z "${gribflags}" ]] || \ + [[ -z "${com_dir}" ]] || [[ -z "${WAV_MOD_TAG}" ]] || [[ -z "${gribflags}" ]] || \ [[ -z "${GRIDNR}" ]] || [[ -z "${MODNR}" ]] || \ [[ -z "${SENDDBN}" ]]; then set +x @@ -168,11 +169,11 @@ if [[ ! -s "${!com_dir}/${outfile}.idx" ]]; then fi if (( fhr > 0 )); then - ${WGRIB2} gribfile -set_date "${PDY}${cyc}" -set_ftime "${fhr} hour fcst" -grib "${!com_dir}/${outfile}" + ${WGRIB2} gribfile -set_date "${PDY}${cyc}" -set_ftime "${fhr} hour fcst" -grib "${com_dir}/${outfile}" err=$? else ${WGRIB2} gribfile -set_date "${PDY}${cyc}" -set_ftime "${fhr} hour fcst" \ - -set table_1.4 1 -set table_1.2 1 -grib "${!com_dir}/${outfile}" + -set table_1.4 1 -set table_1.2 1 -grib "${com_dir}/${outfile}" err=$? fi @@ -188,7 +189,7 @@ if [[ ! -s "${!com_dir}/${outfile}.idx" ]]; then fi # Create index - ${WGRIB2} -s "${!com_dir}/${outfile}" > "${!com_dir}/${outfile}.idx" + ${WGRIB2} -s "${com_dir}/${outfile}" > "${com_dir}/${outfile}.idx" # Create grib2 subgrid is this is the source grid if [[ "${grdID}" = "${WAV_SUBGRBSRC}" ]]; then @@ -197,14 +198,14 @@ if [[ ! -s "${!com_dir}/${outfile}.idx" ]]; then subgrbnam=$(echo ${!subgrb} | cut -d " " -f 21) subgrbres=$(echo ${!subgrb} | cut -d " " -f 22) subfnam="${WAV_MOD_TAG}.${cycle}${ENSTAG}.${subgrbnam}.${subgrbres}.f${FH3}.grib2" - ${COPYGB2} -g "${subgrbref}" -i0 -x "${!com_dir}/${outfile}" "${!com_dir}/${subfnam}" - ${WGRIB2} -s "${!com_dir}/${subfnam}" > "${!com_dir}/${subfnam}.idx" + ${COPYGB2} -g "${subgrbref}" -i0 -x "${com_dir}/${outfile}" "${com_dir}/${subfnam}" + ${WGRIB2} -s "${com_dir}/${subfnam}" > "${com_dir}/${subfnam}.idx" done fi # 1.e Save in /com - if [[ ! -s "${!com_dir}/${outfile}" ]]; then + if [[ ! -s "${com_dir}/${outfile}" ]]; then set +x echo ' ' echo '********************************************* ' @@ -216,7 +217,7 @@ if [[ ! -s "${!com_dir}/${outfile}.idx" ]]; then set_trace exit 4 fi - if [[ ! -s "${!com_dir}/${outfile}.idx" ]]; then + if [[ ! -s "${com_dir}/${outfile}.idx" ]]; then set +x echo ' ' echo '*************************************************** ' @@ -231,11 +232,11 @@ if [[ ! -s "${!com_dir}/${outfile}.idx" ]]; then if [[ "${SENDDBN}" = 'YES' ]] && [[ ${outfile} != *global.0p50* ]]; then set +x - echo " Alerting GRIB file as ${!com_dir}/${outfile}" - echo " Alerting GRIB index file as ${!com_dir}/${outfile}.idx" + echo " Alerting GRIB file as ${com_dir}/${outfile}" + echo " Alerting GRIB index file as ${com_dir}/${outfile}.idx" set_trace - "${DBNROOT}/bin/dbn_alert" MODEL "${alertName}_WAVE_GB2" "${job}" "${!com_dir}/${outfile}" - "${DBNROOT}/bin/dbn_alert" MODEL "${alertName}_WAVE_GB2_WIDX" "${job}" "${!com_dir}/${outfile}.idx" + "${DBNROOT}/bin/dbn_alert" MODEL "${alertName}_WAVE_GB2" "${job}" "${com_dir}/${outfile}" + "${DBNROOT}/bin/dbn_alert" MODEL "${alertName}_WAVE_GB2_WIDX" "${job}" "${com_dir}/${outfile}.idx" else echo "${outfile} is global.0p50 or SENDDBN is NO, no alert sent" fi @@ -256,7 +257,7 @@ if [[ ! -s "${!com_dir}/${outfile}.idx" ]]; then else set +x echo ' ' - echo " File ${!com_dir}/${outfile} found, skipping generation process" + echo " File ${com_dir}/${outfile} found, skipping generation process" echo ' ' set_trace fi From ae45df6439a4f299eab500fa659afd5194a549c8 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Fri, 10 Jan 2025 12:50:45 -0500 Subject: [PATCH 145/186] update jobs\JGLOBAL_WAVE_POST_SBS --- jobs/JGLOBAL_WAVE_POST_SBS | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/jobs/JGLOBAL_WAVE_POST_SBS b/jobs/JGLOBAL_WAVE_POST_SBS index 999244ba37..88d9d7d692 100755 --- a/jobs/JGLOBAL_WAVE_POST_SBS +++ b/jobs/JGLOBAL_WAVE_POST_SBS @@ -25,8 +25,9 @@ if [[ -n "${wavepostGRD}" || -n "${waveinterpGRD}" ]]; then process_grdID "${grdID}" YMD=${PDY} HH=${cyc} GRDRESNAME=${grdNAME} declare_from_tmpl -rx \ "COMOUT_WAVE_GRID_${GRDNAME}_${GRDRES}:COM_WAVE_GRID_RES_TMPL" - out_dir=${COMOUT_WAVE_GRID}_${GRDNAME}_${GRDRES} - if [[ ! -d "${!out_dir}" ]]; then mkdir -p "${!out_dir}"; fi + out_dir_varname="${COMOUT_WAVE_GRID}_${GRDNAME}_${GRDRES}" + out_dir=${!out_dir_varname} + if [[ ! -d "${out_dir}" ]]; then mkdir -p "${out_dir}"; fi done else echo "Both wavepostGRD and waveinterpGRD are empty. No grids to process." From 8528a8f69815743ac66184787639eb4ed9e8d97c Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Fri, 10 Jan 2025 13:49:28 -0500 Subject: [PATCH 146/186] modified jobs\JGLOBAL_ARCHIVE --- jobs/JGLOBAL_ARCHIVE | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/jobs/JGLOBAL_ARCHIVE b/jobs/JGLOBAL_ARCHIVE index 401feba35f..a35ec92ab8 100755 --- a/jobs/JGLOBAL_ARCHIVE +++ b/jobs/JGLOBAL_ARCHIVE @@ -1,7 +1,7 @@ #! /usr/bin/env bash source "${HOMEgfs}/ush/preamble.sh" -source "${HOMEgfs}/ush/jjob_header.sh" -e "arch" -c "base arch" +source "${HOMEgfs}/ush/jjob_header.sh" -e "arch" -c "base arch wave" ############################################## @@ -50,6 +50,18 @@ for grid in "0p25" "0p50" "1p00"; do "COMIN_ATMOS_GRIB_${grid}:COM_ATMOS_GRIB_GRID_TMPL" done + +if [[ -n "${wavepostGRD}" || -n "${waveinterpGRD}" ]]; then + for grdID in ${wavepostGRD} ${waveinterpGRD}; do + source "${USHgfs}/wave_domain_grid.sh" + process_grdID "${grdID}" + YMD=${PDY} HH=${cyc} GRDRESNAME=${grdNAME} declare_from_tmpl -rx \ + "COMIN_WAVE_GRID_${GRDNAME}_${GRDRES}:COM_WAVE_GRID_RES_TMPL" + done +else + echo "Both wavepostGRD and waveinterpGRD are empty. No grids to process." +fi + ############################################################### # Run archive script ############################################################### From 26a9c161481479bb9f6b48d62b02dffe83405f05 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Sat, 11 Jan 2025 01:27:54 -0500 Subject: [PATCH 147/186] modified jobs\JGLOBAL_WAVE_POST_SBS --- jobs/JGLOBAL_WAVE_POST_SBS | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/jobs/JGLOBAL_WAVE_POST_SBS b/jobs/JGLOBAL_WAVE_POST_SBS index 88d9d7d692..cd7cb921d2 100755 --- a/jobs/JGLOBAL_WAVE_POST_SBS +++ b/jobs/JGLOBAL_WAVE_POST_SBS @@ -25,7 +25,7 @@ if [[ -n "${wavepostGRD}" || -n "${waveinterpGRD}" ]]; then process_grdID "${grdID}" YMD=${PDY} HH=${cyc} GRDRESNAME=${grdNAME} declare_from_tmpl -rx \ "COMOUT_WAVE_GRID_${GRDNAME}_${GRDRES}:COM_WAVE_GRID_RES_TMPL" - out_dir_varname="${COMOUT_WAVE_GRID}_${GRDNAME}_${GRDRES}" + out_dir_varname="COMOUT_WAVE_GRID_${GRDNAME}_${GRDRES}" out_dir=${!out_dir_varname} if [[ ! -d "${out_dir}" ]]; then mkdir -p "${out_dir}"; fi done From 098ffe7b03af3478d56868dad2e5e80e961e7c08 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Sat, 11 Jan 2025 20:05:37 -0500 Subject: [PATCH 148/186] modified parm\archive\gfswave.yaml.j2 --- parm/archive/gfswave.yaml.j2 | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/parm/archive/gfswave.yaml.j2 b/parm/archive/gfswave.yaml.j2 index 7fa3f080fe..fd7426b3ff 100644 --- a/parm/archive/gfswave.yaml.j2 +++ b/parm/archive/gfswave.yaml.j2 @@ -1,12 +1,20 @@ gfswave: {% set head = "gfswave.t" + cycle_HH + "z." %} - {% set grdNAME = "global.2p00" %} + name: "GFSWAVE" target: "{{ ATARDIR }}/{{ cycle_YMDH }}/gfswave.tar" required: # Wave GRIB2 regional forecast products - {% set file_path = COMIN_WAVE_GRID ~ "/" ~ grdNAME %} - + {% set gCOM_list = gCOM.split(' ') %} + {% for grd in gCOM_list %} + {% set tmpl_dict = ({ '${ROTDIR}':ROTDIR, + '${RUN}':RUN, + '${YMD}':cycle_YMD, + '${HH}':cycle_HH, + '${MEMDIR}':'', + '${GRDRESNAME}':grd}) %} + {% set file_path = COM_WAVE_GRID_RES_TMPL | replace_tmpl(tmpl_dict) %} + {% for fh in range(0, FHMAX_HF_WAV + FHOUT_HF_WAV, FHOUT_HF_WAV) %} # NOTE This is as explicit as possible without major logic to parse wavepostGRD. # Matches files of the form "gfswave.tCCz...fHHH.grib2". @@ -31,3 +39,4 @@ gfswave: - "{{ COMIN_WAVE_STATION | relpath(ROTDIR) }}/{{ head }}ibpcbull_tar" - "{{ COMIN_WAVE_STATION | relpath(ROTDIR) }}/{{ head }}ibp_tar" {% endif %} + {% endfor %} From c31c5cb5940313c53a782314b5729466d1db6ff9 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Sat, 11 Jan 2025 20:09:03 -0500 Subject: [PATCH 149/186] changed com var in exscript and JJob --- jobs/JGLOBAL_ARCHIVE | 6 ++++-- scripts/exglobal_archive.py | 2 +- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/jobs/JGLOBAL_ARCHIVE b/jobs/JGLOBAL_ARCHIVE index a35ec92ab8..382d742300 100755 --- a/jobs/JGLOBAL_ARCHIVE +++ b/jobs/JGLOBAL_ARCHIVE @@ -50,18 +50,20 @@ for grid in "0p25" "0p50" "1p00"; do "COMIN_ATMOS_GRIB_${grid}:COM_ATMOS_GRIB_GRID_TMPL" done - +############################################################### +# Create an array of output wave grids to process if [[ -n "${wavepostGRD}" || -n "${waveinterpGRD}" ]]; then for grdID in ${wavepostGRD} ${waveinterpGRD}; do source "${USHgfs}/wave_domain_grid.sh" process_grdID "${grdID}" YMD=${PDY} HH=${cyc} GRDRESNAME=${grdNAME} declare_from_tmpl -rx \ "COMIN_WAVE_GRID_${GRDNAME}_${GRDRES}:COM_WAVE_GRID_RES_TMPL" + gCOM+="${GRDNAME}.${GRDRES}" done else echo "Both wavepostGRD and waveinterpGRD are empty. No grids to process." fi - +export gCOM="${gCOM[*]}" ############################################################### # Run archive script ############################################################### diff --git a/scripts/exglobal_archive.py b/scripts/exglobal_archive.py index ae613fb39c..6dfa1b4740 100755 --- a/scripts/exglobal_archive.py +++ b/scripts/exglobal_archive.py @@ -40,7 +40,7 @@ def main(): 'NMEM_ENS', 'DO_JEDIATMVAR', 'DO_VRFY_OCEANDA', 'FHMAX_FITS', 'waveGRD', 'IAUFHRS', 'DO_FIT2OBS', 'NET', 'FHOUT_HF_GFS', 'FHMAX_HF_GFS', 'REPLAY_ICS', 'OFFSET_START_HOUR', 'ARCH_EXPDIR', 'EXPDIR', 'ARCH_EXPDIR_FREQ', 'ARCH_HASHES', - 'ARCH_DIFFS', 'SDATE', 'EDATE', 'HOMEgfs'] + 'ARCH_DIFFS', 'SDATE', 'EDATE', 'HOMEgfs', 'gCOM'] archive_dict = AttrDict() for key in keys: From c79ee4c7501052bd0d432db7e074c433a48be129 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Sat, 11 Jan 2025 20:26:48 -0500 Subject: [PATCH 150/186] modified parm\archive\gefs_extracted_wave.yaml.j2 --- parm/archive/gefs_extracted_wave.yaml.j2 | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/parm/archive/gefs_extracted_wave.yaml.j2 b/parm/archive/gefs_extracted_wave.yaml.j2 index a756f54d26..ee41f6c0cc 100644 --- a/parm/archive/gefs_extracted_wave.yaml.j2 +++ b/parm/archive/gefs_extracted_wave.yaml.j2 @@ -37,13 +37,17 @@ gefs_wave: - "{{ file_path | relpath(ROTDIR)}}" {% endif %} - {% set COMIN_WAVE_GRID = COM_WAVE_GRID_TMPL | replace_tmpl(tmpl_dict) %} # Select grib2 files to copy to the atardir - {% if path_exists(COMIN_WAVE_GRID ~ "/" ~ grdNAME) %} + {% set gCOM_list = gCOM.split(' ') %} + {% for grd in gCOM_list %} + {% set tmpl_dict = tmpl_dict.update({'${GRDRESNAME}': grd}) %} + {% set file_path = COM_WAVE_GRID_RES_TMPL | replace_tmpl(tmpl_dict) %} + {% if path_exists(file_path) %} {% for fhr in range(ofst_hr, FHMAX_GFS + FHOUT_WAV, FHOUT_WAV) %} - {% set file_name = head ~ grdNAME ~ ".f" ~ '%03d'|format(fhr) ~ ".grib2" %} - {% set file_path = COMIN_WAVE_GRID ~ "/" ~ grdNAME ~ "/" ~ file_name %} + {% set file_name = head ~ grd ~ ".f" ~ '%03d'|format(fhr) ~ ".grib2" %} + {% set file_path = file_path ~ "/" ~ file_name %} - "{{ file_path | relpath(ROTDIR)}}" {% endfor %} {% endif %} + {% endfor %} {% endfor %} From 0e0367243018f9292489a955549b348f07529222 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Sat, 11 Jan 2025 20:40:39 -0500 Subject: [PATCH 151/186] modified wave_prdgen_gridded vars --- jobs/JGLOBAL_WAVE_PRDGEN_GRIDDED | 10 ++++++++++ parm/config/gfs/config.waveawipsgridded | 3 ++- scripts/exgfs_wave_prdgen_gridded.sh | 15 ++------------- 3 files changed, 14 insertions(+), 14 deletions(-) diff --git a/jobs/JGLOBAL_WAVE_PRDGEN_GRIDDED b/jobs/JGLOBAL_WAVE_PRDGEN_GRIDDED index 208b36c535..5e105d76b8 100755 --- a/jobs/JGLOBAL_WAVE_PRDGEN_GRIDDED +++ b/jobs/JGLOBAL_WAVE_PRDGEN_GRIDDED @@ -19,6 +19,16 @@ YMD=${PDY} HH=${cyc} declare_from_tmpl -rx \ if [[ ! -d ${COMOUT_WAVE_WMO} ]]; then mkdir -p "${COMOUT_WAVE_WMO}"; fi +if [[ -n "${GEMPACK_GRIDS}"]]; then + for grdID in ${GEMPACK_GRIDS}; do + source "${USHgfs}/wave_domain_grid.sh" + process_grdID "${grdID}" + YMD=${PDY} HH=${cyc} GRDRESNAME=${grdNAME} declare_from_tmpl -rx \ + "COMIN_WAVE_GRID_${GRDNAME}_${GRDRES}:COM_WAVE_GRID_RES_TMPL" + done +else + echo "GEMPACK_GRIDS are empty. No grids to process." +fi ################################### # Execute the Script diff --git a/parm/config/gfs/config.waveawipsgridded b/parm/config/gfs/config.waveawipsgridded index bd7c7c11e4..0e45673f8f 100644 --- a/parm/config/gfs/config.waveawipsgridded +++ b/parm/config/gfs/config.waveawipsgridded @@ -9,5 +9,6 @@ echo "BEGIN: config.waveawipsgridded" . $EXPDIR/config.resources waveawipsgridded export DBNROOT=/dev/null - +export GEMPAK_GRIDS=${GEMPAK_GRIDS:-ak_10m at_10m ep_10m wc_10m glo_30m} +# export GEMPAK_GRIDS=${GEMPAK_GRIDS:-ao_9km at_10m ep_10m wc_10m glo_30m} echo "END: config.waveawipsgridded" diff --git a/scripts/exgfs_wave_prdgen_gridded.sh b/scripts/exgfs_wave_prdgen_gridded.sh index 32e9df78c5..b041a04850 100755 --- a/scripts/exgfs_wave_prdgen_gridded.sh +++ b/scripts/exgfs_wave_prdgen_gridded.sh @@ -45,10 +45,6 @@ source "${USHgfs}/preamble.sh" export wavelog=${DATA}/${RUNwave}_prdggridded.log echo "Starting MWW3 GRIDDED PRODUCTS SCRIPT" -# Output grids - # grids=${grids:-ao_9km at_10m ep_10m wc_10m glo_30m} -grids=${grids:-ak_10m at_10m ep_10m wc_10m glo_30m} -# export grids=${wavepostGRD} maxtries=${maxtries:-720} # 0.b Date and time stuff export date=$PDY @@ -87,18 +83,11 @@ grids=${grids:-ak_10m at_10m ep_10m wc_10m glo_30m} fhcnt=$fstart while [ $fhcnt -le $FHMAX_WAV ]; do fhr=$(printf "%03d" $fhcnt) - for grdOut in $grids;do + for grdOut in $GEMPACK_GRIDS;do source "${USHgfs}/wave_domain_grid.sh" process_grdID "${grdout}" - com_varname="${COMIN_WAVE_GRID}/${grdNAME}" + com_varname="${COMIN_WAVE_GRID}_${GRDNAME}_${GRDRES}" com_dir="${!com_varname}" - if [[ ! -d "${com_dir}" ]]; then - mkdir -p -m "${com_dir}" - echo "Directory ${com_dir} created." - else - echo "Directory ${com_dir} already exists." - fi - GRIBIN="${com_dir}/${RUNwave}.${cycle}.${grdNAME}.f${fhr}.grib2" GRIBIN_chk="${GRIBIN}.idx" sleep_interval=5 From b4f277d244d3b74758d0e0270b7934da8de69ea5 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Sat, 11 Jan 2025 20:41:40 -0500 Subject: [PATCH 152/186] modified parm\archive\gefs_extracted_wave.yaml.j2 --- parm/archive/gefs_extracted_wave.yaml.j2 | 1 - 1 file changed, 1 deletion(-) diff --git a/parm/archive/gefs_extracted_wave.yaml.j2 b/parm/archive/gefs_extracted_wave.yaml.j2 index ee41f6c0cc..6e9cbd89bf 100644 --- a/parm/archive/gefs_extracted_wave.yaml.j2 +++ b/parm/archive/gefs_extracted_wave.yaml.j2 @@ -2,7 +2,6 @@ {% set cycle_YMD = current_cycle | to_YMD %} {% set cycle_YMDH = current_cycle | to_YMDH %} {% set head = RUN + "wave.t" + cycle_HH + "z." %} -{% set grdNAME = "global.5p00" %} gefs_wave: name: "GEFS_WAVE" From a18091356253f1b8da85c76b36e8bf73b0e6094a Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Sat, 11 Jan 2025 20:43:21 -0500 Subject: [PATCH 153/186] fixed a typo in jobs\JGLOBAL_WAVE_PRDGEN_GRIDDED --- jobs/JGLOBAL_WAVE_PRDGEN_GRIDDED | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/jobs/JGLOBAL_WAVE_PRDGEN_GRIDDED b/jobs/JGLOBAL_WAVE_PRDGEN_GRIDDED index 5e105d76b8..3f769045f2 100755 --- a/jobs/JGLOBAL_WAVE_PRDGEN_GRIDDED +++ b/jobs/JGLOBAL_WAVE_PRDGEN_GRIDDED @@ -19,7 +19,7 @@ YMD=${PDY} HH=${cyc} declare_from_tmpl -rx \ if [[ ! -d ${COMOUT_WAVE_WMO} ]]; then mkdir -p "${COMOUT_WAVE_WMO}"; fi -if [[ -n "${GEMPACK_GRIDS}"]]; then +if [[ -n "${GEMPACK_GRIDS}" ]]; then for grdID in ${GEMPACK_GRIDS}; do source "${USHgfs}/wave_domain_grid.sh" process_grdID "${grdID}" From 59abb669ecbec04feff504f448ea7d593ab90032 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Sat, 11 Jan 2025 20:46:46 -0500 Subject: [PATCH 154/186] modified scripts\exgfs_wave_prdgen_gridded.sh --- scripts/exgfs_wave_prdgen_gridded.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/exgfs_wave_prdgen_gridded.sh b/scripts/exgfs_wave_prdgen_gridded.sh index b041a04850..93607c2bec 100755 --- a/scripts/exgfs_wave_prdgen_gridded.sh +++ b/scripts/exgfs_wave_prdgen_gridded.sh @@ -10,7 +10,7 @@ # # # COM inputs: # # - ${com_dir}/${RUNwave}.${cycle}.${grdNAME}.f${fhr}.grib2 # -# - com_dir = ${COMIN_WAVE_GRID}/${grdNAME} # +# - com_dir is created from COM_WAVE_GRID_RES_TMPL # # COM outputs: # # - ${COMOUT_WAVE_WMO}/grib2.${cycle}.f${fhr}.awipsww3_${grdOut} # # # From 4818b545790790d8dfdf6563dcde7d761c0338a5 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Sat, 11 Jan 2025 20:51:59 -0500 Subject: [PATCH 155/186] modified ush\wave_domain_grid.sh --- ush/wave_domain_grid.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ush/wave_domain_grid.sh b/ush/wave_domain_grid.sh index 0912718695..a72c7f0aa8 100644 --- a/ush/wave_domain_grid.sh +++ b/ush/wave_domain_grid.sh @@ -36,7 +36,7 @@ process_grdID() { echo "FATAL ERROR: No grid specific wave config values exist for ${grdID}. Aborting." exit 1 ;; esac - export grdNAME="${GRDNAME}.${GRDRES}" + grdNAME="${GRDNAME}.${GRDRES}" echo "GRIDNR=${GRIDNR}" echo "MODNR=${MODNR}" } From 30fe42103b1ed940f8630c46ec81a83228a7698c Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Sat, 11 Jan 2025 20:56:21 -0500 Subject: [PATCH 156/186] modified ush\wave_domain_grid.sh --- ush/wave_domain_grid.sh | 1 + 1 file changed, 1 insertion(+) diff --git a/ush/wave_domain_grid.sh b/ush/wave_domain_grid.sh index a72c7f0aa8..3ca37b1bf1 100644 --- a/ush/wave_domain_grid.sh +++ b/ush/wave_domain_grid.sh @@ -39,4 +39,5 @@ process_grdID() { grdNAME="${GRDNAME}.${GRDRES}" echo "GRIDNR=${GRIDNR}" echo "MODNR=${MODNR}" + echo "grdNAME=${grdNAME}" } From 7cb47fa6a9aa652c085364f6787b3b58077ab415 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Sat, 11 Jan 2025 20:58:51 -0500 Subject: [PATCH 157/186] modified ush\wave_domain_grid.sh --- ush/wave_domain_grid.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ush/wave_domain_grid.sh b/ush/wave_domain_grid.sh index 3ca37b1bf1..fa6368d05c 100644 --- a/ush/wave_domain_grid.sh +++ b/ush/wave_domain_grid.sh @@ -37,7 +37,7 @@ process_grdID() { exit 1 ;; esac grdNAME="${GRDNAME}.${GRDRES}" + echo "grdNAME=${grdNAME}" echo "GRIDNR=${GRIDNR}" echo "MODNR=${MODNR}" - echo "grdNAME=${grdNAME}" } From 90c38db933ed4e40afae6cf7c264aa9ce9cd92dd Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Mon, 13 Jan 2025 08:55:01 -0500 Subject: [PATCH 158/186] DH review suggestions update --- jobs/JGLOBAL_ARCHIVE | 27 ++++++++++++++---------- jobs/JGLOBAL_WAVE_PRDGEN_GRIDDED | 6 +++--- parm/archive/gefs_extracted_wave.yaml.j2 | 6 +++--- parm/archive/gfswave.yaml.j2 | 4 ++-- scripts/exgfs_wave_prdgen_gridded.sh | 8 +++---- scripts/exglobal_archive.py | 2 +- 6 files changed, 29 insertions(+), 24 deletions(-) diff --git a/jobs/JGLOBAL_ARCHIVE b/jobs/JGLOBAL_ARCHIVE index 382d742300..e3d33ab6c2 100755 --- a/jobs/JGLOBAL_ARCHIVE +++ b/jobs/JGLOBAL_ARCHIVE @@ -52,18 +52,23 @@ done ############################################################### # Create an array of output wave grids to process -if [[ -n "${wavepostGRD}" || -n "${waveinterpGRD}" ]]; then - for grdID in ${wavepostGRD} ${waveinterpGRD}; do - source "${USHgfs}/wave_domain_grid.sh" - process_grdID "${grdID}" - YMD=${PDY} HH=${cyc} GRDRESNAME=${grdNAME} declare_from_tmpl -rx \ - "COMIN_WAVE_GRID_${GRDNAME}_${GRDRES}:COM_WAVE_GRID_RES_TMPL" - gCOM+="${GRDNAME}.${GRDRES}" - done -else - echo "Both wavepostGRD and waveinterpGRD are empty. No grids to process." +if [[ "${DO_WAVE}" == "YES" ]]; then + # Create a variable for output wave grids to process + if [[ -n "${wavepostGRD}" || -n "${waveinterpGRD}" ]]; then + for grdID in ${wavepostGRD} ${waveinterpGRD}; do + source "${USHgfs}/wave_domain_grid.sh" + process_grdID "${grdID}" + YMD=${PDY} HH=${cyc} GRDRESNAME=${grdNAME} declare_from_tmpl -rx \ + "COMIN_WAVE_GRID_${GRDNAME}_${GRDRES}:COM_WAVE_GRID_RES_TMPL" + OUT_GRIDS+=("${GRDNAME}.${GRDRES}") + done + export OUT_GRIDS="${OUT_GRIDS[*]}" + else + echo "Both wavepostGRD and waveinterpGRD are empty. No grids to process." + export OUT_GRIDS="" + fi fi -export gCOM="${gCOM[*]}" +export OUT_GRIDS="${OUT_GRIDS[*]}" ############################################################### # Run archive script ############################################################### diff --git a/jobs/JGLOBAL_WAVE_PRDGEN_GRIDDED b/jobs/JGLOBAL_WAVE_PRDGEN_GRIDDED index 3f769045f2..eae3ef89e2 100755 --- a/jobs/JGLOBAL_WAVE_PRDGEN_GRIDDED +++ b/jobs/JGLOBAL_WAVE_PRDGEN_GRIDDED @@ -19,15 +19,15 @@ YMD=${PDY} HH=${cyc} declare_from_tmpl -rx \ if [[ ! -d ${COMOUT_WAVE_WMO} ]]; then mkdir -p "${COMOUT_WAVE_WMO}"; fi -if [[ -n "${GEMPACK_GRIDS}" ]]; then - for grdID in ${GEMPACK_GRIDS}; do +if [[ -n "${GEMPAK_GRIDS}" ]]; then + for grdID in ${GEMPAK_GRIDS}; do source "${USHgfs}/wave_domain_grid.sh" process_grdID "${grdID}" YMD=${PDY} HH=${cyc} GRDRESNAME=${grdNAME} declare_from_tmpl -rx \ "COMIN_WAVE_GRID_${GRDNAME}_${GRDRES}:COM_WAVE_GRID_RES_TMPL" done else - echo "GEMPACK_GRIDS are empty. No grids to process." + echo "GEMPAK_GRIDS are empty. No grids to process." fi ################################### diff --git a/parm/archive/gefs_extracted_wave.yaml.j2 b/parm/archive/gefs_extracted_wave.yaml.j2 index 6e9cbd89bf..acdaa4e3c9 100644 --- a/parm/archive/gefs_extracted_wave.yaml.j2 +++ b/parm/archive/gefs_extracted_wave.yaml.j2 @@ -36,9 +36,9 @@ gefs_wave: - "{{ file_path | relpath(ROTDIR)}}" {% endif %} - # Select grib2 files to copy to the atardir - {% set gCOM_list = gCOM.split(' ') %} - {% for grd in gCOM_list %} + # Select grib2 files to copy to the atardir + {% set OUT_GRIDS_list = OUT_GRIDS.split(' ') %} + {% for grd in OUT_GRIDS_list %} {% set tmpl_dict = tmpl_dict.update({'${GRDRESNAME}': grd}) %} {% set file_path = COM_WAVE_GRID_RES_TMPL | replace_tmpl(tmpl_dict) %} {% if path_exists(file_path) %} diff --git a/parm/archive/gfswave.yaml.j2 b/parm/archive/gfswave.yaml.j2 index fd7426b3ff..6c57a96139 100644 --- a/parm/archive/gfswave.yaml.j2 +++ b/parm/archive/gfswave.yaml.j2 @@ -5,8 +5,8 @@ gfswave: target: "{{ ATARDIR }}/{{ cycle_YMDH }}/gfswave.tar" required: # Wave GRIB2 regional forecast products - {% set gCOM_list = gCOM.split(' ') %} - {% for grd in gCOM_list %} + {% set OUT_GRIDS_list = OUT_GRIDS.split(' ') %} + {% for grd in OUT_GRIDS_list %} {% set tmpl_dict = ({ '${ROTDIR}':ROTDIR, '${RUN}':RUN, '${YMD}':cycle_YMD, diff --git a/scripts/exgfs_wave_prdgen_gridded.sh b/scripts/exgfs_wave_prdgen_gridded.sh index 93607c2bec..d8afa8b0d4 100755 --- a/scripts/exgfs_wave_prdgen_gridded.sh +++ b/scripts/exgfs_wave_prdgen_gridded.sh @@ -9,15 +9,15 @@ # - Supplemental error output is witten to the wave.log file. # # # # COM inputs: # -# - ${com_dir}/${RUNwave}.${cycle}.${grdNAME}.f${fhr}.grib2 # -# - com_dir is created from COM_WAVE_GRID_RES_TMPL # +# - ${com_dir}/${RUNwave}.${cycle}.${grdNAME}.f${fhr}.grib2 # +# - com_dir is created from COM_WAVE_GRID_RES_TMPL # # # COM outputs: # # - ${COMOUT_WAVE_WMO}/grib2.${cycle}.f${fhr}.awipsww3_${grdOut} # # # # Origination : 05/02/2007 # # Last update : 10/08/2020 # # # -# Oct, 2020 Roberto.Padilla@noaa.gov, Henrique.HAlves@noaa.gov # +# Oct, 2020 Roberto.Padilla@noaa.gov, Henrique.HAlves@noaa.gov # # - Merging wave scripts to GFSv16 global workflow # # # ############################################################################### @@ -83,7 +83,7 @@ source "${USHgfs}/preamble.sh" fhcnt=$fstart while [ $fhcnt -le $FHMAX_WAV ]; do fhr=$(printf "%03d" $fhcnt) - for grdOut in $GEMPACK_GRIDS;do + for grdOut in $GEMPAK_GRIDS;do source "${USHgfs}/wave_domain_grid.sh" process_grdID "${grdout}" com_varname="${COMIN_WAVE_GRID}_${GRDNAME}_${GRDRES}" diff --git a/scripts/exglobal_archive.py b/scripts/exglobal_archive.py index 6dfa1b4740..e0b087bd63 100755 --- a/scripts/exglobal_archive.py +++ b/scripts/exglobal_archive.py @@ -40,7 +40,7 @@ def main(): 'NMEM_ENS', 'DO_JEDIATMVAR', 'DO_VRFY_OCEANDA', 'FHMAX_FITS', 'waveGRD', 'IAUFHRS', 'DO_FIT2OBS', 'NET', 'FHOUT_HF_GFS', 'FHMAX_HF_GFS', 'REPLAY_ICS', 'OFFSET_START_HOUR', 'ARCH_EXPDIR', 'EXPDIR', 'ARCH_EXPDIR_FREQ', 'ARCH_HASHES', - 'ARCH_DIFFS', 'SDATE', 'EDATE', 'HOMEgfs', 'gCOM'] + 'ARCH_DIFFS', 'SDATE', 'EDATE', 'HOMEgfs', 'OUT_GRIDS'] archive_dict = AttrDict() for key in keys: From a8d5638d425d3f38e0ea6cc4b4eb7ea98592e639 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Mon, 13 Jan 2025 10:23:28 -0500 Subject: [PATCH 159/186] modified jobs\JGLOBAL_ARCHIVE --- jobs/JGLOBAL_ARCHIVE | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/jobs/JGLOBAL_ARCHIVE b/jobs/JGLOBAL_ARCHIVE index e3d33ab6c2..f4a41e544d 100755 --- a/jobs/JGLOBAL_ARCHIVE +++ b/jobs/JGLOBAL_ARCHIVE @@ -55,20 +55,20 @@ done if [[ "${DO_WAVE}" == "YES" ]]; then # Create a variable for output wave grids to process if [[ -n "${wavepostGRD}" || -n "${waveinterpGRD}" ]]; then + OUT_GRIDS="" for grdID in ${wavepostGRD} ${waveinterpGRD}; do source "${USHgfs}/wave_domain_grid.sh" process_grdID "${grdID}" YMD=${PDY} HH=${cyc} GRDRESNAME=${grdNAME} declare_from_tmpl -rx \ "COMIN_WAVE_GRID_${GRDNAME}_${GRDRES}:COM_WAVE_GRID_RES_TMPL" - OUT_GRIDS+=("${GRDNAME}.${GRDRES}") + grids_arr+=("${GRDNAME}.${GRDRES}") done - export OUT_GRIDS="${OUT_GRIDS[*]}" + export OUT_GRIDS="${grids_arr[*]}" else echo "Both wavepostGRD and waveinterpGRD are empty. No grids to process." export OUT_GRIDS="" fi fi -export OUT_GRIDS="${OUT_GRIDS[*]}" ############################################################### # Run archive script ############################################################### From fa45535cf1e9efa720f94f71ad063162b2ae60b3 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Mon, 13 Jan 2025 10:32:36 -0500 Subject: [PATCH 160/186] modifed wave output grid var --- jobs/JGLOBAL_ARCHIVE | 6 +++--- parm/archive/gefs_extracted_wave.yaml.j2 | 4 ++-- parm/archive/gfswave.yaml.j2 | 4 ++-- scripts/exglobal_archive.py | 2 +- 4 files changed, 8 insertions(+), 8 deletions(-) diff --git a/jobs/JGLOBAL_ARCHIVE b/jobs/JGLOBAL_ARCHIVE index f4a41e544d..09952f38e5 100755 --- a/jobs/JGLOBAL_ARCHIVE +++ b/jobs/JGLOBAL_ARCHIVE @@ -55,7 +55,7 @@ done if [[ "${DO_WAVE}" == "YES" ]]; then # Create a variable for output wave grids to process if [[ -n "${wavepostGRD}" || -n "${waveinterpGRD}" ]]; then - OUT_GRIDS="" + WAVE_OUT_GRIDS="" for grdID in ${wavepostGRD} ${waveinterpGRD}; do source "${USHgfs}/wave_domain_grid.sh" process_grdID "${grdID}" @@ -63,10 +63,10 @@ if [[ "${DO_WAVE}" == "YES" ]]; then "COMIN_WAVE_GRID_${GRDNAME}_${GRDRES}:COM_WAVE_GRID_RES_TMPL" grids_arr+=("${GRDNAME}.${GRDRES}") done - export OUT_GRIDS="${grids_arr[*]}" + export WAVE_OUT_GRIDS="${grids_arr[*]}" else echo "Both wavepostGRD and waveinterpGRD are empty. No grids to process." - export OUT_GRIDS="" + export WAVE_OUT_GRIDS="" fi fi ############################################################### diff --git a/parm/archive/gefs_extracted_wave.yaml.j2 b/parm/archive/gefs_extracted_wave.yaml.j2 index acdaa4e3c9..969fb525dd 100644 --- a/parm/archive/gefs_extracted_wave.yaml.j2 +++ b/parm/archive/gefs_extracted_wave.yaml.j2 @@ -37,8 +37,8 @@ gefs_wave: {% endif %} # Select grib2 files to copy to the atardir - {% set OUT_GRIDS_list = OUT_GRIDS.split(' ') %} - {% for grd in OUT_GRIDS_list %} + {% set WAVE_OUT_GRIDS_list = WAVE_OUT_GRIDS.split(' ') %} + {% for grd in WAVE_OUT_GRIDS_list %} {% set tmpl_dict = tmpl_dict.update({'${GRDRESNAME}': grd}) %} {% set file_path = COM_WAVE_GRID_RES_TMPL | replace_tmpl(tmpl_dict) %} {% if path_exists(file_path) %} diff --git a/parm/archive/gfswave.yaml.j2 b/parm/archive/gfswave.yaml.j2 index 6c57a96139..550ecdb1be 100644 --- a/parm/archive/gfswave.yaml.j2 +++ b/parm/archive/gfswave.yaml.j2 @@ -5,8 +5,8 @@ gfswave: target: "{{ ATARDIR }}/{{ cycle_YMDH }}/gfswave.tar" required: # Wave GRIB2 regional forecast products - {% set OUT_GRIDS_list = OUT_GRIDS.split(' ') %} - {% for grd in OUT_GRIDS_list %} + {% set WAVE_OUT_GRIDS_list = WAVE_OUT_GRIDS.split(' ') %} + {% for grd in WAVE_OUT_GRIDS_list %} {% set tmpl_dict = ({ '${ROTDIR}':ROTDIR, '${RUN}':RUN, '${YMD}':cycle_YMD, diff --git a/scripts/exglobal_archive.py b/scripts/exglobal_archive.py index e0b087bd63..5290b1b659 100755 --- a/scripts/exglobal_archive.py +++ b/scripts/exglobal_archive.py @@ -40,7 +40,7 @@ def main(): 'NMEM_ENS', 'DO_JEDIATMVAR', 'DO_VRFY_OCEANDA', 'FHMAX_FITS', 'waveGRD', 'IAUFHRS', 'DO_FIT2OBS', 'NET', 'FHOUT_HF_GFS', 'FHMAX_HF_GFS', 'REPLAY_ICS', 'OFFSET_START_HOUR', 'ARCH_EXPDIR', 'EXPDIR', 'ARCH_EXPDIR_FREQ', 'ARCH_HASHES', - 'ARCH_DIFFS', 'SDATE', 'EDATE', 'HOMEgfs', 'OUT_GRIDS'] + 'ARCH_DIFFS', 'SDATE', 'EDATE', 'HOMEgfs', 'WAVE_OUT_GRIDS'] archive_dict = AttrDict() for key in keys: From 3078a4ef6196636e860a5536b05a946a22301d32 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Mon, 13 Jan 2025 10:34:03 -0500 Subject: [PATCH 161/186] modified jobs\JGLOBAL_ARCHIVE --- jobs/JGLOBAL_ARCHIVE | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/jobs/JGLOBAL_ARCHIVE b/jobs/JGLOBAL_ARCHIVE index 09952f38e5..b954758eca 100755 --- a/jobs/JGLOBAL_ARCHIVE +++ b/jobs/JGLOBAL_ARCHIVE @@ -52,10 +52,10 @@ done ############################################################### # Create an array of output wave grids to process +export OUT_GRIDS="" if [[ "${DO_WAVE}" == "YES" ]]; then # Create a variable for output wave grids to process if [[ -n "${wavepostGRD}" || -n "${waveinterpGRD}" ]]; then - WAVE_OUT_GRIDS="" for grdID in ${wavepostGRD} ${waveinterpGRD}; do source "${USHgfs}/wave_domain_grid.sh" process_grdID "${grdID}" @@ -63,10 +63,10 @@ if [[ "${DO_WAVE}" == "YES" ]]; then "COMIN_WAVE_GRID_${GRDNAME}_${GRDRES}:COM_WAVE_GRID_RES_TMPL" grids_arr+=("${GRDNAME}.${GRDRES}") done - export WAVE_OUT_GRIDS="${grids_arr[*]}" + export OUT_GRIDS="${grids_arr[*]}" else echo "Both wavepostGRD and waveinterpGRD are empty. No grids to process." - export WAVE_OUT_GRIDS="" + export OUT_GRIDS="" fi fi ############################################################### From 60c5802cad295d54c917f74c5be24b4fab6edbba Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Mon, 13 Jan 2025 10:43:47 -0500 Subject: [PATCH 162/186] modified OUT_GRID --- jobs/JGLOBAL_ARCHIVE | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/jobs/JGLOBAL_ARCHIVE b/jobs/JGLOBAL_ARCHIVE index b954758eca..e37dc886a9 100755 --- a/jobs/JGLOBAL_ARCHIVE +++ b/jobs/JGLOBAL_ARCHIVE @@ -52,7 +52,7 @@ done ############################################################### # Create an array of output wave grids to process -export OUT_GRIDS="" +export WAVE_OUT_GRIDS="" if [[ "${DO_WAVE}" == "YES" ]]; then # Create a variable for output wave grids to process if [[ -n "${wavepostGRD}" || -n "${waveinterpGRD}" ]]; then @@ -63,10 +63,10 @@ if [[ "${DO_WAVE}" == "YES" ]]; then "COMIN_WAVE_GRID_${GRDNAME}_${GRDRES}:COM_WAVE_GRID_RES_TMPL" grids_arr+=("${GRDNAME}.${GRDRES}") done - export OUT_GRIDS="${grids_arr[*]}" + export WAVE_OUT_GRIDS="${grids_arr[*]}" else echo "Both wavepostGRD and waveinterpGRD are empty. No grids to process." - export OUT_GRIDS="" + export WAVE_OUT_GRIDS="" fi fi ############################################################### From 580a81b39859a5415819c141ee883697ea91eb31 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Mon, 13 Jan 2025 10:45:18 -0500 Subject: [PATCH 163/186] modifed jobs\JGLOBAL_ARCHIVE --- jobs/JGLOBAL_ARCHIVE | 1 - 1 file changed, 1 deletion(-) diff --git a/jobs/JGLOBAL_ARCHIVE b/jobs/JGLOBAL_ARCHIVE index e37dc886a9..df2881b51a 100755 --- a/jobs/JGLOBAL_ARCHIVE +++ b/jobs/JGLOBAL_ARCHIVE @@ -52,7 +52,6 @@ done ############################################################### # Create an array of output wave grids to process -export WAVE_OUT_GRIDS="" if [[ "${DO_WAVE}" == "YES" ]]; then # Create a variable for output wave grids to process if [[ -n "${wavepostGRD}" || -n "${waveinterpGRD}" ]]; then From 026adc764aea022bc2bccc5bc1998eb5cd622739 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Tue, 14 Jan 2025 13:53:40 -0500 Subject: [PATCH 164/186] modified scripts\exgfs_wave_prdgen_gridded.sh --- scripts/exgfs_wave_prdgen_gridded.sh | 17 +++++------------ 1 file changed, 5 insertions(+), 12 deletions(-) diff --git a/scripts/exgfs_wave_prdgen_gridded.sh b/scripts/exgfs_wave_prdgen_gridded.sh index 9ef01c08c7..25f60c3dd9 100755 --- a/scripts/exgfs_wave_prdgen_gridded.sh +++ b/scripts/exgfs_wave_prdgen_gridded.sh @@ -89,15 +89,9 @@ grids=${grids:-ao_9km at_10m ep_10m wc_10m glo_30m} # 1.a Grib file (AWIPS and FAX charts) # Get input grid # TODO flesh this out with additional input grids if needed - case ${grid_in} in - glo_200) - grdIDin='global.2p00' ;; - glo_15mxt) - grdIDin='global.0p25' ;; - *) - echo "FATAL ERROR Unrecognized input grid ${grid_in}" - exit 2;; - esac + source "${USHgfs}/wave_domain_grid.sh" + process_grdID "${grid_in}" + grdIDin=${grdNAME} fhcnt=$fstart while [ $fhcnt -le $FHMAX_WAV ]; do @@ -113,16 +107,15 @@ grids=${grids:-ao_9km at_10m ep_10m wc_10m glo_30m} # TODO flesh this out with additional input grids if needed source "${USHgfs}/wave_domain_grid.sh" process_grdID "${grid_in}" - grdIDin=grdNAME + grdIDin=${grdNAME} fhcnt=${fstart} while [[ "${fhcnt}" -le "${FHMAX_WAV}" ]]; do fhr=$(printf "%03d" "${fhcnt}") for grdOut in ${grids}; do - case ${grdOut} in source "${USHgfs}/wave_domain_grid.sh" process_grdID "${grdout}" - grdID=grdNAME + grdID=${grdNAME} GRIBIN="${COMIN_WAVE_GRID}/${RUNwave}.${cycle}.${grdIDin}.f${fhr}.grib2" GRIBIN_chk="${GRIBIN}.idx" From 388588f86a311e5536e7b1466f2ecc5757fd7d3b Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Tue, 14 Jan 2025 13:55:22 -0500 Subject: [PATCH 165/186] modified parm\config\gfs\config.waveawipsgridded --- parm/config/gfs/config.waveawipsgridded | 1 - 1 file changed, 1 deletion(-) diff --git a/parm/config/gfs/config.waveawipsgridded b/parm/config/gfs/config.waveawipsgridded index bbff5a2194..b888d38287 100644 --- a/parm/config/gfs/config.waveawipsgridded +++ b/parm/config/gfs/config.waveawipsgridded @@ -11,7 +11,6 @@ echo "BEGIN: config.waveawipsgridded" export DBNROOT=/dev/null export GEMPAK_GRIDS=${GEMPAK_GRIDS:-ak_10m at_10m ep_10m wc_10m glo_30m} # export GEMPAK_GRIDS=${GEMPAK_GRIDS:-ao_9km at_10m ep_10m wc_10m glo_30m} -======= # AWIPS output frequency export FHMAX_HF_WAV_WMO=72 export FHMAX_WAV_WMO=180 From 74d6ff54ebb96dedf1622e3433d00f1efcd5c86f Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Tue, 14 Jan 2025 13:57:24 -0500 Subject: [PATCH 166/186] modified scripts\exgfs_wave_prdgen_gridded.sh --- scripts/exgfs_wave_prdgen_gridded.sh | 1 - 1 file changed, 1 deletion(-) diff --git a/scripts/exgfs_wave_prdgen_gridded.sh b/scripts/exgfs_wave_prdgen_gridded.sh index 25f60c3dd9..b629920608 100755 --- a/scripts/exgfs_wave_prdgen_gridded.sh +++ b/scripts/exgfs_wave_prdgen_gridded.sh @@ -102,7 +102,6 @@ grids=${grids:-ao_9km at_10m ep_10m wc_10m glo_30m} com_varname="${COMIN_WAVE_GRID}_${GRDNAME}_${GRDRES}" com_dir="${!com_varname}" GRIBIN="${com_dir}/${RUNwave}.${cycle}.${grdNAME}.f${fhr}.grib2" -======= # Get input grid # TODO flesh this out with additional input grids if needed source "${USHgfs}/wave_domain_grid.sh" From 5e0433104998d49250b746d06fbf384936fce49d Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Tue, 14 Jan 2025 14:01:04 -0500 Subject: [PATCH 167/186] modified scripts\exgfs_wave_prdgen_gridded.sh --- scripts/exgfs_wave_prdgen_gridded.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/exgfs_wave_prdgen_gridded.sh b/scripts/exgfs_wave_prdgen_gridded.sh index b629920608..f5e0d18880 100755 --- a/scripts/exgfs_wave_prdgen_gridded.sh +++ b/scripts/exgfs_wave_prdgen_gridded.sh @@ -96,7 +96,7 @@ grids=${grids:-ao_9km at_10m ep_10m wc_10m glo_30m} fhcnt=$fstart while [ $fhcnt -le $FHMAX_WAV ]; do fhr=$(printf "%03d" $fhcnt) - for grdOut in $GEMPAK_GRIDS;do + for grdOut in ${grids};do source "${USHgfs}/wave_domain_grid.sh" process_grdID "${grdout}" com_varname="${COMIN_WAVE_GRID}_${GRDNAME}_${GRDRES}" From 821f2691ea609397aef0a63bb26e45702c0ba796 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Tue, 14 Jan 2025 14:02:44 -0500 Subject: [PATCH 168/186] modified scripts\exgfs_wave_prdgen_gridded.sh --- scripts/exgfs_wave_prdgen_gridded.sh | 1 + 1 file changed, 1 insertion(+) diff --git a/scripts/exgfs_wave_prdgen_gridded.sh b/scripts/exgfs_wave_prdgen_gridded.sh index f5e0d18880..958bd68128 100755 --- a/scripts/exgfs_wave_prdgen_gridded.sh +++ b/scripts/exgfs_wave_prdgen_gridded.sh @@ -99,6 +99,7 @@ grids=${grids:-ao_9km at_10m ep_10m wc_10m glo_30m} for grdOut in ${grids};do source "${USHgfs}/wave_domain_grid.sh" process_grdID "${grdout}" + grdID=${grdNAME} com_varname="${COMIN_WAVE_GRID}_${GRDNAME}_${GRDRES}" com_dir="${!com_varname}" GRIBIN="${com_dir}/${RUNwave}.${cycle}.${grdNAME}.f${fhr}.grib2" From d54c0cbdfc87781624d4c8192ed960abbb82f14b Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Tue, 14 Jan 2025 14:09:26 -0500 Subject: [PATCH 169/186] modied scripts\exgfs_wave_prdgen_gridded.sh --- scripts/exgfs_wave_prdgen_gridded.sh | 31 +++++++--------------------- 1 file changed, 8 insertions(+), 23 deletions(-) diff --git a/scripts/exgfs_wave_prdgen_gridded.sh b/scripts/exgfs_wave_prdgen_gridded.sh index 958bd68128..64fd1e273e 100755 --- a/scripts/exgfs_wave_prdgen_gridded.sh +++ b/scripts/exgfs_wave_prdgen_gridded.sh @@ -9,15 +9,15 @@ # - Supplemental error output is witten to the wave.log file. # # # # COM inputs: # -# - ${com_dir}/${RUNwave}.${cycle}.${grdNAME}.f${fhr}.grib2 # -# - com_dir is created from COM_WAVE_GRID_RES_TMPL # # +# - ${COMIN_WAVE_GRID}/${RUNwave}.${cycle}.${grdIDin}.f${fhr}.grib2 # +# # # COM outputs: # # - ${COMOUT_WAVE_WMO}/grib2.${cycle}.f${fhr}.awipsww3_${grdOut} # # # # Origination : 05/02/2007 # # Last update : 10/08/2020 # # # -# Oct, 2020 Roberto.Padilla@noaa.gov, Henrique.HAlves@noaa.gov # +# Oct, 2020 Roberto.Padilla@noaa.gov, Henrique.HAlves@noaa.gov # # - Merging wave scripts to GFSv16 global workflow # # # ############################################################################### @@ -45,7 +45,6 @@ source "${USHgfs}/preamble.sh" export wavelog=${DATA}/${RUNwave}_prdggridded.log echo "Starting MWW3 GRIDDED PRODUCTS SCRIPT" - # Input grid grid_in="${waveinterpGRD:-glo_15mxt}" # Output grids @@ -92,22 +91,6 @@ grids=${grids:-ao_9km at_10m ep_10m wc_10m glo_30m} source "${USHgfs}/wave_domain_grid.sh" process_grdID "${grid_in}" grdIDin=${grdNAME} - - fhcnt=$fstart - while [ $fhcnt -le $FHMAX_WAV ]; do - fhr=$(printf "%03d" $fhcnt) - for grdOut in ${grids};do - source "${USHgfs}/wave_domain_grid.sh" - process_grdID "${grdout}" - grdID=${grdNAME} - com_varname="${COMIN_WAVE_GRID}_${GRDNAME}_${GRDRES}" - com_dir="${!com_varname}" - GRIBIN="${com_dir}/${RUNwave}.${cycle}.${grdNAME}.f${fhr}.grib2" - # Get input grid - # TODO flesh this out with additional input grids if needed - source "${USHgfs}/wave_domain_grid.sh" - process_grdID "${grid_in}" - grdIDin=${grdNAME} fhcnt=${fstart} while [[ "${fhcnt}" -le "${FHMAX_WAV}" ]]; do @@ -115,9 +98,11 @@ grids=${grids:-ao_9km at_10m ep_10m wc_10m glo_30m} for grdOut in ${grids}; do source "${USHgfs}/wave_domain_grid.sh" process_grdID "${grdout}" - grdID=${grdNAME} + grdIDin=${grdNAME} + com_varname="${COMIN_WAVE_GRID}_${GRDNAME}_${GRDRES}" + com_dir="${!com_varname}" - GRIBIN="${COMIN_WAVE_GRID}/${RUNwave}.${cycle}.${grdIDin}.f${fhr}.grib2" + GRIBIN="${com_dir}/${RUNwave}.${cycle}.${grdIDin}.f${fhr}.grib2" GRIBIN_chk="${GRIBIN}.idx" sleep_interval=5 max_tries=1000 @@ -240,7 +225,7 @@ grids=${grids:-ao_9km at_10m ep_10m wc_10m glo_30m} echo " Saving ${AWIPSGRB}.${grdOut}.f${fhr} as grib2.${cycle}.awipsww3_${grdID}.f${fhr}" echo " in ${COMOUT_WAVE_WMO}" #set_trace - cp "${AWIPSGRB}.${grdNAME}.f${fhr}" "${COMOUT_WAVE_WMO}/grib2.${cycle}.f${fhr}.awipsww3_${grdOut}" + cp "${AWIPSGRB}.${grdID}.f${fhr}" "${COMOUT_WAVE_WMO}/grib2.${cycle}.f${fhr}.awipsww3_${grdOut}" #set +x From 5701240db0ef29f3996f11e8f0d21f076eded90c Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Tue, 14 Jan 2025 14:13:28 -0500 Subject: [PATCH 170/186] modified scripts\exgfs_wave_prdgen_gridded.sh --- scripts/exgfs_wave_prdgen_gridded.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/exgfs_wave_prdgen_gridded.sh b/scripts/exgfs_wave_prdgen_gridded.sh index 64fd1e273e..423e490ce3 100755 --- a/scripts/exgfs_wave_prdgen_gridded.sh +++ b/scripts/exgfs_wave_prdgen_gridded.sh @@ -48,7 +48,7 @@ source "${USHgfs}/preamble.sh" # Input grid grid_in="${waveinterpGRD:-glo_15mxt}" # Output grids -grids=${grids:-ao_9km at_10m ep_10m wc_10m glo_30m} +grids=${GEMPAK_GRIDS} # export grids=${wavepostGRD} maxtries=${maxtries:-720} # 0.b Date and time stuff From 57bba27df0834bf408af9e95cf9a1ddbf3eddd26 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Tue, 14 Jan 2025 14:14:35 -0500 Subject: [PATCH 171/186] modified scripts\exgfs_wave_prdgen_gridded.sh --- scripts/exgfs_wave_prdgen_gridded.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/exgfs_wave_prdgen_gridded.sh b/scripts/exgfs_wave_prdgen_gridded.sh index 423e490ce3..42edf076c1 100755 --- a/scripts/exgfs_wave_prdgen_gridded.sh +++ b/scripts/exgfs_wave_prdgen_gridded.sh @@ -48,7 +48,7 @@ source "${USHgfs}/preamble.sh" # Input grid grid_in="${waveinterpGRD:-glo_15mxt}" # Output grids -grids=${GEMPAK_GRIDS} +grids=${GEMPAK_GRIDS:-ak_10m at_10m ep_10m wc_10m glo_30m} # export grids=${wavepostGRD} maxtries=${maxtries:-720} # 0.b Date and time stuff From e0f39710589ff165c449d6c303b2ce75d844b679 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Tue, 14 Jan 2025 14:25:23 -0500 Subject: [PATCH 172/186] modified jobs\JGLOBAL_WAVE_PRDGEN_GRIDDED --- jobs/JGLOBAL_WAVE_PRDGEN_GRIDDED | 1 - 1 file changed, 1 deletion(-) diff --git a/jobs/JGLOBAL_WAVE_PRDGEN_GRIDDED b/jobs/JGLOBAL_WAVE_PRDGEN_GRIDDED index eae3ef89e2..229c4b8f49 100755 --- a/jobs/JGLOBAL_WAVE_PRDGEN_GRIDDED +++ b/jobs/JGLOBAL_WAVE_PRDGEN_GRIDDED @@ -45,6 +45,5 @@ if [ "${KEEPDATA}" != "YES" ]; then rm -rf ${DATA} fi - exit 0 From 6bf8975b1b772bfd636c68e175abc798f86b1102 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Tue, 14 Jan 2025 14:26:38 -0500 Subject: [PATCH 173/186] modified jobs\JGLOBAL_WAVE_PRDGEN_GRIDDED --- jobs/JGLOBAL_WAVE_PRDGEN_GRIDDED | 1 - 1 file changed, 1 deletion(-) diff --git a/jobs/JGLOBAL_WAVE_PRDGEN_GRIDDED b/jobs/JGLOBAL_WAVE_PRDGEN_GRIDDED index 229c4b8f49..9a8e1a92eb 100755 --- a/jobs/JGLOBAL_WAVE_PRDGEN_GRIDDED +++ b/jobs/JGLOBAL_WAVE_PRDGEN_GRIDDED @@ -46,4 +46,3 @@ if [ "${KEEPDATA}" != "YES" ]; then fi exit 0 - From a0266cedd736ea715c784158c4ffca24fc528704 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Tue, 14 Jan 2025 14:28:33 -0500 Subject: [PATCH 174/186] modified jobs\JGLOBAL_ARCHIVE --- jobs/JGLOBAL_ARCHIVE | 1 - 1 file changed, 1 deletion(-) diff --git a/jobs/JGLOBAL_ARCHIVE b/jobs/JGLOBAL_ARCHIVE index df2881b51a..1c0fc1320c 100755 --- a/jobs/JGLOBAL_ARCHIVE +++ b/jobs/JGLOBAL_ARCHIVE @@ -87,7 +87,6 @@ if [[ -e "${pgmout}" ]] ; then cat "${pgmout}" fi - ########################################## # Remove the Temporary working directory ########################################## From e771e55d10a487f90685b4ad6a2986f15350c5dc Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Tue, 14 Jan 2025 14:33:56 -0500 Subject: [PATCH 175/186] modified jobs\JGLOBAL_ARCHIVE --- jobs/JGLOBAL_ARCHIVE | 2 -- 1 file changed, 2 deletions(-) diff --git a/jobs/JGLOBAL_ARCHIVE b/jobs/JGLOBAL_ARCHIVE index 1c0fc1320c..bc6a322e18 100755 --- a/jobs/JGLOBAL_ARCHIVE +++ b/jobs/JGLOBAL_ARCHIVE @@ -2,8 +2,6 @@ source "${HOMEgfs}/ush/preamble.sh" source "${HOMEgfs}/ush/jjob_header.sh" -e "arch" -c "base arch wave" - - ############################################## # Set variables used in the script ############################################## From 281c836e101d5b01a29b394dd5b41fa85e4efa17 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Tue, 14 Jan 2025 14:40:15 -0500 Subject: [PATCH 176/186] modified scripts\exglobal_archive.py --- scripts/exglobal_archive.py | 2 -- 1 file changed, 2 deletions(-) diff --git a/scripts/exglobal_archive.py b/scripts/exglobal_archive.py index da3344e93d..495f5eda0e 100755 --- a/scripts/exglobal_archive.py +++ b/scripts/exglobal_archive.py @@ -42,7 +42,6 @@ def main(): 'OFFSET_START_HOUR', 'ARCH_EXPDIR', 'EXPDIR', 'ARCH_EXPDIR_FREQ', 'ARCH_HASHES', 'ARCH_DIFFS', 'SDATE', 'EDATE', 'HOMEgfs', 'DO_GEMPAK', 'WAVE_OUT_GRIDS'] - archive_dict = AttrDict() for key in keys: try: @@ -70,6 +69,5 @@ def main(): # Clean up any temporary files archive.clean() - if __name__ == '__main__': main() From 3cfa069eae8688e4f2f249a426d0abf18c282aaf Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Tue, 14 Jan 2025 14:41:28 -0500 Subject: [PATCH 177/186] modified scripts\exglobal_archive.py --- scripts/exglobal_archive.py | 1 + 1 file changed, 1 insertion(+) diff --git a/scripts/exglobal_archive.py b/scripts/exglobal_archive.py index 495f5eda0e..f64db172ac 100755 --- a/scripts/exglobal_archive.py +++ b/scripts/exglobal_archive.py @@ -69,5 +69,6 @@ def main(): # Clean up any temporary files archive.clean() + if __name__ == '__main__': main() From 3d9bfdc849e7932cd7c497bef8b70bf31da0d830 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Wed, 15 Jan 2025 14:32:51 -0500 Subject: [PATCH 178/186] changed GRDNAME to GRDREGION --- jobs/JGLOBAL_ARCHIVE | 4 +-- jobs/JGLOBAL_WAVE_POST_SBS | 4 +-- jobs/JGLOBAL_WAVE_PRDGEN_GRIDDED | 2 +- scripts/exgfs_wave_post_gridded_sbs.sh | 8 ++--- scripts/exgfs_wave_prdgen_gridded.sh | 2 +- ush/wave_domain_grid.sh | 42 +++++++++++++------------- 6 files changed, 31 insertions(+), 31 deletions(-) diff --git a/jobs/JGLOBAL_ARCHIVE b/jobs/JGLOBAL_ARCHIVE index bc6a322e18..4743ffbaa0 100755 --- a/jobs/JGLOBAL_ARCHIVE +++ b/jobs/JGLOBAL_ARCHIVE @@ -57,8 +57,8 @@ if [[ "${DO_WAVE}" == "YES" ]]; then source "${USHgfs}/wave_domain_grid.sh" process_grdID "${grdID}" YMD=${PDY} HH=${cyc} GRDRESNAME=${grdNAME} declare_from_tmpl -rx \ - "COMIN_WAVE_GRID_${GRDNAME}_${GRDRES}:COM_WAVE_GRID_RES_TMPL" - grids_arr+=("${GRDNAME}.${GRDRES}") + "COMIN_WAVE_GRID_${GRDREGION}_${GRDRES}:COM_WAVE_GRID_RES_TMPL" + grids_arr+=("${GRDREGION}.${GRDRES}") done export WAVE_OUT_GRIDS="${grids_arr[*]}" else diff --git a/jobs/JGLOBAL_WAVE_POST_SBS b/jobs/JGLOBAL_WAVE_POST_SBS index cd7cb921d2..12a950f540 100755 --- a/jobs/JGLOBAL_WAVE_POST_SBS +++ b/jobs/JGLOBAL_WAVE_POST_SBS @@ -24,8 +24,8 @@ if [[ -n "${wavepostGRD}" || -n "${waveinterpGRD}" ]]; then source "${USHgfs}/wave_domain_grid.sh" process_grdID "${grdID}" YMD=${PDY} HH=${cyc} GRDRESNAME=${grdNAME} declare_from_tmpl -rx \ - "COMOUT_WAVE_GRID_${GRDNAME}_${GRDRES}:COM_WAVE_GRID_RES_TMPL" - out_dir_varname="COMOUT_WAVE_GRID_${GRDNAME}_${GRDRES}" + "COMOUT_WAVE_GRID_${GRDREGION}_${GRDRES}:COM_WAVE_GRID_RES_TMPL" + out_dir_varname="COMOUT_WAVE_GRID_${GRDREGION}_${GRDRES}" out_dir=${!out_dir_varname} if [[ ! -d "${out_dir}" ]]; then mkdir -p "${out_dir}"; fi done diff --git a/jobs/JGLOBAL_WAVE_PRDGEN_GRIDDED b/jobs/JGLOBAL_WAVE_PRDGEN_GRIDDED index 9a8e1a92eb..d310f2450e 100755 --- a/jobs/JGLOBAL_WAVE_PRDGEN_GRIDDED +++ b/jobs/JGLOBAL_WAVE_PRDGEN_GRIDDED @@ -24,7 +24,7 @@ if [[ -n "${GEMPAK_GRIDS}" ]]; then source "${USHgfs}/wave_domain_grid.sh" process_grdID "${grdID}" YMD=${PDY} HH=${cyc} GRDRESNAME=${grdNAME} declare_from_tmpl -rx \ - "COMIN_WAVE_GRID_${GRDNAME}_${GRDRES}:COM_WAVE_GRID_RES_TMPL" + "COMIN_WAVE_GRID_${GRDREGION}_${GRDRES}:COM_WAVE_GRID_RES_TMPL" done else echo "GEMPAK_GRIDS are empty. No grids to process." diff --git a/scripts/exgfs_wave_post_gridded_sbs.sh b/scripts/exgfs_wave_post_gridded_sbs.sh index c4329b2f88..1b71b9e3dc 100755 --- a/scripts/exgfs_wave_post_gridded_sbs.sh +++ b/scripts/exgfs_wave_post_gridded_sbs.sh @@ -257,7 +257,7 @@ source "${USHgfs}/preamble.sh" gribFL=\'$(echo ${OUTPARS_WAV})\' source "${USHgfs}/wave_domain_grid.sh" process_grdID "${grdID}" - echo "${USHgfs}/wave_grib2_sbs.sh $grdID $GRIDNR $MODNR $ymdh $fhr $GRDNAME $GRDRES $gribFL > grib_$grdID.out 2>&1" >> ${fcmdigrd}.${nigrd} + echo "${USHgfs}/wave_grib2_sbs.sh $grdID $GRIDNR $MODNR $ymdh $fhr $GRDREGION $GRDRES $gribFL > grib_$grdID.out 2>&1" >> ${fcmdigrd}.${nigrd} fi echo "${GRIBDATA}/${fcmdigrd}.${nigrd}" >> ${fcmdnow} chmod 744 ${fcmdigrd}.${nigrd} @@ -272,7 +272,7 @@ source "${USHgfs}/preamble.sh" gribFL=\'$(echo ${OUTPARS_WAV})\' source "${USHgfs}/wave_domain_grid.sh" process_grdID "${grdID}" - echo "${USHgfs}/wave_grib2_sbs.sh $grdID $GRIDNR $MODNR $ymdh $fhr $GRDNAME $GRDRES $gribFL > grib_$grdID.out 2>&1" >> ${fcmdnow} + echo "${USHgfs}/wave_grib2_sbs.sh $grdID $GRIDNR $MODNR $ymdh $fhr $GRDREGION $GRDRES $gribFL > grib_$grdID.out 2>&1" >> ${fcmdnow} done fi @@ -347,10 +347,10 @@ source "${USHgfs}/preamble.sh" # Check if grib2 file created ENSTAG="" - com_varname="COMOUT_WAVE_GRID_${GRDNAME}_${GRDRES}" + com_varname="COMOUT_WAVE_GRID_${GRDREGION}_${GRDRES}" com_dir=${!com_varname} if [ ${waveMEMB} ]; then ENSTAG=".${membTAG}${waveMEMB}" ; fi - gribchk="${RUN}wave.${cycle}${ENSTAG}.${GRDNAME}.${GRDRES}.f${FH3}.grib2" + gribchk="${RUN}wave.${cycle}${ENSTAG}.${GRDREGION}.${GRDRES}.f${FH3}.grib2" if [ ! -s ${com_dir}/${gribchk} ]; then set +x echo ' ' diff --git a/scripts/exgfs_wave_prdgen_gridded.sh b/scripts/exgfs_wave_prdgen_gridded.sh index 42edf076c1..c045746141 100755 --- a/scripts/exgfs_wave_prdgen_gridded.sh +++ b/scripts/exgfs_wave_prdgen_gridded.sh @@ -99,7 +99,7 @@ grids=${GEMPAK_GRIDS:-ak_10m at_10m ep_10m wc_10m glo_30m} source "${USHgfs}/wave_domain_grid.sh" process_grdID "${grdout}" grdIDin=${grdNAME} - com_varname="${COMIN_WAVE_GRID}_${GRDNAME}_${GRDRES}" + com_varname="${COMIN_WAVE_GRID}_${GRDREGION}_${GRDRES}" com_dir="${!com_varname}" GRIBIN="${com_dir}/${RUNwave}.${cycle}.${grdIDin}.f${fhr}.grib2" diff --git a/ush/wave_domain_grid.sh b/ush/wave_domain_grid.sh index fa6368d05c..bf393c5513 100644 --- a/ush/wave_domain_grid.sh +++ b/ush/wave_domain_grid.sh @@ -12,31 +12,31 @@ process_grdID() { grdID=$1 case ${grdID} in - glo_10m) GRDNAME='global' ; GRDRES=0p16 ; GRIDNR=255 ; MODNR=11 ;; - glo_15mxt) GRDNAME='global' ; GRDRES=0p25 ; GRIDNR=255 ; MODNR=11 ;; - glo_30mxt) GRDNAME='global' ; GRDRES=0p50 ; GRIDNR=255 ; MODNR=11 ;; - glo_30m) GRDNAME='global' ; GRDRES=0p50 ; GRIDNR=255 ; MODNR=11 ;; - glo_025) GRDNAME='global' ; GRDRES=0p25 ; GRIDNR=255 ; MODNR=11 ;; - glo_100) GRDNAME='global' ; GRDRES=1p00 ; GRIDNR=255 ; MODNR=11 ;; - glo_200) GRDNAME='global' ; GRDRES=2p00 ; GRIDNR=255 ; MODNR=11 ;; - glo_500) GRDNAME='global' ; GRDRES=5p00 ; GRIDNR=255 ; MODNR=11 ;; - at_10m) GRDNAME='atlocn' ; GRDRES=0p16 ; GRIDNR=255 ; MODNR=11 ;; - ep_10m) GRDNAME='epacif' ; GRDRES=0p16 ; GRIDNR=255 ; MODNR=11 ;; - wc_10m) GRDNAME='wcoast' ; GRDRES=0p16 ; GRIDNR=255 ; MODNR=11 ;; - ak_10m) GRDNAME='alaska' ; GRDRES=0p16 ; GRIDNR=255 ; MODNR=11 ;; - aoc_9km) GRDNAME='arctic' ; GRDRES=9km ; GRIDNR=255 ; MODNR=11 ;; - ant_9km) GRDNAME='antarc' ; GRDRES=9km ; GRIDNR=255 ; MODNR=11 ;; - gnh_10m) GRDNAME='global' ; GRDRES=0p16 ; GRIDNR=255 ; MODNR=11 ;; - gsh_15m) GRDNAME='gsouth' ; GRDRES=0p25 ; GRIDNR=255 ; MODNR=11 ;; - ao_20m) GRDNAME='arctic' ; GRDRES=0p33 ; GRIDNR=255 ; MODNR=11 ;; - so_20m) GRDNAME='antarc' ; GRDRES=0p33 ; GRIDNR=255 ; MODNR=11 ;; - reg025) GRDNAME='global' ; GRDRES=0p25 ; GRIDNR=255 ; MODNR=11 ;; - gwes_30m) GRDNAME='global' ; GRDRES=0p50 ; GRIDNR=255 ; MODNR=10 ;; + glo_10m) GRDREGION='global' ; GRDRES=0p16 ; GRIDNR=255 ; MODNR=11 ;; + glo_15mxt) GRDREGION='global' ; GRDRES=0p25 ; GRIDNR=255 ; MODNR=11 ;; + glo_30mxt) GRDREGION='global' ; GRDRES=0p50 ; GRIDNR=255 ; MODNR=11 ;; + glo_30m) GRDREGION='global' ; GRDRES=0p50 ; GRIDNR=255 ; MODNR=11 ;; + glo_025) GRDREGION='global' ; GRDRES=0p25 ; GRIDNR=255 ; MODNR=11 ;; + glo_100) GRDREGION='global' ; GRDRES=1p00 ; GRIDNR=255 ; MODNR=11 ;; + glo_200) GRDREGION='global' ; GRDRES=2p00 ; GRIDNR=255 ; MODNR=11 ;; + glo_500) GRDREGION='global' ; GRDRES=5p00 ; GRIDNR=255 ; MODNR=11 ;; + at_10m) GRDREGION='atlocn' ; GRDRES=0p16 ; GRIDNR=255 ; MODNR=11 ;; + ep_10m) GRDREGION='epacif' ; GRDRES=0p16 ; GRIDNR=255 ; MODNR=11 ;; + wc_10m) GRDREGION='wcoast' ; GRDRES=0p16 ; GRIDNR=255 ; MODNR=11 ;; + ak_10m) GRDREGION='alaska' ; GRDRES=0p16 ; GRIDNR=255 ; MODNR=11 ;; + aoc_9km) GRDREGION='arctic' ; GRDRES=9km ; GRIDNR=255 ; MODNR=11 ;; + ant_9km) GRDREGION='antarc' ; GRDRES=9km ; GRIDNR=255 ; MODNR=11 ;; + gnh_10m) GRDREGION='global' ; GRDRES=0p16 ; GRIDNR=255 ; MODNR=11 ;; + gsh_15m) GRDREGION='gsouth' ; GRDRES=0p25 ; GRIDNR=255 ; MODNR=11 ;; + ao_20m) GRDREGION='arctic' ; GRDRES=0p33 ; GRIDNR=255 ; MODNR=11 ;; + so_20m) GRDREGION='antarc' ; GRDRES=0p33 ; GRIDNR=255 ; MODNR=11 ;; + reg025) GRDREGION='global' ; GRDRES=0p25 ; GRIDNR=255 ; MODNR=11 ;; + gwes_30m) GRDREGION='global' ; GRDRES=0p50 ; GRIDNR=255 ; MODNR=10 ;; *) echo "FATAL ERROR: No grid specific wave config values exist for ${grdID}. Aborting." exit 1 ;; esac - grdNAME="${GRDNAME}.${GRDRES}" + grdNAME="${GRDREGION}.${GRDRES}" echo "grdNAME=${grdNAME}" echo "GRIDNR=${GRIDNR}" echo "MODNR=${MODNR}" From 2b511c21c09d68147e17d7c507911effc5b565f2 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Thu, 16 Jan 2025 12:10:06 -0500 Subject: [PATCH 179/186] modified parm\config\gfs\config.waveawipsgridded --- parm/config/gfs/config.waveawipsgridded | 1 - 1 file changed, 1 deletion(-) diff --git a/parm/config/gfs/config.waveawipsgridded b/parm/config/gfs/config.waveawipsgridded index b888d38287..a752c659af 100644 --- a/parm/config/gfs/config.waveawipsgridded +++ b/parm/config/gfs/config.waveawipsgridded @@ -8,7 +8,6 @@ echo "BEGIN: config.waveawipsgridded" # Get task specific resources . $EXPDIR/config.resources waveawipsgridded -export DBNROOT=/dev/null export GEMPAK_GRIDS=${GEMPAK_GRIDS:-ak_10m at_10m ep_10m wc_10m glo_30m} # export GEMPAK_GRIDS=${GEMPAK_GRIDS:-ao_9km at_10m ep_10m wc_10m glo_30m} # AWIPS output frequency From 083c26b577c85d82afa0fd3197eb3d2f702b9843 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Thu, 16 Jan 2025 12:18:30 -0500 Subject: [PATCH 180/186] moved source wave_domain_grid.sh --- jobs/JGLOBAL_ARCHIVE | 2 +- jobs/JGLOBAL_WAVE_POST_SBS | 2 +- jobs/JGLOBAL_WAVE_PRDGEN_GRIDDED | 4 ++-- scripts/exgfs_wave_post_gridded_sbs.sh | 3 +-- scripts/exgfs_wave_prdgen_gridded.sh | 3 +-- 5 files changed, 6 insertions(+), 8 deletions(-) diff --git a/jobs/JGLOBAL_ARCHIVE b/jobs/JGLOBAL_ARCHIVE index 4743ffbaa0..f62386cdd9 100755 --- a/jobs/JGLOBAL_ARCHIVE +++ b/jobs/JGLOBAL_ARCHIVE @@ -2,6 +2,7 @@ source "${HOMEgfs}/ush/preamble.sh" source "${HOMEgfs}/ush/jjob_header.sh" -e "arch" -c "base arch wave" +source "${USHgfs}/wave_domain_grid.sh" ############################################## # Set variables used in the script ############################################## @@ -54,7 +55,6 @@ if [[ "${DO_WAVE}" == "YES" ]]; then # Create a variable for output wave grids to process if [[ -n "${wavepostGRD}" || -n "${waveinterpGRD}" ]]; then for grdID in ${wavepostGRD} ${waveinterpGRD}; do - source "${USHgfs}/wave_domain_grid.sh" process_grdID "${grdID}" YMD=${PDY} HH=${cyc} GRDRESNAME=${grdNAME} declare_from_tmpl -rx \ "COMIN_WAVE_GRID_${GRDREGION}_${GRDRES}:COM_WAVE_GRID_RES_TMPL" diff --git a/jobs/JGLOBAL_WAVE_POST_SBS b/jobs/JGLOBAL_WAVE_POST_SBS index 12a950f540..171d160515 100755 --- a/jobs/JGLOBAL_WAVE_POST_SBS +++ b/jobs/JGLOBAL_WAVE_POST_SBS @@ -2,6 +2,7 @@ source "${HOMEgfs}/ush/preamble.sh" source "${HOMEgfs}/ush/jjob_header.sh" -e "wavepostsbs" -c "base wave wavepostsbs" +source "${USHgfs}/wave_domain_grid.sh" # Add default errchk = err_chk export errchk=${errchk:-err_chk} @@ -21,7 +22,6 @@ done if [[ -n "${wavepostGRD}" || -n "${waveinterpGRD}" ]]; then for grdID in ${wavepostGRD} ${waveinterpGRD}; do - source "${USHgfs}/wave_domain_grid.sh" process_grdID "${grdID}" YMD=${PDY} HH=${cyc} GRDRESNAME=${grdNAME} declare_from_tmpl -rx \ "COMOUT_WAVE_GRID_${GRDREGION}_${GRDRES}:COM_WAVE_GRID_RES_TMPL" diff --git a/jobs/JGLOBAL_WAVE_PRDGEN_GRIDDED b/jobs/JGLOBAL_WAVE_PRDGEN_GRIDDED index d310f2450e..f84c5abc01 100755 --- a/jobs/JGLOBAL_WAVE_PRDGEN_GRIDDED +++ b/jobs/JGLOBAL_WAVE_PRDGEN_GRIDDED @@ -2,6 +2,7 @@ source "${HOMEgfs}/ush/preamble.sh" source "${HOMEgfs}/ush/jjob_header.sh" -e "waveawipsgridded" -c "base wave waveawipsgridded" +source "${USHgfs}/wave_domain_grid.sh" # Add default errchk = err_chk export errchk=${errchk:-err_chk} @@ -20,8 +21,7 @@ YMD=${PDY} HH=${cyc} declare_from_tmpl -rx \ if [[ ! -d ${COMOUT_WAVE_WMO} ]]; then mkdir -p "${COMOUT_WAVE_WMO}"; fi if [[ -n "${GEMPAK_GRIDS}" ]]; then - for grdID in ${GEMPAK_GRIDS}; do - source "${USHgfs}/wave_domain_grid.sh" + for grdID in ${GEMPAK_GRIDS}; do process_grdID "${grdID}" YMD=${PDY} HH=${cyc} GRDRESNAME=${grdNAME} declare_from_tmpl -rx \ "COMIN_WAVE_GRID_${GRDREGION}_${GRDRES}:COM_WAVE_GRID_RES_TMPL" diff --git a/scripts/exgfs_wave_post_gridded_sbs.sh b/scripts/exgfs_wave_post_gridded_sbs.sh index 1b71b9e3dc..d5d9c29b98 100755 --- a/scripts/exgfs_wave_post_gridded_sbs.sh +++ b/scripts/exgfs_wave_post_gridded_sbs.sh @@ -33,6 +33,7 @@ # 0. Preparations source "${USHgfs}/preamble.sh" +source "${USHgfs}/wave_domain_grid.sh" # 0.a Basic modes of operation @@ -255,7 +256,6 @@ source "${USHgfs}/preamble.sh" if [ "$DOGRB_WAV" = 'YES' ] then gribFL=\'$(echo ${OUTPARS_WAV})\' - source "${USHgfs}/wave_domain_grid.sh" process_grdID "${grdID}" echo "${USHgfs}/wave_grib2_sbs.sh $grdID $GRIDNR $MODNR $ymdh $fhr $GRDREGION $GRDRES $gribFL > grib_$grdID.out 2>&1" >> ${fcmdigrd}.${nigrd} fi @@ -270,7 +270,6 @@ source "${USHgfs}/preamble.sh" for grdID in ${wavepostGRD} # First concatenate grib files for sbs grids do gribFL=\'$(echo ${OUTPARS_WAV})\' - source "${USHgfs}/wave_domain_grid.sh" process_grdID "${grdID}" echo "${USHgfs}/wave_grib2_sbs.sh $grdID $GRIDNR $MODNR $ymdh $fhr $GRDREGION $GRDRES $gribFL > grib_$grdID.out 2>&1" >> ${fcmdnow} done diff --git a/scripts/exgfs_wave_prdgen_gridded.sh b/scripts/exgfs_wave_prdgen_gridded.sh index c045746141..4e74d08e79 100755 --- a/scripts/exgfs_wave_prdgen_gridded.sh +++ b/scripts/exgfs_wave_prdgen_gridded.sh @@ -25,6 +25,7 @@ # 0. Preparations source "${USHgfs}/preamble.sh" +source "${USHgfs}/wave_domain_grid.sh" # 0.a Basic modes of operation @@ -88,7 +89,6 @@ grids=${GEMPAK_GRIDS:-ak_10m at_10m ep_10m wc_10m glo_30m} # 1.a Grib file (AWIPS and FAX charts) # Get input grid # TODO flesh this out with additional input grids if needed - source "${USHgfs}/wave_domain_grid.sh" process_grdID "${grid_in}" grdIDin=${grdNAME} @@ -96,7 +96,6 @@ grids=${GEMPAK_GRIDS:-ak_10m at_10m ep_10m wc_10m glo_30m} while [[ "${fhcnt}" -le "${FHMAX_WAV}" ]]; do fhr=$(printf "%03d" "${fhcnt}") for grdOut in ${grids}; do - source "${USHgfs}/wave_domain_grid.sh" process_grdID "${grdout}" grdIDin=${grdNAME} com_varname="${COMIN_WAVE_GRID}_${GRDREGION}_${GRDRES}" From 8615cdff2d9a1b96095766fd6567ec6b3464da3f Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Thu, 16 Jan 2025 12:21:38 -0500 Subject: [PATCH 181/186] typo fixed scripts\exgfs_wave_post_gridded_sbs.sh --- scripts/exgfs_wave_post_gridded_sbs.sh | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/scripts/exgfs_wave_post_gridded_sbs.sh b/scripts/exgfs_wave_post_gridded_sbs.sh index d5d9c29b98..83584e7a5d 100755 --- a/scripts/exgfs_wave_post_gridded_sbs.sh +++ b/scripts/exgfs_wave_post_gridded_sbs.sh @@ -239,11 +239,11 @@ source "${USHgfs}/wave_domain_grid.sh" # Gridded data (main part, need to be run side-by-side with forecast gfile="${COMIN_WAVE_HISTORY}/${WAV_MOD_TAG}.out_grd.${waveGRD}.${YMD}.${HMS}" - if [[ ! -s "${gfile}" ]]; then - echo " FATAL ERROR : NO RAW FIELD OUTPUT FILE ${gfile}" - err=3; export err; "${errchk}" - exit "${err}" - fi + if [[ ! -s "${gfile}" ]]; then + echo " FATAL ERROR : NO RAW FIELD OUTPUT FILE ${gfile}" + err=3; export err; "${errchk}" + exit "${err}" + fi ${NLN} "${gfile}" "./out_grd.${waveGRD}" if [ "$DOGRI_WAV" = 'YES' ] From 1adfe472159921d7a57601b6ed39d682768171c0 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Thu, 16 Jan 2025 17:12:34 -0500 Subject: [PATCH 182/186] modified extractvars files --- jobs/JGLOBAL_EXTRACTVARS | 5 ++ parm/archive/gefs_extracted_atmos.yaml.j2 | 86 ----------------------- parm/archive/gefs_extracted_ice.yaml.j2 | 33 --------- parm/archive/gefs_extracted_ocean.yaml.j2 | 40 ----------- parm/archive/gefs_extracted_wave.yaml.j2 | 52 -------------- ush/wave_extractvars.sh | 7 +- 6 files changed, 11 insertions(+), 212 deletions(-) delete mode 100644 parm/archive/gefs_extracted_atmos.yaml.j2 delete mode 100644 parm/archive/gefs_extracted_ice.yaml.j2 delete mode 100644 parm/archive/gefs_extracted_ocean.yaml.j2 delete mode 100644 parm/archive/gefs_extracted_wave.yaml.j2 diff --git a/jobs/JGLOBAL_EXTRACTVARS b/jobs/JGLOBAL_EXTRACTVARS index 3478ca3976..1c1a763a03 100755 --- a/jobs/JGLOBAL_EXTRACTVARS +++ b/jobs/JGLOBAL_EXTRACTVARS @@ -2,6 +2,7 @@ source "${HOMEgfs}/ush/preamble.sh" source "${HOMEgfs}/ush/jjob_header.sh" -e "extractvars" -c "base extractvars" +source "${USHgfs}/wave_domain_grid.sh" # Set COM Paths for grid in '0p25' '0p50' '1p00'; do @@ -19,6 +20,10 @@ YMD="${PDY}" HH="${cyc}" declare_from_tmpl -rx \ "COMIN_ICE_NETCDF:COM_ICE_NETCDF_TMPL" \ "COMIN_WAVE_GRID:COM_WAVE_GRID_TMPL" +process_grdID "${waveGRD}" +YMD=${PDY} HH=${cyc} GRDRESNAME=${grdNAME} declare_from_tmpl -rx \ + "COMIN_WAVE_GRID_${GRDREGION}_${GRDRES}:COM_WAVE_GRID_RES_TMPL" + if [[ "${DO_ATM}" == "YES" ]]; then if [[ ! -d "${ARC_RFCST_PROD_ATMOS_F2D}" ]]; then mkdir -p "${ARC_RFCST_PROD_ATMOS_F2D}"; fi if [[ ! -d "${ARC_RFCST_PROD_ATMOS_F3D}" ]]; then mkdir -p "${ARC_RFCST_PROD_ATMOS_F3D}"; fi diff --git a/parm/archive/gefs_extracted_atmos.yaml.j2 b/parm/archive/gefs_extracted_atmos.yaml.j2 deleted file mode 100644 index 7ceba551bf..0000000000 --- a/parm/archive/gefs_extracted_atmos.yaml.j2 +++ /dev/null @@ -1,86 +0,0 @@ -{% set cycle_HH = current_cycle | strftime("%H") %} -{% set cycle_YMD = current_cycle | to_YMD %} -{% set cycle_YMDH = current_cycle | to_YMDH %} -{% set head = RUN + ".t" + cycle_HH + "z." %} - -gefs_atmos: - name: "GEFS_ATMOS" - target: "{{ ATARDIR }}/{{ cycle_YMDH }}/gefs_atmos.tar" - required: -#select mem%03d and ensstat files required -{% set members = ["ensstat"] %} -{% for mem_nm in range(0, NMEM_ENS + 1) %} - {% do members.append("mem" ~ '%03d' % mem_nm ) %} -{% endfor %} - -{% if REPLAY_ICS %} - {% set ofst_hr = OFFSET_START_HOUR %} -{% else %} - {% set ofst_hr = FHMIN_GFS %} -{% endif %} - -{% for mem in members %} - {% for res in ['0p25', '0p50', '1p00'] %} - {% set tmpl_dict = ({ '${ROTDIR}':ROTDIR, - '${RUN}':RUN, - '${YMD}':cycle_YMD, - '${HH}':cycle_HH, - '${GRID}':res, - '${MEMDIR}':mem }) %} - - {% set COMIN_ATMOS_GRIB = COM_ATMOS_GRIB_GRID_TMPL | replace_tmpl(tmpl_dict) %} - -# Select pgrb and grib files to copy to the atardir - {% if path_exists(COMIN_ATMOS_GRIB) %} - {% if FHMAX_HF_GFS == 0 %} - {% for fhr in range(ofst_hr, FHMAX_GFS + FHOUT_GFS, FHOUT_GFS) %} - {% if mem=="ensstat" %} - {% set file_name = head ~ "mean.pres_." ~ res ~ ".f" ~ '%03d'|format(fhr) ~ ".grib2" %} - {% set file_path = COMIN_ATMOS_GRIB ~ "/" ~ file_name %} - - "{{ file_path | relpath(ROTDIR)}}" - {% else %} - {% set file_name = head ~ "pgrb2." ~ res ~ ".f" ~ '%03d'|format(fhr) %} - {% set file_path = COMIN_ATMOS_GRIB ~ "/" ~ file_name %} - - "{{ file_path | relpath(ROTDIR)}}" - {% set file_name = head ~ "pgrb2b." ~ res ~ ".f" ~ '%03d'|format(fhr) %} - {% set file_path = COMIN_ATMOS_GRIB ~ "/" ~ file_name %} - - "{{ file_path | relpath(ROTDIR)}}" - {% endif %} - {% endfor %} - {% else %} - {% if res == "0p25" %} - {% for fhr in range(ofst_hr, FHMAX_HF_GFS + FHOUT_HF_GFS, FHOUT_HF_GFS) %} - {% if mem=="ensstat" %} - {% set file_name = head ~ "mean.pres_." ~ res ~ ".f" ~ '%03d'|format(fhr) ~ ".grib2" %} - {% set file_path = COMIN_ATMOS_GRIB ~ "/" ~ file_name %} - - "{{ file_path | relpath(ROTDIR)}}" - {% else %} - {% set file_name = head ~ "pgrb2." ~ res ~ ".f" ~ '%03d'|format(fhr) %} - {% set file_path = COMIN_ATMOS_GRIB ~ "/" ~ file_name %} - - "{{ file_path | relpath(ROTDIR)}}" - {% set file_name = head ~ "pgrb2b." ~ res ~ ".f" ~ '%03d'|format(fhr) %} - {% set file_path = COMIN_ATMOS_GRIB ~ "/" ~ file_name %} - - "{{ file_path | relpath(ROTDIR)}}" - {% endif %} - {% endfor %} - {% endif %} - {% if res == "0p50" %} - {% for fhr in range(FHMAX_HF_GFS + FHOUT_GFS, FHMAX_GFS + FHOUT_GFS, FHOUT_GFS) %} - {% if mem=="ensstat" %} - {% set file_name = head ~ "mean.pres_." ~ res ~ ".f" ~ '%03d'|format(fhr) ~ ".grib2" %} - {% set file_path = COMIN_ATMOS_GRIB ~ "/" ~ file_name %} - - "{{ file_path | relpath(ROTDIR)}}" - {% else %} - {% set file_name = head ~ "pgrb2." ~ res ~ ".f" ~ '%03d'|format(fhr) %} - {% set file_path = COMIN_ATMOS_GRIB ~ "/" ~ file_name %} - - "{{ file_path | relpath(ROTDIR)}}" - {% set file_name = head ~ "pgrb2b." ~ res ~ ".f" ~ '%03d'|format(fhr) %} - {% set file_path = COMIN_ATMOS_GRIB ~ "/" ~ file_name %} - - "{{ file_path | relpath(ROTDIR)}}" - {% endif %} - {% endfor %} - {% endif %} - {% endif %} - {% endif %} - {% endfor %} -{% endfor %} diff --git a/parm/archive/gefs_extracted_ice.yaml.j2 b/parm/archive/gefs_extracted_ice.yaml.j2 deleted file mode 100644 index 786d502f23..0000000000 --- a/parm/archive/gefs_extracted_ice.yaml.j2 +++ /dev/null @@ -1,33 +0,0 @@ -{% set cycle_HH = current_cycle | strftime("%H") %} -{% set cycle_YMD = current_cycle | to_YMD %} -{% set cycle_YMDH = current_cycle | to_YMDH %} -{% set head = RUN + ".ice.t" + cycle_HH + "z." %} - -gefs_ice: - name: "GEFS_ICE" - target: "{{ ATARDIR }}/{{ cycle_YMDH }}/gefs_ice.tar" - required: -#select mem%03d and ensstat files required -{% set members = [] %} -{% for mem_nm in range(0, NMEM_ENS + 1) %} - {% do members.append("mem" ~ '%03d' % mem_nm ) %} -{% endfor %} - -{% for mem in members %} - {% set tmpl_dict = ({ '${ROTDIR}':ROTDIR, - '${RUN}':RUN, - '${YMD}':cycle_YMD, - '${HH}':cycle_HH, - '${MEMDIR}':mem }) %} - - {% set COMIN_ICE_HISTORY = COM_ICE_HISTORY_TMPL | replace_tmpl(tmpl_dict) %} - -# Select netcdf files to copy to the atardir - {% if path_exists(COMIN_ICE_HISTORY) %} - {% for fhr in range(FHMIN_GFS + FHOUT_ICE_GFS, FHMAX_GFS + FHOUT_ICE_GFS, FHOUT_ICE_GFS) %} - {% set file_name = head ~ FHOUT_ICE_GFS ~ "hr_avg" ~ ".f" ~ '%03d'|format(fhr) ~ ".nc" %} - {% set file_path = COMIN_ICE_HISTORY ~ "/" ~ file_name %} - - "{{ file_path | relpath(ROTDIR)}}" - {% endfor %} - {% endif %} -{% endfor %} diff --git a/parm/archive/gefs_extracted_ocean.yaml.j2 b/parm/archive/gefs_extracted_ocean.yaml.j2 deleted file mode 100644 index e5e3b36e3b..0000000000 --- a/parm/archive/gefs_extracted_ocean.yaml.j2 +++ /dev/null @@ -1,40 +0,0 @@ -{% set cycle_HH = current_cycle | strftime("%H") %} -{% set cycle_YMD = current_cycle | to_YMD %} -{% set cycle_YMDH = current_cycle | to_YMDH %} -{% set head = RUN + ".ocean.t" + cycle_HH + "z." %} - -gefs_ocean: - name: "GEFS_OCEAN" - target: "{{ ATARDIR }}/{{ cycle_YMDH }}/gefs_ocean.tar" - required: -#select mem%03d and ensstat files required -{% set members = [] %} -{% for mem_nm in range(0, NMEM_ENS + 1) %} - {% do members.append("mem" ~ '%03d' % mem_nm ) %} -{% endfor %} - -{% if OCNRES == "025" %} - {% set res = "1p00" %} -{% else %} - {% set res = (OCNRES|string())[0] ~ "p" ~ (OCNRES|string())[-2:] %} -{% endif %} - -{% for mem in members %} - {% set tmpl_dict = ({ '${ROTDIR}':ROTDIR, - '${RUN}':RUN, - '${YMD}':cycle_YMD, - '${HH}':cycle_HH, - '${MEMDIR}':mem }) %} - - {% set COMIN_OCEAN_NETCDF = COM_OCEAN_NETCDF_TMPL | replace_tmpl(tmpl_dict) %} - - # Select netcdf files to copy to the atardir - {% set netcdf_grid_dir = COMIN_OCEAN_NETCDF ~ "/" ~ res %} - {% if path_exists(netcdf_grid_dir) %} - {% for fhr in range(FHMIN_GFS + FHOUT_OCN_GFS, FHMAX_GFS + FHOUT_OCN_GFS, FHOUT_OCN_GFS) %} - {% set file_name = head ~ res ~ ".f" ~ '%03d'|format(fhr) ~ ".nc" %} - {% set file_path = netcdf_grid_dir ~ "/" ~ file_name %} - - "{{ file_path | relpath(ROTDIR)}}" - {% endfor %} - {% endif %} -{% endfor %} diff --git a/parm/archive/gefs_extracted_wave.yaml.j2 b/parm/archive/gefs_extracted_wave.yaml.j2 deleted file mode 100644 index 969fb525dd..0000000000 --- a/parm/archive/gefs_extracted_wave.yaml.j2 +++ /dev/null @@ -1,52 +0,0 @@ -{% set cycle_HH = current_cycle | strftime("%H") %} -{% set cycle_YMD = current_cycle | to_YMD %} -{% set cycle_YMDH = current_cycle | to_YMDH %} -{% set head = RUN + "wave.t" + cycle_HH + "z." %} - -gefs_wave: - name: "GEFS_WAVE" - target: "{{ ATARDIR }}/{{ cycle_YMDH }}/gefs_wave.tar" - required: -{% if REPLAY_ICS %} - {% set ofst_hr = OFFSET_START_HOUR %} -{% else %} - {% set ofst_hr = FHMIN_GFS %} -{% endif %} - -#select mem%03d and ensstat files required -{% set members = [] %} -{% for mem_nm in range(0, NMEM_ENS + 1) %} - {% do members.append("mem" ~ '%03d' % mem_nm ) %} -{% endfor %} - -{% for mem in members %} - {% set tmpl_dict = ({ '${ROTDIR}':ROTDIR, - '${RUN}':RUN, - '${YMD}':cycle_YMD, - '${HH}':cycle_HH, - '${MEMDIR}':mem }) %} - {% set COMIN_WAVE_STATION = COM_WAVE_STATION_TMPL | replace_tmpl(tmpl_dict) %} - # Select station files to copy to the atardir - {% if path_exists(COMIN_WAVE_STATION) %} - {% set file_path = COMIN_WAVE_STATION ~ "/" ~ RUN ~ "wave.t" ~ cycle_HH ~ "z.spec_tar.gz" %} - - "{{ file_path | relpath(ROTDIR)}}" - {% set file_path = COMIN_WAVE_STATION ~ "/" ~ RUN ~ "wave.t" ~ cycle_HH ~ "z.cbull_tar" %} - - "{{ file_path | relpath(ROTDIR)}}" - {% set file_path = COMIN_WAVE_STATION ~ "/" ~ RUN ~ "wave.t" ~ cycle_HH ~ "z.bull_tar" %} - - "{{ file_path | relpath(ROTDIR)}}" - {% endif %} - - # Select grib2 files to copy to the atardir - {% set WAVE_OUT_GRIDS_list = WAVE_OUT_GRIDS.split(' ') %} - {% for grd in WAVE_OUT_GRIDS_list %} - {% set tmpl_dict = tmpl_dict.update({'${GRDRESNAME}': grd}) %} - {% set file_path = COM_WAVE_GRID_RES_TMPL | replace_tmpl(tmpl_dict) %} - {% if path_exists(file_path) %} - {% for fhr in range(ofst_hr, FHMAX_GFS + FHOUT_WAV, FHOUT_WAV) %} - {% set file_name = head ~ grd ~ ".f" ~ '%03d'|format(fhr) ~ ".grib2" %} - {% set file_path = file_path ~ "/" ~ file_name %} - - "{{ file_path | relpath(ROTDIR)}}" - {% endfor %} - {% endif %} - {% endfor %} -{% endfor %} diff --git a/ush/wave_extractvars.sh b/ush/wave_extractvars.sh index 32ee44986b..3af57ef34c 100755 --- a/ush/wave_extractvars.sh +++ b/ush/wave_extractvars.sh @@ -10,6 +10,11 @@ ####################### source "${USHgfs}/preamble.sh" +source "${USHgfs}/wave_domain_grid.sh" + +process_grdID "${waveGRD}" +com_varname="COMOUT_WAVE_GRID_${GRDREGION}_${GRDRES}" +com_dir=${!com_varname} subdata=${1} @@ -18,7 +23,7 @@ subdata=${1} for (( nh = FHOUT_WAV_EXTRACT; nh <= FHMAX_WAV; nh = nh + FHOUT_WAV_EXTRACT )); do fnh=$(printf "%3.3d" "${nh}") - infile=${COMIN_WAVE_GRID}/${RUN}wave.t${cyc}z.global.${wavres}.f${fnh}.grib2 + infile=${com_dir}/${RUN}wave.t${cyc}z.global.${wavres}.f${fnh}.grib2 outfile=${subdata}/${RUN}wave.t${cyc}z.global.${wavres}.f${fnh}.grib2 rm -f "${outfile}" # Remove outfile if it already exists before extraction From 370840ffa9f18ec6da19783fd6bf3d4b81166c74 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Thu, 16 Jan 2025 17:38:38 -0500 Subject: [PATCH 183/186] modified GEMPAK files --- jobs/JGLOBAL_WAVE_GEMPAK | 10 ++++++++++ scripts/exgfs_wave_nawips.sh | 6 +++++- 2 files changed, 15 insertions(+), 1 deletion(-) diff --git a/jobs/JGLOBAL_WAVE_GEMPAK b/jobs/JGLOBAL_WAVE_GEMPAK index c7b615c560..98fbf42e16 100755 --- a/jobs/JGLOBAL_WAVE_GEMPAK +++ b/jobs/JGLOBAL_WAVE_GEMPAK @@ -17,6 +17,16 @@ YMD=${PDY} HH=${cyc} declare_from_tmpl -rx \ COMIN_WAVE_GRID:COM_WAVE_GRID_TMPL \ COMOUT_WAVE_GEMPAK:COM_WAVE_GEMPAK_TMPL +if [[ -n "${waveinterpGRD}" ]]; then + for grdID in ${waveinterpGRD}; do + process_grdID "${grdID}" + YMD=${PDY} HH=${cyc} GRDRESNAME=${grdNAME} declare_from_tmpl -rx \ + "COMIN_WAVE_GRID_${GRDREGION}_${GRDRES}:COM_WAVE_GRID_RES_TMPL" + done +else + echo "waveinterpGRD is empty. No grids to process." +fi + if [[ ! -d ${COMOUT_WAVE_GEMPAK} ]]; then mkdir -p "${COMOUT_WAVE_GEMPAK}"; fi ######################################################## diff --git a/scripts/exgfs_wave_nawips.sh b/scripts/exgfs_wave_nawips.sh index 68ebfc90c7..94bde4116d 100755 --- a/scripts/exgfs_wave_nawips.sh +++ b/scripts/exgfs_wave_nawips.sh @@ -12,6 +12,7 @@ ##################################################################### source "${USHgfs}/preamble.sh" +source "${USHgfs}/wave_domain_grid.sh" #export grids=${grids:-'glo_30m at_10m ep_10m wc_10m ao_9km'} #Interpolated grids export grids=${grids:-${waveinterpGRD:-'glo_30m'}} #Native grids @@ -73,7 +74,10 @@ while [ ${fhcnt} -le ${FHMAX_WAV} ]; do *) grdIDin= grdIDout= ;; esac - GRIBIN="${COMIN_WAVE_GRID}/${RUNwave}.${cycle}.${grdIDin}.f${fhr}.grib2" + process_grdID "${grid}" + com_varname="COMOUT_WAVE_GRID_${GRDREGION}_${GRDRES}" + com_dir=${!com_varname} + GRIBIN="${com_dir}/${RUNwave}.${cycle}.${grdIDin}.f${fhr}.grib2" GRIBIN_chk=${GRIBIN}.idx if ! wait_for_file "${GRIBIN_chk}" "${sleep_interval}" "${maxtries}"; then echo "FATAL ERROR: ${GRIBIN_chk} not found after waiting $((sleep_interval * ( maxtries - 1))) secs" From 87f519422faf5a62dd9ee17406b06091b64ae400 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Fri, 17 Jan 2025 11:32:18 -0500 Subject: [PATCH 184/186] modified GEMPAK scripts --- jobs/JGLOBAL_WAVE_GEMPAK | 4 ++-- parm/config/gfs/config.wavegempak | 2 ++ scripts/exgfs_wave_nawips.sh | 4 ++-- 3 files changed, 6 insertions(+), 4 deletions(-) diff --git a/jobs/JGLOBAL_WAVE_GEMPAK b/jobs/JGLOBAL_WAVE_GEMPAK index 98fbf42e16..1c01b0cf64 100755 --- a/jobs/JGLOBAL_WAVE_GEMPAK +++ b/jobs/JGLOBAL_WAVE_GEMPAK @@ -17,8 +17,8 @@ YMD=${PDY} HH=${cyc} declare_from_tmpl -rx \ COMIN_WAVE_GRID:COM_WAVE_GRID_TMPL \ COMOUT_WAVE_GEMPAK:COM_WAVE_GEMPAK_TMPL -if [[ -n "${waveinterpGRD}" ]]; then - for grdID in ${waveinterpGRD}; do +if [[ -n "${GEMPAK_GRIDS}" ]]; then + for grdID in ${GEMPAK_GRIDS}; do process_grdID "${grdID}" YMD=${PDY} HH=${cyc} GRDRESNAME=${grdNAME} declare_from_tmpl -rx \ "COMIN_WAVE_GRID_${GRDREGION}_${GRDRES}:COM_WAVE_GRID_RES_TMPL" diff --git a/parm/config/gfs/config.wavegempak b/parm/config/gfs/config.wavegempak index bcbec91f07..c0f53eb1b0 100644 --- a/parm/config/gfs/config.wavegempak +++ b/parm/config/gfs/config.wavegempak @@ -8,5 +8,7 @@ echo "BEGIN: config.wavegempak" # Get task specific resources . $EXPDIR/config.resources wavegempak +#export GEMPAK_GRIDS=${GEMPAK_GRIDS:-'glo_30m at_10m ep_10m wc_10m ao_9km'} #Interpolated grids +export GEMPAK_GRIDS=${GEMPAK_GRIDS:-${waveinterpGRD:-'glo_30m'}} echo "END: config.wavegempak" diff --git a/scripts/exgfs_wave_nawips.sh b/scripts/exgfs_wave_nawips.sh index 94bde4116d..2640cabd6c 100755 --- a/scripts/exgfs_wave_nawips.sh +++ b/scripts/exgfs_wave_nawips.sh @@ -14,8 +14,8 @@ source "${USHgfs}/preamble.sh" source "${USHgfs}/wave_domain_grid.sh" -#export grids=${grids:-'glo_30m at_10m ep_10m wc_10m ao_9km'} #Interpolated grids -export grids=${grids:-${waveinterpGRD:-'glo_30m'}} #Native grids +#export grids=${GEMPAK_GRIDS:-'glo_30m at_10m ep_10m wc_10m ao_9km'} #Interpolated grids +export grids=${GEMPAK_GRIDS:-${waveinterpGRD:-'glo_30m'}} #Native grids export RUNwave=${RUNwave:-${RUN}wave} export fstart=${fstart:-0} export FHMAX_WAV=${FHMAX_WAV:-180} #180 Total of hours to process From b523c17322a906f54e7c3aed4035ed3d3be9b6f0 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Fri, 17 Jan 2025 13:12:43 -0500 Subject: [PATCH 185/186] modified ush\wave_extractvars.sh --- ush/wave_extractvars.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ush/wave_extractvars.sh b/ush/wave_extractvars.sh index 3af57ef34c..cad65f777d 100755 --- a/ush/wave_extractvars.sh +++ b/ush/wave_extractvars.sh @@ -13,7 +13,7 @@ source "${USHgfs}/preamble.sh" source "${USHgfs}/wave_domain_grid.sh" process_grdID "${waveGRD}" -com_varname="COMOUT_WAVE_GRID_${GRDREGION}_${GRDRES}" +com_varname="COMIN_WAVE_GRID_${GRDREGION}_${GRDRES}" com_dir=${!com_varname} subdata=${1} From 919736ac8163956041d12c593756f9431273eea2 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Fri, 17 Jan 2025 13:22:16 -0500 Subject: [PATCH 186/186] modified scripts\exgfs_wave_nawips.sh --- scripts/exgfs_wave_nawips.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/exgfs_wave_nawips.sh b/scripts/exgfs_wave_nawips.sh index 2640cabd6c..f8f65a800a 100755 --- a/scripts/exgfs_wave_nawips.sh +++ b/scripts/exgfs_wave_nawips.sh @@ -75,7 +75,7 @@ while [ ${fhcnt} -le ${FHMAX_WAV} ]; do grdIDout= ;; esac process_grdID "${grid}" - com_varname="COMOUT_WAVE_GRID_${GRDREGION}_${GRDRES}" + com_varname="COMIN_WAVE_GRID_${GRDREGION}_${GRDRES}" com_dir=${!com_varname} GRIBIN="${com_dir}/${RUNwave}.${cycle}.${grdIDin}.f${fhr}.grib2" GRIBIN_chk=${GRIBIN}.idx