From 9459e9fef28b47a935dd994113f5e8c026b0225d Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Fri, 6 Sep 2024 23:54:58 -0400 Subject: [PATCH 001/127] added gefs.yaml.j2 --- parm/archive/gefs.yaml.j2 | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100644 parm/archive/gefs.yaml.j2 diff --git a/parm/archive/gefs.yaml.j2 b/parm/archive/gefs.yaml.j2 new file mode 100644 index 0000000000..cb6680827d --- /dev/null +++ b/parm/archive/gefs.yaml.j2 @@ -0,0 +1,33 @@ +{% 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: + name: "GEFS" + target: "{{ ATARDIR }}/{{ cycle_YMDH }}/gefs.tar" + required: + {% set file_set = [] %} + +{% set tmpl_dict = ({ '${ROTDIR}':ROTDIR, + '${RUN}':RUN, + '${YMD}':cycle_YMD, + '${HH}':cycle_HH, + '${GRID}': '0p50', + '${MEMDIR}': 'mem000' }) %} + +{% set COMIN_ATMOS_GRIB_1p00 = COM_ATMOS_GRIB_GRID_TMPL | replace_tmpl(tmpl_dict) %} + +# Select ensstat files to copy to the arcdir +{% if RUN == "gefs" %} + {% set ensstat_files = [] %} + {% if path_exists(COMIN_ATMOS_GRIB_1p00) %} + {% for fhr in range(FHMIN_GFS, FHMAX_GFS + FHOUT_GFS - 50, FHOUT_GFS) %} + {% do ensstat_files.append([COMIN_ATMOS_GRIB_1p00 ~ "/" ~ head ~ "pgrb2a." ~ + "1p00" ~ ".f" ~ '%03d'|format(fhr) ~ ".grib2", + GEFS_ARCH]) %} + {% endfor %} + {% endif %} +{% endif %} +{% set file_set = ensstat_files %} + - "{{ file_set }}" From c131171048ac21a5a58c0df634d0ead73446ead2 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Fri, 6 Sep 2024 23:55:15 -0400 Subject: [PATCH 002/127] added master_gefs.yaml.j2 --- parm/archive/master_gefs.yaml.j2 | 9 +++++++++ 1 file changed, 9 insertions(+) create mode 100644 parm/archive/master_gefs.yaml.j2 diff --git a/parm/archive/master_gefs.yaml.j2 b/parm/archive/master_gefs.yaml.j2 new file mode 100644 index 0000000000..b9986425f5 --- /dev/null +++ b/parm/archive/master_gefs.yaml.j2 @@ -0,0 +1,9 @@ +# Set variables/lists needed to parse the gefs templates +{% set cycle_HH = current_cycle | strftime("%H") %} +{% set cycle_YMD = current_cycle | to_YMD %} +{% set cycle_YMDH = current_cycle | to_YMDH %} + +datasets: +{% filter indent(width=4) %} +{% include "gefs.yaml.j2" %} +{% endfilter %} From e8c719b061c61f00acab787ca38a5d629938860e Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Sun, 8 Sep 2024 21:58:50 -0400 Subject: [PATCH 003/127] modifed gefs.yaml.j2 --- parm/archive/gefs.yaml.j2 | 38 +++++++++++++++++++------------------- 1 file changed, 19 insertions(+), 19 deletions(-) diff --git a/parm/archive/gefs.yaml.j2 b/parm/archive/gefs.yaml.j2 index cb6680827d..c20b0f8620 100644 --- a/parm/archive/gefs.yaml.j2 +++ b/parm/archive/gefs.yaml.j2 @@ -9,25 +9,25 @@ gefs: required: {% set file_set = [] %} -{% set tmpl_dict = ({ '${ROTDIR}':ROTDIR, - '${RUN}':RUN, - '${YMD}':cycle_YMD, - '${HH}':cycle_HH, - '${GRID}': '0p50', - '${MEMDIR}': 'mem000' }) %} + {% set tmpl_dict = ({ '${ROTDIR}':ROTDIR, + '${RUN}':RUN, + '${YMD}':cycle_YMD, + '${HH}':cycle_HH, + '${GRID}': '0p50', + '${MEMDIR}': 'mem000' }) %} -{% set COMIN_ATMOS_GRIB_1p00 = COM_ATMOS_GRIB_GRID_TMPL | replace_tmpl(tmpl_dict) %} + {% set COMIN_ATMOS_GRIB_1p00 = COM_ATMOS_GRIB_GRID_TMPL | replace_tmpl(tmpl_dict) %} -# Select ensstat files to copy to the arcdir -{% if RUN == "gefs" %} - {% set ensstat_files = [] %} - {% if path_exists(COMIN_ATMOS_GRIB_1p00) %} - {% for fhr in range(FHMIN_GFS, FHMAX_GFS + FHOUT_GFS - 50, FHOUT_GFS) %} - {% do ensstat_files.append([COMIN_ATMOS_GRIB_1p00 ~ "/" ~ head ~ "pgrb2a." ~ - "1p00" ~ ".f" ~ '%03d'|format(fhr) ~ ".grib2", - GEFS_ARCH]) %} - {% endfor %} + # Select ensstat files to copy to the arcdir + {% if RUN == "gefs" %} + {% set ensstat_files = [] %} + {% if path_exists(COMIN_ATMOS_GRIB_1p00) %} + {% for fhr in range(FHMIN_GFS, FHMAX_GFS + FHOUT_GFS - 50, FHOUT_GFS) %} + {% do ensstat_files.append([COMIN_ATMOS_GRIB_1p00 ~ "/" ~ head ~ "pgrb2a." ~ + "1p00" ~ ".f" ~ '%03d'|format(fhr) ~ ".grib2", + GEFS_ARCH]) %} + {% endfor %} + {% endif %} {% endif %} -{% endif %} -{% set file_set = ensstat_files %} - - "{{ file_set }}" + {% set file_set = ensstat_files %} + - "{{ file_set }}" From 5cb7ad60c910e18f14fd9f02391f6197aaeb8474 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Sun, 8 Sep 2024 22:09:45 -0400 Subject: [PATCH 004/127] modified ush/python/pygfs/task/archive.py --- ush/python/pygfs/task/archive.py | 3 --- 1 file changed, 3 deletions(-) diff --git a/ush/python/pygfs/task/archive.py b/ush/python/pygfs/task/archive.py index 14cd015601..d138474e9a 100644 --- a/ush/python/pygfs/task/archive.py +++ b/ush/python/pygfs/task/archive.py @@ -114,9 +114,6 @@ def configure(self, arch_dict: Dict[str, Any]) -> (Dict[str, Any], List[Dict[str self.tar_cmd = "" return arcdir_set, [] - if arch_dict.NET == "gefs": - raise NotImplementedError("GEFS archiving is not yet implemented!") - master_yaml = "master_" + arch_dict.RUN + ".yaml.j2" parsed_sets = parse_j2yaml(os.path.join(archive_parm, master_yaml), From f0e834b58afc3a806ed9f18e319a0df5fc924688 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Sun, 8 Sep 2024 22:17:01 -0400 Subject: [PATCH 005/127] modified parm\config\gefs\yaml\defaults.yaml --- parm/config/gefs/yaml/defaults.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/parm/config/gefs/yaml/defaults.yaml b/parm/config/gefs/yaml/defaults.yaml index 5ecf690e18..11dc0101b1 100644 --- a/parm/config/gefs/yaml/defaults.yaml +++ b/parm/config/gefs/yaml/defaults.yaml @@ -15,4 +15,4 @@ base: REPLAY_ICS: "NO" USE_OCN_PERTURB_FILES: "false" HPSSARCH: "NO" - LOCALARCH: "NO" + LOCALARCH: "YES" From 786bf9619fe6904f46bc08d20b35ebe467a6b942 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Mon, 9 Sep 2024 14:18:01 -0400 Subject: [PATCH 006/127] modified gefs.yaml.j2 --- parm/archive/gefs.yaml.j2 | 37 +++++++++++++++++-------------------- 1 file changed, 17 insertions(+), 20 deletions(-) diff --git a/parm/archive/gefs.yaml.j2 b/parm/archive/gefs.yaml.j2 index c20b0f8620..f638931a46 100644 --- a/parm/archive/gefs.yaml.j2 +++ b/parm/archive/gefs.yaml.j2 @@ -7,27 +7,24 @@ gefs: name: "GEFS" target: "{{ ATARDIR }}/{{ cycle_YMDH }}/gefs.tar" required: - {% set file_set = [] %} + {% set file_set = [] %} - {% set tmpl_dict = ({ '${ROTDIR}':ROTDIR, - '${RUN}':RUN, - '${YMD}':cycle_YMD, - '${HH}':cycle_HH, - '${GRID}': '0p50', - '${MEMDIR}': 'mem000' }) %} + {% set tmpl_dict = ({ '${ROTDIR}':ROTDIR, + '${RUN}':RUN, + '${YMD}':cycle_YMD, + '${HH}':cycle_HH, + '${GRID}': '0p50', + '${MEMDIR}': 'mem000' }) %} - {% set COMIN_ATMOS_GRIB_1p00 = COM_ATMOS_GRIB_GRID_TMPL | replace_tmpl(tmpl_dict) %} + {% set COMIN_ATMOS_GRIB_1p00 = COM_ATMOS_GRIB_GRID_TMPL | replace_tmpl(tmpl_dict) %} - # Select ensstat files to copy to the arcdir - {% if RUN == "gefs" %} - {% set ensstat_files = [] %} - {% if path_exists(COMIN_ATMOS_GRIB_1p00) %} - {% for fhr in range(FHMIN_GFS, FHMAX_GFS + FHOUT_GFS - 50, FHOUT_GFS) %} - {% do ensstat_files.append([COMIN_ATMOS_GRIB_1p00 ~ "/" ~ head ~ "pgrb2a." ~ - "1p00" ~ ".f" ~ '%03d'|format(fhr) ~ ".grib2", - GEFS_ARCH]) %} - {% endfor %} + # Select ensstat files to copy to the arcdir + {% if RUN == "gefs" %} + {% if path_exists(COMIN_ATMOS_GRIB_1p00) %} + {% for fhr in range(FHMIN_GFS, FHMAX_GFS + FHOUT_GFS - 70, FHOUT_GFS) %} + {% set file_set = COMIN_ATMOS_GRIB_1p00 ~ "/" ~ head ~ "pgrb2." ~ + "0p50" ~ ".f" ~ '%03d'|format(fhr) %} + - "{{ file_set }}" + {% endfor %} + {% endif %} {% endif %} - {% endif %} - {% set file_set = ensstat_files %} - - "{{ file_set }}" From 0f34d5afba866ec8b24d953ba6150eba8522222a Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Wed, 11 Sep 2024 12:48:48 -0400 Subject: [PATCH 007/127] modified gefs.yaml.j2 --- parm/archive/gefs.yaml.j2 | 23 +++++++++++++---------- 1 file changed, 13 insertions(+), 10 deletions(-) diff --git a/parm/archive/gefs.yaml.j2 b/parm/archive/gefs.yaml.j2 index f638931a46..bb81abc9d9 100644 --- a/parm/archive/gefs.yaml.j2 +++ b/parm/archive/gefs.yaml.j2 @@ -5,26 +5,29 @@ gefs: name: "GEFS" - target: "{{ ATARDIR }}/{{ cycle_YMDH }}/gefs.tar" + target: "{{ ATARDIR }}/{{ cycle_YMDH }}/gefs_atmos.tar" required: - {% set file_set = [] %} - +{% set file_set = [] %} +{% for res in ["0p25", "0p50", "1p00"] %} + {% for mem in range(1, nmem_ens + 1) %} {% set tmpl_dict = ({ '${ROTDIR}':ROTDIR, '${RUN}':RUN, '${YMD}':cycle_YMD, '${HH}':cycle_HH, - '${GRID}': '0p50', - '${MEMDIR}': 'mem000' }) %} + '${GRID}':res, + '${MEMDIR}':'%03d'|format(mem) }) %} - {% set COMIN_ATMOS_GRIB_1p00 = COM_ATMOS_GRIB_GRID_TMPL | replace_tmpl(tmpl_dict) %} + {% set COMIN_ATMOS_GRIB = COM_ATMOS_GRIB_GRID_TMPL | replace_tmpl(tmpl_dict) %} # Select ensstat files to copy to the arcdir {% if RUN == "gefs" %} - {% if path_exists(COMIN_ATMOS_GRIB_1p00) %} - {% for fhr in range(FHMIN_GFS, FHMAX_GFS + FHOUT_GFS - 70, FHOUT_GFS) %} - {% set file_set = COMIN_ATMOS_GRIB_1p00 ~ "/" ~ head ~ "pgrb2." ~ - "0p50" ~ ".f" ~ '%03d'|format(fhr) %} + {% if path_exists(COMIN_ATMOS_GRIB) %} + {% for fhr in range(FHMIN_GFS, FHMAX_GFS + FHOUT_GFS, FHOUT_GFS) %} + {% set file_set = COMIN_ATMOS_GRIB ~ "/" ~ head ~ "pgrb2b." ~ + res ~ ".f" ~ '%03d'|format(fhr) %} - "{{ file_set }}" {% endfor %} {% endif %} {% endif %} + {% endfor %} +{% endfor %} From 67a2f14a70f6671b78f6c0e92cab74559bfd6b71 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Wed, 11 Sep 2024 13:48:30 -0400 Subject: [PATCH 008/127] modified gefs.yaml.j2 --- parm/archive/gefs.yaml.j2 | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/parm/archive/gefs.yaml.j2 b/parm/archive/gefs.yaml.j2 index bb81abc9d9..9b255eaa9c 100644 --- a/parm/archive/gefs.yaml.j2 +++ b/parm/archive/gefs.yaml.j2 @@ -5,17 +5,17 @@ gefs: name: "GEFS" - target: "{{ ATARDIR }}/{{ cycle_YMDH }}/gefs_atmos.tar" + target: "{{ ATARDIR }}/{{ cycle_YMDH }}/gefs_atmos1.tar" required: {% set file_set = [] %} -{% for res in ["0p25", "0p50", "1p00"] %} - {% for mem in range(1, nmem_ens + 1) %} +{% for mem in range(1, NMEM_ENS + 1) %} + {% for res in ['0p25', '0p50', '1p00'] %} {% set tmpl_dict = ({ '${ROTDIR}':ROTDIR, '${RUN}':RUN, '${YMD}':cycle_YMD, '${HH}':cycle_HH, '${GRID}':res, - '${MEMDIR}':'%03d'|format(mem) }) %} + '${MEMDIR}':'mem%03d'|format(mem) }) %} {% set COMIN_ATMOS_GRIB = COM_ATMOS_GRIB_GRID_TMPL | replace_tmpl(tmpl_dict) %} From 93ba55523f56e1099fb658a53f4127968bb9a26c Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Wed, 11 Sep 2024 14:11:56 -0400 Subject: [PATCH 009/127] renamed gefs.yaml.j2 --- parm/archive/gefs_atmos.yaml.j2 | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100644 parm/archive/gefs_atmos.yaml.j2 diff --git a/parm/archive/gefs_atmos.yaml.j2 b/parm/archive/gefs_atmos.yaml.j2 new file mode 100644 index 0000000000..9b255eaa9c --- /dev/null +++ b/parm/archive/gefs_atmos.yaml.j2 @@ -0,0 +1,33 @@ +{% 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: + name: "GEFS" + target: "{{ ATARDIR }}/{{ cycle_YMDH }}/gefs_atmos1.tar" + required: +{% set file_set = [] %} +{% for mem in range(1, NMEM_ENS + 1) %} + {% for res in ['0p25', '0p50', '1p00'] %} + {% set tmpl_dict = ({ '${ROTDIR}':ROTDIR, + '${RUN}':RUN, + '${YMD}':cycle_YMD, + '${HH}':cycle_HH, + '${GRID}':res, + '${MEMDIR}':'mem%03d'|format(mem) }) %} + + {% set COMIN_ATMOS_GRIB = COM_ATMOS_GRIB_GRID_TMPL | replace_tmpl(tmpl_dict) %} + + # Select ensstat files to copy to the arcdir + {% if RUN == "gefs" %} + {% if path_exists(COMIN_ATMOS_GRIB) %} + {% for fhr in range(FHMIN_GFS, FHMAX_GFS + FHOUT_GFS, FHOUT_GFS) %} + {% set file_set = COMIN_ATMOS_GRIB ~ "/" ~ head ~ "pgrb2b." ~ + res ~ ".f" ~ '%03d'|format(fhr) %} + - "{{ file_set }}" + {% endfor %} + {% endif %} + {% endif %} + {% endfor %} +{% endfor %} From 85deb262f7364b2b7ed4af559d1bcb0b0e93f606 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Wed, 11 Sep 2024 14:17:38 -0400 Subject: [PATCH 010/127] modified gefs_atmos.yaml.j2 --- parm/archive/gefs_atmos.yaml.j2 | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/parm/archive/gefs_atmos.yaml.j2 b/parm/archive/gefs_atmos.yaml.j2 index 9b255eaa9c..a72e0ee71d 100644 --- a/parm/archive/gefs_atmos.yaml.j2 +++ b/parm/archive/gefs_atmos.yaml.j2 @@ -19,11 +19,11 @@ gefs: {% set COMIN_ATMOS_GRIB = COM_ATMOS_GRIB_GRID_TMPL | replace_tmpl(tmpl_dict) %} - # Select ensstat files to copy to the arcdir + # Select pgrb files to copy to the atardir {% if RUN == "gefs" %} {% if path_exists(COMIN_ATMOS_GRIB) %} {% for fhr in range(FHMIN_GFS, FHMAX_GFS + FHOUT_GFS, FHOUT_GFS) %} - {% set file_set = COMIN_ATMOS_GRIB ~ "/" ~ head ~ "pgrb2b." ~ + {% set file_set = {{ COMIN_ATMOS_GRIB | relpath(ATARDIR) }} ~ "/" ~ head ~ "pgrb2b." ~ res ~ ".f" ~ '%03d'|format(fhr) %} - "{{ file_set }}" {% endfor %} From 80f47c1717fdafa17e78b5db2ae8022d5467fd9a Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Wed, 11 Sep 2024 14:20:33 -0400 Subject: [PATCH 011/127] modifed master_gefs.yaml.j2 --- parm/archive/master_gefs.yaml.j2 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/parm/archive/master_gefs.yaml.j2 b/parm/archive/master_gefs.yaml.j2 index b9986425f5..250e1f258b 100644 --- a/parm/archive/master_gefs.yaml.j2 +++ b/parm/archive/master_gefs.yaml.j2 @@ -5,5 +5,5 @@ datasets: {% filter indent(width=4) %} -{% include "gefs.yaml.j2" %} +{% include "gefs_atmos.yaml.j2" %} {% endfilter %} From 6baa6caf803433f1939a4c7c6131c0f006684782 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Wed, 11 Sep 2024 14:35:16 -0400 Subject: [PATCH 012/127] modified gefs_atmos.yaml.j2 --- parm/archive/gefs_atmos.yaml.j2 | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/parm/archive/gefs_atmos.yaml.j2 b/parm/archive/gefs_atmos.yaml.j2 index a72e0ee71d..3c277fb0a2 100644 --- a/parm/archive/gefs_atmos.yaml.j2 +++ b/parm/archive/gefs_atmos.yaml.j2 @@ -23,9 +23,9 @@ gefs: {% if RUN == "gefs" %} {% if path_exists(COMIN_ATMOS_GRIB) %} {% for fhr in range(FHMIN_GFS, FHMAX_GFS + FHOUT_GFS, FHOUT_GFS) %} - {% set file_set = {{ COMIN_ATMOS_GRIB | relpath(ATARDIR) }} ~ "/" ~ head ~ "pgrb2b." ~ + {% set file_set = COMIN_ATMOS_GRIB | relpath(ATARDIR) ~ "/" ~ head ~ "pgrb2b." ~ res ~ ".f" ~ '%03d'|format(fhr) %} - - "{{ file_set }}" + - "{{ file_set | relpath(ROTDIR)}}" {% endfor %} {% endif %} {% endif %} From 61e03310ef2d8e183fa99222cc9eca30eba9b9e6 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Wed, 11 Sep 2024 14:36:22 -0400 Subject: [PATCH 013/127] deleted gefs.yaml.j2 --- parm/archive/gefs.yaml.j2 | 33 --------------------------------- 1 file changed, 33 deletions(-) delete mode 100644 parm/archive/gefs.yaml.j2 diff --git a/parm/archive/gefs.yaml.j2 b/parm/archive/gefs.yaml.j2 deleted file mode 100644 index 9b255eaa9c..0000000000 --- a/parm/archive/gefs.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 + ".t" + cycle_HH + "z." %} - -gefs: - name: "GEFS" - target: "{{ ATARDIR }}/{{ cycle_YMDH }}/gefs_atmos1.tar" - required: -{% set file_set = [] %} -{% for mem in range(1, NMEM_ENS + 1) %} - {% for res in ['0p25', '0p50', '1p00'] %} - {% set tmpl_dict = ({ '${ROTDIR}':ROTDIR, - '${RUN}':RUN, - '${YMD}':cycle_YMD, - '${HH}':cycle_HH, - '${GRID}':res, - '${MEMDIR}':'mem%03d'|format(mem) }) %} - - {% set COMIN_ATMOS_GRIB = COM_ATMOS_GRIB_GRID_TMPL | replace_tmpl(tmpl_dict) %} - - # Select ensstat files to copy to the arcdir - {% if RUN == "gefs" %} - {% if path_exists(COMIN_ATMOS_GRIB) %} - {% for fhr in range(FHMIN_GFS, FHMAX_GFS + FHOUT_GFS, FHOUT_GFS) %} - {% set file_set = COMIN_ATMOS_GRIB ~ "/" ~ head ~ "pgrb2b." ~ - res ~ ".f" ~ '%03d'|format(fhr) %} - - "{{ file_set }}" - {% endfor %} - {% endif %} - {% endif %} - {% endfor %} -{% endfor %} From 16a74e09521d24bcae12624df23ec92ba54c248d Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Wed, 11 Sep 2024 14:40:39 -0400 Subject: [PATCH 014/127] modified gefs_atmos.yaml.j2 --- parm/archive/gefs_atmos.yaml.j2 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/parm/archive/gefs_atmos.yaml.j2 b/parm/archive/gefs_atmos.yaml.j2 index 3c277fb0a2..8a3eb5fa56 100644 --- a/parm/archive/gefs_atmos.yaml.j2 +++ b/parm/archive/gefs_atmos.yaml.j2 @@ -5,7 +5,7 @@ gefs: name: "GEFS" - target: "{{ ATARDIR }}/{{ cycle_YMDH }}/gefs_atmos1.tar" + target: "{{ ATARDIR }}/{{ cycle_YMDH }}/gefs_atmos.tar" required: {% set file_set = [] %} {% for mem in range(1, NMEM_ENS + 1) %} From 212f0ad7c4604df2648893828094b412bea7a447 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Wed, 11 Sep 2024 14:48:48 -0400 Subject: [PATCH 015/127] modified gefs_atmos.yaml.j2 --- parm/archive/gefs_atmos.yaml.j2 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/parm/archive/gefs_atmos.yaml.j2 b/parm/archive/gefs_atmos.yaml.j2 index 8a3eb5fa56..ec5cf32e8f 100644 --- a/parm/archive/gefs_atmos.yaml.j2 +++ b/parm/archive/gefs_atmos.yaml.j2 @@ -23,7 +23,7 @@ gefs: {% if RUN == "gefs" %} {% if path_exists(COMIN_ATMOS_GRIB) %} {% for fhr in range(FHMIN_GFS, FHMAX_GFS + FHOUT_GFS, FHOUT_GFS) %} - {% set file_set = COMIN_ATMOS_GRIB | relpath(ATARDIR) ~ "/" ~ head ~ "pgrb2b." ~ + {% set file_set = COMIN_ATMOS_GRIB ~ "/" ~ head ~ "pgrb2b." ~ res ~ ".f" ~ '%03d'|format(fhr) %} - "{{ file_set | relpath(ROTDIR)}}" {% endfor %} From 8de666a058d5e7e9a8339051de098e8b806f221e Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Wed, 11 Sep 2024 15:56:01 -0400 Subject: [PATCH 016/127] modified gefs_Atmos.yaml.j2 --- parm/archive/gefs_atmos.yaml.j2 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/parm/archive/gefs_atmos.yaml.j2 b/parm/archive/gefs_atmos.yaml.j2 index ec5cf32e8f..69fb46c276 100644 --- a/parm/archive/gefs_atmos.yaml.j2 +++ b/parm/archive/gefs_atmos.yaml.j2 @@ -23,7 +23,7 @@ gefs: {% if RUN == "gefs" %} {% if path_exists(COMIN_ATMOS_GRIB) %} {% for fhr in range(FHMIN_GFS, FHMAX_GFS + FHOUT_GFS, FHOUT_GFS) %} - {% set file_set = COMIN_ATMOS_GRIB ~ "/" ~ head ~ "pgrb2b." ~ + {% set file_set = COMIN_ATMOS_GRIB ~ "/" ~ head ~ "pgrb2." ~ res ~ ".f" ~ '%03d'|format(fhr) %} - "{{ file_set | relpath(ROTDIR)}}" {% endfor %} From 5e71e3b5ceddfb8c79aaee9d96dbdc05ccd403a4 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Wed, 11 Sep 2024 16:39:49 -0400 Subject: [PATCH 017/127] modified gefs_atmos.yaml.j2 --- parm/archive/gefs_atmos.yaml.j2 | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/parm/archive/gefs_atmos.yaml.j2 b/parm/archive/gefs_atmos.yaml.j2 index 69fb46c276..1a31639243 100644 --- a/parm/archive/gefs_atmos.yaml.j2 +++ b/parm/archive/gefs_atmos.yaml.j2 @@ -7,6 +7,7 @@ gefs: name: "GEFS" target: "{{ ATARDIR }}/{{ cycle_YMDH }}/gefs_atmos.tar" required: +#mem%03d files required {% set file_set = [] %} {% for mem in range(1, NMEM_ENS + 1) %} {% for res in ['0p25', '0p50', '1p00'] %} @@ -31,3 +32,26 @@ gefs: {% endif %} {% endfor %} {% endfor %} + +#ensstat files required +{% for res in ['0p25', '0p50', '1p00'] %} + {% set tmpl_dict = ({ '${ROTDIR}':ROTDIR, + '${RUN}':RUN, + '${YMD}':cycle_YMD, + '${HH}':cycle_HH, + '${GRID}':res, + '${MEMDIR}':'ensstat' }) %} + + {% set COMIN_ATMOS_GRIB = COM_ATMOS_GRIB_GRID_TMPL | replace_tmpl(tmpl_dict) %} + + # Select pgrb files to copy to the atardir + {% if RUN == "gefs" %} + {% if path_exists(COMIN_ATMOS_GRIB) %} + {% for fhr in range(FHMIN_GFS, FHMAX_GFS + FHOUT_GFS, FHOUT_GFS) %} + {% set file_set = COMIN_ATMOS_GRIB ~ "/" ~ head ~ "pgrb2." ~ + res ~ ".f" ~ '%03d'|format(fhr) %} + - "{{ file_set | relpath(ROTDIR)}}" + {% endfor %} + {% endif %} + {% endif %} +{% endfor %} From 29b5b99eb6ac2e1a3d6e7cd19d97efdd3ff361a7 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Wed, 11 Sep 2024 17:24:02 -0400 Subject: [PATCH 018/127] modified gefs_atmos.yaml.j2 --- parm/archive/gefs_atmos.yaml.j2 | 42 +++++++++++---------------------- 1 file changed, 14 insertions(+), 28 deletions(-) diff --git a/parm/archive/gefs_atmos.yaml.j2 b/parm/archive/gefs_atmos.yaml.j2 index 1a31639243..a70986b871 100644 --- a/parm/archive/gefs_atmos.yaml.j2 +++ b/parm/archive/gefs_atmos.yaml.j2 @@ -7,51 +7,37 @@ gefs: name: "GEFS" target: "{{ ATARDIR }}/{{ cycle_YMDH }}/gefs_atmos.tar" required: -#mem%03d files required +#select mem%03d and ensstat files required {% set file_set = [] %} +{% set membr = ["ensstat"] %} {% for mem in range(1, NMEM_ENS + 1) %} + {% do membr.append("mem{{ '%03d' % mem }}") %} +{% endfor %} + +{% for mem in membr %} {% for res in ['0p25', '0p50', '1p00'] %} {% set tmpl_dict = ({ '${ROTDIR}':ROTDIR, '${RUN}':RUN, '${YMD}':cycle_YMD, '${HH}':cycle_HH, '${GRID}':res, - '${MEMDIR}':'mem%03d'|format(mem) }) %} + '${MEMDIR}':mem }) %} {% set COMIN_ATMOS_GRIB = COM_ATMOS_GRIB_GRID_TMPL | replace_tmpl(tmpl_dict) %} - # Select pgrb files to copy to the atardir + # Select pgrb and grib files to copy to the atardir {% if RUN == "gefs" %} {% if path_exists(COMIN_ATMOS_GRIB) %} {% for fhr in range(FHMIN_GFS, FHMAX_GFS + FHOUT_GFS, FHOUT_GFS) %} - {% set file_set = COMIN_ATMOS_GRIB ~ "/" ~ head ~ "pgrb2." ~ - res ~ ".f" ~ '%03d'|format(fhr) %} + {% if membr=="ensstat" %} + {% set file_name = head ~ "mean.pres_." ~ res ~ ".f" ~ '%03d'|format(fhr) ~ ".grib2" %} + {% else%} + {% set file_name = head ~ "pgrb2." ~ res ~ ".f" ~ '%03d'|format(fhr) %} + {% endif %} + {% set file_set = COMIN_ATMOS_GRIB ~ "/" ~ file_name %} - "{{ file_set | relpath(ROTDIR)}}" {% endfor %} {% endif %} {% endif %} {% endfor %} {% endfor %} - -#ensstat files required -{% for res in ['0p25', '0p50', '1p00'] %} - {% set tmpl_dict = ({ '${ROTDIR}':ROTDIR, - '${RUN}':RUN, - '${YMD}':cycle_YMD, - '${HH}':cycle_HH, - '${GRID}':res, - '${MEMDIR}':'ensstat' }) %} - - {% set COMIN_ATMOS_GRIB = COM_ATMOS_GRIB_GRID_TMPL | replace_tmpl(tmpl_dict) %} - - # Select pgrb files to copy to the atardir - {% if RUN == "gefs" %} - {% if path_exists(COMIN_ATMOS_GRIB) %} - {% for fhr in range(FHMIN_GFS, FHMAX_GFS + FHOUT_GFS, FHOUT_GFS) %} - {% set file_set = COMIN_ATMOS_GRIB ~ "/" ~ head ~ "pgrb2." ~ - res ~ ".f" ~ '%03d'|format(fhr) %} - - "{{ file_set | relpath(ROTDIR)}}" - {% endfor %} - {% endif %} - {% endif %} -{% endfor %} From 16482dba5d774696babbb920dcd1d7b40ecaddbf Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Thu, 12 Sep 2024 13:12:54 -0400 Subject: [PATCH 019/127] modified gefs_atmos.yaml.j2 --- parm/archive/gefs_atmos.yaml.j2 | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/parm/archive/gefs_atmos.yaml.j2 b/parm/archive/gefs_atmos.yaml.j2 index a70986b871..020a2d6a98 100644 --- a/parm/archive/gefs_atmos.yaml.j2 +++ b/parm/archive/gefs_atmos.yaml.j2 @@ -9,10 +9,7 @@ gefs: required: #select mem%03d and ensstat files required {% set file_set = [] %} -{% set membr = ["ensstat"] %} -{% for mem in range(1, NMEM_ENS + 1) %} - {% do membr.append("mem{{ '%03d' % mem }}") %} -{% endfor %} +{% set membr = ["ensstat", "mem000", "mem001", "mem002"] %} {% for mem in membr %} {% for res in ['0p25', '0p50', '1p00'] %} @@ -29,13 +26,18 @@ gefs: {% if RUN == "gefs" %} {% if path_exists(COMIN_ATMOS_GRIB) %} {% for fhr in range(FHMIN_GFS, FHMAX_GFS + FHOUT_GFS, FHOUT_GFS) %} - {% if membr=="ensstat" %} + {% if mem=="ensstat" %} {% set file_name = head ~ "mean.pres_." ~ res ~ ".f" ~ '%03d'|format(fhr) ~ ".grib2" %} - {% else%} + {% set file_set = COMIN_ATMOS_GRIB ~ "/" ~ file_name %} + - "{{ file_set | relpath(ROTDIR)}}" + {% else %} {% set file_name = head ~ "pgrb2." ~ res ~ ".f" ~ '%03d'|format(fhr) %} + {% set file_set = COMIN_ATMOS_GRIB ~ "/" ~ file_name %} + - "{{ file_set | relpath(ROTDIR)}}" + {% set file_name = head ~ "pgrb2b." ~ res ~ ".f" ~ '%03d'|format(fhr) %} + {% set file_set = COMIN_ATMOS_GRIB ~ "/" ~ file_name %} + - "{{ file_set | relpath(ROTDIR)}}" {% endif %} - {% set file_set = COMIN_ATMOS_GRIB ~ "/" ~ file_name %} - - "{{ file_set | relpath(ROTDIR)}}" {% endfor %} {% endif %} {% endif %} From 50d21d8a51e5b1ffc538cd2fdd5826ef78511f91 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Thu, 12 Sep 2024 14:08:55 -0400 Subject: [PATCH 020/127] modified gefs_atmos.yaml.j2 --- parm/archive/gefs_atmos.yaml.j2 | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/parm/archive/gefs_atmos.yaml.j2 b/parm/archive/gefs_atmos.yaml.j2 index 020a2d6a98..6bbf49d74b 100644 --- a/parm/archive/gefs_atmos.yaml.j2 +++ b/parm/archive/gefs_atmos.yaml.j2 @@ -9,7 +9,10 @@ gefs: required: #select mem%03d and ensstat files required {% set file_set = [] %} -{% set membr = ["ensstat", "mem000", "mem001", "mem002"] %} +{% set membr = ["ensstat"] %} +{% for mem_nm in range(0, NMEM_ENS + 1) %} + {% do membr.append("mem" ~ '%03d' % mem_nm ) %} +{% endfor %} {% for mem in membr %} {% for res in ['0p25', '0p50', '1p00'] %} From b2c84e6c8091c0a516da952df9c682de7367e27f Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Thu, 12 Sep 2024 14:43:15 -0400 Subject: [PATCH 021/127] modified gefs_ocean.yaml.j2 --- parm/archive/master_gefs.yaml.j2 | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/parm/archive/master_gefs.yaml.j2 b/parm/archive/master_gefs.yaml.j2 index 250e1f258b..3a94753d26 100644 --- a/parm/archive/master_gefs.yaml.j2 +++ b/parm/archive/master_gefs.yaml.j2 @@ -7,3 +7,7 @@ datasets: {% filter indent(width=4) %} {% include "gefs_atmos.yaml.j2" %} {% endfilter %} + +{% filter indent(width=4) %} +{% include "gefs_ocean.yaml.j2" %} +{% endfilter %} \ No newline at end of file From 29944bdc9ea73471db67a5b542157fd14cf9659f Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Thu, 12 Sep 2024 14:43:50 -0400 Subject: [PATCH 022/127] modified gefs_atmos.yaml.j2 --- parm/archive/master_gefs.yaml.j2 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/parm/archive/master_gefs.yaml.j2 b/parm/archive/master_gefs.yaml.j2 index 3a94753d26..47b773e2d2 100644 --- a/parm/archive/master_gefs.yaml.j2 +++ b/parm/archive/master_gefs.yaml.j2 @@ -10,4 +10,4 @@ datasets: {% filter indent(width=4) %} {% include "gefs_ocean.yaml.j2" %} -{% endfilter %} \ No newline at end of file +{% endfilter %} From 8e41826fd35bed400446a2cfac18c24b80847d7b Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Thu, 12 Sep 2024 14:44:12 -0400 Subject: [PATCH 023/127] added gefs_ocean.yaml.j2 --- parm/archive/gefs_ocean.yaml.j2 | 37 +++++++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) create mode 100644 parm/archive/gefs_ocean.yaml.j2 diff --git a/parm/archive/gefs_ocean.yaml.j2 b/parm/archive/gefs_ocean.yaml.j2 new file mode 100644 index 0000000000..984ca3a1f9 --- /dev/null +++ b/parm/archive/gefs_ocean.yaml.j2 @@ -0,0 +1,37 @@ +{% 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: + name: "GEFS" + target: "{{ ATARDIR }}/{{ cycle_YMDH }}/gefs_ocean.tar" + required: +#select mem%03d and ensstat files required +{% set file_set = [] %} +{% set membr = ["ensstat"] %} +{% for mem_nm in range(0, NMEM_ENS + 1) %} + {% do membr.append("mem" ~ '%03d' % mem_nm ) %} +{% endfor %} + +{% for mem in membr %} + {% set tmpl_dict = ({ '${ROTDIR}':ROTDIR, + '${RUN}':RUN, + '${YMD}':cycle_YMD, + '${HH}':cycle_HH, + '${GRID}':"5p00", + '${MEMDIR}':mem }) %} + + {% set COMIN_OCEAN_GRIB = COM_OCEAN_GRIB_GRID_TMPL | replace_tmpl(tmpl_dict) %} + + # Select pgrb and grib files to copy to the atardir + {% if RUN == "gefs" %} + {% if path_exists(COMIN_OCEAN_GRIB) %} + {% for fhr in range(FHMIN_GFS, FHMAX_GFS + FHOUT_GFS, FHOUT_GFS) %} + {% set file_name = head ~ res ~ ".f" ~ '%03d'|format(fhr) ~ ".nc" %} + {% set file_set = COMIN_OCEAN_GRIB ~ "/" ~ file_name %} + - "{{ file_set | relpath(ROTDIR)}}" + {% endfor %} + {% endif %} + {% endif %} +{% endfor %} From 76aa61bfac1b727ea86a68f74035673aaf3e0cad Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Thu, 12 Sep 2024 14:53:35 -0400 Subject: [PATCH 024/127] modified gefs_ocean.yaml.j2 --- parm/archive/gefs_ice.yaml.j2 | 0 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 parm/archive/gefs_ice.yaml.j2 diff --git a/parm/archive/gefs_ice.yaml.j2 b/parm/archive/gefs_ice.yaml.j2 new file mode 100644 index 0000000000..e69de29bb2 From 99b6fff7d57c0220a4e7f489597ef90d63847b92 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Thu, 12 Sep 2024 14:55:49 -0400 Subject: [PATCH 025/127] modifed gefs_ocean.yaml.j2 --- parm/archive/gefs_ocean.yaml.j2 | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/parm/archive/gefs_ocean.yaml.j2 b/parm/archive/gefs_ocean.yaml.j2 index 984ca3a1f9..edb6e0f2c2 100644 --- a/parm/archive/gefs_ocean.yaml.j2 +++ b/parm/archive/gefs_ocean.yaml.j2 @@ -9,7 +9,7 @@ gefs: required: #select mem%03d and ensstat files required {% set file_set = [] %} -{% set membr = ["ensstat"] %} +{% set membr = [] %} {% for mem_nm in range(0, NMEM_ENS + 1) %} {% do membr.append("mem" ~ '%03d' % mem_nm ) %} {% endfor %} @@ -27,7 +27,7 @@ gefs: # Select pgrb and grib files to copy to the atardir {% if RUN == "gefs" %} {% if path_exists(COMIN_OCEAN_GRIB) %} - {% for fhr in range(FHMIN_GFS, FHMAX_GFS + FHOUT_GFS, FHOUT_GFS) %} + {% for fhr in range(FHMIN_GFS + FHOUT_OCN_GFS, FHMAX_GFS, FHOUT_OCN_GFS) %} {% set file_name = head ~ res ~ ".f" ~ '%03d'|format(fhr) ~ ".nc" %} {% set file_set = COMIN_OCEAN_GRIB ~ "/" ~ file_name %} - "{{ file_set | relpath(ROTDIR)}}" From 88d54e7d652b47376e33a336630454057fdac0bd Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Thu, 12 Sep 2024 14:56:52 -0400 Subject: [PATCH 026/127] modified gefs_ocean.yaml.j2 --- parm/archive/gefs_ocean.yaml.j2 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/parm/archive/gefs_ocean.yaml.j2 b/parm/archive/gefs_ocean.yaml.j2 index edb6e0f2c2..44bbc373d7 100644 --- a/parm/archive/gefs_ocean.yaml.j2 +++ b/parm/archive/gefs_ocean.yaml.j2 @@ -24,7 +24,7 @@ gefs: {% set COMIN_OCEAN_GRIB = COM_OCEAN_GRIB_GRID_TMPL | replace_tmpl(tmpl_dict) %} - # Select pgrb and grib files to copy to the atardir + # Select netcdf files to copy to the atardir {% if RUN == "gefs" %} {% if path_exists(COMIN_OCEAN_GRIB) %} {% for fhr in range(FHMIN_GFS + FHOUT_OCN_GFS, FHMAX_GFS, FHOUT_OCN_GFS) %} From 85fc9a17b956b6529ca276d053223d1d598df410 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Thu, 12 Sep 2024 15:06:16 -0400 Subject: [PATCH 027/127] modified gefs_ocean.yaml.j2 --- parm/archive/gefs_ocean.yaml.j2 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/parm/archive/gefs_ocean.yaml.j2 b/parm/archive/gefs_ocean.yaml.j2 index 44bbc373d7..8867747fe2 100644 --- a/parm/archive/gefs_ocean.yaml.j2 +++ b/parm/archive/gefs_ocean.yaml.j2 @@ -28,7 +28,7 @@ gefs: {% if RUN == "gefs" %} {% if path_exists(COMIN_OCEAN_GRIB) %} {% for fhr in range(FHMIN_GFS + FHOUT_OCN_GFS, FHMAX_GFS, FHOUT_OCN_GFS) %} - {% set file_name = head ~ res ~ ".f" ~ '%03d'|format(fhr) ~ ".nc" %} + {% set file_name = head ~ "5p00" ~ ".f" ~ '%03d'|format(fhr) ~ ".nc" %} {% set file_set = COMIN_OCEAN_GRIB ~ "/" ~ file_name %} - "{{ file_set | relpath(ROTDIR)}}" {% endfor %} From af02c3380421883dade8efa44e853332caf41bf7 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Thu, 12 Sep 2024 15:11:19 -0400 Subject: [PATCH 028/127] modified gefs_ocean.yaml.j2 --- parm/archive/gefs_ocean.yaml.j2 | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/parm/archive/gefs_ocean.yaml.j2 b/parm/archive/gefs_ocean.yaml.j2 index 8867747fe2..9605341461 100644 --- a/parm/archive/gefs_ocean.yaml.j2 +++ b/parm/archive/gefs_ocean.yaml.j2 @@ -22,14 +22,14 @@ gefs: '${GRID}':"5p00", '${MEMDIR}':mem }) %} - {% set COMIN_OCEAN_GRIB = COM_OCEAN_GRIB_GRID_TMPL | replace_tmpl(tmpl_dict) %} + {% set COMIN_OCEAN_NETCDF = COM_OCEAN_GRIB_GRID_TMPL | replace_tmpl(tmpl_dict) %} # Select netcdf files to copy to the atardir {% if RUN == "gefs" %} - {% if path_exists(COMIN_OCEAN_GRIB) %} + {% if path_exists(COMIN_OCEAN_NETCDFB) %} {% for fhr in range(FHMIN_GFS + FHOUT_OCN_GFS, FHMAX_GFS, FHOUT_OCN_GFS) %} {% set file_name = head ~ "5p00" ~ ".f" ~ '%03d'|format(fhr) ~ ".nc" %} - {% set file_set = COMIN_OCEAN_GRIB ~ "/" ~ file_name %} + {% set file_set = COMIN_OCEAN_NETCDF ~ "/" ~ file_name %} - "{{ file_set | relpath(ROTDIR)}}" {% endfor %} {% endif %} From c6dca50642d9692b7f91ae0470f50afc384b56a6 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Thu, 12 Sep 2024 15:14:56 -0400 Subject: [PATCH 029/127] modified gefs_ocean.yaml.j2 --- parm/archive/gefs_ocean.yaml.j2 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/parm/archive/gefs_ocean.yaml.j2 b/parm/archive/gefs_ocean.yaml.j2 index 9605341461..e244706ed0 100644 --- a/parm/archive/gefs_ocean.yaml.j2 +++ b/parm/archive/gefs_ocean.yaml.j2 @@ -26,7 +26,7 @@ gefs: # Select netcdf files to copy to the atardir {% if RUN == "gefs" %} - {% if path_exists(COMIN_OCEAN_NETCDFB) %} + {% if path_exists(COMIN_OCEAN_NETCDF) %} {% for fhr in range(FHMIN_GFS + FHOUT_OCN_GFS, FHMAX_GFS, FHOUT_OCN_GFS) %} {% set file_name = head ~ "5p00" ~ ".f" ~ '%03d'|format(fhr) ~ ".nc" %} {% set file_set = COMIN_OCEAN_NETCDF ~ "/" ~ file_name %} From 9b63e80eb22400312aa9d7ac258730f2fc9583a1 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Thu, 12 Sep 2024 15:19:55 -0400 Subject: [PATCH 030/127] modified gefs_ocean.yaml.j2 --- parm/archive/gefs_ocean.yaml.j2 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/parm/archive/gefs_ocean.yaml.j2 b/parm/archive/gefs_ocean.yaml.j2 index e244706ed0..6a554f2191 100644 --- a/parm/archive/gefs_ocean.yaml.j2 +++ b/parm/archive/gefs_ocean.yaml.j2 @@ -22,7 +22,7 @@ gefs: '${GRID}':"5p00", '${MEMDIR}':mem }) %} - {% set COMIN_OCEAN_NETCDF = COM_OCEAN_GRIB_GRID_TMPL | replace_tmpl(tmpl_dict) %} + {% set COMIN_OCEAN_NETCDF = COM_OCEAN_NETCDF_TMPL | replace_tmpl(tmpl_dict) %} # Select netcdf files to copy to the atardir {% if RUN == "gefs" %} From a3c69a9b47a395747a6e0b16b8b7b9c7be349780 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Thu, 12 Sep 2024 15:43:27 -0400 Subject: [PATCH 031/127] modified JGLOBAL_ARCHIVE and config.com --- jobs/JGLOBAL_ARCHIVE | 4 ++++ parm/config/gfs/config.com | 1 + 2 files changed, 5 insertions(+) diff --git a/jobs/JGLOBAL_ARCHIVE b/jobs/JGLOBAL_ARCHIVE index 401feba35f..c0cfb8904a 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 "1p00" "5p00"; do + YMD=${PDY} HH=${cyc} GRID=${grid} declare_from_tmpl -rx \ + "COMIN_OCEAN_NETCDF_${grid}:COM_OCEAN_NETCDF_GRID_TMPL" +done ############################################################### # Run archive script ############################################################### diff --git a/parm/config/gfs/config.com b/parm/config/gfs/config.com index 61d592561d..587d9bda22 100644 --- a/parm/config/gfs/config.com +++ b/parm/config/gfs/config.com @@ -84,6 +84,7 @@ declare -rx COM_OCEAN_INPUT_TMPL=${COM_BASE}'/model/ocean/input' declare -rx COM_OCEAN_ANALYSIS_TMPL=${COM_BASE}'/analysis/ocean' declare -rx COM_OCEAN_BMATRIX_TMPL=${COM_BASE}'/bmatrix/ocean' declare -rx COM_OCEAN_NETCDF_TMPL=${COM_BASE}'/products/ocean/netcdf' +declare -rx COM_OCEAN_NETCDF_GRID_TMPL=${COM_OCEAN_NETCDF_TMPL}'/${GRID}' declare -rx COM_OCEAN_GRIB_TMPL=${COM_BASE}'/products/ocean/grib2' declare -rx COM_OCEAN_GRIB_GRID_TMPL=${COM_OCEAN_GRIB_TMPL}'/${GRID}' From 5eeba299439ca903395da3cdd0f8a1046fec2606 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Thu, 12 Sep 2024 16:01:49 -0400 Subject: [PATCH 032/127] modified gefs_ocean.yaml.j2 --- parm/archive/gefs_ocean.yaml.j2 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/parm/archive/gefs_ocean.yaml.j2 b/parm/archive/gefs_ocean.yaml.j2 index 6a554f2191..c88e6c0d26 100644 --- a/parm/archive/gefs_ocean.yaml.j2 +++ b/parm/archive/gefs_ocean.yaml.j2 @@ -22,7 +22,7 @@ gefs: '${GRID}':"5p00", '${MEMDIR}':mem }) %} - {% set COMIN_OCEAN_NETCDF = COM_OCEAN_NETCDF_TMPL | replace_tmpl(tmpl_dict) %} + {% set COMIN_OCEAN_NETCDF = COM_OCEAN_NETCDF_GRID_TMPL | replace_tmpl(tmpl_dict) %} # Select netcdf files to copy to the atardir {% if RUN == "gefs" %} From 2fb56af5dd7b3407cec234920eaccaf1316928d7 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Thu, 12 Sep 2024 16:14:30 -0400 Subject: [PATCH 033/127] modified gefs_wave.yaml.j2 --- parm/archive/gefs_wave.yaml.j2 | 37 ++++++++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) create mode 100644 parm/archive/gefs_wave.yaml.j2 diff --git a/parm/archive/gefs_wave.yaml.j2 b/parm/archive/gefs_wave.yaml.j2 new file mode 100644 index 0000000000..0f380081c8 --- /dev/null +++ b/parm/archive/gefs_wave.yaml.j2 @@ -0,0 +1,37 @@ +{% 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: + name: "GEFS" + target: "{{ ATARDIR }}/{{ cycle_YMDH }}/gefs_wave.tar" + required: +#select mem%03d and ensstat files required +{% set file_set = [] %} +{% set membr = [] %} +{% for mem_nm in range(0, NMEM_ENS + 1) %} + {% do membr.append("mem" ~ '%03d' % mem_nm ) %} +{% endfor %} + +{% for mem in membr %} + {% set tmpl_dict = ({ '${ROTDIR}':ROTDIR, + '${RUN}':RUN, + '${YMD}':cycle_YMD, + '${HH}':cycle_HH, + '${GRID}':"5p00", + '${MEMDIR}':mem }) %} + + {% set COMIN_WAVE_GRID = COM_WAVE_GRID_TMPL | replace_tmpl(tmpl_dict) %} + + # Select grib2 files to copy to the atardir + {% if RUN == "gefs" %} + {% if path_exists(COMIN_WAVE_GRID) %} + {% for fhr in range(FHMIN_WAV, FHMAX_HF_WAV + FHOUT_HF_WAV, FHOUT_HF_WAV) %} + {% set file_name = head ~ "5p00" ~ ".f" ~ '%03d'|format(fhr) ~ ".grib2" %} + {% set file_set = COMIN_WAVE_GRID ~ "/" ~ file_name %} + - "{{ file_set | relpath(ROTDIR)}}" + {% endfor %} + {% endif %} + {% endif %} +{% endfor %} From bf4799679de781448b23d84d172d8cd3e0f85e66 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Thu, 12 Sep 2024 16:15:06 -0400 Subject: [PATCH 034/127] modified master_gefs.yaml.j2 --- parm/archive/master_gefs.yaml.j2 | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/parm/archive/master_gefs.yaml.j2 b/parm/archive/master_gefs.yaml.j2 index 47b773e2d2..aac52f83fd 100644 --- a/parm/archive/master_gefs.yaml.j2 +++ b/parm/archive/master_gefs.yaml.j2 @@ -11,3 +11,7 @@ datasets: {% filter indent(width=4) %} {% include "gefs_ocean.yaml.j2" %} {% endfilter %} + +{% filter indent(width=4) %} +{% include "gefs_wave.yaml.j2" %} +{% endfilter %} \ No newline at end of file From 9c207841a5e1065647e5813d48d3bc0bf5d5a8ca Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Thu, 12 Sep 2024 17:03:19 -0400 Subject: [PATCH 035/127] updated archive directory --- parm/archive/gefs_ice.yaml.j2 | 36 ++++++++++++++++++++++++++++++++ parm/archive/gefs_wave.yaml.j2 | 1 - parm/archive/master_gefs.yaml.j2 | 4 ++++ 3 files changed, 40 insertions(+), 1 deletion(-) diff --git a/parm/archive/gefs_ice.yaml.j2 b/parm/archive/gefs_ice.yaml.j2 index e69de29bb2..aa7441a36b 100644 --- a/parm/archive/gefs_ice.yaml.j2 +++ b/parm/archive/gefs_ice.yaml.j2 @@ -0,0 +1,36 @@ +{% 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: + name: "GEFS" + target: "{{ ATARDIR }}/{{ cycle_YMDH }}/gefs_wave.tar" + required: +#select mem%03d and ensstat files required +{% set file_set = [] %} +{% set membr = [] %} +{% for mem_nm in range(0, NMEM_ENS + 1) %} + {% do membr.append("mem" ~ '%03d' % mem_nm ) %} +{% endfor %} + +{% for mem in membr %} + {% 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 RUN == "gefs" %} + {% 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 ~ "6hr_avg" ~ ".f" ~ '%03d'|format(fhr) ~ ".nc" %} + {% set file_set = COMIN_ICE_HISTORY ~ "/" ~ file_name %} + - "{{ file_set | relpath(ROTDIR)}}" + {% endfor %} + {% endif %} + {% endif %} +{% endfor %} diff --git a/parm/archive/gefs_wave.yaml.j2 b/parm/archive/gefs_wave.yaml.j2 index 0f380081c8..cfa1fcef26 100644 --- a/parm/archive/gefs_wave.yaml.j2 +++ b/parm/archive/gefs_wave.yaml.j2 @@ -19,7 +19,6 @@ gefs: '${RUN}':RUN, '${YMD}':cycle_YMD, '${HH}':cycle_HH, - '${GRID}':"5p00", '${MEMDIR}':mem }) %} {% set COMIN_WAVE_GRID = COM_WAVE_GRID_TMPL | replace_tmpl(tmpl_dict) %} diff --git a/parm/archive/master_gefs.yaml.j2 b/parm/archive/master_gefs.yaml.j2 index aac52f83fd..cc50f8b93b 100644 --- a/parm/archive/master_gefs.yaml.j2 +++ b/parm/archive/master_gefs.yaml.j2 @@ -14,4 +14,8 @@ datasets: {% filter indent(width=4) %} {% include "gefs_wave.yaml.j2" %} +{% endfilter %} + +{% filter indent(width=4) %} +{% include "gefs_ice.yaml.j2" %} {% endfilter %} \ No newline at end of file From 79cf83455044c2174af03ff8af02575bb31492de Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Thu, 12 Sep 2024 17:08:22 -0400 Subject: [PATCH 036/127] modified gefs_ice.yaml.j2 --- parm/archive/gefs_ice.yaml.j2 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/parm/archive/gefs_ice.yaml.j2 b/parm/archive/gefs_ice.yaml.j2 index aa7441a36b..f0b4f133fe 100644 --- a/parm/archive/gefs_ice.yaml.j2 +++ b/parm/archive/gefs_ice.yaml.j2 @@ -1,7 +1,7 @@ {% 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." %} +{% set head = RUN + ".ice.t" + cycle_HH + "z." %} gefs: name: "GEFS" From 26eb86be761747580b4696f64ceb1b470e67df95 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Thu, 12 Sep 2024 17:09:19 -0400 Subject: [PATCH 037/127] modified gefs_wave.yaml.j2 --- parm/archive/gefs_wave.yaml.j2 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/parm/archive/gefs_wave.yaml.j2 b/parm/archive/gefs_wave.yaml.j2 index cfa1fcef26..0977a7fa6c 100644 --- a/parm/archive/gefs_wave.yaml.j2 +++ b/parm/archive/gefs_wave.yaml.j2 @@ -26,7 +26,7 @@ gefs: # Select grib2 files to copy to the atardir {% if RUN == "gefs" %} {% if path_exists(COMIN_WAVE_GRID) %} - {% for fhr in range(FHMIN_WAV, FHMAX_HF_WAV + FHOUT_HF_WAV, FHOUT_HF_WAV) %} + {% for fhr in range(1, 121, 1) %} {% set file_name = head ~ "5p00" ~ ".f" ~ '%03d'|format(fhr) ~ ".grib2" %} {% set file_set = COMIN_WAVE_GRID ~ "/" ~ file_name %} - "{{ file_set | relpath(ROTDIR)}}" From cb012d4c8b7d50ab4072487004f8cee76db7176e Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Thu, 12 Sep 2024 17:11:58 -0400 Subject: [PATCH 038/127] modified master_gefs.yaml.j2 --- parm/archive/master_gefs.yaml.j2 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/parm/archive/master_gefs.yaml.j2 b/parm/archive/master_gefs.yaml.j2 index cc50f8b93b..876e25c99f 100644 --- a/parm/archive/master_gefs.yaml.j2 +++ b/parm/archive/master_gefs.yaml.j2 @@ -18,4 +18,4 @@ datasets: {% filter indent(width=4) %} {% include "gefs_ice.yaml.j2" %} -{% endfilter %} \ No newline at end of file +{% endfilter %} From 792a5c446f749edcd35d089a71a48f13751e2b2e Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Thu, 12 Sep 2024 17:14:07 -0400 Subject: [PATCH 039/127] modified gefs_ice.yaml.j2 --- parm/archive/gefs_ice.yaml.j2 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/parm/archive/gefs_ice.yaml.j2 b/parm/archive/gefs_ice.yaml.j2 index f0b4f133fe..2f422706d9 100644 --- a/parm/archive/gefs_ice.yaml.j2 +++ b/parm/archive/gefs_ice.yaml.j2 @@ -5,7 +5,7 @@ gefs: name: "GEFS" - target: "{{ ATARDIR }}/{{ cycle_YMDH }}/gefs_wave.tar" + target: "{{ ATARDIR }}/{{ cycle_YMDH }}/gefs_ice.tar" required: #select mem%03d and ensstat files required {% set file_set = [] %} From 0a30578d2444bf2ef80011b90fee3bd3489da18e Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Thu, 12 Sep 2024 17:20:03 -0400 Subject: [PATCH 040/127] modified master_gefs.yaml.j2 --- parm/archive/master_gefs.yaml.j2 | 9 --------- 1 file changed, 9 deletions(-) diff --git a/parm/archive/master_gefs.yaml.j2 b/parm/archive/master_gefs.yaml.j2 index 876e25c99f..9e42342d1a 100644 --- a/parm/archive/master_gefs.yaml.j2 +++ b/parm/archive/master_gefs.yaml.j2 @@ -6,16 +6,7 @@ datasets: {% filter indent(width=4) %} {% include "gefs_atmos.yaml.j2" %} -{% endfilter %} - -{% filter indent(width=4) %} {% include "gefs_ocean.yaml.j2" %} -{% endfilter %} - -{% filter indent(width=4) %} {% include "gefs_wave.yaml.j2" %} -{% endfilter %} - -{% filter indent(width=4) %} {% include "gefs_ice.yaml.j2" %} {% endfilter %} From 8eefcfac791f9bc2ca50d6d939a7e8f0b6c74f39 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Thu, 12 Sep 2024 17:33:21 -0400 Subject: [PATCH 041/127] modified gefs_wave.yaml.j2 --- parm/archive/gefs_wave.yaml.j2 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/parm/archive/gefs_wave.yaml.j2 b/parm/archive/gefs_wave.yaml.j2 index 0977a7fa6c..0a8d795675 100644 --- a/parm/archive/gefs_wave.yaml.j2 +++ b/parm/archive/gefs_wave.yaml.j2 @@ -27,7 +27,7 @@ gefs: {% if RUN == "gefs" %} {% if path_exists(COMIN_WAVE_GRID) %} {% for fhr in range(1, 121, 1) %} - {% set file_name = head ~ "5p00" ~ ".f" ~ '%03d'|format(fhr) ~ ".grib2" %} + {% set file_name = head ~ "global.5p00.f" ~ '%03d'|format(fhr) ~ ".grib2" %} {% set file_set = COMIN_WAVE_GRID ~ "/" ~ file_name %} - "{{ file_set | relpath(ROTDIR)}}" {% endfor %} From 4b9a4f56a7f550efc0e3f20abeca22eb5d42d3fa Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Thu, 12 Sep 2024 17:41:28 -0400 Subject: [PATCH 042/127] modified master_gefs.yaml.j2 --- parm/archive/master_gefs.yaml.j2 | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/parm/archive/master_gefs.yaml.j2 b/parm/archive/master_gefs.yaml.j2 index 9e42342d1a..fa01c48d58 100644 --- a/parm/archive/master_gefs.yaml.j2 +++ b/parm/archive/master_gefs.yaml.j2 @@ -6,7 +6,13 @@ datasets: {% filter indent(width=4) %} {% include "gefs_atmos.yaml.j2" %} +{% endfilter %} +{% filter indent(width=4) %} {% include "gefs_ocean.yaml.j2" %} +{% endfilter %} +{% filter indent(width=4) %} {% include "gefs_wave.yaml.j2" %} +{% endfilter %} +{% filter indent(width=4) %} {% include "gefs_ice.yaml.j2" %} {% endfilter %} From 5bed5f0f6f8660af7657c5fde7a1e8523192e61e Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Thu, 12 Sep 2024 17:46:34 -0400 Subject: [PATCH 043/127] modified maser_gefs.yaml.j2 --- parm/archive/master_gefs.yaml.j2 | 19 +++++++------------ 1 file changed, 7 insertions(+), 12 deletions(-) diff --git a/parm/archive/master_gefs.yaml.j2 b/parm/archive/master_gefs.yaml.j2 index fa01c48d58..c755cb3473 100644 --- a/parm/archive/master_gefs.yaml.j2 +++ b/parm/archive/master_gefs.yaml.j2 @@ -4,15 +4,10 @@ {% set cycle_YMDH = current_cycle | to_YMDH %} datasets: -{% filter indent(width=4) %} -{% include "gefs_atmos.yaml.j2" %} -{% endfilter %} -{% filter indent(width=4) %} -{% include "gefs_ocean.yaml.j2" %} -{% endfilter %} -{% filter indent(width=4) %} -{% include "gefs_wave.yaml.j2" %} -{% endfilter %} -{% filter indent(width=4) %} -{% include "gefs_ice.yaml.j2" %} -{% endfilter %} +{% set file_list = ["gefs_atmos.yaml.j2", "gefs_ocean.yaml.j2", "gefs_ice.yaml.j2", "gefs_wave.yaml.j2"] %} + +{% for file_name in file_list %} + {% filter indent(width=4) %} + {% include file_name %} + {% endfilter %} +{% endfor %} \ No newline at end of file From 2e221e510cd7cd0ac9cfa3bea0be5017c26ad0c9 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Thu, 12 Sep 2024 17:51:58 -0400 Subject: [PATCH 044/127] modified master_gefs.yaml.j2 --- parm/archive/master_gefs.yaml.j2 | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/parm/archive/master_gefs.yaml.j2 b/parm/archive/master_gefs.yaml.j2 index c755cb3473..f443c80b99 100644 --- a/parm/archive/master_gefs.yaml.j2 +++ b/parm/archive/master_gefs.yaml.j2 @@ -8,6 +8,6 @@ datasets: {% for file_name in file_list %} {% filter indent(width=4) %} - {% include file_name %} +{% include file_name %} {% endfilter %} -{% endfor %} \ No newline at end of file +{% endfor %} From 214c0a35fb83eed18880dbd606619572e07fb198 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Thu, 12 Sep 2024 17:55:11 -0400 Subject: [PATCH 045/127] modified master_gefs.yaml.j2 --- parm/archive/master_gefs.yaml.j2 | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/parm/archive/master_gefs.yaml.j2 b/parm/archive/master_gefs.yaml.j2 index f443c80b99..f044f2ab14 100644 --- a/parm/archive/master_gefs.yaml.j2 +++ b/parm/archive/master_gefs.yaml.j2 @@ -4,10 +4,9 @@ {% set cycle_YMDH = current_cycle | to_YMDH %} datasets: -{% set file_list = ["gefs_atmos.yaml.j2", "gefs_ocean.yaml.j2", "gefs_ice.yaml.j2", "gefs_wave.yaml.j2"] %} - -{% for file_name in file_list %} {% filter indent(width=4) %} -{% include file_name %} +{% include "gefs_atmos.yaml.j2" %} +{% include "gefs_ocean.yaml.j2" %} +{% include "gefs_ice.yaml.j2" %} +{% include "gefs_wave.yaml.j2" %} {% endfilter %} -{% endfor %} From 9aec9bb93adbf74096f216476c6c0602d7fb96c8 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Thu, 12 Sep 2024 18:40:21 -0400 Subject: [PATCH 046/127] modified master_gefs.yaml.j2 --- parm/archive/master_gefs.yaml.j2 | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/parm/archive/master_gefs.yaml.j2 b/parm/archive/master_gefs.yaml.j2 index f044f2ab14..167cb72a76 100644 --- a/parm/archive/master_gefs.yaml.j2 +++ b/parm/archive/master_gefs.yaml.j2 @@ -4,9 +4,9 @@ {% set cycle_YMDH = current_cycle | to_YMDH %} datasets: - {% filter indent(width=4) %} +{% filter indent(width=4) %} {% include "gefs_atmos.yaml.j2" %} {% include "gefs_ocean.yaml.j2" %} {% include "gefs_ice.yaml.j2" %} {% include "gefs_wave.yaml.j2" %} - {% endfilter %} +{% endfilter %} From 7d74b4a024e4c24ac2e0902bbd97762af8e310f2 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Thu, 12 Sep 2024 20:02:15 -0400 Subject: [PATCH 047/127] modified gefs yaml files --- parm/archive/gefs_atmos.yaml.j2 | 4 ++-- parm/archive/gefs_ice.yaml.j2 | 6 +++--- parm/archive/gefs_ocean.yaml.j2 | 4 ++-- parm/archive/gefs_wave.yaml.j2 | 6 +++--- 4 files changed, 10 insertions(+), 10 deletions(-) diff --git a/parm/archive/gefs_atmos.yaml.j2 b/parm/archive/gefs_atmos.yaml.j2 index 6bbf49d74b..5444ab4270 100644 --- a/parm/archive/gefs_atmos.yaml.j2 +++ b/parm/archive/gefs_atmos.yaml.j2 @@ -3,8 +3,8 @@ {% set cycle_YMDH = current_cycle | to_YMDH %} {% set head = RUN + ".t" + cycle_HH + "z." %} -gefs: - name: "GEFS" +gefs_atmos: + name: "GEFS_ATMOS" target: "{{ ATARDIR }}/{{ cycle_YMDH }}/gefs_atmos.tar" required: #select mem%03d and ensstat files required diff --git a/parm/archive/gefs_ice.yaml.j2 b/parm/archive/gefs_ice.yaml.j2 index 2f422706d9..51a60bd467 100644 --- a/parm/archive/gefs_ice.yaml.j2 +++ b/parm/archive/gefs_ice.yaml.j2 @@ -3,8 +3,8 @@ {% set cycle_YMDH = current_cycle | to_YMDH %} {% set head = RUN + ".ice.t" + cycle_HH + "z." %} -gefs: - name: "GEFS" +gefs_ice: + name: "GEFS_ICE" target: "{{ ATARDIR }}/{{ cycle_YMDH }}/gefs_ice.tar" required: #select mem%03d and ensstat files required @@ -29,7 +29,7 @@ gefs: {% for fhr in range(FHMIN_GFS + FHOUT_ICE_GFS, FHMAX_GFS + FHOUT_ICE_GFS, FHOUT_ICE_GFS) %} {% set file_name = head ~ "6hr_avg" ~ ".f" ~ '%03d'|format(fhr) ~ ".nc" %} {% set file_set = COMIN_ICE_HISTORY ~ "/" ~ file_name %} - - "{{ file_set | relpath(ROTDIR)}}" + - "{{ file_set | relpath(ROTDIR)}}" {% endfor %} {% endif %} {% endif %} diff --git a/parm/archive/gefs_ocean.yaml.j2 b/parm/archive/gefs_ocean.yaml.j2 index c88e6c0d26..5109d8a7f8 100644 --- a/parm/archive/gefs_ocean.yaml.j2 +++ b/parm/archive/gefs_ocean.yaml.j2 @@ -3,8 +3,8 @@ {% set cycle_YMDH = current_cycle | to_YMDH %} {% set head = RUN + ".ocean.t" + cycle_HH + "z." %} -gefs: - name: "GEFS" +gefs_ocean: + name: "GEFS_OCEAN" target: "{{ ATARDIR }}/{{ cycle_YMDH }}/gefs_ocean.tar" required: #select mem%03d and ensstat files required diff --git a/parm/archive/gefs_wave.yaml.j2 b/parm/archive/gefs_wave.yaml.j2 index 0a8d795675..4280517d6d 100644 --- a/parm/archive/gefs_wave.yaml.j2 +++ b/parm/archive/gefs_wave.yaml.j2 @@ -3,8 +3,8 @@ {% set cycle_YMDH = current_cycle | to_YMDH %} {% set head = RUN + "wave.t" + cycle_HH + "z." %} -gefs: - name: "GEFS" +gefs_wave: + name: "GEFS_WAVE" target: "{{ ATARDIR }}/{{ cycle_YMDH }}/gefs_wave.tar" required: #select mem%03d and ensstat files required @@ -29,7 +29,7 @@ gefs: {% for fhr in range(1, 121, 1) %} {% set file_name = head ~ "global.5p00.f" ~ '%03d'|format(fhr) ~ ".grib2" %} {% set file_set = COMIN_WAVE_GRID ~ "/" ~ file_name %} - - "{{ file_set | relpath(ROTDIR)}}" + - "{{ file_set | relpath(ROTDIR)}}" {% endfor %} {% endif %} {% endif %} From 9c4f2243395200515dc343abdb4aec91c278c05f Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Thu, 12 Sep 2024 20:28:41 -0400 Subject: [PATCH 048/127] modified gefs_wave.yaml.j2 --- parm/archive/gefs_wave.yaml.j2 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/parm/archive/gefs_wave.yaml.j2 b/parm/archive/gefs_wave.yaml.j2 index 4280517d6d..1dfa216233 100644 --- a/parm/archive/gefs_wave.yaml.j2 +++ b/parm/archive/gefs_wave.yaml.j2 @@ -26,7 +26,7 @@ gefs_wave: # Select grib2 files to copy to the atardir {% if RUN == "gefs" %} {% if path_exists(COMIN_WAVE_GRID) %} - {% for fhr in range(1, 121, 1) %} + {% for fhr in range(FHMIN, FHMAX_GFS + 1, 1) %} {% set file_name = head ~ "global.5p00.f" ~ '%03d'|format(fhr) ~ ".grib2" %} {% set file_set = COMIN_WAVE_GRID ~ "/" ~ file_name %} - "{{ file_set | relpath(ROTDIR)}}" From 7b81e03c5cc3e9e010798339f28d64c0fb8144a0 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Fri, 13 Sep 2024 11:09:25 -0400 Subject: [PATCH 049/127] modified defaults.yaml --- parm/config/gefs/yaml/defaults.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/parm/config/gefs/yaml/defaults.yaml b/parm/config/gefs/yaml/defaults.yaml index 11dc0101b1..a031e1fe1f 100644 --- a/parm/config/gefs/yaml/defaults.yaml +++ b/parm/config/gefs/yaml/defaults.yaml @@ -14,5 +14,5 @@ base: FCST_BREAKPOINTS: "48" REPLAY_ICS: "NO" USE_OCN_PERTURB_FILES: "false" - HPSSARCH: "NO" - LOCALARCH: "YES" + HPSSARCH: "YES" + LOCALARCH: "NO" From 64eafba68c36d06a01e6e418310c806a1e4d2f46 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Mon, 16 Sep 2024 10:39:34 -0400 Subject: [PATCH 050/127] modified gefs_ice.yaml.j2 --- parm/archive/gefs_ice.yaml.j2 | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/parm/archive/gefs_ice.yaml.j2 b/parm/archive/gefs_ice.yaml.j2 index 51a60bd467..382ed18eb8 100644 --- a/parm/archive/gefs_ice.yaml.j2 +++ b/parm/archive/gefs_ice.yaml.j2 @@ -8,7 +8,6 @@ gefs_ice: target: "{{ ATARDIR }}/{{ cycle_YMDH }}/gefs_ice.tar" required: #select mem%03d and ensstat files required -{% set file_set = [] %} {% set membr = [] %} {% for mem_nm in range(0, NMEM_ENS + 1) %} {% do membr.append("mem" ~ '%03d' % mem_nm ) %} @@ -28,8 +27,8 @@ gefs_ice: {% 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 ~ "6hr_avg" ~ ".f" ~ '%03d'|format(fhr) ~ ".nc" %} - {% set file_set = COMIN_ICE_HISTORY ~ "/" ~ file_name %} - - "{{ file_set | relpath(ROTDIR)}}" + {% set file_path = COMIN_ICE_HISTORY ~ "/" ~ file_name %} + - "{{ file_path | relpath(ROTDIR)}}" {% endfor %} {% endif %} {% endif %} From 48a95cf4e52de283fe7f9f4989c50054d3b4ffe3 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Mon, 16 Sep 2024 10:41:01 -0400 Subject: [PATCH 051/127] modified gefs_ocean.yaml.j2 --- parm/archive/gefs_ocean.yaml.j2 | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/parm/archive/gefs_ocean.yaml.j2 b/parm/archive/gefs_ocean.yaml.j2 index 5109d8a7f8..997f919372 100644 --- a/parm/archive/gefs_ocean.yaml.j2 +++ b/parm/archive/gefs_ocean.yaml.j2 @@ -8,7 +8,6 @@ gefs_ocean: target: "{{ ATARDIR }}/{{ cycle_YMDH }}/gefs_ocean.tar" required: #select mem%03d and ensstat files required -{% set file_set = [] %} {% set membr = [] %} {% for mem_nm in range(0, NMEM_ENS + 1) %} {% do membr.append("mem" ~ '%03d' % mem_nm ) %} @@ -29,8 +28,8 @@ gefs_ocean: {% if path_exists(COMIN_OCEAN_NETCDF) %} {% for fhr in range(FHMIN_GFS + FHOUT_OCN_GFS, FHMAX_GFS, FHOUT_OCN_GFS) %} {% set file_name = head ~ "5p00" ~ ".f" ~ '%03d'|format(fhr) ~ ".nc" %} - {% set file_set = COMIN_OCEAN_NETCDF ~ "/" ~ file_name %} - - "{{ file_set | relpath(ROTDIR)}}" + {% set file_path = COMIN_OCEAN_NETCDF ~ "/" ~ file_name %} + - "{{ file_path | relpath(ROTDIR)}}" {% endfor %} {% endif %} {% endif %} From 709f109d81cff9d17019f1a5499861c1b4767300 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Mon, 16 Sep 2024 10:42:35 -0400 Subject: [PATCH 052/127] modified gefs_waves.yaml.j2 --- parm/archive/gefs_wave.yaml.j2 | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/parm/archive/gefs_wave.yaml.j2 b/parm/archive/gefs_wave.yaml.j2 index 1dfa216233..6db75a6824 100644 --- a/parm/archive/gefs_wave.yaml.j2 +++ b/parm/archive/gefs_wave.yaml.j2 @@ -8,7 +8,6 @@ gefs_wave: target: "{{ ATARDIR }}/{{ cycle_YMDH }}/gefs_wave.tar" required: #select mem%03d and ensstat files required -{% set file_set = [] %} {% set membr = [] %} {% for mem_nm in range(0, NMEM_ENS + 1) %} {% do membr.append("mem" ~ '%03d' % mem_nm ) %} @@ -28,8 +27,8 @@ gefs_wave: {% if path_exists(COMIN_WAVE_GRID) %} {% for fhr in range(FHMIN, FHMAX_GFS + 1, 1) %} {% set file_name = head ~ "global.5p00.f" ~ '%03d'|format(fhr) ~ ".grib2" %} - {% set file_set = COMIN_WAVE_GRID ~ "/" ~ file_name %} - - "{{ file_set | relpath(ROTDIR)}}" + {% set file_path = COMIN_WAVE_GRID ~ "/" ~ file_name %} + - "{{ file_path | relpath(ROTDIR)}}" {% endfor %} {% endif %} {% endif %} From 1a8f6c03da673b46e43d942587a3080c590348d0 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Mon, 16 Sep 2024 10:44:12 -0400 Subject: [PATCH 053/127] modified ges_atmos.yaml.j2 --- parm/archive/gefs_atmos.yaml.j2 | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/parm/archive/gefs_atmos.yaml.j2 b/parm/archive/gefs_atmos.yaml.j2 index 5444ab4270..1dea9ecdbc 100644 --- a/parm/archive/gefs_atmos.yaml.j2 +++ b/parm/archive/gefs_atmos.yaml.j2 @@ -8,7 +8,6 @@ gefs_atmos: target: "{{ ATARDIR }}/{{ cycle_YMDH }}/gefs_atmos.tar" required: #select mem%03d and ensstat files required -{% set file_set = [] %} {% set membr = ["ensstat"] %} {% for mem_nm in range(0, NMEM_ENS + 1) %} {% do membr.append("mem" ~ '%03d' % mem_nm ) %} @@ -31,15 +30,15 @@ gefs_atmos: {% for fhr in range(FHMIN_GFS, FHMAX_GFS + FHOUT_GFS, FHOUT_GFS) %} {% if mem=="ensstat" %} {% set file_name = head ~ "mean.pres_." ~ res ~ ".f" ~ '%03d'|format(fhr) ~ ".grib2" %} - {% set file_set = COMIN_ATMOS_GRIB ~ "/" ~ file_name %} - - "{{ file_set | relpath(ROTDIR)}}" + {% 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_set = COMIN_ATMOS_GRIB ~ "/" ~ file_name %} - - "{{ file_set | relpath(ROTDIR)}}" + {% set file_path = COMIN_ATMOS_GRIB ~ "/" ~ file_name %} + - "{{ file_path | relpath(ROTDIR)}}" {% set file_name = head ~ "pgrb2b." ~ res ~ ".f" ~ '%03d'|format(fhr) %} - {% set file_set = COMIN_ATMOS_GRIB ~ "/" ~ file_name %} - - "{{ file_set | relpath(ROTDIR)}}" + {% set file_path = COMIN_ATMOS_GRIB ~ "/" ~ file_name %} + - "{{ file_path | relpath(ROTDIR)}}" {% endif %} {% endfor %} {% endif %} From 880eda936d4f1ffa9e9b8f55a09cd757595a2268 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Mon, 16 Sep 2024 12:52:06 -0400 Subject: [PATCH 054/127] modified gefs_ice.yaml.j2 --- parm/archive/gefs_ice.yaml.j2 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/parm/archive/gefs_ice.yaml.j2 b/parm/archive/gefs_ice.yaml.j2 index 382ed18eb8..2721d2aadf 100644 --- a/parm/archive/gefs_ice.yaml.j2 +++ b/parm/archive/gefs_ice.yaml.j2 @@ -26,7 +26,7 @@ gefs_ice: {% if RUN == "gefs" %} {% 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 ~ "6hr_avg" ~ ".f" ~ '%03d'|format(fhr) ~ ".nc" %} + {% 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 %} From 80ead80e9e2c1ca1740ba35f788fb520cf94b357 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Mon, 16 Sep 2024 13:20:27 -0400 Subject: [PATCH 055/127] modified gefs_ocean.yaml.j2 --- parm/archive/gefs_ocean.yaml.j2 | 35 +++++++++++++++++---------------- 1 file changed, 18 insertions(+), 17 deletions(-) diff --git a/parm/archive/gefs_ocean.yaml.j2 b/parm/archive/gefs_ocean.yaml.j2 index 997f919372..a84e6a186b 100644 --- a/parm/archive/gefs_ocean.yaml.j2 +++ b/parm/archive/gefs_ocean.yaml.j2 @@ -14,23 +14,24 @@ gefs_ocean: {% endfor %} {% for mem in membr %} - {% set tmpl_dict = ({ '${ROTDIR}':ROTDIR, - '${RUN}':RUN, - '${YMD}':cycle_YMD, - '${HH}':cycle_HH, - '${GRID}':"5p00", - '${MEMDIR}':mem }) %} + {% for res in ['1p00', '5p00'] %} + {% set tmpl_dict = ({ '${ROTDIR}':ROTDIR, + '${RUN}':RUN, + '${YMD}':cycle_YMD, + '${HH}':cycle_HH, + '${GRID}':res, + '${MEMDIR}':mem }) %} - {% set COMIN_OCEAN_NETCDF = COM_OCEAN_NETCDF_GRID_TMPL | replace_tmpl(tmpl_dict) %} + {% set COMIN_OCEAN_NETCDF = COM_OCEAN_NETCDF_GRID_TMPL | replace_tmpl(tmpl_dict) %} - # Select netcdf files to copy to the atardir - {% if RUN == "gefs" %} - {% if path_exists(COMIN_OCEAN_NETCDF) %} - {% for fhr in range(FHMIN_GFS + FHOUT_OCN_GFS, FHMAX_GFS, FHOUT_OCN_GFS) %} - {% set file_name = head ~ "5p00" ~ ".f" ~ '%03d'|format(fhr) ~ ".nc" %} - {% set file_path = COMIN_OCEAN_NETCDF ~ "/" ~ file_name %} - - "{{ file_path | relpath(ROTDIR)}}" - {% endfor %} + # Select netcdf files to copy to the atardir + {% if RUN == "gefs" %} + {% if path_exists(COMIN_OCEAN_NETCDF) %} + {% for fhr in range(FHMIN_GFS + FHOUT_OCN_GFS, FHMAX_GFS, FHOUT_OCN_GFS) %} + {% set file_name = head ~ res ~ ".f" ~ '%03d'|format(fhr) ~ ".nc" %} + {% set file_path = COMIN_OCEAN_NETCDF ~ "/" ~ file_name %} + - "{{ file_path | relpath(ROTDIR)}}" + {% endfor %} + {% endif %} {% endif %} - {% endif %} -{% endfor %} + {% endfor %} From 71afb3f5dfbafdf5012897207f2acfd140d2d417 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Mon, 16 Sep 2024 20:36:38 -0400 Subject: [PATCH 056/127] modified gefs_ocean.yaml.j2 --- parm/archive/gefs_ocean.yaml.j2 | 45 ++++++++++++++++++++------------- 1 file changed, 27 insertions(+), 18 deletions(-) diff --git a/parm/archive/gefs_ocean.yaml.j2 b/parm/archive/gefs_ocean.yaml.j2 index a84e6a186b..4c2c8de50c 100644 --- a/parm/archive/gefs_ocean.yaml.j2 +++ b/parm/archive/gefs_ocean.yaml.j2 @@ -7,6 +7,16 @@ gefs_ocean: name: "GEFS_OCEAN" target: "{{ ATARDIR }}/{{ cycle_YMDH }}/gefs_ocean.tar" required: +{% if CASE == "C48" %} + {% set res = '5p00' %} +{% elif CASE == "C96" | "C192" %} + {% set res = '1p00' %} +{% elif CASE == "C384" %} + {% set res = '0p25' %} +{% elif CASE == "C768" %} + {% set res = '0p25' %} +{% endif %} + #select mem%03d and ensstat files required {% set membr = [] %} {% for mem_nm in range(0, NMEM_ENS + 1) %} @@ -14,24 +24,23 @@ gefs_ocean: {% endfor %} {% for mem in membr %} - {% for res in ['1p00', '5p00'] %} - {% set tmpl_dict = ({ '${ROTDIR}':ROTDIR, - '${RUN}':RUN, - '${YMD}':cycle_YMD, - '${HH}':cycle_HH, - '${GRID}':res, - '${MEMDIR}':mem }) %} + {% set tmpl_dict = ({ '${ROTDIR}':ROTDIR, + '${RUN}':RUN, + '${YMD}':cycle_YMD, + '${HH}':cycle_HH, + '${GRID}':res, + '${MEMDIR}':mem }) %} - {% set COMIN_OCEAN_NETCDF = COM_OCEAN_NETCDF_GRID_TMPL | replace_tmpl(tmpl_dict) %} + {% set COMIN_OCEAN_NETCDF = COM_OCEAN_NETCDF_GRID_TMPL | replace_tmpl(tmpl_dict) %} - # Select netcdf files to copy to the atardir - {% if RUN == "gefs" %} - {% if path_exists(COMIN_OCEAN_NETCDF) %} - {% for fhr in range(FHMIN_GFS + FHOUT_OCN_GFS, FHMAX_GFS, FHOUT_OCN_GFS) %} - {% set file_name = head ~ res ~ ".f" ~ '%03d'|format(fhr) ~ ".nc" %} - {% set file_path = COMIN_OCEAN_NETCDF ~ "/" ~ file_name %} - - "{{ file_path | relpath(ROTDIR)}}" - {% endfor %} - {% endif %} + # Select netcdf files to copy to the atardir + {% if RUN == "gefs" %} + {% if path_exists(COMIN_OCEAN_NETCDF) %} + {% for fhr in range(FHMIN_GFS + FHOUT_OCN_GFS, FHMAX_GFS, FHOUT_OCN_GFS) %} + {% set file_name = head ~ res ~ ".f" ~ '%03d'|format(fhr) ~ ".nc" %} + {% set file_path = COMIN_OCEAN_NETCDF ~ "/" ~ file_name %} + - "{{ file_path | relpath(ROTDIR)}}" + {% endfor %} {% endif %} - {% endfor %} + {% endif %} +{% endfor %} From c9781585a3ae98382231baad10ac1f1d8b1841e6 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Mon, 16 Sep 2024 22:11:07 -0400 Subject: [PATCH 057/127] modified ges_wave.yaml.j2 --- parm/archive/gefs_wave.yaml.j2 | 29 +++++++++++++++++++++++++++-- 1 file changed, 27 insertions(+), 2 deletions(-) diff --git a/parm/archive/gefs_wave.yaml.j2 b/parm/archive/gefs_wave.yaml.j2 index 6db75a6824..aa83fc69d7 100644 --- a/parm/archive/gefs_wave.yaml.j2 +++ b/parm/archive/gefs_wave.yaml.j2 @@ -7,6 +7,31 @@ gefs_wave: name: "GEFS_WAVE" target: "{{ ATARDIR }}/{{ cycle_YMDH }}/gefs_wave.tar" required: + +{% if FHOUT_HF_GFS == FHOUT_HF_GFS %} + {% set fcst_freq = FHOUT_HF_GFS %} + {% set max_hr = FHMAX_HF_GF %} +{% elif FHOUT_GFS == FHOUT_GFS %} + {% set fcst_freq = FHOUT_GFS %} + {% set max_hr = FHMAX_GFS %} +{% endif %} + +{% if REPLAY_ICS == "YES" %} + {% set ofst_hr = 'OFFSET_START_HOUR' %} +{% elif REPLAY_ICS == "NO" %} + {% set ofst_hr = 'FHMIN_GFS' %} +{% endif %} + +{% if CASE == "C48" %} + {% set res = '5p00' %} +{% elif CASE == "C96" | "C192" %} + {% set res = '1p00' %} +{% elif CASE == "C384" %} + {% set res = '0p25' %} +{% elif CASE == "C768" %} + {% set res = '0p25' %} +{% endif %} + #select mem%03d and ensstat files required {% set membr = [] %} {% for mem_nm in range(0, NMEM_ENS + 1) %} @@ -25,8 +50,8 @@ gefs_wave: # Select grib2 files to copy to the atardir {% if RUN == "gefs" %} {% if path_exists(COMIN_WAVE_GRID) %} - {% for fhr in range(FHMIN, FHMAX_GFS + 1, 1) %} - {% set file_name = head ~ "global.5p00.f" ~ '%03d'|format(fhr) ~ ".grib2" %} + {% 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 %} From c69d5aa2fc7c7e5a0c338b9bad954c32662133bd Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Mon, 16 Sep 2024 22:21:52 -0400 Subject: [PATCH 058/127] modify gefs_wave.yaml.j2 --- parm/archive/gefs_wave.yaml.j2 | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/parm/archive/gefs_wave.yaml.j2 b/parm/archive/gefs_wave.yaml.j2 index aa83fc69d7..d963852a1c 100644 --- a/parm/archive/gefs_wave.yaml.j2 +++ b/parm/archive/gefs_wave.yaml.j2 @@ -17,9 +17,9 @@ gefs_wave: {% endif %} {% if REPLAY_ICS == "YES" %} - {% set ofst_hr = 'OFFSET_START_HOUR' %} + {% set ofst_hr = OFFSET_START_HOUR %} {% elif REPLAY_ICS == "NO" %} - {% set ofst_hr = 'FHMIN_GFS' %} + {% set ofst_hr = FHMIN_GFS %} {% endif %} {% if CASE == "C48" %} From 2e3785fa02c0c9f11a3b1b003fa546ecadf42091 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Mon, 16 Sep 2024 22:25:04 -0400 Subject: [PATCH 059/127] modified gefs_wave.yaml.j2 --- parm/archive/gefs_wave.yaml.j2 | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/parm/archive/gefs_wave.yaml.j2 b/parm/archive/gefs_wave.yaml.j2 index d963852a1c..a01c93547e 100644 --- a/parm/archive/gefs_wave.yaml.j2 +++ b/parm/archive/gefs_wave.yaml.j2 @@ -8,10 +8,10 @@ gefs_wave: target: "{{ ATARDIR }}/{{ cycle_YMDH }}/gefs_wave.tar" required: -{% if FHOUT_HF_GFS == FHOUT_HF_GFS %} +{% if FHOUT_HF_GFS == FHOUT_HF_GFS %}#need the right logic {% set fcst_freq = FHOUT_HF_GFS %} {% set max_hr = FHMAX_HF_GF %} -{% elif FHOUT_GFS == FHOUT_GFS %} +{% elif FHOUT_GFS == FHOUT_GFS %}#need the right logic {% set fcst_freq = FHOUT_GFS %} {% set max_hr = FHMAX_GFS %} {% endif %} From 442e4f01171e5f8ff2523a4d5cf89406c8de02c3 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Mon, 16 Sep 2024 22:30:35 -0400 Subject: [PATCH 060/127] modified gefs_wave.yaml.j2 --- parm/archive/gefs_wave.yaml.j2 | 11 +++-------- 1 file changed, 3 insertions(+), 8 deletions(-) diff --git a/parm/archive/gefs_wave.yaml.j2 b/parm/archive/gefs_wave.yaml.j2 index a01c93547e..11446d5a16 100644 --- a/parm/archive/gefs_wave.yaml.j2 +++ b/parm/archive/gefs_wave.yaml.j2 @@ -8,13 +8,8 @@ gefs_wave: target: "{{ ATARDIR }}/{{ cycle_YMDH }}/gefs_wave.tar" required: -{% if FHOUT_HF_GFS == FHOUT_HF_GFS %}#need the right logic - {% set fcst_freq = FHOUT_HF_GFS %} - {% set max_hr = FHMAX_HF_GF %} -{% elif FHOUT_GFS == FHOUT_GFS %}#need the right logic - {% set fcst_freq = FHOUT_GFS %} - {% set max_hr = FHMAX_GFS %} -{% endif %} +#need some logic here to select FHOUT_WAV or FHOUT_HF_WAV + {% if REPLAY_ICS == "YES" %} {% set ofst_hr = OFFSET_START_HOUR %} @@ -50,7 +45,7 @@ gefs_wave: # Select grib2 files to copy to the atardir {% if RUN == "gefs" %} {% if path_exists(COMIN_WAVE_GRID) %} - {% for fhr in range(ofst_hr, FHMAX_GFS + FHOUT_WAV, FHOUT_WAV) %} + {% for fhr in range(ofst_hr, FHMAX_GFS + FHOUT_HF_WAV, FHOUT_HF_WAV) %} {% set file_name = head ~ "global." ~ res ~ ".f" ~ '%03d'|format(fhr) ~ ".grib2" %} {% set file_path = COMIN_WAVE_GRID ~ "/" ~ file_name %} - "{{ file_path | relpath(ROTDIR)}}" From 5dd581dd393a9b731d5531d6cf437dd034279239 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Mon, 16 Sep 2024 22:33:00 -0400 Subject: [PATCH 061/127] modified gefs_atmos.yaml.j2 --- parm/archive/gefs_atmos.yaml.j2 | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/parm/archive/gefs_atmos.yaml.j2 b/parm/archive/gefs_atmos.yaml.j2 index 1dea9ecdbc..b1f738562e 100644 --- a/parm/archive/gefs_atmos.yaml.j2 +++ b/parm/archive/gefs_atmos.yaml.j2 @@ -13,6 +13,19 @@ gefs_atmos: {% do membr.append("mem" ~ '%03d' % mem_nm ) %} {% endfor %} +{% if FHOUT_HF_GFS == FHOUT_HF_GFS %}#need some logic here to select FHOUT_HF_GFS or FHOUT_GFS + {% set fcst_freq = FHOUT_HF_GFS %} + {% set max_hr = FHMAX_HF_GF %} +{% elif FHOUT_GFS == FHOUT_GFS %}#need some logic here to select FHOUT_HF_GFS or FHOUT_GFS + {% set fcst_freq = FHOUT_GFS %} + {% set max_hr = FHMAX_GFS %} +{% endif %} +{% if REPLAY_ICS == "YES" %} + {% set ofst_hr = OFFSET_START_HOUR %} +{% elif REPLAY_ICS == "NO" %} + {% set ofst_hr = FHMIN_GFS %} +{% endif %} + {% for mem in membr %} {% for res in ['0p25', '0p50', '1p00'] %} {% set tmpl_dict = ({ '${ROTDIR}':ROTDIR, @@ -27,7 +40,7 @@ gefs_atmos: # Select pgrb and grib files to copy to the atardir {% if RUN == "gefs" %} {% if path_exists(COMIN_ATMOS_GRIB) %} - {% for fhr in range(FHMIN_GFS, FHMAX_GFS + FHOUT_GFS, FHOUT_GFS) %} + {% for fhr in range(ofst_hr, max_hr + fcst_freq, fcst_freq) %} {% if mem=="ensstat" %} {% set file_name = head ~ "mean.pres_." ~ res ~ ".f" ~ '%03d'|format(fhr) ~ ".grib2" %} {% set file_path = COMIN_ATMOS_GRIB ~ "/" ~ file_name %} From ae692e4d0e58b737be53923f2e9a42f949c868c9 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Mon, 16 Sep 2024 22:33:21 -0400 Subject: [PATCH 062/127] modified exglobal_archive.py --- scripts/exglobal_archive.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/scripts/exglobal_archive.py b/scripts/exglobal_archive.py index 793fa1c1ac..bcce15ed62 100755 --- a/scripts/exglobal_archive.py +++ b/scripts/exglobal_archive.py @@ -31,7 +31,8 @@ def main(): 'restart_interval_gdas', 'restart_interval_gfs', 'AERO_ANL_RUN', 'AERO_FCST_RUN', 'DOIBP_WAV', 'DO_JEDIOCNVAR', 'NMEM_ENS', 'DO_JEDIATMVAR', 'DO_VRFY_OCEANDA', 'FHMAX_FITS', - 'IAUFHRS', 'DO_FIT2OBS', 'NET'] + 'IAUFHRS', 'DO_FIT2OBS', 'NET', 'FHOUT_HF_GFS', 'FHMAX_HF_GFS', 'REPLAY_ICS', + 'OFFSET_START_HOUR'] archive_dict = AttrDict() for key in keys: From b2e33be0368c446bce84f07b0254bb083d9620b7 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Tue, 17 Sep 2024 11:45:18 -0400 Subject: [PATCH 063/127] modified gefs_ocean.yaml.j2 --- parm/archive/gefs_ocean.yaml.j2 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/parm/archive/gefs_ocean.yaml.j2 b/parm/archive/gefs_ocean.yaml.j2 index 4c2c8de50c..a80c9e7088 100644 --- a/parm/archive/gefs_ocean.yaml.j2 +++ b/parm/archive/gefs_ocean.yaml.j2 @@ -36,7 +36,7 @@ gefs_ocean: # Select netcdf files to copy to the atardir {% if RUN == "gefs" %} {% if path_exists(COMIN_OCEAN_NETCDF) %} - {% for fhr in range(FHMIN_GFS + FHOUT_OCN_GFS, FHMAX_GFS, FHOUT_OCN_GFS) %} + {% 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 = COMIN_OCEAN_NETCDF ~ "/" ~ file_name %} - "{{ file_path | relpath(ROTDIR)}}" From a8e073299e2864afd9592e65e52f60f8c399eebf Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Tue, 17 Sep 2024 12:06:06 -0400 Subject: [PATCH 064/127] modified gefs_atmos.yaml.j2 --- parm/archive/gefs_atmos.yaml.j2 | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) diff --git a/parm/archive/gefs_atmos.yaml.j2 b/parm/archive/gefs_atmos.yaml.j2 index b1f738562e..1324fb66b3 100644 --- a/parm/archive/gefs_atmos.yaml.j2 +++ b/parm/archive/gefs_atmos.yaml.j2 @@ -13,13 +13,11 @@ gefs_atmos: {% do membr.append("mem" ~ '%03d' % mem_nm ) %} {% endfor %} -{% if FHOUT_HF_GFS == FHOUT_HF_GFS %}#need some logic here to select FHOUT_HF_GFS or FHOUT_GFS - {% set fcst_freq = FHOUT_HF_GFS %} - {% set max_hr = FHMAX_HF_GF %} -{% elif FHOUT_GFS == FHOUT_GFS %}#need some logic here to select FHOUT_HF_GFS or FHOUT_GFS - {% set fcst_freq = FHOUT_GFS %} - {% set max_hr = FHMAX_GFS %} -{% endif %} +#need some logic here to select FHOUT_HF_GFS or FHOUT_GFS +#for the time being using FHOUT_GFS +{% set fcst_freq = FHOUT_GFS %} +{% set max_hr = FHMAX_GF %} + {% if REPLAY_ICS == "YES" %} {% set ofst_hr = OFFSET_START_HOUR %} {% elif REPLAY_ICS == "NO" %} From a246710097181d974d5c7dd85eda88a0a5d5422f Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Tue, 17 Sep 2024 12:14:25 -0400 Subject: [PATCH 065/127] modified gefs_atmos.yaml.j2 --- parm/archive/gefs_atmos.yaml.j2 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/parm/archive/gefs_atmos.yaml.j2 b/parm/archive/gefs_atmos.yaml.j2 index 1324fb66b3..e690d1bab6 100644 --- a/parm/archive/gefs_atmos.yaml.j2 +++ b/parm/archive/gefs_atmos.yaml.j2 @@ -16,7 +16,7 @@ gefs_atmos: #need some logic here to select FHOUT_HF_GFS or FHOUT_GFS #for the time being using FHOUT_GFS {% set fcst_freq = FHOUT_GFS %} -{% set max_hr = FHMAX_GF %} +{% set max_hr = FHMAX_GFS %} {% if REPLAY_ICS == "YES" %} {% set ofst_hr = OFFSET_START_HOUR %} From 5bd3b1f3c807652c6e785b75d5483289bded5577 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Tue, 17 Sep 2024 12:33:50 -0400 Subject: [PATCH 066/127] modified gefs_wave.yaml.j2 --- parm/archive/gefs_wave.yaml.j2 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/parm/archive/gefs_wave.yaml.j2 b/parm/archive/gefs_wave.yaml.j2 index 11446d5a16..9377beec4e 100644 --- a/parm/archive/gefs_wave.yaml.j2 +++ b/parm/archive/gefs_wave.yaml.j2 @@ -19,7 +19,7 @@ gefs_wave: {% if CASE == "C48" %} {% set res = '5p00' %} -{% elif CASE == "C96" | "C192" %} +{% elif CASE == "C96" or "C192" %} {% set res = '1p00' %} {% elif CASE == "C384" %} {% set res = '0p25' %} From ed34cd74ccc27b308d5dd3e90f0820fabea352d0 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Tue, 17 Sep 2024 12:34:24 -0400 Subject: [PATCH 067/127] modified gefs_ocean.yaml.j2 --- parm/archive/gefs_ocean.yaml.j2 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/parm/archive/gefs_ocean.yaml.j2 b/parm/archive/gefs_ocean.yaml.j2 index a80c9e7088..cfa83b4cbc 100644 --- a/parm/archive/gefs_ocean.yaml.j2 +++ b/parm/archive/gefs_ocean.yaml.j2 @@ -9,7 +9,7 @@ gefs_ocean: required: {% if CASE == "C48" %} {% set res = '5p00' %} -{% elif CASE == "C96" | "C192" %} +{% elif CASE == "C96" or "C192" %} {% set res = '1p00' %} {% elif CASE == "C384" %} {% set res = '0p25' %} From 3fed0c3ae43e2379382e9da31b38b9e8741f880e Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Tue, 17 Sep 2024 12:40:17 -0400 Subject: [PATCH 068/127] modified exglobal_archive.py --- scripts/exglobal_archive.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/exglobal_archive.py b/scripts/exglobal_archive.py index bcce15ed62..7dbb137688 100755 --- a/scripts/exglobal_archive.py +++ b/scripts/exglobal_archive.py @@ -28,7 +28,7 @@ def main(): 'ARCH_GAUSSIAN_FHMAX', 'ARCH_GAUSSIAN_FHINC', 'ARCH_GAUSSIAN_FHINC', 'DOIAU', 'OCNRES', 'ICERES', 'NUM_SND_COLLECTIVES', 'FHOUT_WAV', 'FHOUT_HF_WAV', 'FHMAX_WAV', 'FHMAX_HF_WAV', 'FHMAX_WAV_GFS', - 'restart_interval_gdas', 'restart_interval_gfs', + 'restart_interval_gdas', 'restart_interval_gfs', 'CASE' 'AERO_ANL_RUN', 'AERO_FCST_RUN', 'DOIBP_WAV', 'DO_JEDIOCNVAR', 'NMEM_ENS', 'DO_JEDIATMVAR', 'DO_VRFY_OCEANDA', 'FHMAX_FITS', 'IAUFHRS', 'DO_FIT2OBS', 'NET', 'FHOUT_HF_GFS', 'FHMAX_HF_GFS', 'REPLAY_ICS', From b5c7e367cd0811a62d942562e02e574cc261836b Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Tue, 17 Sep 2024 12:45:00 -0400 Subject: [PATCH 069/127] modified exglobal_archive.py --- scripts/exglobal_archive.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/exglobal_archive.py b/scripts/exglobal_archive.py index 7dbb137688..be1331a173 100755 --- a/scripts/exglobal_archive.py +++ b/scripts/exglobal_archive.py @@ -28,7 +28,7 @@ def main(): 'ARCH_GAUSSIAN_FHMAX', 'ARCH_GAUSSIAN_FHINC', 'ARCH_GAUSSIAN_FHINC', 'DOIAU', 'OCNRES', 'ICERES', 'NUM_SND_COLLECTIVES', 'FHOUT_WAV', 'FHOUT_HF_WAV', 'FHMAX_WAV', 'FHMAX_HF_WAV', 'FHMAX_WAV_GFS', - 'restart_interval_gdas', 'restart_interval_gfs', 'CASE' + 'restart_interval_gdas', 'restart_interval_gfs', 'CASE', 'AERO_ANL_RUN', 'AERO_FCST_RUN', 'DOIBP_WAV', 'DO_JEDIOCNVAR', 'NMEM_ENS', 'DO_JEDIATMVAR', 'DO_VRFY_OCEANDA', 'FHMAX_FITS', 'IAUFHRS', 'DO_FIT2OBS', 'NET', 'FHOUT_HF_GFS', 'FHMAX_HF_GFS', 'REPLAY_ICS', From cb1919548a62ead0e4b6a7e04eb8404cbb7e8fc0 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Tue, 17 Sep 2024 13:29:46 -0400 Subject: [PATCH 070/127] modified gefs_wave.yaml.j2 --- parm/archive/gefs_wave.yaml.j2 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/parm/archive/gefs_wave.yaml.j2 b/parm/archive/gefs_wave.yaml.j2 index 9377beec4e..241f9ff546 100644 --- a/parm/archive/gefs_wave.yaml.j2 +++ b/parm/archive/gefs_wave.yaml.j2 @@ -13,7 +13,7 @@ gefs_wave: {% if REPLAY_ICS == "YES" %} {% set ofst_hr = OFFSET_START_HOUR %} -{% elif REPLAY_ICS == "NO" %} +{% else %} {% set ofst_hr = FHMIN_GFS %} {% endif %} From 706bf5f4b456345468135a9cb99427fe9237c335 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Tue, 17 Sep 2024 13:32:49 -0400 Subject: [PATCH 071/127] gefs_atmos.yaml.j2 --- parm/archive/gefs_atmos.yaml.j2 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/parm/archive/gefs_atmos.yaml.j2 b/parm/archive/gefs_atmos.yaml.j2 index e690d1bab6..f22a85590e 100644 --- a/parm/archive/gefs_atmos.yaml.j2 +++ b/parm/archive/gefs_atmos.yaml.j2 @@ -20,7 +20,7 @@ gefs_atmos: {% if REPLAY_ICS == "YES" %} {% set ofst_hr = OFFSET_START_HOUR %} -{% elif REPLAY_ICS == "NO" %} +{% else %} {% set ofst_hr = FHMIN_GFS %} {% endif %} From d363ecdb9a37b9ec89e52bbfda121b43fcd6fcc2 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Tue, 17 Sep 2024 13:36:38 -0400 Subject: [PATCH 072/127] modified gefs_ocean.yaml.j2 --- parm/archive/gefs_ocean.yaml.j2 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/parm/archive/gefs_ocean.yaml.j2 b/parm/archive/gefs_ocean.yaml.j2 index cfa83b4cbc..a3bb180f4c 100644 --- a/parm/archive/gefs_ocean.yaml.j2 +++ b/parm/archive/gefs_ocean.yaml.j2 @@ -36,7 +36,7 @@ gefs_ocean: # Select netcdf files to copy to the atardir {% if RUN == "gefs" %} {% if path_exists(COMIN_OCEAN_NETCDF) %} - {% for fhr in range(FHMIN_GFS + FHOUT_OCN_GFS, FHMAX_GFS + + FHOUT_OCN_GFS, FHOUT_OCN_GFS) %} + {% 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 = COMIN_OCEAN_NETCDF ~ "/" ~ file_name %} - "{{ file_path | relpath(ROTDIR)}}" From 0151ff7d8b159b67713a32d1d7005d27f1705100 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Tue, 17 Sep 2024 19:02:39 -0400 Subject: [PATCH 073/127] updated JGLOBAL_ARCHIVE --- jobs/JGLOBAL_ARCHIVE | 4 ---- 1 file changed, 4 deletions(-) diff --git a/jobs/JGLOBAL_ARCHIVE b/jobs/JGLOBAL_ARCHIVE index c0cfb8904a..401feba35f 100755 --- a/jobs/JGLOBAL_ARCHIVE +++ b/jobs/JGLOBAL_ARCHIVE @@ -50,10 +50,6 @@ for grid in "0p25" "0p50" "1p00"; do "COMIN_ATMOS_GRIB_${grid}:COM_ATMOS_GRIB_GRID_TMPL" done -for grid in "1p00" "5p00"; do - YMD=${PDY} HH=${cyc} GRID=${grid} declare_from_tmpl -rx \ - "COMIN_OCEAN_NETCDF_${grid}:COM_OCEAN_NETCDF_GRID_TMPL" -done ############################################################### # Run archive script ############################################################### From 340a820a146e78ed9e09d532505e24a3b1d19d81 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Tue, 17 Sep 2024 19:04:14 -0400 Subject: [PATCH 074/127] modified gefs_atmos.yaml.j2 --- parm/archive/gefs_atmos.yaml.j2 | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/parm/archive/gefs_atmos.yaml.j2 b/parm/archive/gefs_atmos.yaml.j2 index f22a85590e..14f47cf2a6 100644 --- a/parm/archive/gefs_atmos.yaml.j2 +++ b/parm/archive/gefs_atmos.yaml.j2 @@ -8,9 +8,9 @@ gefs_atmos: target: "{{ ATARDIR }}/{{ cycle_YMDH }}/gefs_atmos.tar" required: #select mem%03d and ensstat files required -{% set membr = ["ensstat"] %} +{% set members = ["ensstat"] %} {% for mem_nm in range(0, NMEM_ENS + 1) %} - {% do membr.append("mem" ~ '%03d' % mem_nm ) %} + {% do members.append("mem" ~ '%03d' % mem_nm ) %} {% endfor %} #need some logic here to select FHOUT_HF_GFS or FHOUT_GFS @@ -24,7 +24,7 @@ gefs_atmos: {% set ofst_hr = FHMIN_GFS %} {% endif %} -{% for mem in membr %} +{% for mem in members %} {% for res in ['0p25', '0p50', '1p00'] %} {% set tmpl_dict = ({ '${ROTDIR}':ROTDIR, '${RUN}':RUN, From 91fba02764a819ae3ff572fa68a8156889a0c625 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Tue, 17 Sep 2024 19:07:52 -0400 Subject: [PATCH 075/127] modified gefs_atmos.yaml.j2 --- parm/archive/gefs_atmos.yaml.j2 | 35 +++++++++++++++------------------ 1 file changed, 16 insertions(+), 19 deletions(-) diff --git a/parm/archive/gefs_atmos.yaml.j2 b/parm/archive/gefs_atmos.yaml.j2 index 14f47cf2a6..64f24ec892 100644 --- a/parm/archive/gefs_atmos.yaml.j2 +++ b/parm/archive/gefs_atmos.yaml.j2 @@ -35,24 +35,21 @@ gefs_atmos: {% set COMIN_ATMOS_GRIB = COM_ATMOS_GRIB_GRID_TMPL | replace_tmpl(tmpl_dict) %} - # Select pgrb and grib files to copy to the atardir - {% if RUN == "gefs" %} - {% if path_exists(COMIN_ATMOS_GRIB) %} - {% for fhr in range(ofst_hr, max_hr + fcst_freq, fcst_freq) %} - {% 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 %} +# Select pgrb and grib files to copy to the atardir + {% if path_exists(COMIN_ATMOS_GRIB) %} + {% for fhr in range(ofst_hr, max_hr + fcst_freq, fcst_freq) %} + {% 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 %} {% endfor %} {% endfor %} From 17d3f418578db8c0b775c191cf57661cabf1f07a Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Tue, 17 Sep 2024 19:08:59 -0400 Subject: [PATCH 076/127] modified gefs_ice.yaml.j2 --- parm/archive/gefs_ice.yaml.j2 | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/parm/archive/gefs_ice.yaml.j2 b/parm/archive/gefs_ice.yaml.j2 index 2721d2aadf..97a5c4fe51 100644 --- a/parm/archive/gefs_ice.yaml.j2 +++ b/parm/archive/gefs_ice.yaml.j2 @@ -8,12 +8,12 @@ gefs_ice: target: "{{ ATARDIR }}/{{ cycle_YMDH }}/gefs_ice.tar" required: #select mem%03d and ensstat files required -{% set membr = [] %} +{% set members = [] %} {% for mem_nm in range(0, NMEM_ENS + 1) %} - {% do membr.append("mem" ~ '%03d' % mem_nm ) %} + {% do members.append("mem" ~ '%03d' % mem_nm ) %} {% endfor %} -{% for mem in membr %} +{% for mem in members %} {% set tmpl_dict = ({ '${ROTDIR}':ROTDIR, '${RUN}':RUN, '${YMD}':cycle_YMD, From c3078007a3edfb4ca4e7a862fac6976466489829 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Tue, 17 Sep 2024 19:10:43 -0400 Subject: [PATCH 077/127] updated gefs_ocean.yaml.j2 --- parm/archive/gefs_ocean.yaml.j2 | 20 +++++++++----------- 1 file changed, 9 insertions(+), 11 deletions(-) diff --git a/parm/archive/gefs_ocean.yaml.j2 b/parm/archive/gefs_ocean.yaml.j2 index a3bb180f4c..b5623406db 100644 --- a/parm/archive/gefs_ocean.yaml.j2 +++ b/parm/archive/gefs_ocean.yaml.j2 @@ -18,12 +18,12 @@ gefs_ocean: {% endif %} #select mem%03d and ensstat files required -{% set membr = [] %} +{% set members = [] %} {% for mem_nm in range(0, NMEM_ENS + 1) %} - {% do membr.append("mem" ~ '%03d' % mem_nm ) %} + {% do members.append("mem" ~ '%03d' % mem_nm ) %} {% endfor %} -{% for mem in membr %} +{% for mem in members %} {% set tmpl_dict = ({ '${ROTDIR}':ROTDIR, '${RUN}':RUN, '${YMD}':cycle_YMD, @@ -34,13 +34,11 @@ gefs_ocean: {% set COMIN_OCEAN_NETCDF = COM_OCEAN_NETCDF_GRID_TMPL | replace_tmpl(tmpl_dict) %} # Select netcdf files to copy to the atardir - {% if RUN == "gefs" %} - {% if path_exists(COMIN_OCEAN_NETCDF) %} - {% 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 = COMIN_OCEAN_NETCDF ~ "/" ~ file_name %} - - "{{ file_path | relpath(ROTDIR)}}" - {% endfor %} - {% endif %} + {% if path_exists(COMIN_OCEAN_NETCDF) %} + {% 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 = COMIN_OCEAN_NETCDF ~ "/" ~ file_name %} + - "{{ file_path | relpath(ROTDIR)}}" + {% endfor %} {% endif %} {% endfor %} From a7fee4274b3bca5165bfb2266f2a3cbb4b228d9b Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Tue, 17 Sep 2024 19:12:28 -0400 Subject: [PATCH 078/127] modified gefs_ice.yaml.j2 --- parm/archive/gefs_ice.yaml.j2 | 16 +++++++--------- 1 file changed, 7 insertions(+), 9 deletions(-) diff --git a/parm/archive/gefs_ice.yaml.j2 b/parm/archive/gefs_ice.yaml.j2 index 97a5c4fe51..786d502f23 100644 --- a/parm/archive/gefs_ice.yaml.j2 +++ b/parm/archive/gefs_ice.yaml.j2 @@ -22,14 +22,12 @@ gefs_ice: {% set COMIN_ICE_HISTORY = COM_ICE_HISTORY_TMPL | replace_tmpl(tmpl_dict) %} - # Select netcdf files to copy to the atardir - {% if RUN == "gefs" %} - {% 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 %} +# 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 %} From 48032dec4d81f6756276841a3cb5db809b02906a Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Tue, 17 Sep 2024 19:13:48 -0400 Subject: [PATCH 079/127] modified gefs_wave.yaml.j2 --- parm/archive/gefs_wave.yaml.j2 | 20 +++++++++----------- 1 file changed, 9 insertions(+), 11 deletions(-) diff --git a/parm/archive/gefs_wave.yaml.j2 b/parm/archive/gefs_wave.yaml.j2 index 241f9ff546..c06e2c7cbc 100644 --- a/parm/archive/gefs_wave.yaml.j2 +++ b/parm/archive/gefs_wave.yaml.j2 @@ -28,12 +28,12 @@ gefs_wave: {% endif %} #select mem%03d and ensstat files required -{% set membr = [] %} +{% set members = [] %} {% for mem_nm in range(0, NMEM_ENS + 1) %} - {% do membr.append("mem" ~ '%03d' % mem_nm ) %} + {% do members.append("mem" ~ '%03d' % mem_nm ) %} {% endfor %} -{% for mem in membr %} +{% for mem in members %} {% set tmpl_dict = ({ '${ROTDIR}':ROTDIR, '${RUN}':RUN, '${YMD}':cycle_YMD, @@ -43,13 +43,11 @@ gefs_wave: {% set COMIN_WAVE_GRID = COM_WAVE_GRID_TMPL | replace_tmpl(tmpl_dict) %} # Select grib2 files to copy to the atardir - {% if RUN == "gefs" %} - {% if path_exists(COMIN_WAVE_GRID) %} - {% for fhr in range(ofst_hr, FHMAX_GFS + FHOUT_HF_WAV, FHOUT_HF_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 %} + {% if path_exists(COMIN_WAVE_GRID) %} + {% for fhr in range(ofst_hr, FHMAX_GFS + FHOUT_HF_WAV, FHOUT_HF_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 %} From 7d48835bd8326fb0ae7e856e38148ad6a0882ef9 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Tue, 17 Sep 2024 19:15:45 -0400 Subject: [PATCH 080/127] updated defaults.yaml --- parm/config/gefs/yaml/defaults.yaml | 1 - 1 file changed, 1 deletion(-) diff --git a/parm/config/gefs/yaml/defaults.yaml b/parm/config/gefs/yaml/defaults.yaml index a031e1fe1f..382e60ee12 100644 --- a/parm/config/gefs/yaml/defaults.yaml +++ b/parm/config/gefs/yaml/defaults.yaml @@ -14,5 +14,4 @@ base: FCST_BREAKPOINTS: "48" REPLAY_ICS: "NO" USE_OCN_PERTURB_FILES: "false" - HPSSARCH: "YES" LOCALARCH: "NO" From 68c8ff7b5e06e2a2602b6046a7256e10988dd519 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Tue, 17 Sep 2024 19:56:58 -0400 Subject: [PATCH 081/127] modified gefs_ocean.yaml.j2 --- parm/archive/gefs_ocean.yaml.j2 | 11 +---------- 1 file changed, 1 insertion(+), 10 deletions(-) diff --git a/parm/archive/gefs_ocean.yaml.j2 b/parm/archive/gefs_ocean.yaml.j2 index b5623406db..7f7fc87d55 100644 --- a/parm/archive/gefs_ocean.yaml.j2 +++ b/parm/archive/gefs_ocean.yaml.j2 @@ -7,21 +7,12 @@ gefs_ocean: name: "GEFS_OCEAN" target: "{{ ATARDIR }}/{{ cycle_YMDH }}/gefs_ocean.tar" required: -{% if CASE == "C48" %} - {% set res = '5p00' %} -{% elif CASE == "C96" or "C192" %} - {% set res = '1p00' %} -{% elif CASE == "C384" %} - {% set res = '0p25' %} -{% elif CASE == "C768" %} - {% set res = '0p25' %} -{% 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 %} +{{ % res = OCNRES[0] ~ "p" ~ OCNRES[-2:] %}} {% for mem in members %} {% set tmpl_dict = ({ '${ROTDIR}':ROTDIR, From e5a5571f1f112d1ebbdff05ca5c12957c4b60836 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Tue, 17 Sep 2024 20:50:48 -0400 Subject: [PATCH 082/127] renamed gefs_yaml files --- parm/archive/gefs_extracted_atmos.yaml.j2 | 55 +++++++++++++++++++++++ parm/archive/gefs_extracted_ice.yaml.j2 | 33 ++++++++++++++ parm/archive/gefs_extracted_ocean.yaml.j2 | 35 +++++++++++++++ parm/archive/gefs_extracted_wave.yaml.j2 | 53 ++++++++++++++++++++++ 4 files changed, 176 insertions(+) create mode 100644 parm/archive/gefs_extracted_atmos.yaml.j2 create mode 100644 parm/archive/gefs_extracted_ice.yaml.j2 create mode 100644 parm/archive/gefs_extracted_ocean.yaml.j2 create mode 100644 parm/archive/gefs_extracted_wave.yaml.j2 diff --git a/parm/archive/gefs_extracted_atmos.yaml.j2 b/parm/archive/gefs_extracted_atmos.yaml.j2 new file mode 100644 index 0000000000..64f24ec892 --- /dev/null +++ b/parm/archive/gefs_extracted_atmos.yaml.j2 @@ -0,0 +1,55 @@ +{% 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 %} + +#need some logic here to select FHOUT_HF_GFS or FHOUT_GFS +#for the time being using FHOUT_GFS +{% set fcst_freq = FHOUT_GFS %} +{% set max_hr = FHMAX_GFS %} + +{% if REPLAY_ICS == "YES" %} + {% 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) %} + {% for fhr in range(ofst_hr, max_hr + fcst_freq, fcst_freq) %} + {% 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 %} + {% endfor %} +{% endfor %} diff --git a/parm/archive/gefs_extracted_ice.yaml.j2 b/parm/archive/gefs_extracted_ice.yaml.j2 new file mode 100644 index 0000000000..786d502f23 --- /dev/null +++ b/parm/archive/gefs_extracted_ice.yaml.j2 @@ -0,0 +1,33 @@ +{% 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 new file mode 100644 index 0000000000..7f7fc87d55 --- /dev/null +++ b/parm/archive/gefs_extracted_ocean.yaml.j2 @@ -0,0 +1,35 @@ +{% 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 %} +{{ % res = OCNRES[0] ~ "p" ~ OCNRES[-2:] %}} + +{% for mem in members %} + {% set tmpl_dict = ({ '${ROTDIR}':ROTDIR, + '${RUN}':RUN, + '${YMD}':cycle_YMD, + '${HH}':cycle_HH, + '${GRID}':res, + '${MEMDIR}':mem }) %} + + {% set COMIN_OCEAN_NETCDF = COM_OCEAN_NETCDF_GRID_TMPL | replace_tmpl(tmpl_dict) %} + + # Select netcdf files to copy to the atardir + {% if path_exists(COMIN_OCEAN_NETCDF) %} + {% 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 = COMIN_OCEAN_NETCDF ~ "/" ~ 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 new file mode 100644 index 0000000000..c06e2c7cbc --- /dev/null +++ b/parm/archive/gefs_extracted_wave.yaml.j2 @@ -0,0 +1,53 @@ +{% 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: + +#need some logic here to select FHOUT_WAV or FHOUT_HF_WAV + + +{% if REPLAY_ICS == "YES" %} + {% set ofst_hr = OFFSET_START_HOUR %} +{% else %} + {% set ofst_hr = FHMIN_GFS %} +{% endif %} + +{% if CASE == "C48" %} + {% set res = '5p00' %} +{% elif CASE == "C96" or "C192" %} + {% set res = '1p00' %} +{% elif CASE == "C384" %} + {% set res = '0p25' %} +{% elif CASE == "C768" %} + {% set res = '0p25' %} +{% 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_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_HF_WAV, FHOUT_HF_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 %} From 4b7b5b11e8d2bdab41313b928d79d38f3151f4bb Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Tue, 17 Sep 2024 20:54:34 -0400 Subject: [PATCH 083/127] updated master_gefs.yaml.j2 --- parm/archive/master_gefs.yaml.j2 | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/parm/archive/master_gefs.yaml.j2 b/parm/archive/master_gefs.yaml.j2 index 167cb72a76..1e0d3487b4 100644 --- a/parm/archive/master_gefs.yaml.j2 +++ b/parm/archive/master_gefs.yaml.j2 @@ -4,9 +4,11 @@ {% set cycle_YMDH = current_cycle | to_YMDH %} datasets: -{% filter indent(width=4) %} -{% include "gefs_atmos.yaml.j2" %} -{% include "gefs_ocean.yaml.j2" %} -{% include "gefs_ice.yaml.j2" %} -{% include "gefs_wave.yaml.j2" %} -{% endfilter %} +{% if DO_EXTRACTVARS %} + {% filter indent(width=4) %} + {% include "gefs_atmos.yaml.j2" %} + {% include "gefs_ocean.yaml.j2" %} + {% include "gefs_ice.yaml.j2" %} + {% include "gefs_wave.yaml.j2" %} + {% endfilter %} +{% endif %} From 0f51e82c81839cd5605640bd0d12127e4eb0e470 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Tue, 17 Sep 2024 20:55:51 -0400 Subject: [PATCH 084/127] updated master_gefs.yaml.j2 and other gefs yamls --- parm/archive/gefs_atmos.yaml.j2 | 55 -------------------------------- parm/archive/gefs_ice.yaml.j2 | 33 ------------------- parm/archive/gefs_ocean.yaml.j2 | 35 -------------------- parm/archive/gefs_wave.yaml.j2 | 53 ------------------------------ parm/archive/master_gefs.yaml.j2 | 8 ++--- 5 files changed, 4 insertions(+), 180 deletions(-) delete mode 100644 parm/archive/gefs_atmos.yaml.j2 delete mode 100644 parm/archive/gefs_ice.yaml.j2 delete mode 100644 parm/archive/gefs_ocean.yaml.j2 delete mode 100644 parm/archive/gefs_wave.yaml.j2 diff --git a/parm/archive/gefs_atmos.yaml.j2 b/parm/archive/gefs_atmos.yaml.j2 deleted file mode 100644 index 64f24ec892..0000000000 --- a/parm/archive/gefs_atmos.yaml.j2 +++ /dev/null @@ -1,55 +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 %} - -#need some logic here to select FHOUT_HF_GFS or FHOUT_GFS -#for the time being using FHOUT_GFS -{% set fcst_freq = FHOUT_GFS %} -{% set max_hr = FHMAX_GFS %} - -{% if REPLAY_ICS == "YES" %} - {% 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) %} - {% for fhr in range(ofst_hr, max_hr + fcst_freq, fcst_freq) %} - {% 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 %} - {% endfor %} -{% endfor %} diff --git a/parm/archive/gefs_ice.yaml.j2 b/parm/archive/gefs_ice.yaml.j2 deleted file mode 100644 index 786d502f23..0000000000 --- a/parm/archive/gefs_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_ocean.yaml.j2 b/parm/archive/gefs_ocean.yaml.j2 deleted file mode 100644 index 7f7fc87d55..0000000000 --- a/parm/archive/gefs_ocean.yaml.j2 +++ /dev/null @@ -1,35 +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 %} -{{ % res = OCNRES[0] ~ "p" ~ OCNRES[-2:] %}} - -{% for mem in members %} - {% set tmpl_dict = ({ '${ROTDIR}':ROTDIR, - '${RUN}':RUN, - '${YMD}':cycle_YMD, - '${HH}':cycle_HH, - '${GRID}':res, - '${MEMDIR}':mem }) %} - - {% set COMIN_OCEAN_NETCDF = COM_OCEAN_NETCDF_GRID_TMPL | replace_tmpl(tmpl_dict) %} - - # Select netcdf files to copy to the atardir - {% if path_exists(COMIN_OCEAN_NETCDF) %} - {% 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 = COMIN_OCEAN_NETCDF ~ "/" ~ file_name %} - - "{{ file_path | relpath(ROTDIR)}}" - {% endfor %} - {% endif %} -{% endfor %} diff --git a/parm/archive/gefs_wave.yaml.j2 b/parm/archive/gefs_wave.yaml.j2 deleted file mode 100644 index c06e2c7cbc..0000000000 --- a/parm/archive/gefs_wave.yaml.j2 +++ /dev/null @@ -1,53 +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: - -#need some logic here to select FHOUT_WAV or FHOUT_HF_WAV - - -{% if REPLAY_ICS == "YES" %} - {% set ofst_hr = OFFSET_START_HOUR %} -{% else %} - {% set ofst_hr = FHMIN_GFS %} -{% endif %} - -{% if CASE == "C48" %} - {% set res = '5p00' %} -{% elif CASE == "C96" or "C192" %} - {% set res = '1p00' %} -{% elif CASE == "C384" %} - {% set res = '0p25' %} -{% elif CASE == "C768" %} - {% set res = '0p25' %} -{% 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_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_HF_WAV, FHOUT_HF_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 %} diff --git a/parm/archive/master_gefs.yaml.j2 b/parm/archive/master_gefs.yaml.j2 index 1e0d3487b4..89657b55a6 100644 --- a/parm/archive/master_gefs.yaml.j2 +++ b/parm/archive/master_gefs.yaml.j2 @@ -6,9 +6,9 @@ datasets: {% if DO_EXTRACTVARS %} {% filter indent(width=4) %} - {% include "gefs_atmos.yaml.j2" %} - {% include "gefs_ocean.yaml.j2" %} - {% include "gefs_ice.yaml.j2" %} - {% include "gefs_wave.yaml.j2" %} + {% include "gefs_extracted_atmos.yaml.j2" %} + {% include "gefs_extracted_ocean.yaml.j2" %} + {% include "gefs_extracted_ice.yaml.j2" %} + {% include "gefs_extracted_wave.yaml.j2" %} {% endfilter %} {% endif %} From 36bcbd065b84fb2ccfd8102504df7245292a3020 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Tue, 17 Sep 2024 22:08:54 -0400 Subject: [PATCH 085/127] updated exglobal_archive.py --- scripts/exglobal_archive.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/exglobal_archive.py b/scripts/exglobal_archive.py index be1331a173..e6b0020943 100755 --- a/scripts/exglobal_archive.py +++ b/scripts/exglobal_archive.py @@ -29,7 +29,7 @@ def main(): 'DOIAU', 'OCNRES', 'ICERES', 'NUM_SND_COLLECTIVES', 'FHOUT_WAV', 'FHOUT_HF_WAV', 'FHMAX_WAV', 'FHMAX_HF_WAV', 'FHMAX_WAV_GFS', 'restart_interval_gdas', 'restart_interval_gfs', 'CASE', - 'AERO_ANL_RUN', 'AERO_FCST_RUN', 'DOIBP_WAV', 'DO_JEDIOCNVAR', + 'AERO_ANL_RUN', 'AERO_FCST_RUN', 'DOIBP_WAV', 'DO_JEDIOCNVAR', 'DO_EXTRACTVARS', 'NMEM_ENS', 'DO_JEDIATMVAR', 'DO_VRFY_OCEANDA', 'FHMAX_FITS', 'IAUFHRS', 'DO_FIT2OBS', 'NET', 'FHOUT_HF_GFS', 'FHMAX_HF_GFS', 'REPLAY_ICS', 'OFFSET_START_HOUR'] From e8d951baf55e3755cd8500acfda1d90bcd0d6b2f Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Tue, 17 Sep 2024 22:29:41 -0400 Subject: [PATCH 086/127] modified gefs_extracted_atmos.yaml.j2 --- parm/archive/gefs_extracted_atmos.yaml.j2 | 1 + 1 file changed, 1 insertion(+) diff --git a/parm/archive/gefs_extracted_atmos.yaml.j2 b/parm/archive/gefs_extracted_atmos.yaml.j2 index 64f24ec892..714074de61 100644 --- a/parm/archive/gefs_extracted_atmos.yaml.j2 +++ b/parm/archive/gefs_extracted_atmos.yaml.j2 @@ -51,5 +51,6 @@ gefs_atmos: - "{{ file_path | relpath(ROTDIR)}}" {% endif %} {% endfor %} + {% endif %} {% endfor %} {% endfor %} From 0b0bb3037c8ccf701604f7c3753d124614be46b5 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Tue, 17 Sep 2024 22:34:11 -0400 Subject: [PATCH 087/127] modified gefs_extracted_ocean.yaml.j2 --- parm/archive/gefs_extracted_ocean.yaml.j2 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/parm/archive/gefs_extracted_ocean.yaml.j2 b/parm/archive/gefs_extracted_ocean.yaml.j2 index 7f7fc87d55..5fe50fd188 100644 --- a/parm/archive/gefs_extracted_ocean.yaml.j2 +++ b/parm/archive/gefs_extracted_ocean.yaml.j2 @@ -12,7 +12,7 @@ gefs_ocean: {% for mem_nm in range(0, NMEM_ENS + 1) %} {% do members.append("mem" ~ '%03d' % mem_nm ) %} {% endfor %} -{{ % res = OCNRES[0] ~ "p" ~ OCNRES[-2:] %}} +{% set res = OCNRES[0] ~ "p" ~ OCNRES[-2:] %} {% for mem in members %} {% set tmpl_dict = ({ '${ROTDIR}':ROTDIR, From 1f982eecaeb2c45ed25b774c9dafc26a2c2e5c3e Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Tue, 17 Sep 2024 22:39:27 -0400 Subject: [PATCH 088/127] modified gefs_extracted_ocean.yaml.j2 --- parm/archive/gefs_extracted_ocean.yaml.j2 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/parm/archive/gefs_extracted_ocean.yaml.j2 b/parm/archive/gefs_extracted_ocean.yaml.j2 index 5fe50fd188..ba2be80fca 100644 --- a/parm/archive/gefs_extracted_ocean.yaml.j2 +++ b/parm/archive/gefs_extracted_ocean.yaml.j2 @@ -12,7 +12,7 @@ gefs_ocean: {% for mem_nm in range(0, NMEM_ENS + 1) %} {% do members.append("mem" ~ '%03d' % mem_nm ) %} {% endfor %} -{% set res = OCNRES[0] ~ "p" ~ OCNRES[-2:] %} +{% set res = OCNRES[0]|string() ~ "p" ~ '%02d'|format(OCNRES[-2:]) %} {% for mem in members %} {% set tmpl_dict = ({ '${ROTDIR}':ROTDIR, From 5cb1f5a6d57d6e050939d69533abba98ba6be5fc Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Tue, 17 Sep 2024 23:09:19 -0400 Subject: [PATCH 089/127] modified gefs_extracted_ocean.yaml.j2 --- parm/archive/gefs_extracted_ocean.yaml.j2 | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/parm/archive/gefs_extracted_ocean.yaml.j2 b/parm/archive/gefs_extracted_ocean.yaml.j2 index ba2be80fca..67ad4a62e8 100644 --- a/parm/archive/gefs_extracted_ocean.yaml.j2 +++ b/parm/archive/gefs_extracted_ocean.yaml.j2 @@ -12,7 +12,8 @@ gefs_ocean: {% for mem_nm in range(0, NMEM_ENS + 1) %} {% do members.append("mem" ~ '%03d' % mem_nm ) %} {% endfor %} -{% set res = OCNRES[0]|string() ~ "p" ~ '%02d'|format(OCNRES[-2:]) %} + +{% set res = (OCNRES|string())[0] ~ "p" ~ (OCNRES|string())[-2:] %} {% for mem in members %} {% set tmpl_dict = ({ '${ROTDIR}':ROTDIR, From 177d421e55b4c9e075262c88abc736ad97b37590 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Wed, 18 Sep 2024 09:24:22 -0400 Subject: [PATCH 090/127] modified gefs_extracted_atmos.yaml.j2 --- parm/archive/gefs_extracted_atmos.yaml.j2 | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/parm/archive/gefs_extracted_atmos.yaml.j2 b/parm/archive/gefs_extracted_atmos.yaml.j2 index 714074de61..2ad3dabdb9 100644 --- a/parm/archive/gefs_extracted_atmos.yaml.j2 +++ b/parm/archive/gefs_extracted_atmos.yaml.j2 @@ -15,8 +15,13 @@ gefs_atmos: #need some logic here to select FHOUT_HF_GFS or FHOUT_GFS #for the time being using FHOUT_GFS -{% set fcst_freq = FHOUT_GFS %} -{% set max_hr = FHMAX_GFS %} +{% if FHMAX_HF_GFS == 0 %} + {% set fcst_freq = FHOUT_GFS %} + {% set max_hr = FHMAX_GFS %} +{% else %} + {% set fcst_freq = FHOUT_HF_GFS %} + {% set max_hr = FHMAX_HF_GF %} +{% endif %} {% if REPLAY_ICS == "YES" %} {% set ofst_hr = OFFSET_START_HOUR %} From b47cf0fa32c1b4fccd217ee4e5264af6e0a546b7 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Wed, 18 Sep 2024 09:29:16 -0400 Subject: [PATCH 091/127] modified gefs_extracted_wave.yaml.j2 --- parm/archive/gefs_extracted_wave.yaml.j2 | 10 +--------- 1 file changed, 1 insertion(+), 9 deletions(-) diff --git a/parm/archive/gefs_extracted_wave.yaml.j2 b/parm/archive/gefs_extracted_wave.yaml.j2 index c06e2c7cbc..ea641e716a 100644 --- a/parm/archive/gefs_extracted_wave.yaml.j2 +++ b/parm/archive/gefs_extracted_wave.yaml.j2 @@ -17,15 +17,7 @@ gefs_wave: {% set ofst_hr = FHMIN_GFS %} {% endif %} -{% if CASE == "C48" %} - {% set res = '5p00' %} -{% elif CASE == "C96" or "C192" %} - {% set res = '1p00' %} -{% elif CASE == "C384" %} - {% set res = '0p25' %} -{% elif CASE == "C768" %} - {% set res = '0p25' %} -{% endif %} +{% set res = (waveGRD[-3:])[0] ~ "p" ~ (waveGRD[-3:])[-2:] %} #select mem%03d and ensstat files required {% set members = [] %} From 953a00f286f192b5a0422ac45aeaf8c9de785d24 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Wed, 18 Sep 2024 10:14:53 -0400 Subject: [PATCH 092/127] modified exglobal_archive.py --- scripts/exglobal_archive.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/exglobal_archive.py b/scripts/exglobal_archive.py index e6b0020943..55cb077b44 100755 --- a/scripts/exglobal_archive.py +++ b/scripts/exglobal_archive.py @@ -30,7 +30,7 @@ def main(): 'FHOUT_HF_WAV', 'FHMAX_WAV', 'FHMAX_HF_WAV', 'FHMAX_WAV_GFS', 'restart_interval_gdas', 'restart_interval_gfs', 'CASE', 'AERO_ANL_RUN', 'AERO_FCST_RUN', 'DOIBP_WAV', 'DO_JEDIOCNVAR', 'DO_EXTRACTVARS', - 'NMEM_ENS', 'DO_JEDIATMVAR', 'DO_VRFY_OCEANDA', 'FHMAX_FITS', + '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'] From ccdae20220bc5c341d1e2aafcae7994a9505ac92 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Wed, 18 Sep 2024 11:00:32 -0400 Subject: [PATCH 093/127] modified gefs_extracted_atmos.yaml.j2 --- parm/archive/gefs_extracted_atmos.yaml.j2 | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/parm/archive/gefs_extracted_atmos.yaml.j2 b/parm/archive/gefs_extracted_atmos.yaml.j2 index 2ad3dabdb9..dd58a3f5b0 100644 --- a/parm/archive/gefs_extracted_atmos.yaml.j2 +++ b/parm/archive/gefs_extracted_atmos.yaml.j2 @@ -13,8 +13,7 @@ gefs_atmos: {% do members.append("mem" ~ '%03d' % mem_nm ) %} {% endfor %} -#need some logic here to select FHOUT_HF_GFS or FHOUT_GFS -#for the time being using FHOUT_GFS +#logic here to select FHOUT_HF_GFS or FHOUT_GFS {% if FHMAX_HF_GFS == 0 %} {% set fcst_freq = FHOUT_GFS %} {% set max_hr = FHMAX_GFS %} From c79def253610b9f0723e9951cbaa7e741c1b42fd Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Wed, 18 Sep 2024 12:05:13 -0400 Subject: [PATCH 094/127] modified gefs_extractvars.yaml.j2 --- parm/archive/gefs_extracted_wave.yaml.j2 | 4 ---- 1 file changed, 4 deletions(-) diff --git a/parm/archive/gefs_extracted_wave.yaml.j2 b/parm/archive/gefs_extracted_wave.yaml.j2 index ea641e716a..f320522d41 100644 --- a/parm/archive/gefs_extracted_wave.yaml.j2 +++ b/parm/archive/gefs_extracted_wave.yaml.j2 @@ -7,10 +7,6 @@ gefs_wave: name: "GEFS_WAVE" target: "{{ ATARDIR }}/{{ cycle_YMDH }}/gefs_wave.tar" required: - -#need some logic here to select FHOUT_WAV or FHOUT_HF_WAV - - {% if REPLAY_ICS == "YES" %} {% set ofst_hr = OFFSET_START_HOUR %} {% else %} From 22297dbb80f4cb6bb4576c51b53bceb01a75950f Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Wed, 18 Sep 2024 15:15:34 -0400 Subject: [PATCH 095/127] modified 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 f320522d41..a686b0830d 100644 --- a/parm/archive/gefs_extracted_wave.yaml.j2 +++ b/parm/archive/gefs_extracted_wave.yaml.j2 @@ -7,7 +7,7 @@ gefs_wave: name: "GEFS_WAVE" target: "{{ ATARDIR }}/{{ cycle_YMDH }}/gefs_wave.tar" required: -{% if REPLAY_ICS == "YES" %} +{% if REPLAY_ICS %} {% set ofst_hr = OFFSET_START_HOUR %} {% else %} {% set ofst_hr = FHMIN_GFS %} From ada5ec6d9858fef0c0236073a953402cc3f8ebd5 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Wed, 18 Sep 2024 15:32:48 -0400 Subject: [PATCH 096/127] modified gefs_extracted_atmos.yaml.j2 --- parm/archive/gefs_extracted_atmos.yaml.j2 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/parm/archive/gefs_extracted_atmos.yaml.j2 b/parm/archive/gefs_extracted_atmos.yaml.j2 index dd58a3f5b0..bc30ec8c99 100644 --- a/parm/archive/gefs_extracted_atmos.yaml.j2 +++ b/parm/archive/gefs_extracted_atmos.yaml.j2 @@ -22,7 +22,7 @@ gefs_atmos: {% set max_hr = FHMAX_HF_GF %} {% endif %} -{% if REPLAY_ICS == "YES" %} +{% if REPLAY_ICS %} {% set ofst_hr = OFFSET_START_HOUR %} {% else %} {% set ofst_hr = FHMIN_GFS %} From eac1ee4a7b673c0804f7556a82c1e38d279d0125 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Wed, 18 Sep 2024 15:42:19 -0400 Subject: [PATCH 097/127] modified gefs_extracted_atmos.yaml.j2 --- parm/archive/gefs_extracted_atmos.yaml.j2 | 61 ++++++++++++++++++----- 1 file changed, 48 insertions(+), 13 deletions(-) diff --git a/parm/archive/gefs_extracted_atmos.yaml.j2 b/parm/archive/gefs_extracted_atmos.yaml.j2 index bc30ec8c99..fd7db337f6 100644 --- a/parm/archive/gefs_extracted_atmos.yaml.j2 +++ b/parm/archive/gefs_extracted_atmos.yaml.j2 @@ -41,20 +41,55 @@ gefs_atmos: # Select pgrb and grib files to copy to the atardir {% if path_exists(COMIN_ATMOS_GRIB) %} - {% for fhr in range(ofst_hr, max_hr + fcst_freq, fcst_freq) %} - {% 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)}}" + {% 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 %} - {% endfor %} + {% 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 %} From 90b472982bb25086ab5e834504ba0951ab5c0405 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Wed, 18 Sep 2024 15:44:36 -0400 Subject: [PATCH 098/127] modified ges_extracted_atmos.yaml.j2 --- parm/archive/gefs_extracted_atmos.yaml.j2 | 9 --------- 1 file changed, 9 deletions(-) diff --git a/parm/archive/gefs_extracted_atmos.yaml.j2 b/parm/archive/gefs_extracted_atmos.yaml.j2 index fd7db337f6..7ceba551bf 100644 --- a/parm/archive/gefs_extracted_atmos.yaml.j2 +++ b/parm/archive/gefs_extracted_atmos.yaml.j2 @@ -13,15 +13,6 @@ gefs_atmos: {% do members.append("mem" ~ '%03d' % mem_nm ) %} {% endfor %} -#logic here to select FHOUT_HF_GFS or FHOUT_GFS -{% if FHMAX_HF_GFS == 0 %} - {% set fcst_freq = FHOUT_GFS %} - {% set max_hr = FHMAX_GFS %} -{% else %} - {% set fcst_freq = FHOUT_HF_GFS %} - {% set max_hr = FHMAX_HF_GF %} -{% endif %} - {% if REPLAY_ICS %} {% set ofst_hr = OFFSET_START_HOUR %} {% else %} From 97e72f7bc97efc0244d0299db99a45238afed2d3 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Wed, 18 Sep 2024 20:34:08 -0400 Subject: [PATCH 099/127] modified master_gefs.yaml.j2 --- parm/archive/master_gefs.yaml.j2 | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/parm/archive/master_gefs.yaml.j2 b/parm/archive/master_gefs.yaml.j2 index 89657b55a6..9aa871506b 100644 --- a/parm/archive/master_gefs.yaml.j2 +++ b/parm/archive/master_gefs.yaml.j2 @@ -4,11 +4,11 @@ {% set cycle_YMDH = current_cycle | to_YMDH %} datasets: +{% filter indent(width=4) %} {% if DO_EXTRACTVARS %} - {% filter indent(width=4) %} {% include "gefs_extracted_atmos.yaml.j2" %} {% include "gefs_extracted_ocean.yaml.j2" %} {% include "gefs_extracted_ice.yaml.j2" %} {% include "gefs_extracted_wave.yaml.j2" %} - {% endfilter %} {% endif %} +{% endfilter %} From fa0a1fd864e189cd8c489138799733956d876187 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Thu, 19 Sep 2024 10:10:24 -0400 Subject: [PATCH 100/127] modified master_gefs.yaml.j2 --- parm/archive/master_gefs.yaml.j2 | 2 -- 1 file changed, 2 deletions(-) diff --git a/parm/archive/master_gefs.yaml.j2 b/parm/archive/master_gefs.yaml.j2 index 9aa871506b..5dc046dcfd 100644 --- a/parm/archive/master_gefs.yaml.j2 +++ b/parm/archive/master_gefs.yaml.j2 @@ -5,10 +5,8 @@ datasets: {% filter indent(width=4) %} -{% if DO_EXTRACTVARS %} {% include "gefs_extracted_atmos.yaml.j2" %} {% include "gefs_extracted_ocean.yaml.j2" %} {% include "gefs_extracted_ice.yaml.j2" %} {% include "gefs_extracted_wave.yaml.j2" %} -{% endif %} {% endfilter %} From 73449d307d67ba85a4bde0e3d87f9290d9478a82 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Thu, 19 Sep 2024 10:22:13 -0400 Subject: [PATCH 101/127] modified exglobal_archive.py --- scripts/exglobal_archive.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/scripts/exglobal_archive.py b/scripts/exglobal_archive.py index 55cb077b44..ed01e42bc5 100755 --- a/scripts/exglobal_archive.py +++ b/scripts/exglobal_archive.py @@ -28,8 +28,8 @@ def main(): 'ARCH_GAUSSIAN_FHMAX', 'ARCH_GAUSSIAN_FHINC', 'ARCH_GAUSSIAN_FHINC', 'DOIAU', 'OCNRES', 'ICERES', 'NUM_SND_COLLECTIVES', 'FHOUT_WAV', 'FHOUT_HF_WAV', 'FHMAX_WAV', 'FHMAX_HF_WAV', 'FHMAX_WAV_GFS', - 'restart_interval_gdas', 'restart_interval_gfs', 'CASE', - 'AERO_ANL_RUN', 'AERO_FCST_RUN', 'DOIBP_WAV', 'DO_JEDIOCNVAR', 'DO_EXTRACTVARS', + 'restart_interval_gdas', 'restart_interval_gfs', 'DO_EXTRACTVARS', + 'AERO_ANL_RUN', 'AERO_FCST_RUN', 'DOIBP_WAV', 'DO_JEDIOCNVAR', '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'] From 442e1c15ef379dab33bacb72f6dd7bef0c74751a Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Thu, 19 Sep 2024 10:29:13 -0400 Subject: [PATCH 102/127] modified exglobal_archive.py --- scripts/exglobal_archive.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/exglobal_archive.py b/scripts/exglobal_archive.py index ed01e42bc5..4ee9e5ed0e 100755 --- a/scripts/exglobal_archive.py +++ b/scripts/exglobal_archive.py @@ -28,7 +28,7 @@ def main(): 'ARCH_GAUSSIAN_FHMAX', 'ARCH_GAUSSIAN_FHINC', 'ARCH_GAUSSIAN_FHINC', 'DOIAU', 'OCNRES', 'ICERES', 'NUM_SND_COLLECTIVES', 'FHOUT_WAV', 'FHOUT_HF_WAV', 'FHMAX_WAV', 'FHMAX_HF_WAV', 'FHMAX_WAV_GFS', - 'restart_interval_gdas', 'restart_interval_gfs', 'DO_EXTRACTVARS', + 'restart_interval_gdas', 'restart_interval_gfs', 'AERO_ANL_RUN', 'AERO_FCST_RUN', 'DOIBP_WAV', 'DO_JEDIOCNVAR', 'NMEM_ENS', 'DO_JEDIATMVAR', 'DO_VRFY_OCEANDA', 'FHMAX_FITS', 'waveGRD', 'IAUFHRS', 'DO_FIT2OBS', 'NET', 'FHOUT_HF_GFS', 'FHMAX_HF_GFS', 'REPLAY_ICS', From d8950848bfb3d22555a6feccd09d8070f9ab89c2 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Thu, 19 Sep 2024 14:11:44 -0400 Subject: [PATCH 103/127] modified gefs_extracted_ocean and wave.yaml.j2 --- parm/archive/gefs_extracted_ocean.yaml.j2 | 14 +++++++++----- parm/archive/gefs_extracted_wave.yaml.j2 | 2 +- 2 files changed, 10 insertions(+), 6 deletions(-) diff --git a/parm/archive/gefs_extracted_ocean.yaml.j2 b/parm/archive/gefs_extracted_ocean.yaml.j2 index 67ad4a62e8..e5e3b36e3b 100644 --- a/parm/archive/gefs_extracted_ocean.yaml.j2 +++ b/parm/archive/gefs_extracted_ocean.yaml.j2 @@ -13,23 +13,27 @@ gefs_ocean: {% do members.append("mem" ~ '%03d' % mem_nm ) %} {% endfor %} -{% set res = (OCNRES|string())[0] ~ "p" ~ (OCNRES|string())[-2:] %} +{% 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, - '${GRID}':res, '${MEMDIR}':mem }) %} - {% set COMIN_OCEAN_NETCDF = COM_OCEAN_NETCDF_GRID_TMPL | replace_tmpl(tmpl_dict) %} + {% set COMIN_OCEAN_NETCDF = COM_OCEAN_NETCDF_TMPL | replace_tmpl(tmpl_dict) %} # Select netcdf files to copy to the atardir - {% if path_exists(COMIN_OCEAN_NETCDF) %} + {% 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 = COMIN_OCEAN_NETCDF ~ "/" ~ file_name %} + {% set file_path = netcdf_grid_dir ~ "/" ~ file_name %} - "{{ file_path | relpath(ROTDIR)}}" {% endfor %} {% endif %} diff --git a/parm/archive/gefs_extracted_wave.yaml.j2 b/parm/archive/gefs_extracted_wave.yaml.j2 index a686b0830d..888c82b4b2 100644 --- a/parm/archive/gefs_extracted_wave.yaml.j2 +++ b/parm/archive/gefs_extracted_wave.yaml.j2 @@ -32,7 +32,7 @@ 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_HF_WAV, FHOUT_HF_WAV) %} + {% 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)}}" From 092f4b1041718a4e13e94f3b1f56321731b58fab Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Thu, 19 Sep 2024 14:13:48 -0400 Subject: [PATCH 104/127] modified config.com --- parm/config/gfs/config.com | 1 - 1 file changed, 1 deletion(-) diff --git a/parm/config/gfs/config.com b/parm/config/gfs/config.com index 587d9bda22..61d592561d 100644 --- a/parm/config/gfs/config.com +++ b/parm/config/gfs/config.com @@ -84,7 +84,6 @@ declare -rx COM_OCEAN_INPUT_TMPL=${COM_BASE}'/model/ocean/input' declare -rx COM_OCEAN_ANALYSIS_TMPL=${COM_BASE}'/analysis/ocean' declare -rx COM_OCEAN_BMATRIX_TMPL=${COM_BASE}'/bmatrix/ocean' declare -rx COM_OCEAN_NETCDF_TMPL=${COM_BASE}'/products/ocean/netcdf' -declare -rx COM_OCEAN_NETCDF_GRID_TMPL=${COM_OCEAN_NETCDF_TMPL}'/${GRID}' declare -rx COM_OCEAN_GRIB_TMPL=${COM_BASE}'/products/ocean/grib2' declare -rx COM_OCEAN_GRIB_GRID_TMPL=${COM_OCEAN_GRIB_TMPL}'/${GRID}' From b14e488cf0d4afc2e92e0daf6266b8f779ae2b73 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Mon, 23 Sep 2024 12:26:38 -0400 Subject: [PATCH 105/127] added station wave files --- parm/archive/gefs_extracted_wave.yaml.j2 | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/parm/archive/gefs_extracted_wave.yaml.j2 b/parm/archive/gefs_extracted_wave.yaml.j2 index 888c82b4b2..959ce27cf5 100644 --- a/parm/archive/gefs_extracted_wave.yaml.j2 +++ b/parm/archive/gefs_extracted_wave.yaml.j2 @@ -29,7 +29,6 @@ gefs_wave: '${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) %} @@ -38,4 +37,15 @@ gefs_wave: - "{{ 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) %} + {% set file_path = COMIN_WAVE_GRID ~ RUN ~ "wave.t" ~ cycle_HH ~ "z.spec_tar.gz" %} + - "{{ file_path | relpath(ROTDIR)}}" + {% set file_name = COMIN_WAVE_GRID ~ RUN ~ "wave.t" ~ cycle_HH ~ "z.cbull_tar" %} + - "{{ file_path | relpath(ROTDIR)}}" + {% set file_name = COMIN_WAVE_GRID ~ RUN ~ "wave.t" ~ cycle_HH ~ "z.bull_tar" %} + - "{{ file_path | relpath(ROTDIR)}}" + {% endif %} {% endfor %} From 3647a44d339044533855c8dd25523317f8771f72 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Mon, 23 Sep 2024 13:46:33 -0400 Subject: [PATCH 106/127] modified gefs.py --- workflow/applications/gefs.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/workflow/applications/gefs.py b/workflow/applications/gefs.py index afb4072596..c15786a2e8 100644 --- a/workflow/applications/gefs.py +++ b/workflow/applications/gefs.py @@ -80,8 +80,8 @@ def get_task_names(self): tasks += ['wavepostpnt'] if self.do_extractvars: - tasks += ['extractvars'] + tasks += ['extractvars', 'arch'] - tasks += ['arch', 'cleanup'] + tasks += ['cleanup'] return {f"{self.run}": tasks} From 22cc3b187ff436a45f98ef5c84324251ab1aa5d2 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Mon, 23 Sep 2024 14:16:46 -0400 Subject: [PATCH 107/127] modified gefs_extravars_wave.yaml.j2 --- parm/archive/gefs_extracted_wave.yaml.j2 | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/parm/archive/gefs_extracted_wave.yaml.j2 b/parm/archive/gefs_extracted_wave.yaml.j2 index 959ce27cf5..e232020948 100644 --- a/parm/archive/gefs_extracted_wave.yaml.j2 +++ b/parm/archive/gefs_extracted_wave.yaml.j2 @@ -41,11 +41,11 @@ gefs_wave: {% 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_GRID ~ RUN ~ "wave.t" ~ cycle_HH ~ "z.spec_tar.gz" %} + {% set file_path = COMIN_WAVE_GRID ~ "/" ~ RUN ~ "wave.t" ~ cycle_HH ~ "z.spec_tar.gz" %} - "{{ file_path | relpath(ROTDIR)}}" - {% set file_name = COMIN_WAVE_GRID ~ RUN ~ "wave.t" ~ cycle_HH ~ "z.cbull_tar" %} + {% set file_name = COMIN_WAVE_GRID ~ "/" ~ RUN ~ "wave.t" ~ cycle_HH ~ "z.cbull_tar" %} - "{{ file_path | relpath(ROTDIR)}}" - {% set file_name = COMIN_WAVE_GRID ~ RUN ~ "wave.t" ~ cycle_HH ~ "z.bull_tar" %} + {% set file_name = COMIN_WAVE_GRID ~ "/" ~ RUN ~ "wave.t" ~ cycle_HH ~ "z.bull_tar" %} - "{{ file_path | relpath(ROTDIR)}}" {% endif %} {% endfor %} From 43dc2c34b73915c92b5a70b6d934b550ed565a8f Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Mon, 23 Sep 2024 14:20:46 -0400 Subject: [PATCH 108/127] modified gefs_extractvars_wave.yaml.j2 --- parm/archive/gefs_extracted_wave.yaml.j2 | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/parm/archive/gefs_extracted_wave.yaml.j2 b/parm/archive/gefs_extracted_wave.yaml.j2 index e232020948..b2d7df37e5 100644 --- a/parm/archive/gefs_extracted_wave.yaml.j2 +++ b/parm/archive/gefs_extracted_wave.yaml.j2 @@ -41,11 +41,11 @@ gefs_wave: {% 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_GRID ~ "/" ~ RUN ~ "wave.t" ~ cycle_HH ~ "z.spec_tar.gz" %} + {% set file_path = COMIN_WAVE_STATION ~ "/" ~ RUN ~ "wave.t" ~ cycle_HH ~ "z.spec_tar.gz" %} - "{{ file_path | relpath(ROTDIR)}}" - {% set file_name = COMIN_WAVE_GRID ~ "/" ~ RUN ~ "wave.t" ~ cycle_HH ~ "z.cbull_tar" %} + {% set file_name = COMIN_WAVE_STATION ~ "/" ~ RUN ~ "wave.t" ~ cycle_HH ~ "z.cbull_tar" %} - "{{ file_path | relpath(ROTDIR)}}" - {% set file_name = COMIN_WAVE_GRID ~ "/" ~ RUN ~ "wave.t" ~ cycle_HH ~ "z.bull_tar" %} + {% set file_name = COMIN_WAVE_STATION ~ "/" ~ RUN ~ "wave.t" ~ cycle_HH ~ "z.bull_tar" %} - "{{ file_path | relpath(ROTDIR)}}" {% endif %} {% endfor %} From e07b42e0a9b40c432b8e064f238e6f253aa6c18c Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Mon, 23 Sep 2024 14:25:08 -0400 Subject: [PATCH 109/127] modified gefs.py --- workflow/applications/gefs.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/workflow/applications/gefs.py b/workflow/applications/gefs.py index c15786a2e8..f3cfd2cef0 100644 --- a/workflow/applications/gefs.py +++ b/workflow/applications/gefs.py @@ -82,6 +82,6 @@ def get_task_names(self): if self.do_extractvars: tasks += ['extractvars', 'arch'] - tasks += ['cleanup'] + tasks += ['arch', 'cleanup'] return {f"{self.run}": tasks} From cb558f118ccc5dfb10ee882b7d6e04bf2974f607 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Mon, 23 Sep 2024 14:25:30 -0400 Subject: [PATCH 110/127] modified gefs.py --- workflow/applications/gefs.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/workflow/applications/gefs.py b/workflow/applications/gefs.py index f3cfd2cef0..afb4072596 100644 --- a/workflow/applications/gefs.py +++ b/workflow/applications/gefs.py @@ -80,7 +80,7 @@ def get_task_names(self): tasks += ['wavepostpnt'] if self.do_extractvars: - tasks += ['extractvars', 'arch'] + tasks += ['extractvars'] tasks += ['arch', 'cleanup'] From 6d1cae282d0030c3c509e428101f1ab0fd4ee4e2 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Mon, 23 Sep 2024 14:40:24 -0400 Subject: [PATCH 111/127] modified gefs_extracted_wave.yaml.j2 --- parm/archive/gefs_extracted_wave.yaml.j2 | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/parm/archive/gefs_extracted_wave.yaml.j2 b/parm/archive/gefs_extracted_wave.yaml.j2 index b2d7df37e5..95624e93f8 100644 --- a/parm/archive/gefs_extracted_wave.yaml.j2 +++ b/parm/archive/gefs_extracted_wave.yaml.j2 @@ -43,9 +43,9 @@ gefs_wave: {% 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_name = COMIN_WAVE_STATION ~ "/" ~ RUN ~ "wave.t" ~ cycle_HH ~ "z.cbull_tar" %} + {% set file_path = COMIN_WAVE_STATION ~ "/" ~ RUN ~ "wave.t" ~ cycle_HH ~ "z.cbull_tar" %} - "{{ file_path | relpath(ROTDIR)}}" - {% set file_name = COMIN_WAVE_STATION ~ "/" ~ RUN ~ "wave.t" ~ cycle_HH ~ "z.bull_tar" %} + {% set file_path = COMIN_WAVE_STATION ~ "/" ~ RUN ~ "wave.t" ~ cycle_HH ~ "z.bull_tar" %} - "{{ file_path | relpath(ROTDIR)}}" {% endif %} {% endfor %} From 8bea1ebdebf2dc4e7e26ce5f3c373d4d45125e43 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Mon, 23 Sep 2024 15:36:36 -0400 Subject: [PATCH 112/127] modified 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 95624e93f8..e0aa07c816 100644 --- a/parm/archive/gefs_extracted_wave.yaml.j2 +++ b/parm/archive/gefs_extracted_wave.yaml.j2 @@ -34,7 +34,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 ~ "/" ~ file_name %} - - "{{ file_path | relpath(ROTDIR)}}" + - "{{ file_path | relpath(ROTDIR)}}" {% endfor %} {% endif %} From b083d4e8b5f88838252c53bb308cb790c949a53f Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Mon, 23 Sep 2024 23:50:53 -0400 Subject: [PATCH 113/127] updated gefs.py --- workflow/applications/gefs.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/workflow/applications/gefs.py b/workflow/applications/gefs.py index afb4072596..c15786a2e8 100644 --- a/workflow/applications/gefs.py +++ b/workflow/applications/gefs.py @@ -80,8 +80,8 @@ def get_task_names(self): tasks += ['wavepostpnt'] if self.do_extractvars: - tasks += ['extractvars'] + tasks += ['extractvars', 'arch'] - tasks += ['arch', 'cleanup'] + tasks += ['cleanup'] return {f"{self.run}": tasks} From 262bfb369515110f5ec9cb6a10a94ffdc26a781f Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Mon, 23 Sep 2024 23:51:58 -0400 Subject: [PATCH 114/127] updated gefs_tasks.py --- workflow/rocoto/gefs_tasks.py | 38 +++++++++++++++++++++++++++-------- 1 file changed, 30 insertions(+), 8 deletions(-) diff --git a/workflow/rocoto/gefs_tasks.py b/workflow/rocoto/gefs_tasks.py index 3b72677a58..17df6acfa4 100644 --- a/workflow/rocoto/gefs_tasks.py +++ b/workflow/rocoto/gefs_tasks.py @@ -560,11 +560,35 @@ def arch(self): def cleanup(self): deps = [] - dep_dict = {'type': 'task', 'name': 'arch'} - deps.append(rocoto.add_dependency(dep_dict)) - - dependencies = rocoto.create_dependency(dep=deps) - + if self.app_config.do_extractvars: + dep_dict = {'type': 'task', 'name': 'arch'} + deps.append(rocoto.add_dependency(dep_dict)) + dependencies = rocoto.create_dependency(dep=deps) + else: + dep_dict = {'type': 'metatask', 'name': 'atmos_prod'} + deps.append(rocoto.add_dependency(dep_dict)) + dep_dict = {'type': 'metatask', 'name': 'atmos_ensstat'} + deps.append(rocoto.add_dependency(dep_dict)) + if self.app_config.do_ice: + dep_dict = {'type': 'metatask', 'name': 'ice_prod'} + deps.append(rocoto.add_dependency(dep_dict)) + if self.app_config.do_ocean: + dep_dict = {'type': 'metatask', 'name': 'ocean_prod'} + deps.append(rocoto.add_dependency(dep_dict)) + if self.app_config.do_wave: + dep_dict = {'type': 'metatask', 'name': 'wave_post_grid'} + deps.append(rocoto.add_dependency(dep_dict)) + dep_dict = {'type': 'metatask', 'name': 'wave_post_pnt'} + deps.append(rocoto.add_dependency(dep_dict)) + if self.app_config.do_wave_bnd: + dep_dict = {'type': 'metatask', 'name': 'wave_post_bndpnt'} + deps.append(rocoto.add_dependency(dep_dict)) + dep_dict = {'type': 'metatask', 'name': 'wave_post_bndpnt_bull'} + deps.append(rocoto.add_dependency(dep_dict)) + if self.app_config.do_extractvars: + dep_dict = {'type': 'metatask', 'name': 'extractvars'} + deps.append(rocoto.add_dependency(dep_dict)) + dependencies = rocoto.create_dependency(dep=deps, dep_condition='and') resources = self.get_resource('cleanup') task_name = 'cleanup' task_dict = {'task_name': task_name, @@ -576,8 +600,6 @@ def cleanup(self): 'job_name': f'{self.pslot}_{task_name}_@H', 'log': f'{self.rotdir}/logs/@Y@m@d@H/{task_name}.log', 'maxtries': '&MAXTRIES;' - } - + } task = rocoto.create_task(task_dict) - return task From a29600771f5981e6797e488a8d38e9904a357226 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Mon, 23 Sep 2024 23:53:29 -0400 Subject: [PATCH 115/127] modified gefs_tasks.py --- workflow/rocoto/gefs_tasks.py | 3 --- 1 file changed, 3 deletions(-) diff --git a/workflow/rocoto/gefs_tasks.py b/workflow/rocoto/gefs_tasks.py index 17df6acfa4..5320fe72c8 100644 --- a/workflow/rocoto/gefs_tasks.py +++ b/workflow/rocoto/gefs_tasks.py @@ -585,9 +585,6 @@ def cleanup(self): deps.append(rocoto.add_dependency(dep_dict)) dep_dict = {'type': 'metatask', 'name': 'wave_post_bndpnt_bull'} deps.append(rocoto.add_dependency(dep_dict)) - if self.app_config.do_extractvars: - dep_dict = {'type': 'metatask', 'name': 'extractvars'} - deps.append(rocoto.add_dependency(dep_dict)) dependencies = rocoto.create_dependency(dep=deps, dep_condition='and') resources = self.get_resource('cleanup') task_name = 'cleanup' From fa05f444d1f66d79221f595b55b31a312a14e34c Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Tue, 24 Sep 2024 00:01:18 -0400 Subject: [PATCH 116/127] gefs_tasks.py --- workflow/rocoto/gefs_tasks.py | 3 +++ 1 file changed, 3 insertions(+) diff --git a/workflow/rocoto/gefs_tasks.py b/workflow/rocoto/gefs_tasks.py index 5320fe72c8..6dc1727f58 100644 --- a/workflow/rocoto/gefs_tasks.py +++ b/workflow/rocoto/gefs_tasks.py @@ -586,6 +586,7 @@ def cleanup(self): dep_dict = {'type': 'metatask', 'name': 'wave_post_bndpnt_bull'} deps.append(rocoto.add_dependency(dep_dict)) dependencies = rocoto.create_dependency(dep=deps, dep_condition='and') + resources = self.get_resource('cleanup') task_name = 'cleanup' task_dict = {'task_name': task_name, @@ -598,5 +599,7 @@ def cleanup(self): 'log': f'{self.rotdir}/logs/@Y@m@d@H/{task_name}.log', 'maxtries': '&MAXTRIES;' } + task = rocoto.create_task(task_dict) + return task From 50c5de907789f2aea4c994e8b932a029e567d4b3 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Tue, 24 Sep 2024 00:08:36 -0400 Subject: [PATCH 117/127] updated gefs_tasks.py --- workflow/rocoto/gefs_tasks.py | 1 - 1 file changed, 1 deletion(-) diff --git a/workflow/rocoto/gefs_tasks.py b/workflow/rocoto/gefs_tasks.py index 6dc1727f58..993ad72698 100644 --- a/workflow/rocoto/gefs_tasks.py +++ b/workflow/rocoto/gefs_tasks.py @@ -585,7 +585,6 @@ def cleanup(self): deps.append(rocoto.add_dependency(dep_dict)) dep_dict = {'type': 'metatask', 'name': 'wave_post_bndpnt_bull'} deps.append(rocoto.add_dependency(dep_dict)) - dependencies = rocoto.create_dependency(dep=deps, dep_condition='and') resources = self.get_resource('cleanup') task_name = 'cleanup' From 7a774c02ea55426af9c362aa8c69afa9f1107f31 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Tue, 24 Sep 2024 00:11:47 -0400 Subject: [PATCH 118/127] test1 --- workflow/rocoto/gefs_tasks.py | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/workflow/rocoto/gefs_tasks.py b/workflow/rocoto/gefs_tasks.py index 993ad72698..b563672043 100644 --- a/workflow/rocoto/gefs_tasks.py +++ b/workflow/rocoto/gefs_tasks.py @@ -561,9 +561,8 @@ def arch(self): def cleanup(self): deps = [] if self.app_config.do_extractvars: - dep_dict = {'type': 'task', 'name': 'arch'} + dep_dict = {'type': 'metatask', 'name': 'extractvars'} deps.append(rocoto.add_dependency(dep_dict)) - dependencies = rocoto.create_dependency(dep=deps) else: dep_dict = {'type': 'metatask', 'name': 'atmos_prod'} deps.append(rocoto.add_dependency(dep_dict)) From f3809713195ecfe6a07083cdc8c9a2868f44ed09 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Tue, 24 Sep 2024 00:12:38 -0400 Subject: [PATCH 119/127] test2 --- workflow/rocoto/gefs_tasks.py | 13 ++----------- 1 file changed, 2 insertions(+), 11 deletions(-) diff --git a/workflow/rocoto/gefs_tasks.py b/workflow/rocoto/gefs_tasks.py index b563672043..a53d32b19d 100644 --- a/workflow/rocoto/gefs_tasks.py +++ b/workflow/rocoto/gefs_tasks.py @@ -561,8 +561,9 @@ def arch(self): def cleanup(self): deps = [] if self.app_config.do_extractvars: - dep_dict = {'type': 'metatask', 'name': 'extractvars'} + dep_dict = {'type': 'task', 'name': 'arch'} deps.append(rocoto.add_dependency(dep_dict)) + dependencies = rocoto.create_dependency(dep=deps) else: dep_dict = {'type': 'metatask', 'name': 'atmos_prod'} deps.append(rocoto.add_dependency(dep_dict)) @@ -574,16 +575,6 @@ def cleanup(self): if self.app_config.do_ocean: dep_dict = {'type': 'metatask', 'name': 'ocean_prod'} deps.append(rocoto.add_dependency(dep_dict)) - if self.app_config.do_wave: - dep_dict = {'type': 'metatask', 'name': 'wave_post_grid'} - deps.append(rocoto.add_dependency(dep_dict)) - dep_dict = {'type': 'metatask', 'name': 'wave_post_pnt'} - deps.append(rocoto.add_dependency(dep_dict)) - if self.app_config.do_wave_bnd: - dep_dict = {'type': 'metatask', 'name': 'wave_post_bndpnt'} - deps.append(rocoto.add_dependency(dep_dict)) - dep_dict = {'type': 'metatask', 'name': 'wave_post_bndpnt_bull'} - deps.append(rocoto.add_dependency(dep_dict)) resources = self.get_resource('cleanup') task_name = 'cleanup' From e3e8da811b5c17998e1e499f0983397a8a1e3006 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Tue, 24 Sep 2024 00:13:35 -0400 Subject: [PATCH 120/127] test3 --- workflow/rocoto/gefs_tasks.py | 11 ----------- 1 file changed, 11 deletions(-) diff --git a/workflow/rocoto/gefs_tasks.py b/workflow/rocoto/gefs_tasks.py index a53d32b19d..97e2756c3d 100644 --- a/workflow/rocoto/gefs_tasks.py +++ b/workflow/rocoto/gefs_tasks.py @@ -564,17 +564,6 @@ def cleanup(self): dep_dict = {'type': 'task', 'name': 'arch'} deps.append(rocoto.add_dependency(dep_dict)) dependencies = rocoto.create_dependency(dep=deps) - else: - dep_dict = {'type': 'metatask', 'name': 'atmos_prod'} - deps.append(rocoto.add_dependency(dep_dict)) - dep_dict = {'type': 'metatask', 'name': 'atmos_ensstat'} - deps.append(rocoto.add_dependency(dep_dict)) - if self.app_config.do_ice: - dep_dict = {'type': 'metatask', 'name': 'ice_prod'} - deps.append(rocoto.add_dependency(dep_dict)) - if self.app_config.do_ocean: - dep_dict = {'type': 'metatask', 'name': 'ocean_prod'} - deps.append(rocoto.add_dependency(dep_dict)) resources = self.get_resource('cleanup') task_name = 'cleanup' From f51b762ed45015278a865b04fcf282ffc2ef2c82 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Tue, 24 Sep 2024 00:15:25 -0400 Subject: [PATCH 121/127] test3 --- workflow/rocoto/gefs_tasks.py | 1 - 1 file changed, 1 deletion(-) diff --git a/workflow/rocoto/gefs_tasks.py b/workflow/rocoto/gefs_tasks.py index 97e2756c3d..9c040d731b 100644 --- a/workflow/rocoto/gefs_tasks.py +++ b/workflow/rocoto/gefs_tasks.py @@ -564,7 +564,6 @@ def cleanup(self): dep_dict = {'type': 'task', 'name': 'arch'} deps.append(rocoto.add_dependency(dep_dict)) dependencies = rocoto.create_dependency(dep=deps) - resources = self.get_resource('cleanup') task_name = 'cleanup' task_dict = {'task_name': task_name, From b705b99794feb07a86e062691e5a14d2fe4c97b8 Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Tue, 24 Sep 2024 00:16:48 -0400 Subject: [PATCH 122/127] modified gefs_tasks.py --- workflow/rocoto/gefs_tasks.py | 24 +++++++++++++++++++++++- 1 file changed, 23 insertions(+), 1 deletion(-) diff --git a/workflow/rocoto/gefs_tasks.py b/workflow/rocoto/gefs_tasks.py index 9c040d731b..d9ac42ef85 100644 --- a/workflow/rocoto/gefs_tasks.py +++ b/workflow/rocoto/gefs_tasks.py @@ -564,6 +564,28 @@ def cleanup(self): dep_dict = {'type': 'task', 'name': 'arch'} deps.append(rocoto.add_dependency(dep_dict)) dependencies = rocoto.create_dependency(dep=deps) + else: + dep_dict = {'type': 'metatask', 'name': 'atmos_prod'} + deps.append(rocoto.add_dependency(dep_dict)) + dep_dict = {'type': 'metatask', 'name': 'atmos_ensstat'} + deps.append(rocoto.add_dependency(dep_dict)) + if self.app_config.do_ice: + dep_dict = {'type': 'metatask', 'name': 'ice_prod'} + deps.append(rocoto.add_dependency(dep_dict)) + if self.app_config.do_ocean: + dep_dict = {'type': 'metatask', 'name': 'ocean_prod'} + deps.append(rocoto.add_dependency(dep_dict)) + if self.app_config.do_wave: + dep_dict = {'type': 'metatask', 'name': 'wave_post_grid'} + deps.append(rocoto.add_dependency(dep_dict)) + dep_dict = {'type': 'metatask', 'name': 'wave_post_pnt'} + deps.append(rocoto.add_dependency(dep_dict)) + if self.app_config.do_wave_bnd: + dep_dict = {'type': 'metatask', 'name': 'wave_post_bndpnt'} + deps.append(rocoto.add_dependency(dep_dict)) + dep_dict = {'type': 'metatask', 'name': 'wave_post_bndpnt_bull'} + deps.append(rocoto.add_dependency(dep_dict)) + resources = self.get_resource('cleanup') task_name = 'cleanup' task_dict = {'task_name': task_name, @@ -575,7 +597,7 @@ def cleanup(self): 'job_name': f'{self.pslot}_{task_name}_@H', 'log': f'{self.rotdir}/logs/@Y@m@d@H/{task_name}.log', 'maxtries': '&MAXTRIES;' - } + } task = rocoto.create_task(task_dict) From fcbb649481692c3482bef683a9b427fb774322fb Mon Sep 17 00:00:00 2001 From: AntonMFernando Date: Tue, 24 Sep 2024 00:19:43 -0400 Subject: [PATCH 123/127] modified gefs_Tasks.py --- workflow/rocoto/gefs_tasks.py | 1 + 1 file changed, 1 insertion(+) diff --git a/workflow/rocoto/gefs_tasks.py b/workflow/rocoto/gefs_tasks.py index d9ac42ef85..e214bb8c19 100644 --- a/workflow/rocoto/gefs_tasks.py +++ b/workflow/rocoto/gefs_tasks.py @@ -585,6 +585,7 @@ def cleanup(self): deps.append(rocoto.add_dependency(dep_dict)) dep_dict = {'type': 'metatask', 'name': 'wave_post_bndpnt_bull'} deps.append(rocoto.add_dependency(dep_dict)) + dependencies = rocoto.create_dependency(dep=deps, dep_condition='and') resources = self.get_resource('cleanup') task_name = 'cleanup' From c2bb0aeebbc25613d49c7274d9e940569f115ffb Mon Sep 17 00:00:00 2001 From: David Huber Date: Tue, 24 Sep 2024 14:10:24 -0500 Subject: [PATCH 124/127] Increase resources for prep job for obsproc v1.2.0 --- parm/config/gfs/config.resources | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/parm/config/gfs/config.resources b/parm/config/gfs/config.resources index afc5939fcd..cdd8350e0c 100644 --- a/parm/config/gfs/config.resources +++ b/parm/config/gfs/config.resources @@ -38,6 +38,7 @@ echo "BEGIN: config.resources" case ${machine} in "WCOSS2") max_tasks_per_node=128 + # WCOSS2 nodes have 512GB of RAM, but only 500GB are reservable # shellcheck disable=SC2034 mem_node_max="500GB" ;; @@ -145,10 +146,10 @@ export max_tasks_per_node case ${step} in "prep") walltime='00:30:00' - ntasks=4 - tasks_per_node=2 + ntasks=14 + tasks_per_node=1 threads_per_task=1 - memory="40GB" + memory="500GB" ;; "prepsnowobs") From 1b66adbb28b18f378d5dd4789d2df35b2e2a8a4a Mon Sep 17 00:00:00 2001 From: David Huber Date: Tue, 24 Sep 2024 14:31:07 -0500 Subject: [PATCH 125/127] Adjust prep resources for all machines --- parm/config/gfs/config.resources | 4 ++-- parm/config/gfs/config.resources.GAEA | 5 +++++ parm/config/gfs/config.resources.HERA | 5 +++++ parm/config/gfs/config.resources.JET | 5 +++++ parm/config/gfs/config.resources.ORION | 6 ++++++ parm/config/gfs/config.resources.S4 | 6 ++++++ 6 files changed, 29 insertions(+), 2 deletions(-) diff --git a/parm/config/gfs/config.resources b/parm/config/gfs/config.resources index cdd8350e0c..24b2e802a1 100644 --- a/parm/config/gfs/config.resources +++ b/parm/config/gfs/config.resources @@ -147,9 +147,9 @@ case ${step} in "prep") walltime='00:30:00' ntasks=14 - tasks_per_node=1 + tasks_per_node=14 threads_per_task=1 - memory="500GB" + memory="${mem_node_max}" ;; "prepsnowobs") diff --git a/parm/config/gfs/config.resources.GAEA b/parm/config/gfs/config.resources.GAEA index a4d4ddfece..c50601da00 100644 --- a/parm/config/gfs/config.resources.GAEA +++ b/parm/config/gfs/config.resources.GAEA @@ -3,6 +3,11 @@ # Gaea-specific job resources case ${step} in + "prep") + # Run on two nodes (requires ~400GB total) + tasks_per_node=7 + ;; + "eobs") # The number of tasks and cores used must be the same for eobs # See https://github.com/NOAA-EMC/global-workflow/issues/2092 for details diff --git a/parm/config/gfs/config.resources.HERA b/parm/config/gfs/config.resources.HERA index d1b09fcc32..ac3067d9f9 100644 --- a/parm/config/gfs/config.resources.HERA +++ b/parm/config/gfs/config.resources.HERA @@ -3,6 +3,11 @@ # Hera-specific job resources case ${step} in + "prep") + # Run on 7 nodes for memory requirement + tasks_per_node=2 + ;; + "anal") if [[ "${CASE}" == "C384" ]]; then export ntasks_gdas=270 diff --git a/parm/config/gfs/config.resources.JET b/parm/config/gfs/config.resources.JET index 47b953c0f4..bbd308f439 100644 --- a/parm/config/gfs/config.resources.JET +++ b/parm/config/gfs/config.resources.JET @@ -3,6 +3,11 @@ # Jet-specific job resources case ${step} in + "prep") + # Run on 7 nodes for memory requirement + tasks_per_node=2 + ;; + "anal") if [[ "${CASE}" == "C384" ]]; then export ntasks=270 diff --git a/parm/config/gfs/config.resources.ORION b/parm/config/gfs/config.resources.ORION index 6b42d780d4..aa37acaf2d 100644 --- a/parm/config/gfs/config.resources.ORION +++ b/parm/config/gfs/config.resources.ORION @@ -3,6 +3,12 @@ # Orion-specific job resources case ${step} in + "prep") + # Run on 2 nodes for memory requirement + # This may not be enough and may need to run on more nodes. + tasks_per_node=7 + ;; + "anal") # TODO: # On Orion, after Rocky 9 upgrade, GSI performance is degraded. diff --git a/parm/config/gfs/config.resources.S4 b/parm/config/gfs/config.resources.S4 index 817494c7cd..fa64068e81 100644 --- a/parm/config/gfs/config.resources.S4 +++ b/parm/config/gfs/config.resources.S4 @@ -3,6 +3,12 @@ # S4-specific job resources case ${step} in + "prep") + # Run on two nodes for memory requirement + # This may not be enough memory. Decrease tasks/node to 2 if necessary. + tasks_per_node=7 + ;; + "anal") case ${CASE} in "C384") From ff38f83261c83ee6f6ffe1346d7d0f912782fb0f Mon Sep 17 00:00:00 2001 From: David Huber Date: Tue, 24 Sep 2024 14:33:21 -0500 Subject: [PATCH 126/127] Export tasks_per_node for Orion --- parm/config/gfs/config.resources.ORION | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/parm/config/gfs/config.resources.ORION b/parm/config/gfs/config.resources.ORION index aa37acaf2d..d761df7b73 100644 --- a/parm/config/gfs/config.resources.ORION +++ b/parm/config/gfs/config.resources.ORION @@ -6,7 +6,7 @@ case ${step} in "prep") # Run on 2 nodes for memory requirement # This may not be enough and may need to run on more nodes. - tasks_per_node=7 + export tasks_per_node=7 ;; "anal") From 7ae933722fb8af5ed2cc29afa9fc55a38384e54f Mon Sep 17 00:00:00 2001 From: David Huber Date: Wed, 25 Sep 2024 06:33:18 -0500 Subject: [PATCH 127/127] Reduce available memory on Hercules and Orion --- parm/config/gfs/config.resources | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/parm/config/gfs/config.resources b/parm/config/gfs/config.resources index 24b2e802a1..0479543ebc 100644 --- a/parm/config/gfs/config.resources +++ b/parm/config/gfs/config.resources @@ -55,12 +55,12 @@ case ${machine} in "ORION") max_tasks_per_node=40 # shellcheck disable=SC2034 - mem_node_max="192GB" + mem_node_max="180GB" ;; "HERCULES") max_tasks_per_node=80 # shellcheck disable=SC2034 - mem_node_max="512GB" + mem_node_max="500GB" ;; "JET") case ${PARTITION_BATCH} in