From 24bbf5b12e66a38caed223357deb67857c37a0b3 Mon Sep 17 00:00:00 2001 From: David Huber Date: Mon, 27 Oct 2025 18:43:24 +0000 Subject: [PATCH 01/33] Only delay cleanup for the gfs cycles when running gempak --- dev/parm/config/gfs/config.cleanup | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/dev/parm/config/gfs/config.cleanup b/dev/parm/config/gfs/config.cleanup index 44e2690f652..cb8f6c83484 100644 --- a/dev/parm/config/gfs/config.cleanup +++ b/dev/parm/config/gfs/config.cleanup @@ -12,7 +12,8 @@ export CLEANUP_COM="YES" # NO=retain ROTDIR. YES default in cleanup.sh export RMOLDSTD=144 export RMOLDEND=24 -if [[ "${DO_GEMPAK}" == "YES" ]]; then +# Extend the hold time for GFS data if running GEMPAK jobs +if [[ "${RUN}" == "gfs" && "${DO_GEMPAK}" == "YES" ]]; then export RMOLDSTD=346 export RMOLDEND=222 fi From 6875bf4d7213b88b8bf431447c1c4e307ef939b2 Mon Sep 17 00:00:00 2001 From: DavidHuber-NOAA Date: Wed, 29 Oct 2025 06:42:35 +0000 Subject: [PATCH 02/33] Stage from linked EE2 filenames --- parm/stage/analysis.yaml.j2 | 58 ++++++--------------------- parm/stage/atmosphere_cold_RT.yaml.j2 | 20 ++++----- parm/stage/atmosphere_warm_RT.yaml.j2 | 12 ++---- 3 files changed, 26 insertions(+), 64 deletions(-) diff --git a/parm/stage/analysis.yaml.j2 b/parm/stage/analysis.yaml.j2 index 326f7a525cd..709aae91ce2 100644 --- a/parm/stage/analysis.yaml.j2 +++ b/parm/stage/analysis.yaml.j2 @@ -14,71 +14,39 @@ analysis: {% if DO_JEDIATMVAR %} {% for itile in range(6) %} - {% for ftype in ["atminc", "atmi009", "atmi003", "ratminc", "ratmi009", "ratmi003"] %} + {% for ftype in ["increment.atm.i006", "increment.atm.i009", "increment.atm.i003", "recentered_increment.atm.i006", "recentered_increment.atm.i009", "recentered_increment.atm.i003"] %} {% if path_exists(ICSDIR ~ "/" ~ COMOUT_ATMOS_ANALYSIS_MEM | relpath(ROTDIR) ~ "/" ~ RUN ~ ".t" ~ current_cycle_HH ~ "z.cubed_sphere_grid_" ~ ftype ~ ".tile" ~ (itile+1) ~ ".nc") %} - ["{{ ICSDIR }}/{{ COMOUT_ATMOS_ANALYSIS_MEM | relpath(ROTDIR) }}/{{ RUN }}.t{{ current_cycle_HH }}z.cubed_sphere_grid_{{ ftype }}.tile{{ itile+1 }}.nc", "{{ COMOUT_ATMOS_ANALYSIS_MEM }}"] {% endif %} {% endfor %} {% endfor %} - - # TODO: make these filenames the same after RE-staging inputs with EE2-compliant filenames - {% for source_ftype, dest_ftype in [ - ("abias", "abias.txt"), - ("abias_air", "abias_air.txt"), - ("abias_int", "abias_int.txt"), - ("abias_pc", "abias_pc.txt"), - ("rad_varbc_params.tar", "rad_varbc_params.tar")] %} - {% if path_exists(ICSDIR ~ "/" ~ COMOUT_ATMOS_ANALYSIS_MEM | relpath(ROTDIR) ~ "/" ~ RUN ~ ".t" ~ current_cycle_HH ~ "z." ~ source_ftype) %} - - ["{{ ICSDIR }}/{{ COMOUT_ATMOS_ANALYSIS_MEM | relpath(ROTDIR) }}/{{ RUN }}.t{{ current_cycle_HH }}z.{{ source_ftype }}", - "{{ COMOUT_ATMOS_ANALYSIS_MEM }}/{{ RUN }}.t{{ current_cycle_HH }}z.{{ dest_ftype }}"] + {% for ftype in ["abias.txt", "abias_air.txt", "abias_int.txt", "abias_pc.txt", "rad_varbc_params.tar"] %} + {% if path_exists(ICSDIR ~ "/" ~ COMOUT_ATMOS_ANALYSIS_MEM | relpath(ROTDIR) ~ "/" ~ RUN ~ ".t" ~ current_cycle_HH ~ "z." ~ ftype) %} + - ["{{ ICSDIR }}/{{ COMOUT_ATMOS_ANALYSIS_MEM | relpath(ROTDIR) }}/{{ RUN }}.t{{ current_cycle_HH }}z.{{ ftype }}", "{{ COMOUT_ATMOS_ANALYSIS_MEM }}"] {% endif %} {% endfor %} {% else %} - - # TODO: make these filenames the same after RE-staging inputs with EE2-compliant filenames - {% for source_ftype, dest_ftype in - [ - ("atminc.nc", "increment.atm.i006.nc"), - ("atmi009.nc", "increment.atm.i009.nc"), - ("atmi003.nc", "increment.atm.i003.nc"), - ("ratmi009.nc", "recentered_increment.atm.i009.nc"), - ("ratminc.nc", "recentered_increment.atm.i006.nc"), - ("ratmi003.nc", "recentered_increment.atm.i003.nc"), - ("abias", "abias.txt"), - ("radstat", "radstat.tar"), - ("abias_air", "abias_air.txt"), - ("abias_int", "abias_int.txt"), - ("abias_pc", "abias_pc.txt"), - ("rad_varbc_params.tar", "rad_varbc_params.tar") - ] %} - {% if path_exists(ICSDIR ~ "/" ~ COMOUT_ATMOS_ANALYSIS_MEM | relpath(ROTDIR) ~ "/" ~ RUN ~ ".t" ~ current_cycle_HH ~ "z." ~ source_ftype) %} - - ["{{ ICSDIR }}/{{ COMOUT_ATMOS_ANALYSIS_MEM | relpath(ROTDIR) }}/{{ RUN }}.t{{ current_cycle_HH }}z.{{ source_ftype }}", - "{{ COMOUT_ATMOS_ANALYSIS_MEM }}/{{ RUN }}.t{{ current_cycle_HH }}z.{{ dest_ftype }}"] + {% for ftype in ["abias.txt", "abias_air.txt", "abias_int.txt", "abias_pc.txt", + "increment.atm.i006.nc", "increment.atm.i009.nc", "increment.atm.i003.nc", "radstat.tar", + "recentered_increment.atm.i006.nc", "recentered_increment.atm.i009.nc", "recentered_increment.atm.i003.nc", "rad_varbc_params.tar"] %} + {% if path_exists(ICSDIR ~ "/" ~ COMOUT_ATMOS_ANALYSIS_MEM | relpath(ROTDIR) ~ "/" ~ RUN ~ ".t" ~ current_cycle_HH ~ "z." ~ ftype) %} + - ["{{ ICSDIR }}/{{ COMOUT_ATMOS_ANALYSIS_MEM | relpath(ROTDIR) }}/{{ RUN }}.t{{ current_cycle_HH }}z.{{ ftype }}", "{{ COMOUT_ATMOS_ANALYSIS_MEM }}"] {% endif %} {% endfor %} {% endif %} - # TODO: make these filenames the same after RE-staging inputs with EE2-compliant filenames {% if DO_GSISOILDA %} - {% for source_ftype, dest_ftype in - [ - ("sfci003.nc", "increment.sfc.i003.nc"), - ("sfci006.nc", "increment.sfc.i006.nc"), - ("sfci009.nc", "increment.sfc.i009.nc") - ] %} - {% if path_exists(ICSDIR ~ "/" ~ COMOUT_ATMOS_ANALYSIS_MEM | relpath(ROTDIR) ~ "/" ~ RUN ~ ".t" ~ current_cycle_HH ~ "z." ~ source_ftype) %} - - ["{{ ICSDIR }}/{{ COMOUT_ATMOS_ANALYSIS_MEM | relpath(ROTDIR) }}/{{ RUN }}.t{{ current_cycle_HH }}z.{{ source_ftype }}", - "{{ COMOUT_ATMOS_ANALYSIS_MEM }}{{ RUN }}.t{{ current_cycle_HH }}z.{{ dest_ftype }}"] + {% for ftype in ["increment.sfc.i003.nc", "increment.sfc.i006.nc", "increment.sfc.i009.nc"] %} + {% if path_exists(ICSDIR ~ "/" ~ COMOUT_ATMOS_ANALYSIS_MEM | relpath(ROTDIR) ~ "/" ~ RUN ~ ".t" ~ current_cycle_HH ~ "z." ~ ftype) %} + - ["{{ ICSDIR }}/{{ COMOUT_ATMOS_ANALYSIS_MEM | relpath(ROTDIR) }}/{{ RUN }}.t{{ current_cycle_HH }}z.{{ ftype }}", "{{ COMOUT_ATMOS_ANALYSIS_MEM }}"] {% endif %} {% endfor %} {% if DO_LAND_IAU %} {% for itile in range(1,7) %} - - ["{{ ICSDIR }}/{{ COMOUT_ATMOS_ANALYSIS_MEM | relpath(ROTDIR) }}/sfc_inc.tile{{ itile }}.nc", - "{{ COMOUT_ATMOS_ANALYSIS_MEM }}/increment.sfc.i006.tile{{ itile }}.nc"] - {% endfor %} + - ["{{ ICSDIR }}/{{ COMOUT_ATMOS_ANALYSIS_MEM | relpath(ROTDIR) }}/{{ RUN }}.t{{ current_cycle_HH }}z.increment.sfc.i006.tile{{ itile }}.nc", "{{ COMOUT_ATMOS_ANALYSIS_MEM }}"] {% endif %} {% endif %} diff --git a/parm/stage/atmosphere_cold_RT.yaml.j2 b/parm/stage/atmosphere_cold_RT.yaml.j2 index 9d7b869f915..f6a1c0d118b 100644 --- a/parm/stage/atmosphere_cold_RT.yaml.j2 +++ b/parm/stage/atmosphere_cold_RT.yaml.j2 @@ -4,16 +4,16 @@ atmosphere_cold_RT: - "{{ COMOUT_ATMOS_ANALYSIS_MEM }}" - "{{ COMOUT_ATMOS_HISTORY_MEM }}" link_req: - {% set DIAU_cold_previous_file = ICSDIR ~ '/' ~ 'gdas.' ~ previous_cycle_YMD ~ '/' ~ previous_cycle_HH ~ '/analysis/atmos/gdas.t' ~ previous_cycle_HH ~ 'z.atma003.ensres.nc' %} - {% set DIAU_cold_current_file = ICSDIR ~ '/' ~ 'gfs.' ~ current_cycle_YMD ~ '/' ~ current_cycle_HH ~ '/analysis/atmos/gfs.t' ~ current_cycle_HH ~ 'z.atminc.nc' %} - {% set DIAU_current_file= ICSDIR ~ '/' ~ 'gfs.' ~ current_cycle_YMD ~ '/' ~ current_cycle_HH ~ '/analysis/atmos/gfs.t' ~ current_cycle_HH ~ 'z.atmanl.nc' %} - {% set atm_file = ICSDIR ~ '/' ~ 'gdas.' ~ previous_cycle_YMD ~ '/' ~ previous_cycle_HH ~ '/model/atmos/history/gdas.t' ~ previous_cycle_HH ~ 'z.atmf003.ensres.nc' %} - {% set surface_file = ICSDIR ~ '/' ~ 'gdas.' ~ previous_cycle_YMD ~ '/' ~ previous_cycle_HH ~ '/model/atmos/history/gdas.t' ~ previous_cycle_HH ~ 'z.sfcf003.nc' %} + {% set DIAU_cold_previous_file = ICSDIR ~ '/' ~ 'gdas.' ~ previous_cycle_YMD ~ '/' ~ previous_cycle_HH ~ '/analysis/atmos/gdas.t' ~ previous_cycle_HH ~ 'z.ensres_analysis.atm.a003.nc' %} + {% set DIAU_cold_current_file = ICSDIR ~ '/' ~ 'gfs.' ~ current_cycle_YMD ~ '/' ~ current_cycle_HH ~ '/analysis/atmos/gfs.t' ~ current_cycle_HH ~ 'z.increment.atm.i006.nc' %} + {% set DIAU_current_file= ICSDIR ~ '/' ~ 'gfs.' ~ current_cycle_YMD ~ '/' ~ current_cycle_HH ~ '/analysis/atmos/gfs.t' ~ current_cycle_HH ~ 'z.analysis.atm.a006.nc' %} + {% set atm_file = ICSDIR ~ '/' ~ 'gdas.' ~ previous_cycle_YMD ~ '/' ~ previous_cycle_HH ~ '/model/atmos/history/gdas.t' ~ previous_cycle_HH ~ 'z.ensres.atm.f006.nc' %} + {% set surface_file = ICSDIR ~ '/' ~ 'gdas.' ~ previous_cycle_YMD ~ '/' ~ previous_cycle_HH ~ '/model/atmos/history/gdas.t' ~ previous_cycle_HH ~ 'z.sfc.f003.nc' %} {% set current_path = COMOUT_ATMOS_ANALYSIS_MEM %} {% set previous_path = COMOUT_ATMOS_RESTART_PREV_MEM %} {% set surface_atm_path = COMOUT_ATMOS_HISTORY_MEM %} - - ["{{ DIAU_cold_previous_file }}", "{{ previous_path}}/gdas.t{{ previous_cycle_HH }}z.ensres_analysis.atm.i003.nc"] - - ["{{ DIAU_cold_current_file }}", "{{ current_path }}/gfs.t{{ current_cycle_HH }}z.increment.atm.i006.nc"] - - ["{{ DIAU_current_file }}", "{{ current_path }}/gfs.t{{ current_cycle_HH }}z.analysis.atm.i006.nc"] - - ["{{ atm_file }}", "{{ surface_atm_path }}/gdas.t{{ previous_cycle_HH }}z.sfc.f003.nc"] - - ["{{ surface_file }}", "{{ surface_atm_path }}/gdas.t{{ previous_cycle_HH }}z.ensres.atm.f003.nc"] + - ["{{ DIAU_cold_previous_file }}", "{{ previous_path}}"] + - ["{{ DIAU_cold_current_file }}", "{{ current_path }}"] + - ["{{ DIAU_current_file }}", "{{ current_path }}"] + - ["{{ surface_file }}", "{{ surface_atm_path }}"] + - ["{{ atm_file }}", "{{ surface_atm_path }}"] diff --git a/parm/stage/atmosphere_warm_RT.yaml.j2 b/parm/stage/atmosphere_warm_RT.yaml.j2 index d432f12a128..0aee0d3a2be 100644 --- a/parm/stage/atmosphere_warm_RT.yaml.j2 +++ b/parm/stage/atmosphere_warm_RT.yaml.j2 @@ -11,15 +11,9 @@ atmosphere_warm_RT: {% set increment_destination_path = COMOUT_ATMOS_ANALYSIS_MEM %} # Include increment files - # TODO: make these filenames the same after RE-staging inputs with EE2-compliant filenames - {% for source_ftype, dest_ftype in - [ - ("ratmi003.nc", "recentered_increment.atm.i003.nc"), - ("ratmi006.nc", "recentered_increment.atm.i006.nc"), - ("ratmi009.nc", "recentered_increment.atm.i009.nc") - ] %} - {% set source_file = increment_mem_path ~ source_ftype %} - - ["{{ source_file }}", "{{ increment_destination_path }}/enkfgfs.t{{ current_cycle_HH }}z.{{ dest_ftype }}"] + {% for ftype in ["recentered_increment.atm.i003.nc", "recentered_increment.atm.i009.nc", "recentered_increment.atm.i006.nc"] %} + {% set file = increment_mem_path ~ ftype %} + - ["{{ file }}", "{{ increment_destination_path }}"] {% endfor %} {% if path_exists(ICSDIR) %} From a36cf2d0954296c510a4a727e0cf46f40e16da29 Mon Sep 17 00:00:00 2001 From: DavidHuber-NOAA Date: Wed, 29 Oct 2025 06:47:12 +0000 Subject: [PATCH 03/33] Correct 'done' files --- parm/archive/gdas_restarta.yaml.j2 | 2 +- parm/archive/gfs_netcdfa.yaml.j2 | 2 +- scripts/exglobal_atmos_analysis.sh | 2 +- scripts/exglobal_atmos_analysis_calc.sh | 2 +- ush/python/pygfs/task/fv3_analysis_calc.py | 2 +- 5 files changed, 5 insertions(+), 5 deletions(-) diff --git a/parm/archive/gdas_restarta.yaml.j2 b/parm/archive/gdas_restarta.yaml.j2 index c496e81b840..c52f2edca8a 100644 --- a/parm/archive/gdas_restarta.yaml.j2 +++ b/parm/archive/gdas_restarta.yaml.j2 @@ -44,7 +44,7 @@ gdas_restarta: - "{{ COMIN_ATMOS_ANALYSIS | relpath(ROTDIR) }}/{{ head }}cnvstat.tar" - "{{ COMIN_ATMOS_ANALYSIS | relpath(ROTDIR) }}/{{ head }}abias_int.txt" - "{{ COMIN_ATMOS_ANALYSIS | relpath(ROTDIR) }}/{{ head }}analysis.dtf.a006.nc" - - "{{ COMIN_ATMOS_ANALYSIS | relpath(ROTDIR) }}/{{ head }}analysis.done.txt" + - "{{ COMIN_ATMOS_ANALYSIS | relpath(ROTDIR) }}/{{ head }}increment.done.txt" {% else %} - "{{ COMIN_ATMOS_ANALYSIS | relpath(ROTDIR) }}/{{ head }}rad_varbc_params.tar" {% endif %} diff --git a/parm/archive/gfs_netcdfa.yaml.j2 b/parm/archive/gfs_netcdfa.yaml.j2 index ee5ad28c282..43e1338c393 100644 --- a/parm/archive/gfs_netcdfa.yaml.j2 +++ b/parm/archive/gfs_netcdfa.yaml.j2 @@ -17,5 +17,5 @@ gfs_netcdfa: optional: {% if not DO_JEDIATMVAR %} - "{{ COMIN_ATMOS_ANALYSIS | relpath(ROTDIR) }}/{{ head }}analysis.dtf.a006.nc" - - "{{ COMIN_ATMOS_ANALYSIS | relpath(ROTDIR) }}/{{ head }}analysis.done.txt" + - "{{ COMIN_ATMOS_ANALYSIS | relpath(ROTDIR) }}/{{ head }}increment.done.txt" {% endif %} diff --git a/scripts/exglobal_atmos_analysis.sh b/scripts/exglobal_atmos_analysis.sh index 18d689aa079..c6d30aa2609 100755 --- a/scripts/exglobal_atmos_analysis.sh +++ b/scripts/exglobal_atmos_analysis.sh @@ -1034,7 +1034,7 @@ cd "${pwd}" || exit 1 if [[ ${SENDECF} == "YES" && "${RUN}" != "enkf" ]]; then ecflow_client --event release_fcst fi -echo "${rCDUMP} ${PDY}${cyc} atminc done at $(date)" > "${COMOUT_ATMOS_ANALYSIS}/${APREFIX}analysis.done.txt" +echo "${rCDUMP} ${PDY}${cyc} atminc done at $(date)" > "${COMOUT_ATMOS_ANALYSIS}/${APREFIX}increment.done.txt" ################################################################################ diff --git a/scripts/exglobal_atmos_analysis_calc.sh b/scripts/exglobal_atmos_analysis_calc.sh index 0a99d5f968a..46371403efb 100755 --- a/scripts/exglobal_atmos_analysis_calc.sh +++ b/scripts/exglobal_atmos_analysis_calc.sh @@ -177,7 +177,7 @@ if [[ "${DOGAUSFCANL}" == "YES" ]]; then fi fi -echo "${rCDUMP} ${PDY}${cyc} atmanl and sfcanl done at $(date)" > "${COMOUT_ATMOS_ANALYSIS}/${APREFIX}done.txt" +echo "${rCDUMP} ${PDY}${cyc} atmanl and sfcanl done at $(date)" > "${COMOUT_ATMOS_ANALYSIS}/${APREFIX}analysis.done.txt" ################################################################################ # Postprocessing diff --git a/ush/python/pygfs/task/fv3_analysis_calc.py b/ush/python/pygfs/task/fv3_analysis_calc.py index 9c3350d7a1b..d5ee937fb00 100644 --- a/ush/python/pygfs/task/fv3_analysis_calc.py +++ b/ush/python/pygfs/task/fv3_analysis_calc.py @@ -162,7 +162,7 @@ def finalize(self) -> None: # Write analysis log file formatted_date = datetime.now().strftime("%a %b %d %H:%M:%S %Z%Y") - log_file = os.path.join(self.task_config.COMOUT_ATMOS_ANALYSIS, f"{self.task_config.RUN}.t{self.task_config.cyc}z.done.txt") + log_file = os.path.join(self.task_config.COMOUT_ATMOS_ANALYSIS, f"{self.task_config.RUN}.t{self.task_config.cyc}z.analysis.done.txt") message = f"{self.task_config.rCDUMP} {self.task_config.PDY}{self.task_config.cyc} atmanl and sfcanl done at {formatted_date}" with open(log_file, "w") as file: file.write(f"{message}\n") From 6cdcdad54bf7ede4c2765b9792cd4224c0c7bfab Mon Sep 17 00:00:00 2001 From: DavidHuber-NOAA Date: Fri, 31 Oct 2025 15:01:08 +0000 Subject: [PATCH 04/33] Add the script used to create links in the ICSDIR --- dev/ush/make_ee2_links.sh | 421 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 421 insertions(+) create mode 100644 dev/ush/make_ee2_links.sh diff --git a/dev/ush/make_ee2_links.sh b/dev/ush/make_ee2_links.sh new file mode 100644 index 00000000000..d3edc8a4899 --- /dev/null +++ b/dev/ush/make_ee2_links.sh @@ -0,0 +1,421 @@ +#!/bin/bash + +set -eu +cwd=${PWD} +cd C384C192/20240610/gdas.20230401/18/analysis/atmos +ln -s gdas.t18z.abias gdas.t18z.abias.txt +ln -s gdas.t18z.abias C384C192/20240610/gdas.20230401/18/analysis/atmos/gdas.t18z.abias.txt +ln -s gdas.t18z.abias_air C384C192/20240610/gdas.20230401/18/analysis/atmos/gdas.t18z.abias_air.txt +ln -s gdas.t18z.abias_int C384C192/20240610/gdas.20230401/18/analysis/atmos/gdas.t18z.abias_int.txt +ln -s gdas.t18z.abias_pc C384C192/20240610/gdas.20230401/18/analysis/atmos/gdas.t18z.abias_pc.txt +ln -s gdas.t18z.radstat C384C192/20240610/gdas.20230401/18/analysis/atmos/gdas.t18z.radstat.tar +cd "${cwd}" + +cd C384mx025/20241120/gdas.20210701/00/analysis/atmos +ln -s gdas.t00z.abias gdas.t00z.abias.txt +ln -s gdas.t00z.abias_air gdas.t00z.abias_air.txt +ln -s gdas.t00z.abias_int gdas.t00z.abias_int.txt +ln -s gdas.t00z.abias_pc gdas.t00z.abias_pc.txt +ln -s gdas.t00z.radstat gdas.t00z.radstat.tar +cd "${cwd}" + +cd C48C48mx500/20250327/enkfgdas.20210323/12 +cwd_4848500=${pwd} +for dir in mem*; do + cd ${dir}/analysis/ocean + ln -s gdas.t12z.ocninc.nc gdas.t12z.increment.i006.nc + cd "${cwd_4848500}" +done +cd "${cwd}" + +cd C48C48mx500/20250327/enkfgdas.20210324/12 +cwd_4848500=${PWD} +for dir in mem*; do + cd ${dir}/analysis/atmos + ln -s enkfgdas.t12z.ratmi003.nc enkfgdas.t12z.recentered_increment.i003.nc + ln -s enkfgdas.t12z.ratmi009.nc enkfgdas.t12z.recentered_increment.i009.nc + ln -s enkfgdas.t12z.ratminc.nc enkfgdas.t12z.recentered_increment.i006.nc + cd "${cwd_4848500}" + cd ${dir}/analysis/ocean + ln -s enkfgdas.t12z.ocninc.nc enkfgdas.t12z.increment.i006.nc + cd "${cwd_4848500}" +done +cd "${cwd}" + +cd C48C48mx500/20250327/enkfgdas.20210324/18 +cwd_4848500=${PWD} +for dir in mem*; do + cd ${dir}/analysis/atmos + ln -s enkfgdas.t18z.atmi003.nc enkfgdas.t18z.increment.atm.i003.nc + ln -s enkfgdas.t18z.atmi009.nc enkfgdas.t18z.increment.atm.i009.nc + ln -s enkfgdas.t18z.atminc.nc enkfgdas.t18z.increment.atm.i006.nc + ln -s enkfgdas.t18z.ratmi003.nc enkfgdas.t18z.recentered_increment.i003.nc + ln -s enkfgdas.t18z.ratmi009.nc enkfgdas.t18z.recentered_increment.i009.nc + ln -s enkfgdas.t18z.ratminc.nc enkfgdas.t18z.recentered_increment.i006.nc + cd "${cwd_4848500}" + cd ${dir}/analysis/ocean + ln -s enkfgdas.t18z.ocninc.nc enkfgdas.t18z.increment.i006.nc + cd "${cwd_4848500}" +done +cd "${cwd}" + +cd C48C48mx500/20250327/gdas.20210323/12/analysis/atmos +ln -s gdas.t12z.abias gdas.t12z.abias.txt +ln -s gdas.t12z.abias_air gdas.t12z.abias_air.txt +ln -s gdas.t12z.abias_int gdas.t12z.abias_int.txt +ln -s gdas.t12z.abias_pc gdas.t12z.abias_pc.txt +ln -s gdas.t12z.radstat gdas.t12z.radstat.tar +cd "${cwd}" + +cd C48C48mx500/20250327/gdas.20210324/12/analysis/ocean +ln -s gdas.t12z.ocninc.nc gdas.t12z.increment.i006.nc +cd "${cwd}" + +cd C48C48mx500/20250327/gdas.20210324/18/analysis/atmos +ln -s gdas.t12z.abias gdas.t12z.abias.txt +ln -s gdas.t12z.abias_air gdas.t12z.abias_air.txt +ln -s gdas.t12z.abias_int gdas.t12z.abias_int.txt +ln -s gdas.t12z.abias_pc gdas.t12z.abias_pc.txt +ln -s gdas.t12z.atmi003.nc gdas.t12z.increment.atm.i003.nc +ln -s gdas.t12z.atmi009.nc gdas.t12z.increment.atm.i009.nc +ln -s gdas.t12z.atminc.nc gdas.t12z.increment.atm.i006.nc +ln -s gdas.t12z.radstat gdas.t12z.radstat.tar +ln -s gdas.t12z.ocninc.nc gdas.t12z.increment.i006.nc +cd "${cwd}" + +cd C48C48mx500/20250327/gdas.20210324/18/analysis/atmos +ln -s gdas.t18z.abias gdas.t18z.abias.txt +ln -s gdas.t18z.abias_air gdas.t18z.abias_air.txt +ln -s gdas.t18z.abias_int gdas.t18z.abias_int.txt +ln -s gdas.t18z.abias_pc gdas.t18z.abias_pc.txt +ln -s gdas.t18z.atma003.ensres.nc gdas.t18z.ensres_analysis.atm.i003.nc +ln -s gdas.t18z.atma009.ensres.nc gdas.t18z.ensres_analysis.atm.i009.nc +ln -s gdas.t18z.atmanl.ensres.nc gdas.t18z.ensres_analysis.atm.i006.nc +ln -s gdas.t18z.atmanl.nc gdas.t18z.analysis.atm.a006.nc +ln -s gdas.t18z.atmi003.nc gdas.t18z.increment.atm.i003.nc +ln -s gdas.t18z.atmi009.nc gdas.t18z.increment.atm.i009.nc +ln -s gdas.t18z.atminc.nc gdas.t18z.increment.atm.i006.nc +ln -s gdas.t18z.cnvstat gdas.t18z.cnvstat.tar +ln -s gdas.t18z.dtfanl.nc gdas.t18z.analysis.dtf.a006.nc +ln -s gdas.t18z.gsistat gdas.t18z.gsistat.txt +ln -s gdas.t18z.oznstat gdas.t18z.oznstat.tar +ln -s gdas.t18z.radstat gdas.t18z.radstat.tar +ln -s gdas.t18z.sfcanl.nc gdas.t18z.analysis.sfc.a006.nc +cd "${cwd}" + +cd C48C48mx500/20250327/gdas.20210324/18/analysis/ocean +ln -s gdas.t18z.ocninc.nc gdas.t18z.increment.i006.nc +cd "${cwd}" + +cd C48C48mx500/20250808/enkfgdas.20210324/12 +for dir in mem*; do + cd ${dir}/analysis/atmos + ln -s enkfgdas.t12z.atmi003.nc enkfgdas.t12z.increment.atm.i003.nc + ln -s enkfgdas.t12z.atmi009.nc enkfgdas.t12z.increment.atm.i009.nc + ln -s enkfgdas.t12z.atminc.nc enkfgdas.t12z.increment.atm.i006.nc + cd "${cwd_4848500}" + cd ${dir}/analysis/ocean + ln -s enkfgdas.t12z.ocninc.nc enkfgdas.t12z.increment.i006.nc + cd "${cwd_4848500}" +done +cd "${cwd}" + +cd C48C48mx500/20250808/enkfgdas.20210324/18 +for dir in mem*; do + cd ${dir}/analysis/atmos + ln -s enkfgdas.t18z.atmi003.nc enkfgdas.t18z.increment.atm.i003.nc + ln -s enkfgdas.t18z.atmi009.nc enkfgdas.t18z.increment.atm.i009.nc + ln -s enkfgdas.t18z.atminc.nc enkfgdas.t18z.increment.atm.i006.nc + ln -s enkfgdas.t18z.ratmi003.nc enkfgdas.t18z.recentered_increment.i003.nc + ln -s enkfgdas.t18z.ratmi009.nc enkfgdas.t18z.recentered_increment.i009.nc + ln -s enkfgdas.t18z.ratminc.nc enkfgdas.t18z.recentered_increment.i006.nc + cd "${cwd_4848500}" + cd ${dir}/analysis/ocean + ln -s enkfgdas.t18z.ocninc.nc enkfgdas.t18z.increment.i006.nc + cd "${cwd_4848500}" +done +cd "${cwd}" + +cd C48C48mx500/20250808/gdas.20210323/12/analysis/ocean +ln -s gdas.t12z.ocninc.nc gdas.t12z.increment.i006.nc +cd "${cwd}" + +cd C48C48mx500/20250808/gdas.20210324/12/analysis/atmos + +ln -s gdas.t12z.abias gdas.t12z.abias.txt +ln -s gdas.t12z.abias_air gdas.t12z.abias_air.txt +ln -s gdas.t12z.abias_int gdas.t12z.abias_int.txt +ln -s gdas.t12z.abias_pc gdas.t12z.abias_pc.txt +ln -s gdas.t12z.atmi003.nc gdas.t12z.increment.atm.i003.nc +ln -s gdas.t12z.atmi009.nc gdas.t12z.increment.atm.i009.nc +ln -s gdas.t12z.atminc.nc gdas.t12z.increment.atm.i006.nc +ln -s gdas.t12z.radstat gdas.t12z.radstat.tar +ln -s gdas.t12z.ocninc.nc gdas.t12z.increment.i006.nc +cd "${cwd}" + +cd C48C48mx500/20250808/gdas.20210324/18/analysis/atmos +ln -s gdas.t18z.abias gdas.t18z.abias.txt +ln -s gdas.t18z.abias_air gdas.t18z.abias_air.txt +ln -s gdas.t18z.abias_int gdas.t18z.abias_int.txt +ln -s gdas.t18z.abias_pc gdas.t18z.abias_pc.txt +ln -s gdas.t18z.atma003.ensres.nc gdas.t18z.ensres_analysis.atm.i003.nc +ln -s gdas.t18z.atma009.ensres.nc gdas.t18z.ensres_analysis.atm.i009.nc +ln -s gdas.t18z.atmanl.ensres.nc gdas.t18z.ensres_analysis.atm.i006.nc +ln -s gdas.t18z.atmanl.nc gdas.t18z.analysis.atm.a006.nc +ln -s gdas.t18z.atmi003.nc gdas.t18z.increment.atm.i003.nc +ln -s gdas.t18z.atmi009.nc gdas.t18z.increment.atm.i009.nc +ln -s gdas.t18z.atminc.nc gdas.t18z.increment.atm.i006.nc +ln -s gdas.t18z.cnvstat gdas.t18z.cnvstat.tar +ln -s gdas.t18z.dtfanl.nc gdas.t18z.analysis.dtf.a006.nc +ln -s gdas.t18z.gsistat gdas.t18z.gsistat.txt +ln -s gdas.t18z.oznstat gdas.t18z.oznstat.tar +ln -s gdas.t18z.radstat gdas.t18z.radstat.tar +ln -s gdas.t18z.sfcanl.nc gdas.t18z.analysis.sfc.a006.nc +cd "${cwd}" + +cd C48C48mx500/20250808/gdas.20210324/18/analysis/ocean +ln -s gdas.t18z.ocninc.nc gdas.t18z.increment.i006.nc +cd "${cwd}" + +cd C96C48/20250327/enkfgdas.20211220/12 +cwd_9648=${PWD} +for dir in mem*; do + cd ${dir}/analysis/ocean + ln -s enkfgdas.t12z.ocninc.nc enkfgdas.t12z.increment.i006.nc + cd "${cwd_9648}" +done +cd "${cwd}" + +cd C96C48/20250327/enkfgdas.20211221/06/ensstat/analysis/atmos +ln -s enkfgdas.t06z.abias.ensmean enkfgdas.t06z.abias.ensmean.txt +ln -s enkfgdas.t06z.abias_air.ensmean enkfgdas.t06z.abias_air.ensmean.txt +ln -s enkfgdas.t06z.abias_int.ensmean enkfgdas.t06z.abias_int.ensmean.txt +ln -s enkfgdas.t06z.abias_pc.ensmean enkfgdas.t06z.abias_pc.ensmean.txt +ln -s enkfgdas.t06z.atmi003.ensmean.nc enkfgdas.t06z.ensmean_increment.atm.i003.nc +ln -s enkfgdas.t06z.atmi009.ensmean.nc enkfgdas.t06z.ensmean_increment.atm.i009.nc +ln -s enkfgdas.t06z.atminc.ensmean.nc enkfgdas.t06z.ensmean_increment.atm.i006.nc +ln -s enkfgdas.t06z.enkfstat enkfgdas.t06z.enkfstat.txt +ln -s enkfgdas.t06z.gsistat.ensmean enkfgdas.t06z.gsistat.ensmean.tar +ln -s enkfgdas.t06z.loginc.txt enkfgdas.t06z.increment.done.txt +ln -s enkfgdas.t06z.oznstat.ensmean enkfgdas.t06z.oznstat.ensmean.tar +ln -s enkfgdas.t06z.sfci003.nc enkfgdas.t06z.increment.sfc.i003.nc +ln -s enkfgdas.t06z.sfci006.nc enkfgdas.t06z.increment.sfc.i006.nc +ln -s enkfgdas.t06z.sfci009.nc enkfgdas.t06z.increment.sfc.i009.nc +cd "${cwd}" + +cd C96C48/20250327/enkfgdas.20211221/06 +cwd_9648=${PWD} +for dir in mem*; do + cd ${dir}/analysis/atmos + ln -s enkfgdas.t06z.atmi003.nc enkfgdas.t06z.increment.atm.i003.nc + ln -s enkfgdas.t06z.atmi009.nc enkfgdas.t06z.increment.atm.i009.nc + ln -s enkfgdas.t06z.atminc.nc enkfgdas.t06z.increment.atm.i006.nc + ln -s enkfgdas.t06z.ratmi003.nc enkfgdas.t06z.recentered_increment.i003.nc + ln -s enkfgdas.t06z.ratmi009.nc enkfgdas.t06z.recentered_increment.i009.nc + ln -s enkfgdas.t06z.ratminc.nc enkfgdas.t06z.recentered_increment.i006.nc + ln -s enkfgdas.t06z.sfci003.nc enkfgdas.t06z.increment.sfc.i003.nc + ln -s enkfgdas.t06z.sfci006.nc enkfgdas.t06z.increment.sfc.i006.nc + ln -s enkfgdas.t06z.sfci009.nc enkfgdas.t06z.increment.sfc.i009.nc + for tile in {1..6}; do + ln -s sfc_inc.tile${tile}.nc enkfgdas.t06z.increment.sfc.i006.tile${tile}.nc + done + cd "${cwd_9648}" +done +cd "${cwd}" + +cd C96C48/20250327/enkfgdas.20240223/18 +for dir in mem*; do + cd ${dir}/analysis/atmos + for tile in {1..6}; do + ln -s enkfgdas.t18z.cubed_sphere_grid_atminc.tile${tile}.nc enkfgdas.t18z.jedi_increment.atm.i006.tile${tile}.nc + done + ln -s enkfgdas.t18z.cubed_sphere_grid_ratminc.nc enkfgdas.t18z.recentered_jedi_increment.atm.i006.nc + cd "${cwd_9648}" +done +cd "${cwd}" + +cd C96C48/20250327/gdas.20211220/12/analysis/atmos +ln -s gdas.t12z.abias gdas.t12z.abias.txt +ln -s gdas.t12z.abias_air gdas.t12z.abias_air.txt +ln -s gdas.t12z.abias_int gdas.t12z.abias_int.txt +ln -s gdas.t12z.abias_pc gdas.t12z.abias_pc.txt +ln -s gdas.t12z.radstat gdas.t12z.radstat.tar +ln -s gdas.t12z.ocninc.nc gdas.t12z.increment.i006.nc +cd "${cwd}" + +cd C96C48/20250327/gdas.20211220/18/analysis/atmos +ln -s gdas.t18z.abias gdas.t18z.abias.txt +ln -s gdas.t18z.abias_air gdas.t18z.abias_air.txt +ln -s gdas.t18z.abias_pc gdas.t18z.abias_pc.txt +ln -s gdas.t18z.radstat gdas.t18z.radstat.tar +cd "${cwd}" + +cd C96C48/20250327/gdas.20211221/06/analysis/atmos +ln -s gdas.t06z.abias gdas.t06z.abias.txt +ln -s gdas.t06z.abias_air gdas.t06z.abias_air.txt +ln -s gdas.t06z.abias_int gdas.t06z.abias_int.txt +ln -s gdas.t06z.abias_pc gdas.t06z.abias_pc.txt +ln -s gdas.t06z.atma003.ensres.nc gdas.t06z.ensres_analysis.atm.i003.nc +ln -s gdas.t06z.atma009.ensres.nc gdas.t06z.ensres_analysis.atm.i009.nc +ln -s gdas.t06z.atmanl.ensres.nc gdas.t06z.ensres_analysis.atm.i006.nc +ln -s gdas.t06z.atmanl.nc gdas.t06z.analysis.atm.a006.nc +ln -s gdas.t06z.atmi003.nc gdas.t06z.increment.atm.i003.nc +ln -s gdas.t06z.atmi009.nc gdas.t06z.increment.atm.i009.nc +ln -s gdas.t06z.atminc.nc gdas.t06z.increment.atm.i006.nc +ln -s gdas.t06z.dtfanl.nc gdas.t06z.analysis.dtf.a006.nc +ln -s gdas.t06z.gsistat gdas.t06z.gsistat.txt +ln -s gdas.t06z.loganl.txt gdas.t06z.analysis.done.txt +ln -s gdas.t06z.loginc.txt gdas.t06z.increment.done.txt +ln -s gdas.t06z.oznstat gdas.t06z.oznstat.tar +ln -s gdas.t06z.sfcanl.nc gdas.t06z.analysis.sfc.a006.nc +ln -s sfc_inc.tile1.nc gdas.t06z.increment.sfc.i003.nc +cd "${cwd}" + +cd C96C48/20250327/gdas.20211221/18/analysis/atmos +ln -s gdas.t18z.atminc.nc gdas.t18z.increment.atm.i006.nc +ln -s gdas.t18z.cubed_sphere_grid_atminc.tile1.nc gdas.t18z.jedi_increment.atm.i006.tile1.nc +ln -s gdas.t18z.cubed_sphere_grid_ratminc.tile1.nc gdas.t18z.recentered_jedi_increment.atm.i006.tile1.nc +cd "${cwd}" + +cd C96C48/20250808/enkfgdas.20211220/12 +for dir in mem*; do + cd ${dir}/analysis/ocean + ln -s enkfgdas.t12z.ocninc.nc enkfgdas.t12z.increment.i006.nc + cd "${cwd_9648}" +done +cd "${cwd}" + +cd C96C48/20250808/enkfgdas.20220515/06/ensstat/analysis/atmos +ln -s enkfgdas.t06z.abias.ensmean enkfgdas.t06z.abias.ensmean.txt +ln -s enkfgdas.t06z.abias_air.ensmean enkfgdas.t06z.abias_air.ensmean.txt +ln -s enkfgdas.t06z.abias_int.ensmean enkfgdas.t06z.abias_int.ensmean.txt +ln -s enkfgdas.t06z.abias_pc.ensmean enkfgdas.t06z.abias_pc.ensmean.txt +ln -s enkfgdas.t06z.atmi003.ensmean.nc enkfgdas.t06z.ensmean_increment.atm.i003.nc +ln -s enkfgdas.t06z.atmi009.ensmean.nc enkfgdas.t06z.ensmean_increment.atm.i009.nc +ln -s enkfgdas.t06z.atminc.ensmean.nc enkfgdas.t06z.ensmean_increment.atm.i006.nc +ln -s enkfgdas.t06z.cnvstat.ensmean enkfgdas.t06z.cnvstat.ensmean.tar +ln -s enkfgdas.t06z.enkfstat enkfgdas.t06z.enkfstat.txt +ln -s enkfgdas.t06z.gsistat.ensmean enkfgdas.t06z.gsistat.ensmean.tar +ln -s enkfgdas.t06z.loginc.txt enkfgdas.t06z.increment.done.txt +ln -s enkfgdas.t06z.oznstat.ensmean enkfgdas.t06z.oznstat.ensmean.tar +ln -s enkfgdas.t06z.radstat.ensmean enkfgdas.t06z.radstat.ensmean.tar +ln -s enkfgdas.t06z.sfci003.nc enkfgdas.t06z.increment.sfc.i003.nc +ln -s enkfgdas.t06z.sfci006.nc enkfgdas.t06z.increment.sfc.i006.nc +ln -s enkfgdas.t06z.sfci009.nc enkfgdas.t06z.increment.sfc.i009.nc +ln -s enkfgdas.t06z.atmi003.nc enkfgdas.t06z.increment.atm.i003.nc +ln -s enkfgdas.t06z.atmi009.nc enkfgdas.t06z.increment.atm.i009.nc +ln -s enkfgdas.t06z.atminc.nc enkfgdas.t06z.increment.atm.i006.nc +ln -s enkfgdas.t06z.ratmi003.nc enkfgdas.t06z.recentered_increment.i003.nc +ln -s enkfgdas.t06z.ratmi009.nc enkfgdas.t06z.recentered_increment.i009.nc +ln -s enkfgdas.t06z.ratminc.nc enkfgdas.t06z.recentered_increment.i006.nc +ln -s enkfgdas.t06z.sfci003.nc enkfgdas.t06z.increment.sfc.i003.nc +ln -s enkfgdas.t06z.sfci006.nc enkfgdas.t06z.increment.sfc.i006.nc +ln -s enkfgdas.t06z.sfci009.nc enkfgdas.t06z.increment.sfc.i009.nc +ln -s sfc_inc.tile1.nc enkfgdas.t06z.increment.sfc.i003.nc +cd "${cwd}" + +cd C96C48/20250808/enkfgdas.20220223/18 +for dir in mem*; do + cd ${dir}/analysis/atmos + for tile in {1..6}; do + ln -s enkfgdas.t18z.cubed_sphere_grid_atminc.tile${tile}.nc enkfgdas.t18z.jedi_increment.atm.i006.tile${tile}.nc + done + cd "${cwd_9648}" +done +cd "${cwd}" + +cd C96C48/20250808/gdas.20211220/12/analysis/atmos +ln -s gdas.t12z.abias gdas.t12z.abias.txt +ln -s gdas.t12z.abias_air gdas.t12z.abias_air.txt +ln -s gdas.t12z.abias_int gdas.t12z.abias_int.txt +ln -s gdas.t12z.abias_pc gdas.t12z.abias_pc.txt +ln -s gdas.t12z.radstat gdas.t12z.radstat.tar +ln -s gdas.t12z.ocninc.nc gdas.t12z.increment.i006.nc +cd "${cwd}" + +cd C96C48/20250808/gdas.20211220/18/analysis/atmos +ln -s gdas.t18z.abias gdas.t18z.abias.txt +ln -s gdas.t18z.abias_air gdas.t18z.abias_air.txt +ln -s gdas.t18z.abias_int gdas.t18z.abias_int.txt +ln -s gdas.t18z.abias_pc gdas.t18z.abias_pc.txt +ln -s gdas.t18z.radstat gdas.t18z.radstat.tar +cd "${cwd}" + +cd C96C48/20250808/gdas.20220515/06/analysis/atmos +ln -s gdas.t06z.abias gdas.t06z.abias.txt +ln -s gdas.t06z.abias_air gdas.t06z.abias_air.txt +ln -s gdas.t06z.abias_int gdas.t06z.abias_int.txt +ln -s gdas.t06z.abias_pc gdas.t06z.abias_pc.txt +ln -s gdas.t06z.atma003.ensres.nc gdas.t06z.ensres_analysis.atm.i003.nc +ln -s gdas.t06z.atma009.ensres.nc gdas.t06z.ensres_analysis.atm.i009.nc +ln -s gdas.t06z.atmanl.ensres.nc gdas.t06z.ensres_analysis.atm.i006.nc +ln -s gdas.t06z.atmanl.nc gdas.t06z.analysis.atm.a006.nc +ln -s gdas.t06z.atmi003.nc gdas.t06z.increment.atm.i003.nc +ln -s gdas.t06z.atmi009.nc gdas.t06z.increment.atm.i009.nc +ln -s gdas.t06z.atminc.nc gdas.t06z.increment.atm.i006.nc +ln -s gdas.t06z.cnvstat gdas.t06z.cnvstat.tar +ln -s gdas.t06z.dtfanl.nc gdas.t06z.analysis.dtf.a006.nc +ln -s gdas.t06z.gsistat gdas.t06z.gsistat.txt +ln -s gdas.t06z.loganl.txt gdas.t06z.analysis.done.txt +ln -s gdas.t06z.loginc.txt gdas.t06z.increment.done.txt +ln -s gdas.t06z.oznstat gdas.t06z.oznstat.tar +ln -s gdas.t06z.radstat gdas.t06z.radstat.tar +ln -s gdas.t06z.sfcanl.nc gdas.t06z.analysis.sfc.a006.nc +ln -s sfc_inc.tile1.nc gdas.t06z.increment.sfc.i003.nc +cd "${cwd}" + +cd C96C48/20250808/gdas.20220515/18/analysis/atmos +ln -s gdas.t18z.cubed_sphere_grid_atminc.tile1.nc gdas.t18z.jedi_increment.atm.i006.tile1.nc +cd "${cwd}" + +cd retro_ICs/enkfgdas.20241115/06 +for dir in mem*; do + cd ${dir}/analysis/ocean + ln -s enkfgdas.t06z.ocninc.nc enkfgdas.t06z.increment.i006.nc + cd "${cwd_9648}" + cd ${dir}/analysis/atmos + ln -s enkfgdas.t06z.atmi003.nc enkfgdas.t06z.increment.atm.i003.nc + ln -s enkfgdas.t06z.atmi009.nc enkfgdas.t06z.increment.atm.i009.nc + ln -s enkfgdas.t06z.atminc.nc enkfgdas.t06z.increment.atm.i006.nc + ln -s enkfgdas.t06z.ratmi003.nc enkfgdas.t06z.recentered_increment.i003.nc + ln -s enkfgdas.t06z.ratmi009.nc enkfgdas.t06z.recentered_increment.i009.nc + ln -s enkfgdas.t06z.ratminc.nc enkfgdas.t06z.recentered_increment.i006.nc + for tile in {1..6}; do + ln -s sfc_inc.tile${tile}.nc enkfgdas.t06z.increment.sfc.i006.tile${tile}.nc + done + cd "${cwd_9648}" +done +cd "${cwd}" + +cd retro_ICs/gdas.20241115/06/analysis/atmos +ln -s gdas.t06z.abias gdas.t06z.abias.txt +ln -s gdas.t06z.abias.orig gdas.t06z.abias.orig.txt +ln -s gdas.t06z.abias_air gdas.t06z.abias_air.txt +ln -s gdas.t06z.abias_air.orig gdas.t06z.abias_air.orig.txt +ln -s gdas.t06z.abias_int gdas.t06z.abias_int.txt +ln -s gdas.t06z.abias_pc gdas.t06z.abias_pc.txt +ln -s gdas.t06z.abias_pc.orig gdas.t06z.abias_pc.orig.txt +ln -s gdas.t06z.atma003.ensres.nc gdas.t06z.ensres_analysis.atm.i003.nc +ln -s gdas.t06z.atma009.ensres.nc gdas.t06z.ensres_analysis.atm.i009.nc +ln -s gdas.t06z.atmanl.ensres.nc gdas.t06z.ensres_analysis.atm.i006.nc +ln -s gdas.t06z.atmanl.nc gdas.t06z.analysis.atm.a006.nc +ln -s gdas.t06z.atmi003.nc gdas.t06z.increment.atm.i003.nc +ln -s gdas.t06z.atmi009.nc gdas.t06z.increment.atm.i009.nc +ln -s gdas.t06z.atminc.nc gdas.t06z.increment.atm.i006.nc +ln -s gdas.t06z.cnvstat gdas.t06z.cnvstat.tar +ln -s gdas.t06z.dtfanl.nc gdas.t06z.analysis.dtf.a006.nc +ln -s gdas.t06z.gsistat gdas.t06z.gsistat.txt +ln -s gdas.t06z.loganl.txt gdas.t06z.analysis.done.txt +ln -s gdas.t06z.loginc.txt gdas.t06z.increment.done.txt +ln -s gdas.t06z.oznstat gdas.t06z.oznstat.tar +ln -s gdas.t06z.radstat gdas.t06z.radstat.tar +ln -s gdas.t06z.sfcanl.nc gdas.t06z.analysis.sfc.a006.nc +ln -s sfc_inc.tile1.nc gdas.t06z.increment.sfc.i003.nc +cd "${cwd}" + +cd retro_ICs/gdas.20241115/06/analysis/ocean +ln -s gdas.t06z.ocninc.nc gdas.t06z.increment.i006.nc +cd "${cwd}" + +echo "Success!!" +exit 0 From ccba81f2eb2a970a0ef2377c81ece04a2bccac0d Mon Sep 17 00:00:00 2001 From: DavidHuber-NOAA Date: Thu, 6 Nov 2025 14:31:25 +0000 Subject: [PATCH 05/33] Fix linter issues --- dev/ush/make_ee2_links.sh | 40 +++++++++++++++++++-------------------- 1 file changed, 20 insertions(+), 20 deletions(-) diff --git a/dev/ush/make_ee2_links.sh b/dev/ush/make_ee2_links.sh index d3edc8a4899..cf3641ce7eb 100644 --- a/dev/ush/make_ee2_links.sh +++ b/dev/ush/make_ee2_links.sh @@ -22,7 +22,7 @@ cd "${cwd}" cd C48C48mx500/20250327/enkfgdas.20210323/12 cwd_4848500=${pwd} for dir in mem*; do - cd ${dir}/analysis/ocean + cd "${dir}/analysis/ocean" ln -s gdas.t12z.ocninc.nc gdas.t12z.increment.i006.nc cd "${cwd_4848500}" done @@ -31,12 +31,12 @@ cd "${cwd}" cd C48C48mx500/20250327/enkfgdas.20210324/12 cwd_4848500=${PWD} for dir in mem*; do - cd ${dir}/analysis/atmos + cd "${dir}/analysis/atmos" ln -s enkfgdas.t12z.ratmi003.nc enkfgdas.t12z.recentered_increment.i003.nc ln -s enkfgdas.t12z.ratmi009.nc enkfgdas.t12z.recentered_increment.i009.nc ln -s enkfgdas.t12z.ratminc.nc enkfgdas.t12z.recentered_increment.i006.nc cd "${cwd_4848500}" - cd ${dir}/analysis/ocean + cd "${dir}/analysis/ocean" ln -s enkfgdas.t12z.ocninc.nc enkfgdas.t12z.increment.i006.nc cd "${cwd_4848500}" done @@ -45,7 +45,7 @@ cd "${cwd}" cd C48C48mx500/20250327/enkfgdas.20210324/18 cwd_4848500=${PWD} for dir in mem*; do - cd ${dir}/analysis/atmos + cd "${dir}/analysis/atmos" ln -s enkfgdas.t18z.atmi003.nc enkfgdas.t18z.increment.atm.i003.nc ln -s enkfgdas.t18z.atmi009.nc enkfgdas.t18z.increment.atm.i009.nc ln -s enkfgdas.t18z.atminc.nc enkfgdas.t18z.increment.atm.i006.nc @@ -53,7 +53,7 @@ for dir in mem*; do ln -s enkfgdas.t18z.ratmi009.nc enkfgdas.t18z.recentered_increment.i009.nc ln -s enkfgdas.t18z.ratminc.nc enkfgdas.t18z.recentered_increment.i006.nc cd "${cwd_4848500}" - cd ${dir}/analysis/ocean + cd "${dir}/analysis/ocean" ln -s enkfgdas.t18z.ocninc.nc enkfgdas.t18z.increment.i006.nc cd "${cwd_4848500}" done @@ -109,12 +109,12 @@ cd "${cwd}" cd C48C48mx500/20250808/enkfgdas.20210324/12 for dir in mem*; do - cd ${dir}/analysis/atmos + cd "${dir}/analysis/atmos" ln -s enkfgdas.t12z.atmi003.nc enkfgdas.t12z.increment.atm.i003.nc ln -s enkfgdas.t12z.atmi009.nc enkfgdas.t12z.increment.atm.i009.nc ln -s enkfgdas.t12z.atminc.nc enkfgdas.t12z.increment.atm.i006.nc cd "${cwd_4848500}" - cd ${dir}/analysis/ocean + cd "${dir}/analysis/ocean" ln -s enkfgdas.t12z.ocninc.nc enkfgdas.t12z.increment.i006.nc cd "${cwd_4848500}" done @@ -122,7 +122,7 @@ cd "${cwd}" cd C48C48mx500/20250808/enkfgdas.20210324/18 for dir in mem*; do - cd ${dir}/analysis/atmos + cd "${dir}/analysis/atmos" ln -s enkfgdas.t18z.atmi003.nc enkfgdas.t18z.increment.atm.i003.nc ln -s enkfgdas.t18z.atmi009.nc enkfgdas.t18z.increment.atm.i009.nc ln -s enkfgdas.t18z.atminc.nc enkfgdas.t18z.increment.atm.i006.nc @@ -130,7 +130,7 @@ for dir in mem*; do ln -s enkfgdas.t18z.ratmi009.nc enkfgdas.t18z.recentered_increment.i009.nc ln -s enkfgdas.t18z.ratminc.nc enkfgdas.t18z.recentered_increment.i006.nc cd "${cwd_4848500}" - cd ${dir}/analysis/ocean + cd "${dir}/analysis/ocean" ln -s enkfgdas.t18z.ocninc.nc enkfgdas.t18z.increment.i006.nc cd "${cwd_4848500}" done @@ -180,7 +180,7 @@ cd "${cwd}" cd C96C48/20250327/enkfgdas.20211220/12 cwd_9648=${PWD} for dir in mem*; do - cd ${dir}/analysis/ocean + cd "${dir}/analysis/ocean" ln -s enkfgdas.t12z.ocninc.nc enkfgdas.t12z.increment.i006.nc cd "${cwd_9648}" done @@ -206,7 +206,7 @@ cd "${cwd}" cd C96C48/20250327/enkfgdas.20211221/06 cwd_9648=${PWD} for dir in mem*; do - cd ${dir}/analysis/atmos + cd "${dir}/analysis/atmos" ln -s enkfgdas.t06z.atmi003.nc enkfgdas.t06z.increment.atm.i003.nc ln -s enkfgdas.t06z.atmi009.nc enkfgdas.t06z.increment.atm.i009.nc ln -s enkfgdas.t06z.atminc.nc enkfgdas.t06z.increment.atm.i006.nc @@ -217,7 +217,7 @@ for dir in mem*; do ln -s enkfgdas.t06z.sfci006.nc enkfgdas.t06z.increment.sfc.i006.nc ln -s enkfgdas.t06z.sfci009.nc enkfgdas.t06z.increment.sfc.i009.nc for tile in {1..6}; do - ln -s sfc_inc.tile${tile}.nc enkfgdas.t06z.increment.sfc.i006.tile${tile}.nc + ln -s "sfc_inc.tile${tile}.nc" "enkfgdas.t06z.increment.sfc.i006.tile${tile}.nc" done cd "${cwd_9648}" done @@ -225,9 +225,9 @@ cd "${cwd}" cd C96C48/20250327/enkfgdas.20240223/18 for dir in mem*; do - cd ${dir}/analysis/atmos + cd "${dir}/analysis/atmos" for tile in {1..6}; do - ln -s enkfgdas.t18z.cubed_sphere_grid_atminc.tile${tile}.nc enkfgdas.t18z.jedi_increment.atm.i006.tile${tile}.nc + ln -s "enkfgdas.t18z.cubed_sphere_grid_atminc.tile${tile}.nc" "enkfgdas.t18z.jedi_increment.atm.i006.tile${tile}.nc" done ln -s enkfgdas.t18z.cubed_sphere_grid_ratminc.nc enkfgdas.t18z.recentered_jedi_increment.atm.i006.nc cd "${cwd_9648}" @@ -279,7 +279,7 @@ cd "${cwd}" cd C96C48/20250808/enkfgdas.20211220/12 for dir in mem*; do - cd ${dir}/analysis/ocean + cd "${dir}/analysis/ocean" ln -s enkfgdas.t12z.ocninc.nc enkfgdas.t12z.increment.i006.nc cd "${cwd_9648}" done @@ -316,9 +316,9 @@ cd "${cwd}" cd C96C48/20250808/enkfgdas.20220223/18 for dir in mem*; do - cd ${dir}/analysis/atmos + cd "${dir}/analysis/atmos" for tile in {1..6}; do - ln -s enkfgdas.t18z.cubed_sphere_grid_atminc.tile${tile}.nc enkfgdas.t18z.jedi_increment.atm.i006.tile${tile}.nc + ln -s "enkfgdas.t18z.cubed_sphere_grid_atminc.tile${tile}.nc" "enkfgdas.t18z.jedi_increment.atm.i006.tile${tile}.nc" done cd "${cwd_9648}" done @@ -370,10 +370,10 @@ cd "${cwd}" cd retro_ICs/enkfgdas.20241115/06 for dir in mem*; do - cd ${dir}/analysis/ocean + cd "${dir}/analysis/ocean" ln -s enkfgdas.t06z.ocninc.nc enkfgdas.t06z.increment.i006.nc cd "${cwd_9648}" - cd ${dir}/analysis/atmos + cd "${dir}/analysis/atmos" ln -s enkfgdas.t06z.atmi003.nc enkfgdas.t06z.increment.atm.i003.nc ln -s enkfgdas.t06z.atmi009.nc enkfgdas.t06z.increment.atm.i009.nc ln -s enkfgdas.t06z.atminc.nc enkfgdas.t06z.increment.atm.i006.nc @@ -381,7 +381,7 @@ for dir in mem*; do ln -s enkfgdas.t06z.ratmi009.nc enkfgdas.t06z.recentered_increment.i009.nc ln -s enkfgdas.t06z.ratminc.nc enkfgdas.t06z.recentered_increment.i006.nc for tile in {1..6}; do - ln -s sfc_inc.tile${tile}.nc enkfgdas.t06z.increment.sfc.i006.tile${tile}.nc + ln -s "sfc_inc.tile${tile}.nc" "enkfgdas.t06z.increment.sfc.i006.tile${tile}.nc" done cd "${cwd_9648}" done From 354b26701f95bba99c9fca7fbba98325576e4e2d Mon Sep 17 00:00:00 2001 From: DavidHuber-NOAA Date: Thu, 6 Nov 2025 16:22:13 +0000 Subject: [PATCH 06/33] Do not link to subdirs --- dev/ush/make_ee2_links.sh | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/dev/ush/make_ee2_links.sh b/dev/ush/make_ee2_links.sh index cf3641ce7eb..366ffcb4b96 100644 --- a/dev/ush/make_ee2_links.sh +++ b/dev/ush/make_ee2_links.sh @@ -4,11 +4,11 @@ set -eu cwd=${PWD} cd C384C192/20240610/gdas.20230401/18/analysis/atmos ln -s gdas.t18z.abias gdas.t18z.abias.txt -ln -s gdas.t18z.abias C384C192/20240610/gdas.20230401/18/analysis/atmos/gdas.t18z.abias.txt -ln -s gdas.t18z.abias_air C384C192/20240610/gdas.20230401/18/analysis/atmos/gdas.t18z.abias_air.txt -ln -s gdas.t18z.abias_int C384C192/20240610/gdas.20230401/18/analysis/atmos/gdas.t18z.abias_int.txt -ln -s gdas.t18z.abias_pc C384C192/20240610/gdas.20230401/18/analysis/atmos/gdas.t18z.abias_pc.txt -ln -s gdas.t18z.radstat C384C192/20240610/gdas.20230401/18/analysis/atmos/gdas.t18z.radstat.tar +ln -s gdas.t18z.abias gdas.t18z.abias.txt +ln -s gdas.t18z.abias_air gdas.t18z.abias_air.txt +ln -s gdas.t18z.abias_int gdas.t18z.abias_int.txt +ln -s gdas.t18z.abias_pc gdas.t18z.abias_pc.txt +ln -s gdas.t18z.radstat gdas.t18z.radstat.tar cd "${cwd}" cd C384mx025/20241120/gdas.20210701/00/analysis/atmos From 816841f2bec64ca547be85d024a05a5c3d24667d Mon Sep 17 00:00:00 2001 From: DavidHuber-NOAA Date: Thu, 6 Nov 2025 16:34:52 +0000 Subject: [PATCH 07/33] Fix mom6 increment filenames --- dev/ush/make_ee2_links.sh | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/dev/ush/make_ee2_links.sh b/dev/ush/make_ee2_links.sh index 366ffcb4b96..b1e325e39f4 100644 --- a/dev/ush/make_ee2_links.sh +++ b/dev/ush/make_ee2_links.sh @@ -23,7 +23,7 @@ cd C48C48mx500/20250327/enkfgdas.20210323/12 cwd_4848500=${pwd} for dir in mem*; do cd "${dir}/analysis/ocean" - ln -s gdas.t12z.ocninc.nc gdas.t12z.increment.i006.nc + ln -s gdas.t12z.ocninc.nc gdas.t12z.mom6_increment.i006.nc cd "${cwd_4848500}" done cd "${cwd}" @@ -68,7 +68,7 @@ ln -s gdas.t12z.radstat gdas.t12z.radstat.tar cd "${cwd}" cd C48C48mx500/20250327/gdas.20210324/12/analysis/ocean -ln -s gdas.t12z.ocninc.nc gdas.t12z.increment.i006.nc +ln -s gdas.t12z.ocninc.nc gdas.t12z.mom6_increment.i006.nc cd "${cwd}" cd C48C48mx500/20250327/gdas.20210324/18/analysis/atmos @@ -80,7 +80,7 @@ ln -s gdas.t12z.atmi003.nc gdas.t12z.increment.atm.i003.nc ln -s gdas.t12z.atmi009.nc gdas.t12z.increment.atm.i009.nc ln -s gdas.t12z.atminc.nc gdas.t12z.increment.atm.i006.nc ln -s gdas.t12z.radstat gdas.t12z.radstat.tar -ln -s gdas.t12z.ocninc.nc gdas.t12z.increment.i006.nc +ln -s gdas.t12z.ocninc.nc gdas.t12z.mom6_increment.i006.nc cd "${cwd}" cd C48C48mx500/20250327/gdas.20210324/18/analysis/atmos @@ -104,7 +104,7 @@ ln -s gdas.t18z.sfcanl.nc gdas.t18z.analysis.sfc.a006.nc cd "${cwd}" cd C48C48mx500/20250327/gdas.20210324/18/analysis/ocean -ln -s gdas.t18z.ocninc.nc gdas.t18z.increment.i006.nc +ln -s gdas.t18z.ocninc.nc gdas.t18z.mom6_increment.i006.nc cd "${cwd}" cd C48C48mx500/20250808/enkfgdas.20210324/12 @@ -137,7 +137,7 @@ done cd "${cwd}" cd C48C48mx500/20250808/gdas.20210323/12/analysis/ocean -ln -s gdas.t12z.ocninc.nc gdas.t12z.increment.i006.nc +ln -s gdas.t12z.ocninc.nc gdas.t12z.mom6_increment.i006.nc cd "${cwd}" cd C48C48mx500/20250808/gdas.20210324/12/analysis/atmos @@ -150,7 +150,7 @@ ln -s gdas.t12z.atmi003.nc gdas.t12z.increment.atm.i003.nc ln -s gdas.t12z.atmi009.nc gdas.t12z.increment.atm.i009.nc ln -s gdas.t12z.atminc.nc gdas.t12z.increment.atm.i006.nc ln -s gdas.t12z.radstat gdas.t12z.radstat.tar -ln -s gdas.t12z.ocninc.nc gdas.t12z.increment.i006.nc +ln -s gdas.t12z.ocninc.nc gdas.t12z.mom6_increment.i006.nc cd "${cwd}" cd C48C48mx500/20250808/gdas.20210324/18/analysis/atmos @@ -174,7 +174,7 @@ ln -s gdas.t18z.sfcanl.nc gdas.t18z.analysis.sfc.a006.nc cd "${cwd}" cd C48C48mx500/20250808/gdas.20210324/18/analysis/ocean -ln -s gdas.t18z.ocninc.nc gdas.t18z.increment.i006.nc +ln -s gdas.t18z.ocninc.nc gdas.t18z.mom6_increment.i006.nc cd "${cwd}" cd C96C48/20250327/enkfgdas.20211220/12 @@ -240,7 +240,7 @@ ln -s gdas.t12z.abias_air gdas.t12z.abias_air.txt ln -s gdas.t12z.abias_int gdas.t12z.abias_int.txt ln -s gdas.t12z.abias_pc gdas.t12z.abias_pc.txt ln -s gdas.t12z.radstat gdas.t12z.radstat.tar -ln -s gdas.t12z.ocninc.nc gdas.t12z.increment.i006.nc +ln -s gdas.t12z.ocninc.nc gdas.t12z.mom6_increment.i006.nc cd "${cwd}" cd C96C48/20250327/gdas.20211220/18/analysis/atmos @@ -330,7 +330,7 @@ ln -s gdas.t12z.abias_air gdas.t12z.abias_air.txt ln -s gdas.t12z.abias_int gdas.t12z.abias_int.txt ln -s gdas.t12z.abias_pc gdas.t12z.abias_pc.txt ln -s gdas.t12z.radstat gdas.t12z.radstat.tar -ln -s gdas.t12z.ocninc.nc gdas.t12z.increment.i006.nc +ln -s gdas.t12z.ocninc.nc gdas.t12z.mom6_increment.i006.nc cd "${cwd}" cd C96C48/20250808/gdas.20211220/18/analysis/atmos @@ -414,7 +414,7 @@ ln -s sfc_inc.tile1.nc gdas.t06z.increment.sfc.i003.nc cd "${cwd}" cd retro_ICs/gdas.20241115/06/analysis/ocean -ln -s gdas.t06z.ocninc.nc gdas.t06z.increment.i006.nc +ln -s gdas.t06z.ocninc.nc gdas.t06z.mom6_increment.i006.nc cd "${cwd}" echo "Success!!" From d8a71f9ad28cc2fc4291bea95891598e0c3d3bee Mon Sep 17 00:00:00 2001 From: DavidHuber-NOAA Date: Thu, 6 Nov 2025 16:38:41 +0000 Subject: [PATCH 08/33] Fix enkfgdas mom6_increment filenames --- dev/ush/make_ee2_links.sh | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/dev/ush/make_ee2_links.sh b/dev/ush/make_ee2_links.sh index b1e325e39f4..b91f5215145 100644 --- a/dev/ush/make_ee2_links.sh +++ b/dev/ush/make_ee2_links.sh @@ -37,7 +37,7 @@ for dir in mem*; do ln -s enkfgdas.t12z.ratminc.nc enkfgdas.t12z.recentered_increment.i006.nc cd "${cwd_4848500}" cd "${dir}/analysis/ocean" - ln -s enkfgdas.t12z.ocninc.nc enkfgdas.t12z.increment.i006.nc + ln -s enkfgdas.t12z.ocninc.nc enkfgdas.t12z.mom6_increment.i006.nc cd "${cwd_4848500}" done cd "${cwd}" @@ -54,7 +54,7 @@ for dir in mem*; do ln -s enkfgdas.t18z.ratminc.nc enkfgdas.t18z.recentered_increment.i006.nc cd "${cwd_4848500}" cd "${dir}/analysis/ocean" - ln -s enkfgdas.t18z.ocninc.nc enkfgdas.t18z.increment.i006.nc + ln -s enkfgdas.t18z.ocninc.nc enkfgdas.t18z.mom_6increment.i006.nc cd "${cwd_4848500}" done cd "${cwd}" @@ -115,7 +115,7 @@ for dir in mem*; do ln -s enkfgdas.t12z.atminc.nc enkfgdas.t12z.increment.atm.i006.nc cd "${cwd_4848500}" cd "${dir}/analysis/ocean" - ln -s enkfgdas.t12z.ocninc.nc enkfgdas.t12z.increment.i006.nc + ln -s enkfgdas.t12z.ocninc.nc enkfgdas.t12z.mom6_increment.i006.nc cd "${cwd_4848500}" done cd "${cwd}" @@ -131,7 +131,7 @@ for dir in mem*; do ln -s enkfgdas.t18z.ratminc.nc enkfgdas.t18z.recentered_increment.i006.nc cd "${cwd_4848500}" cd "${dir}/analysis/ocean" - ln -s enkfgdas.t18z.ocninc.nc enkfgdas.t18z.increment.i006.nc + ln -s enkfgdas.t18z.ocninc.nc enkfgdas.t18z.mom6_increment.i006.nc cd "${cwd_4848500}" done cd "${cwd}" @@ -181,7 +181,7 @@ cd C96C48/20250327/enkfgdas.20211220/12 cwd_9648=${PWD} for dir in mem*; do cd "${dir}/analysis/ocean" - ln -s enkfgdas.t12z.ocninc.nc enkfgdas.t12z.increment.i006.nc + ln -s enkfgdas.t12z.ocninc.nc enkfgdas.t12z.mom6_increment.i006.nc cd "${cwd_9648}" done cd "${cwd}" @@ -280,7 +280,7 @@ cd "${cwd}" cd C96C48/20250808/enkfgdas.20211220/12 for dir in mem*; do cd "${dir}/analysis/ocean" - ln -s enkfgdas.t12z.ocninc.nc enkfgdas.t12z.increment.i006.nc + ln -s enkfgdas.t12z.ocninc.nc enkfgdas.t12z.mom6_increment.i006.nc cd "${cwd_9648}" done cd "${cwd}" @@ -371,7 +371,7 @@ cd "${cwd}" cd retro_ICs/enkfgdas.20241115/06 for dir in mem*; do cd "${dir}/analysis/ocean" - ln -s enkfgdas.t06z.ocninc.nc enkfgdas.t06z.increment.i006.nc + ln -s enkfgdas.t06z.ocninc.nc enkfgdas.t06z.mom6_increment.i006.nc cd "${cwd_9648}" cd "${dir}/analysis/atmos" ln -s enkfgdas.t06z.atmi003.nc enkfgdas.t06z.increment.atm.i003.nc From 75c9025321527c49b4b36f17cb2b5eb213c154f5 Mon Sep 17 00:00:00 2001 From: DavidHuber-NOAA Date: Thu, 6 Nov 2025 17:02:44 +0000 Subject: [PATCH 09/33] Add 'atm' to recentered_increment links --- dev/ush/make_ee2_links.sh | 36 ++++++++++++++++++------------------ 1 file changed, 18 insertions(+), 18 deletions(-) diff --git a/dev/ush/make_ee2_links.sh b/dev/ush/make_ee2_links.sh index b91f5215145..f8c56fff868 100644 --- a/dev/ush/make_ee2_links.sh +++ b/dev/ush/make_ee2_links.sh @@ -32,9 +32,9 @@ cd C48C48mx500/20250327/enkfgdas.20210324/12 cwd_4848500=${PWD} for dir in mem*; do cd "${dir}/analysis/atmos" - ln -s enkfgdas.t12z.ratmi003.nc enkfgdas.t12z.recentered_increment.i003.nc - ln -s enkfgdas.t12z.ratmi009.nc enkfgdas.t12z.recentered_increment.i009.nc - ln -s enkfgdas.t12z.ratminc.nc enkfgdas.t12z.recentered_increment.i006.nc + ln -s enkfgdas.t12z.ratmi003.nc enkfgdas.t12z.recentered_increment.atm.i003.nc + ln -s enkfgdas.t12z.ratmi009.nc enkfgdas.t12z.recentered_increment.atm.i009.nc + ln -s enkfgdas.t12z.ratminc.nc enkfgdas.t12z.recentered_increment.atm.i006.nc cd "${cwd_4848500}" cd "${dir}/analysis/ocean" ln -s enkfgdas.t12z.ocninc.nc enkfgdas.t12z.mom6_increment.i006.nc @@ -49,9 +49,9 @@ for dir in mem*; do ln -s enkfgdas.t18z.atmi003.nc enkfgdas.t18z.increment.atm.i003.nc ln -s enkfgdas.t18z.atmi009.nc enkfgdas.t18z.increment.atm.i009.nc ln -s enkfgdas.t18z.atminc.nc enkfgdas.t18z.increment.atm.i006.nc - ln -s enkfgdas.t18z.ratmi003.nc enkfgdas.t18z.recentered_increment.i003.nc - ln -s enkfgdas.t18z.ratmi009.nc enkfgdas.t18z.recentered_increment.i009.nc - ln -s enkfgdas.t18z.ratminc.nc enkfgdas.t18z.recentered_increment.i006.nc + ln -s enkfgdas.t18z.ratmi003.nc enkfgdas.t18z.recentered_increment.atm.i003.nc + ln -s enkfgdas.t18z.ratmi009.nc enkfgdas.t18z.recentered_increment.atm.i009.nc + ln -s enkfgdas.t18z.ratminc.nc enkfgdas.t18z.recentered_increment.atm.i006.nc cd "${cwd_4848500}" cd "${dir}/analysis/ocean" ln -s enkfgdas.t18z.ocninc.nc enkfgdas.t18z.mom_6increment.i006.nc @@ -126,9 +126,9 @@ for dir in mem*; do ln -s enkfgdas.t18z.atmi003.nc enkfgdas.t18z.increment.atm.i003.nc ln -s enkfgdas.t18z.atmi009.nc enkfgdas.t18z.increment.atm.i009.nc ln -s enkfgdas.t18z.atminc.nc enkfgdas.t18z.increment.atm.i006.nc - ln -s enkfgdas.t18z.ratmi003.nc enkfgdas.t18z.recentered_increment.i003.nc - ln -s enkfgdas.t18z.ratmi009.nc enkfgdas.t18z.recentered_increment.i009.nc - ln -s enkfgdas.t18z.ratminc.nc enkfgdas.t18z.recentered_increment.i006.nc + ln -s enkfgdas.t18z.ratmi003.nc enkfgdas.t18z.recentered_increment.atm.i003.nc + ln -s enkfgdas.t18z.ratmi009.nc enkfgdas.t18z.recentered_increment.atm.i009.nc + ln -s enkfgdas.t18z.ratminc.nc enkfgdas.t18z.recentered_increment.atm.i006.nc cd "${cwd_4848500}" cd "${dir}/analysis/ocean" ln -s enkfgdas.t18z.ocninc.nc enkfgdas.t18z.mom6_increment.i006.nc @@ -210,9 +210,9 @@ for dir in mem*; do ln -s enkfgdas.t06z.atmi003.nc enkfgdas.t06z.increment.atm.i003.nc ln -s enkfgdas.t06z.atmi009.nc enkfgdas.t06z.increment.atm.i009.nc ln -s enkfgdas.t06z.atminc.nc enkfgdas.t06z.increment.atm.i006.nc - ln -s enkfgdas.t06z.ratmi003.nc enkfgdas.t06z.recentered_increment.i003.nc - ln -s enkfgdas.t06z.ratmi009.nc enkfgdas.t06z.recentered_increment.i009.nc - ln -s enkfgdas.t06z.ratminc.nc enkfgdas.t06z.recentered_increment.i006.nc + ln -s enkfgdas.t06z.ratmi003.nc enkfgdas.t06z.recentered_increment.atm.i003.nc + ln -s enkfgdas.t06z.ratmi009.nc enkfgdas.t06z.recentered_increment.atm.i009.nc + ln -s enkfgdas.t06z.ratminc.nc enkfgdas.t06z.recentered_increment.atm.i006.nc ln -s enkfgdas.t06z.sfci003.nc enkfgdas.t06z.increment.sfc.i003.nc ln -s enkfgdas.t06z.sfci006.nc enkfgdas.t06z.increment.sfc.i006.nc ln -s enkfgdas.t06z.sfci009.nc enkfgdas.t06z.increment.sfc.i009.nc @@ -305,9 +305,9 @@ ln -s enkfgdas.t06z.sfci009.nc enkfgdas.t06z.increment.sfc.i009.nc ln -s enkfgdas.t06z.atmi003.nc enkfgdas.t06z.increment.atm.i003.nc ln -s enkfgdas.t06z.atmi009.nc enkfgdas.t06z.increment.atm.i009.nc ln -s enkfgdas.t06z.atminc.nc enkfgdas.t06z.increment.atm.i006.nc -ln -s enkfgdas.t06z.ratmi003.nc enkfgdas.t06z.recentered_increment.i003.nc -ln -s enkfgdas.t06z.ratmi009.nc enkfgdas.t06z.recentered_increment.i009.nc -ln -s enkfgdas.t06z.ratminc.nc enkfgdas.t06z.recentered_increment.i006.nc +ln -s enkfgdas.t06z.ratmi003.nc enkfgdas.t06z.recentered_increment.atm.i003.nc +ln -s enkfgdas.t06z.ratmi009.nc enkfgdas.t06z.recentered_increment.atm.i009.nc +ln -s enkfgdas.t06z.ratminc.nc enkfgdas.t06z.recentered_increment.atm.i006.nc ln -s enkfgdas.t06z.sfci003.nc enkfgdas.t06z.increment.sfc.i003.nc ln -s enkfgdas.t06z.sfci006.nc enkfgdas.t06z.increment.sfc.i006.nc ln -s enkfgdas.t06z.sfci009.nc enkfgdas.t06z.increment.sfc.i009.nc @@ -377,9 +377,9 @@ for dir in mem*; do ln -s enkfgdas.t06z.atmi003.nc enkfgdas.t06z.increment.atm.i003.nc ln -s enkfgdas.t06z.atmi009.nc enkfgdas.t06z.increment.atm.i009.nc ln -s enkfgdas.t06z.atminc.nc enkfgdas.t06z.increment.atm.i006.nc - ln -s enkfgdas.t06z.ratmi003.nc enkfgdas.t06z.recentered_increment.i003.nc - ln -s enkfgdas.t06z.ratmi009.nc enkfgdas.t06z.recentered_increment.i009.nc - ln -s enkfgdas.t06z.ratminc.nc enkfgdas.t06z.recentered_increment.i006.nc + ln -s enkfgdas.t06z.ratmi003.nc enkfgdas.t06z.recentered_increment.atm.i003.nc + ln -s enkfgdas.t06z.ratmi009.nc enkfgdas.t06z.recentered_increment.atm.i009.nc + ln -s enkfgdas.t06z.ratminc.nc enkfgdas.t06z.recentered_increment.atm.i006.nc for tile in {1..6}; do ln -s "sfc_inc.tile${tile}.nc" "enkfgdas.t06z.increment.sfc.i006.tile${tile}.nc" done From 881c77bbdaab0d6e1451830f6b7c72940800615f Mon Sep 17 00:00:00 2001 From: DavidHuber-NOAA Date: Thu, 6 Nov 2025 17:06:14 +0000 Subject: [PATCH 10/33] Rename analysis...i to analysis...a --- dev/ush/make_ee2_links.sh | 30 +++++++++++++++--------------- 1 file changed, 15 insertions(+), 15 deletions(-) diff --git a/dev/ush/make_ee2_links.sh b/dev/ush/make_ee2_links.sh index f8c56fff868..25943bac035 100644 --- a/dev/ush/make_ee2_links.sh +++ b/dev/ush/make_ee2_links.sh @@ -88,9 +88,9 @@ ln -s gdas.t18z.abias gdas.t18z.abias.txt ln -s gdas.t18z.abias_air gdas.t18z.abias_air.txt ln -s gdas.t18z.abias_int gdas.t18z.abias_int.txt ln -s gdas.t18z.abias_pc gdas.t18z.abias_pc.txt -ln -s gdas.t18z.atma003.ensres.nc gdas.t18z.ensres_analysis.atm.i003.nc -ln -s gdas.t18z.atma009.ensres.nc gdas.t18z.ensres_analysis.atm.i009.nc -ln -s gdas.t18z.atmanl.ensres.nc gdas.t18z.ensres_analysis.atm.i006.nc +ln -s gdas.t18z.atma003.ensres.nc gdas.t18z.ensres_analysis.atm.a003.nc +ln -s gdas.t18z.atma009.ensres.nc gdas.t18z.ensres_analysis.atm.a009.nc +ln -s gdas.t18z.atmanl.ensres.nc gdas.t18z.ensres_analysis.atm.a006.nc ln -s gdas.t18z.atmanl.nc gdas.t18z.analysis.atm.a006.nc ln -s gdas.t18z.atmi003.nc gdas.t18z.increment.atm.i003.nc ln -s gdas.t18z.atmi009.nc gdas.t18z.increment.atm.i009.nc @@ -158,9 +158,9 @@ ln -s gdas.t18z.abias gdas.t18z.abias.txt ln -s gdas.t18z.abias_air gdas.t18z.abias_air.txt ln -s gdas.t18z.abias_int gdas.t18z.abias_int.txt ln -s gdas.t18z.abias_pc gdas.t18z.abias_pc.txt -ln -s gdas.t18z.atma003.ensres.nc gdas.t18z.ensres_analysis.atm.i003.nc -ln -s gdas.t18z.atma009.ensres.nc gdas.t18z.ensres_analysis.atm.i009.nc -ln -s gdas.t18z.atmanl.ensres.nc gdas.t18z.ensres_analysis.atm.i006.nc +ln -s gdas.t18z.atma003.ensres.nc gdas.t18z.ensres_analysis.atm.a003.nc +ln -s gdas.t18z.atma009.ensres.nc gdas.t18z.ensres_analysis.atm.a009.nc +ln -s gdas.t18z.atmanl.ensres.nc gdas.t18z.ensres_analysis.atm.a006.nc ln -s gdas.t18z.atmanl.nc gdas.t18z.analysis.atm.a006.nc ln -s gdas.t18z.atmi003.nc gdas.t18z.increment.atm.i003.nc ln -s gdas.t18z.atmi009.nc gdas.t18z.increment.atm.i009.nc @@ -255,9 +255,9 @@ ln -s gdas.t06z.abias gdas.t06z.abias.txt ln -s gdas.t06z.abias_air gdas.t06z.abias_air.txt ln -s gdas.t06z.abias_int gdas.t06z.abias_int.txt ln -s gdas.t06z.abias_pc gdas.t06z.abias_pc.txt -ln -s gdas.t06z.atma003.ensres.nc gdas.t06z.ensres_analysis.atm.i003.nc -ln -s gdas.t06z.atma009.ensres.nc gdas.t06z.ensres_analysis.atm.i009.nc -ln -s gdas.t06z.atmanl.ensres.nc gdas.t06z.ensres_analysis.atm.i006.nc +ln -s gdas.t06z.atma003.ensres.nc gdas.t06z.ensres_analysis.atm.a003.nc +ln -s gdas.t06z.atma009.ensres.nc gdas.t06z.ensres_analysis.atm.a009.nc +ln -s gdas.t06z.atmanl.ensres.nc gdas.t06z.ensres_analysis.atm.a006.nc ln -s gdas.t06z.atmanl.nc gdas.t06z.analysis.atm.a006.nc ln -s gdas.t06z.atmi003.nc gdas.t06z.increment.atm.i003.nc ln -s gdas.t06z.atmi009.nc gdas.t06z.increment.atm.i009.nc @@ -346,9 +346,9 @@ ln -s gdas.t06z.abias gdas.t06z.abias.txt ln -s gdas.t06z.abias_air gdas.t06z.abias_air.txt ln -s gdas.t06z.abias_int gdas.t06z.abias_int.txt ln -s gdas.t06z.abias_pc gdas.t06z.abias_pc.txt -ln -s gdas.t06z.atma003.ensres.nc gdas.t06z.ensres_analysis.atm.i003.nc -ln -s gdas.t06z.atma009.ensres.nc gdas.t06z.ensres_analysis.atm.i009.nc -ln -s gdas.t06z.atmanl.ensres.nc gdas.t06z.ensres_analysis.atm.i006.nc +ln -s gdas.t06z.atma003.ensres.nc gdas.t06z.ensres_analysis.atm.a003.nc +ln -s gdas.t06z.atma009.ensres.nc gdas.t06z.ensres_analysis.atm.a009.nc +ln -s gdas.t06z.atmanl.ensres.nc gdas.t06z.ensres_analysis.atm.a006.nc ln -s gdas.t06z.atmanl.nc gdas.t06z.analysis.atm.a006.nc ln -s gdas.t06z.atmi003.nc gdas.t06z.increment.atm.i003.nc ln -s gdas.t06z.atmi009.nc gdas.t06z.increment.atm.i009.nc @@ -395,9 +395,9 @@ ln -s gdas.t06z.abias_air.orig gdas.t06z.abias_air.orig.txt ln -s gdas.t06z.abias_int gdas.t06z.abias_int.txt ln -s gdas.t06z.abias_pc gdas.t06z.abias_pc.txt ln -s gdas.t06z.abias_pc.orig gdas.t06z.abias_pc.orig.txt -ln -s gdas.t06z.atma003.ensres.nc gdas.t06z.ensres_analysis.atm.i003.nc -ln -s gdas.t06z.atma009.ensres.nc gdas.t06z.ensres_analysis.atm.i009.nc -ln -s gdas.t06z.atmanl.ensres.nc gdas.t06z.ensres_analysis.atm.i006.nc +ln -s gdas.t06z.atma003.ensres.nc gdas.t06z.ensres_analysis.atm.a003.nc +ln -s gdas.t06z.atma009.ensres.nc gdas.t06z.ensres_analysis.atm.a009.nc +ln -s gdas.t06z.atmanl.ensres.nc gdas.t06z.ensres_analysis.atm.a006.nc ln -s gdas.t06z.atmanl.nc gdas.t06z.analysis.atm.a006.nc ln -s gdas.t06z.atmi003.nc gdas.t06z.increment.atm.i003.nc ln -s gdas.t06z.atmi009.nc gdas.t06z.increment.atm.i009.nc From 9d200bf0caa30381263fa35fe89be5646a3a7200 Mon Sep 17 00:00:00 2001 From: DavidHuber-NOAA Date: Thu, 6 Nov 2025 17:28:48 +0000 Subject: [PATCH 11/33] Add debugging, fix a few issues with links --- dev/ush/make_ee2_links.sh | 23 +++++++++++++++++------ 1 file changed, 17 insertions(+), 6 deletions(-) diff --git a/dev/ush/make_ee2_links.sh b/dev/ush/make_ee2_links.sh index 25943bac035..fe64daed9c0 100644 --- a/dev/ush/make_ee2_links.sh +++ b/dev/ush/make_ee2_links.sh @@ -1,6 +1,7 @@ #!/bin/bash +PS4='+ $LINENO: ' -set -eu +set -eux cwd=${PWD} cd C384C192/20240610/gdas.20230401/18/analysis/atmos ln -s gdas.t18z.abias gdas.t18z.abias.txt @@ -121,6 +122,7 @@ done cd "${cwd}" cd C48C48mx500/20250808/enkfgdas.20210324/18 +cwd_4848500=${PWD} for dir in mem*; do cd "${dir}/analysis/atmos" ln -s enkfgdas.t18z.atmi003.nc enkfgdas.t18z.increment.atm.i003.nc @@ -134,6 +136,7 @@ for dir in mem*; do ln -s enkfgdas.t18z.ocninc.nc enkfgdas.t18z.mom6_increment.i006.nc cd "${cwd_4848500}" done +unset cwd_4848500 cd "${cwd}" cd C48C48mx500/20250808/gdas.20210323/12/analysis/ocean @@ -150,6 +153,8 @@ ln -s gdas.t12z.atmi003.nc gdas.t12z.increment.atm.i003.nc ln -s gdas.t12z.atmi009.nc gdas.t12z.increment.atm.i009.nc ln -s gdas.t12z.atminc.nc gdas.t12z.increment.atm.i006.nc ln -s gdas.t12z.radstat gdas.t12z.radstat.tar +cd "${cwd}" +cd C48C48mx500/20250808/gdas.20210324/12/analysis/ocean ln -s gdas.t12z.ocninc.nc gdas.t12z.mom6_increment.i006.nc cd "${cwd}" @@ -184,6 +189,7 @@ for dir in mem*; do ln -s enkfgdas.t12z.ocninc.nc enkfgdas.t12z.mom6_increment.i006.nc cd "${cwd_9648}" done +unset cwd_9648 cd "${cwd}" cd C96C48/20250327/enkfgdas.20211221/06/ensstat/analysis/atmos @@ -217,21 +223,24 @@ for dir in mem*; do ln -s enkfgdas.t06z.sfci006.nc enkfgdas.t06z.increment.sfc.i006.nc ln -s enkfgdas.t06z.sfci009.nc enkfgdas.t06z.increment.sfc.i009.nc for tile in {1..6}; do - ln -s "sfc_inc.tile${tile}.nc" "enkfgdas.t06z.increment.sfc.i006.tile${tile}.nc" + ln -s "sfc_inc.tile${tile}.nc" "enkfgdas.t06z.increment.sfc.i006.tile${tile}.nc" done cd "${cwd_9648}" done +unset cwd_9648 cd "${cwd}" cd C96C48/20250327/enkfgdas.20240223/18 +cwd_9648=${PWD} for dir in mem*; do cd "${dir}/analysis/atmos" for tile in {1..6}; do - ln -s "enkfgdas.t18z.cubed_sphere_grid_atminc.tile${tile}.nc" "enkfgdas.t18z.jedi_increment.atm.i006.tile${tile}.nc" + ln -s "enkfgdas.t18z.cubed_sphere_grid_ratminc.tile${tile}.nc" "enkfgdas.t18z.jedi_recentered_increment.atm.i006.tile${tile}.nc" done - ln -s enkfgdas.t18z.cubed_sphere_grid_ratminc.nc enkfgdas.t18z.recentered_jedi_increment.atm.i006.nc + ln -s enkfgdas.t18z.ratminc.nc enkfgdas.t18z.recentered_increment.atm.i006.nc cd "${cwd_9648}" done +unset cwd_9648 cd "${cwd}" cd C96C48/20250327/gdas.20211220/12/analysis/atmos @@ -240,6 +249,8 @@ ln -s gdas.t12z.abias_air gdas.t12z.abias_air.txt ln -s gdas.t12z.abias_int gdas.t12z.abias_int.txt ln -s gdas.t12z.abias_pc gdas.t12z.abias_pc.txt ln -s gdas.t12z.radstat gdas.t12z.radstat.tar +cd "${cwd}" +cd C96C48/20250327/gdas.20211220/12/analysis/ocean ln -s gdas.t12z.ocninc.nc gdas.t12z.mom6_increment.i006.nc cd "${cwd}" @@ -318,7 +329,7 @@ cd C96C48/20250808/enkfgdas.20220223/18 for dir in mem*; do cd "${dir}/analysis/atmos" for tile in {1..6}; do - ln -s "enkfgdas.t18z.cubed_sphere_grid_atminc.tile${tile}.nc" "enkfgdas.t18z.jedi_increment.atm.i006.tile${tile}.nc" + ln -s "enkfgdas.t18z.cubed_sphere_grid_atminc.tile${tile}.nc" "enkfgdas.t18z.jedi_increment.atm.i006.tile${tile}.nc" done cd "${cwd_9648}" done @@ -381,7 +392,7 @@ for dir in mem*; do ln -s enkfgdas.t06z.ratmi009.nc enkfgdas.t06z.recentered_increment.atm.i009.nc ln -s enkfgdas.t06z.ratminc.nc enkfgdas.t06z.recentered_increment.atm.i006.nc for tile in {1..6}; do - ln -s "sfc_inc.tile${tile}.nc" "enkfgdas.t06z.increment.sfc.i006.tile${tile}.nc" + ln -s "sfc_inc.tile${tile}.nc" "enkfgdas.t06z.increment.sfc.i006.tile${tile}.nc" done cd "${cwd_9648}" done From cea31e0ff9ec12e176ddb3383c30564c2e89c3d7 Mon Sep 17 00:00:00 2001 From: DavidHuber-NOAA Date: Thu, 6 Nov 2025 19:43:26 +0000 Subject: [PATCH 12/33] Fix additional link issues --- dev/ush/make_ee2_links.sh | 73 +++++++++++++++++++++++---------------- 1 file changed, 43 insertions(+), 30 deletions(-) diff --git a/dev/ush/make_ee2_links.sh b/dev/ush/make_ee2_links.sh index fe64daed9c0..4829188be49 100644 --- a/dev/ush/make_ee2_links.sh +++ b/dev/ush/make_ee2_links.sh @@ -279,21 +279,19 @@ ln -s gdas.t06z.loganl.txt gdas.t06z.analysis.done.txt ln -s gdas.t06z.loginc.txt gdas.t06z.increment.done.txt ln -s gdas.t06z.oznstat gdas.t06z.oznstat.tar ln -s gdas.t06z.sfcanl.nc gdas.t06z.analysis.sfc.a006.nc -ln -s sfc_inc.tile1.nc gdas.t06z.increment.sfc.i003.nc -cd "${cwd}" - -cd C96C48/20250327/gdas.20211221/18/analysis/atmos -ln -s gdas.t18z.atminc.nc gdas.t18z.increment.atm.i006.nc -ln -s gdas.t18z.cubed_sphere_grid_atminc.tile1.nc gdas.t18z.jedi_increment.atm.i006.tile1.nc -ln -s gdas.t18z.cubed_sphere_grid_ratminc.tile1.nc gdas.t18z.recentered_jedi_increment.atm.i006.tile1.nc +for tile in {1..6}; do + ln -s "sfc_inc.tile${tile}.nc" "gdas.t06z.increment.sfc.i006.tile${tile}.nc" +done cd "${cwd}" cd C96C48/20250808/enkfgdas.20211220/12 +cwd_9648=${PWD} for dir in mem*; do cd "${dir}/analysis/ocean" ln -s enkfgdas.t12z.ocninc.nc enkfgdas.t12z.mom6_increment.i006.nc cd "${cwd_9648}" done +unset cwd_9648 cd "${cwd}" cd C96C48/20250808/enkfgdas.20220515/06/ensstat/analysis/atmos @@ -313,26 +311,39 @@ ln -s enkfgdas.t06z.radstat.ensmean enkfgdas.t06z.radstat.ensmean.tar ln -s enkfgdas.t06z.sfci003.nc enkfgdas.t06z.increment.sfc.i003.nc ln -s enkfgdas.t06z.sfci006.nc enkfgdas.t06z.increment.sfc.i006.nc ln -s enkfgdas.t06z.sfci009.nc enkfgdas.t06z.increment.sfc.i009.nc -ln -s enkfgdas.t06z.atmi003.nc enkfgdas.t06z.increment.atm.i003.nc -ln -s enkfgdas.t06z.atmi009.nc enkfgdas.t06z.increment.atm.i009.nc -ln -s enkfgdas.t06z.atminc.nc enkfgdas.t06z.increment.atm.i006.nc -ln -s enkfgdas.t06z.ratmi003.nc enkfgdas.t06z.recentered_increment.atm.i003.nc -ln -s enkfgdas.t06z.ratmi009.nc enkfgdas.t06z.recentered_increment.atm.i009.nc -ln -s enkfgdas.t06z.ratminc.nc enkfgdas.t06z.recentered_increment.atm.i006.nc -ln -s enkfgdas.t06z.sfci003.nc enkfgdas.t06z.increment.sfc.i003.nc -ln -s enkfgdas.t06z.sfci006.nc enkfgdas.t06z.increment.sfc.i006.nc -ln -s enkfgdas.t06z.sfci009.nc enkfgdas.t06z.increment.sfc.i009.nc -ln -s sfc_inc.tile1.nc enkfgdas.t06z.increment.sfc.i003.nc cd "${cwd}" -cd C96C48/20250808/enkfgdas.20220223/18 +cd C96C48/20250808/enkfgdas.20220515/06 +cwd_9648=${PWD} +for dir in mem*; do + cd "${dir}/analysis/atmos" + ln -s enkfgdas.t06z.atmi003.nc enkfgdas.t06z.increment.atm.i003.nc + ln -s enkfgdas.t06z.atmi009.nc enkfgdas.t06z.increment.atm.i009.nc + ln -s enkfgdas.t06z.atminc.nc enkfgdas.t06z.increment.atm.i006.nc + ln -s enkfgdas.t06z.ratmi003.nc enkfgdas.t06z.recentered_increment.atm.i003.nc + ln -s enkfgdas.t06z.ratmi009.nc enkfgdas.t06z.recentered_increment.atm.i009.nc + ln -s enkfgdas.t06z.ratminc.nc enkfgdas.t06z.recentered_increment.atm.i006.nc + ln -s enkfgdas.t06z.sfci003.nc enkfgdas.t06z.increment.sfc.i003.nc + ln -s enkfgdas.t06z.sfci006.nc enkfgdas.t06z.increment.sfc.i006.nc + ln -s enkfgdas.t06z.sfci009.nc enkfgdas.t06z.increment.sfc.i009.nc + for tile in {1..6}; do + ln -s "sfc_inc.tile${tile}.nc" "enkfgdas.t06z.increment.sfc.i006.tile${tile}.nc" + done + cd "${cwd_9648}" +done +unset cwd_9648 +cd "${cwd}" + +cd C96C48/20250808/enkfgdas.20240223/18 +cwd_9648=${PWD} for dir in mem*; do cd "${dir}/analysis/atmos" for tile in {1..6}; do - ln -s "enkfgdas.t18z.cubed_sphere_grid_atminc.tile${tile}.nc" "enkfgdas.t18z.jedi_increment.atm.i006.tile${tile}.nc" + ln -s "enkfgdas.t18z.cubed_sphere_grid_ratminc.tile${tile}.nc" "enkfgdas.t18z.jedi_recentered_increment.atm.i006.tile${tile}.nc" done cd "${cwd_9648}" done +unset cwd_9648 cd "${cwd}" cd C96C48/20250808/gdas.20211220/12/analysis/atmos @@ -341,6 +352,9 @@ ln -s gdas.t12z.abias_air gdas.t12z.abias_air.txt ln -s gdas.t12z.abias_int gdas.t12z.abias_int.txt ln -s gdas.t12z.abias_pc gdas.t12z.abias_pc.txt ln -s gdas.t12z.radstat gdas.t12z.radstat.tar +cd "${cwd}" + +cd C96C48/20250808/gdas.20211220/12/analysis/ocean ln -s gdas.t12z.ocninc.nc gdas.t12z.mom6_increment.i006.nc cd "${cwd}" @@ -372,18 +386,17 @@ ln -s gdas.t06z.loginc.txt gdas.t06z.increment.done.txt ln -s gdas.t06z.oznstat gdas.t06z.oznstat.tar ln -s gdas.t06z.radstat gdas.t06z.radstat.tar ln -s gdas.t06z.sfcanl.nc gdas.t06z.analysis.sfc.a006.nc -ln -s sfc_inc.tile1.nc gdas.t06z.increment.sfc.i003.nc -cd "${cwd}" - -cd C96C48/20250808/gdas.20220515/18/analysis/atmos -ln -s gdas.t18z.cubed_sphere_grid_atminc.tile1.nc gdas.t18z.jedi_increment.atm.i006.tile1.nc +for tile in {1..6}; do + ln -s "sfc_inc.tile${tile}.nc" "gdas.t06z.increment.sfc.i006.tile${tile}.nc" +done cd "${cwd}" cd retro_ICs/enkfgdas.20241115/06 +cwd_retro=${PWD} for dir in mem*; do cd "${dir}/analysis/ocean" ln -s enkfgdas.t06z.ocninc.nc enkfgdas.t06z.mom6_increment.i006.nc - cd "${cwd_9648}" + cd "${cwd_retro}" cd "${dir}/analysis/atmos" ln -s enkfgdas.t06z.atmi003.nc enkfgdas.t06z.increment.atm.i003.nc ln -s enkfgdas.t06z.atmi009.nc enkfgdas.t06z.increment.atm.i009.nc @@ -394,18 +407,16 @@ for dir in mem*; do for tile in {1..6}; do ln -s "sfc_inc.tile${tile}.nc" "enkfgdas.t06z.increment.sfc.i006.tile${tile}.nc" done - cd "${cwd_9648}" + cd "${cwd_retro}" done +unset cwd_retro cd "${cwd}" cd retro_ICs/gdas.20241115/06/analysis/atmos ln -s gdas.t06z.abias gdas.t06z.abias.txt -ln -s gdas.t06z.abias.orig gdas.t06z.abias.orig.txt ln -s gdas.t06z.abias_air gdas.t06z.abias_air.txt -ln -s gdas.t06z.abias_air.orig gdas.t06z.abias_air.orig.txt ln -s gdas.t06z.abias_int gdas.t06z.abias_int.txt ln -s gdas.t06z.abias_pc gdas.t06z.abias_pc.txt -ln -s gdas.t06z.abias_pc.orig gdas.t06z.abias_pc.orig.txt ln -s gdas.t06z.atma003.ensres.nc gdas.t06z.ensres_analysis.atm.a003.nc ln -s gdas.t06z.atma009.ensres.nc gdas.t06z.ensres_analysis.atm.a009.nc ln -s gdas.t06z.atmanl.ensres.nc gdas.t06z.ensres_analysis.atm.a006.nc @@ -421,7 +432,9 @@ ln -s gdas.t06z.loginc.txt gdas.t06z.increment.done.txt ln -s gdas.t06z.oznstat gdas.t06z.oznstat.tar ln -s gdas.t06z.radstat gdas.t06z.radstat.tar ln -s gdas.t06z.sfcanl.nc gdas.t06z.analysis.sfc.a006.nc -ln -s sfc_inc.tile1.nc gdas.t06z.increment.sfc.i003.nc +for tile in {1..6}; do + ln -s "sfc_inc.tile${tile}.nc" "gdas.t06z.increment.sfc.i006.tile${tile}.nc" +done cd "${cwd}" cd retro_ICs/gdas.20241115/06/analysis/ocean From bf3f3bad8138fb898f5cf3cdcd0ce62f29289d41 Mon Sep 17 00:00:00 2001 From: DavidHuber-NOAA Date: Thu, 6 Nov 2025 20:13:25 +0000 Subject: [PATCH 13/33] Remove duplicate link --- dev/ush/make_ee2_links.sh | 1 - 1 file changed, 1 deletion(-) diff --git a/dev/ush/make_ee2_links.sh b/dev/ush/make_ee2_links.sh index 4829188be49..10024d9de51 100644 --- a/dev/ush/make_ee2_links.sh +++ b/dev/ush/make_ee2_links.sh @@ -5,7 +5,6 @@ set -eux cwd=${PWD} cd C384C192/20240610/gdas.20230401/18/analysis/atmos ln -s gdas.t18z.abias gdas.t18z.abias.txt -ln -s gdas.t18z.abias gdas.t18z.abias.txt ln -s gdas.t18z.abias_air gdas.t18z.abias_air.txt ln -s gdas.t18z.abias_int gdas.t18z.abias_int.txt ln -s gdas.t18z.abias_pc gdas.t18z.abias_pc.txt From de8adb53297fb3a61e0001a9d9adf87493c26fab Mon Sep 17 00:00:00 2001 From: DavidHuber-NOAA Date: Thu, 6 Nov 2025 20:14:52 +0000 Subject: [PATCH 14/33] Fix pwd->PWD --- dev/ush/make_ee2_links.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/dev/ush/make_ee2_links.sh b/dev/ush/make_ee2_links.sh index 10024d9de51..9b1493d420d 100644 --- a/dev/ush/make_ee2_links.sh +++ b/dev/ush/make_ee2_links.sh @@ -20,7 +20,7 @@ ln -s gdas.t00z.radstat gdas.t00z.radstat.tar cd "${cwd}" cd C48C48mx500/20250327/enkfgdas.20210323/12 -cwd_4848500=${pwd} +cwd_4848500=${PWD} for dir in mem*; do cd "${dir}/analysis/ocean" ln -s gdas.t12z.ocninc.nc gdas.t12z.mom6_increment.i006.nc From 2f19048748198f9c897a8ea17dda81f5aeb29fad Mon Sep 17 00:00:00 2001 From: DavidHuber-NOAA Date: Thu, 6 Nov 2025 21:23:17 +0000 Subject: [PATCH 15/33] Add snow links --- dev/ush/make_ee2_links.sh | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/dev/ush/make_ee2_links.sh b/dev/ush/make_ee2_links.sh index 9b1493d420d..f1d95566dd2 100644 --- a/dev/ush/make_ee2_links.sh +++ b/dev/ush/make_ee2_links.sh @@ -312,6 +312,12 @@ ln -s enkfgdas.t06z.sfci006.nc enkfgdas.t06z.increment.sfc.i006.nc ln -s enkfgdas.t06z.sfci009.nc enkfgdas.t06z.increment.sfc.i009.nc cd "${cwd}" +cd C96C48/20250808/enkfgdas.20220515/06/ensstat/analysis/snow +for tile in {1..6}; do + ln -s "snow_inc.20220515.060000.sfc_data.tile${tile}.nc" "20220515.060000.snow_increment.sfc_data.tile${tile}.nc" +done +cd "${cwd}" + cd C96C48/20250808/enkfgdas.20220515/06 cwd_9648=${PWD} for dir in mem*; do @@ -329,6 +335,12 @@ for dir in mem*; do ln -s "sfc_inc.tile${tile}.nc" "enkfgdas.t06z.increment.sfc.i006.tile${tile}.nc" done cd "${cwd_9648}" + cd "${dir}/analysis/snow" + for tile in {1..6}; do + ln -s "20220515.030000.sfc_data.tile${tile}.nc" "20220515.030000.snow_increment.sfc_data.tile${tile}.nc" + ln -s "20220515.060000.sfc_data.tile${tile}.nc" "20220515.060000.snow_analysis.sfc_data.tile${tile}.nc" + done + cd "${cwd_9648}" done unset cwd_9648 cd "${cwd}" @@ -390,6 +402,12 @@ for tile in {1..6}; do done cd "${cwd}" +cd C96C48/20250808/gdas.20220515/06/analysis/snow +for tile in {1..6}; do + ln -s "snow_inc.20220515.060000.sfc_data.tile${tile}.nc" "20220515.060000.snow_increment.sfc_data.tile${tile}.nc" +done +cd "${cwd}" + cd retro_ICs/enkfgdas.20241115/06 cwd_retro=${PWD} for dir in mem*; do From 848a58c06c2b27727b4f91b9d4e6728dae0dc1c7 Mon Sep 17 00:00:00 2001 From: DavidHuber-NOAA Date: Fri, 7 Nov 2025 13:56:52 +0000 Subject: [PATCH 16/33] Fix some broken links --- dev/ush/make_ee2_links.sh | 22 +++++++++++++++------- 1 file changed, 15 insertions(+), 7 deletions(-) diff --git a/dev/ush/make_ee2_links.sh b/dev/ush/make_ee2_links.sh index f1d95566dd2..c2416e80996 100644 --- a/dev/ush/make_ee2_links.sh +++ b/dev/ush/make_ee2_links.sh @@ -26,6 +26,7 @@ for dir in mem*; do ln -s gdas.t12z.ocninc.nc gdas.t12z.mom6_increment.i006.nc cd "${cwd_4848500}" done +unset cwd_4848500 cd "${cwd}" cd C48C48mx500/20250327/enkfgdas.20210324/12 @@ -40,6 +41,7 @@ for dir in mem*; do ln -s enkfgdas.t12z.ocninc.nc enkfgdas.t12z.mom6_increment.i006.nc cd "${cwd_4848500}" done +unset cwd_4848500 cd "${cwd}" cd C48C48mx500/20250327/enkfgdas.20210324/18 @@ -57,6 +59,7 @@ for dir in mem*; do ln -s enkfgdas.t18z.ocninc.nc enkfgdas.t18z.mom_6increment.i006.nc cd "${cwd_4848500}" done +unset cwd_4848500 cd "${cwd}" cd C48C48mx500/20250327/gdas.20210323/12/analysis/atmos @@ -67,11 +70,11 @@ ln -s gdas.t12z.abias_pc gdas.t12z.abias_pc.txt ln -s gdas.t12z.radstat gdas.t12z.radstat.tar cd "${cwd}" -cd C48C48mx500/20250327/gdas.20210324/12/analysis/ocean +cd C48C48mx500/20250327/gdas.20210323/12/analysis/ocean ln -s gdas.t12z.ocninc.nc gdas.t12z.mom6_increment.i006.nc cd "${cwd}" -cd C48C48mx500/20250327/gdas.20210324/18/analysis/atmos +cd C48C48mx500/20250327/gdas.20210324/12/analysis/atmos ln -s gdas.t12z.abias gdas.t12z.abias.txt ln -s gdas.t12z.abias_air gdas.t12z.abias_air.txt ln -s gdas.t12z.abias_int gdas.t12z.abias_int.txt @@ -80,6 +83,9 @@ ln -s gdas.t12z.atmi003.nc gdas.t12z.increment.atm.i003.nc ln -s gdas.t12z.atmi009.nc gdas.t12z.increment.atm.i009.nc ln -s gdas.t12z.atminc.nc gdas.t12z.increment.atm.i006.nc ln -s gdas.t12z.radstat gdas.t12z.radstat.tar +cd "${cwd}" + +cd C48C48mx500/20250327/gdas.20210324/12/analysis/ocean ln -s gdas.t12z.ocninc.nc gdas.t12z.mom6_increment.i006.nc cd "${cwd}" @@ -108,16 +114,18 @@ ln -s gdas.t18z.ocninc.nc gdas.t18z.mom6_increment.i006.nc cd "${cwd}" cd C48C48mx500/20250808/enkfgdas.20210324/12 +cwd_4848500=${PWD} for dir in mem*; do cd "${dir}/analysis/atmos" - ln -s enkfgdas.t12z.atmi003.nc enkfgdas.t12z.increment.atm.i003.nc - ln -s enkfgdas.t12z.atmi009.nc enkfgdas.t12z.increment.atm.i009.nc - ln -s enkfgdas.t12z.atminc.nc enkfgdas.t12z.increment.atm.i006.nc + ln -s enkfgdas.t12z.ratmi003.nc enkfgdas.t12z.recentered_increment.atm.i003.nc + ln -s enkfgdas.t12z.ratmi009.nc enkfgdas.t12z.recentered_increment.atm.i009.nc + ln -s enkfgdas.t12z.ratminc.nc enkfgdas.t12z.recentered_increment.atm.i006.nc cd "${cwd_4848500}" cd "${dir}/analysis/ocean" ln -s enkfgdas.t12z.ocninc.nc enkfgdas.t12z.mom6_increment.i006.nc cd "${cwd_4848500}" done +unset cwd_4848500 cd "${cwd}" cd C48C48mx500/20250808/enkfgdas.20210324/18 @@ -314,7 +322,7 @@ cd "${cwd}" cd C96C48/20250808/enkfgdas.20220515/06/ensstat/analysis/snow for tile in {1..6}; do - ln -s "snow_inc.20220515.060000.sfc_data.tile${tile}.nc" "20220515.060000.snow_increment.sfc_data.tile${tile}.nc" + ln -s "snowinc.20220515.060000.sfc_data.tile${tile}.nc" "20220515.060000.snow_increment.sfc_data.tile${tile}.nc" done cd "${cwd}" @@ -404,7 +412,7 @@ cd "${cwd}" cd C96C48/20250808/gdas.20220515/06/analysis/snow for tile in {1..6}; do - ln -s "snow_inc.20220515.060000.sfc_data.tile${tile}.nc" "20220515.060000.snow_increment.sfc_data.tile${tile}.nc" + ln -s "snowinc.20220515.060000.sfc_data.tile${tile}.nc" "20220515.060000.snow_increment.sfc_data.tile${tile}.nc" done cd "${cwd}" From c5f739e25b4b11fd6a847bc8fd02d0def9709365 Mon Sep 17 00:00:00 2001 From: DavidHuber-NOAA Date: Fri, 7 Nov 2025 13:57:24 +0000 Subject: [PATCH 17/33] Add missing endfor to analysis.yaml.j2 --- parm/stage/analysis.yaml.j2 | 1 + 1 file changed, 1 insertion(+) diff --git a/parm/stage/analysis.yaml.j2 b/parm/stage/analysis.yaml.j2 index 89c41751403..bc30d67fe0e 100644 --- a/parm/stage/analysis.yaml.j2 +++ b/parm/stage/analysis.yaml.j2 @@ -47,6 +47,7 @@ analysis: {% if DO_LAND_IAU %} {% for itile in range(1,7) %} - ["{{ ICSDIR }}/{{ COMOUT_ATMOS_ANALYSIS_MEM | relpath(ROTDIR) }}/{{ RUN }}.t{{ current_cycle_HH }}z.increment.sfc.i006.tile{{ itile }}.nc", "{{ COMOUT_ATMOS_ANALYSIS_MEM }}"] + {% endfor %} {% endif %} {% endif %} From 6b0482ba9c593d7438f35796ac49aca796c0fab3 Mon Sep 17 00:00:00 2001 From: DavidHuber-NOAA Date: Fri, 7 Nov 2025 14:30:48 +0000 Subject: [PATCH 18/33] Fix sfc tiled increment links --- dev/ush/make_ee2_links.sh | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/dev/ush/make_ee2_links.sh b/dev/ush/make_ee2_links.sh index c2416e80996..98145e5cfd5 100644 --- a/dev/ush/make_ee2_links.sh +++ b/dev/ush/make_ee2_links.sh @@ -230,7 +230,7 @@ for dir in mem*; do ln -s enkfgdas.t06z.sfci006.nc enkfgdas.t06z.increment.sfc.i006.nc ln -s enkfgdas.t06z.sfci009.nc enkfgdas.t06z.increment.sfc.i009.nc for tile in {1..6}; do - ln -s "sfc_inc.tile${tile}.nc" "enkfgdas.t06z.increment.sfc.i006.tile${tile}.nc" + ln -s "sfc_inc.tile${tile}.nc" "increment.sfc.i006.tile${tile}.nc" done cd "${cwd_9648}" done @@ -287,7 +287,7 @@ ln -s gdas.t06z.loginc.txt gdas.t06z.increment.done.txt ln -s gdas.t06z.oznstat gdas.t06z.oznstat.tar ln -s gdas.t06z.sfcanl.nc gdas.t06z.analysis.sfc.a006.nc for tile in {1..6}; do - ln -s "sfc_inc.tile${tile}.nc" "gdas.t06z.increment.sfc.i006.tile${tile}.nc" + ln -s "sfc_inc.tile${tile}.nc" "increment.sfc.i006.tile${tile}.nc" done cd "${cwd}" @@ -340,7 +340,7 @@ for dir in mem*; do ln -s enkfgdas.t06z.sfci006.nc enkfgdas.t06z.increment.sfc.i006.nc ln -s enkfgdas.t06z.sfci009.nc enkfgdas.t06z.increment.sfc.i009.nc for tile in {1..6}; do - ln -s "sfc_inc.tile${tile}.nc" "enkfgdas.t06z.increment.sfc.i006.tile${tile}.nc" + ln -s "sfc_inc.tile${tile}.nc" "increment.sfc.i006.tile${tile}.nc" done cd "${cwd_9648}" cd "${dir}/analysis/snow" @@ -406,7 +406,7 @@ ln -s gdas.t06z.oznstat gdas.t06z.oznstat.tar ln -s gdas.t06z.radstat gdas.t06z.radstat.tar ln -s gdas.t06z.sfcanl.nc gdas.t06z.analysis.sfc.a006.nc for tile in {1..6}; do - ln -s "sfc_inc.tile${tile}.nc" "gdas.t06z.increment.sfc.i006.tile${tile}.nc" + ln -s "sfc_inc.tile${tile}.nc" "increment.sfc.i006.tile${tile}.nc" done cd "${cwd}" @@ -430,7 +430,7 @@ for dir in mem*; do ln -s enkfgdas.t06z.ratmi009.nc enkfgdas.t06z.recentered_increment.atm.i009.nc ln -s enkfgdas.t06z.ratminc.nc enkfgdas.t06z.recentered_increment.atm.i006.nc for tile in {1..6}; do - ln -s "sfc_inc.tile${tile}.nc" "enkfgdas.t06z.increment.sfc.i006.tile${tile}.nc" + ln -s "sfc_inc.tile${tile}.nc" "increment.sfc.i006.tile${tile}.nc" done cd "${cwd_retro}" done @@ -458,7 +458,7 @@ ln -s gdas.t06z.oznstat gdas.t06z.oznstat.tar ln -s gdas.t06z.radstat gdas.t06z.radstat.tar ln -s gdas.t06z.sfcanl.nc gdas.t06z.analysis.sfc.a006.nc for tile in {1..6}; do - ln -s "sfc_inc.tile${tile}.nc" "gdas.t06z.increment.sfc.i006.tile${tile}.nc" + ln -s "sfc_inc.tile${tile}.nc" "increment.sfc.i006.tile${tile}.nc" done cd "${cwd}" From c5094bfdca89aa432057bf70207ec1a9e7974c83 Mon Sep 17 00:00:00 2001 From: DavidHuber-NOAA Date: Fri, 7 Nov 2025 14:33:24 +0000 Subject: [PATCH 19/33] Reorder 003-009 inc/anl files --- dev/ush/make_ee2_links.sh | 52 +++++++++++++++++++-------------------- 1 file changed, 26 insertions(+), 26 deletions(-) diff --git a/dev/ush/make_ee2_links.sh b/dev/ush/make_ee2_links.sh index 98145e5cfd5..ae992b4371e 100644 --- a/dev/ush/make_ee2_links.sh +++ b/dev/ush/make_ee2_links.sh @@ -34,8 +34,8 @@ cwd_4848500=${PWD} for dir in mem*; do cd "${dir}/analysis/atmos" ln -s enkfgdas.t12z.ratmi003.nc enkfgdas.t12z.recentered_increment.atm.i003.nc - ln -s enkfgdas.t12z.ratmi009.nc enkfgdas.t12z.recentered_increment.atm.i009.nc ln -s enkfgdas.t12z.ratminc.nc enkfgdas.t12z.recentered_increment.atm.i006.nc + ln -s enkfgdas.t12z.ratmi009.nc enkfgdas.t12z.recentered_increment.atm.i009.nc cd "${cwd_4848500}" cd "${dir}/analysis/ocean" ln -s enkfgdas.t12z.ocninc.nc enkfgdas.t12z.mom6_increment.i006.nc @@ -49,11 +49,11 @@ cwd_4848500=${PWD} for dir in mem*; do cd "${dir}/analysis/atmos" ln -s enkfgdas.t18z.atmi003.nc enkfgdas.t18z.increment.atm.i003.nc - ln -s enkfgdas.t18z.atmi009.nc enkfgdas.t18z.increment.atm.i009.nc ln -s enkfgdas.t18z.atminc.nc enkfgdas.t18z.increment.atm.i006.nc + ln -s enkfgdas.t18z.atmi009.nc enkfgdas.t18z.increment.atm.i009.nc ln -s enkfgdas.t18z.ratmi003.nc enkfgdas.t18z.recentered_increment.atm.i003.nc - ln -s enkfgdas.t18z.ratmi009.nc enkfgdas.t18z.recentered_increment.atm.i009.nc ln -s enkfgdas.t18z.ratminc.nc enkfgdas.t18z.recentered_increment.atm.i006.nc + ln -s enkfgdas.t18z.ratmi009.nc enkfgdas.t18z.recentered_increment.atm.i009.nc cd "${cwd_4848500}" cd "${dir}/analysis/ocean" ln -s enkfgdas.t18z.ocninc.nc enkfgdas.t18z.mom_6increment.i006.nc @@ -80,8 +80,8 @@ ln -s gdas.t12z.abias_air gdas.t12z.abias_air.txt ln -s gdas.t12z.abias_int gdas.t12z.abias_int.txt ln -s gdas.t12z.abias_pc gdas.t12z.abias_pc.txt ln -s gdas.t12z.atmi003.nc gdas.t12z.increment.atm.i003.nc -ln -s gdas.t12z.atmi009.nc gdas.t12z.increment.atm.i009.nc ln -s gdas.t12z.atminc.nc gdas.t12z.increment.atm.i006.nc +ln -s gdas.t12z.atmi009.nc gdas.t12z.increment.atm.i009.nc ln -s gdas.t12z.radstat gdas.t12z.radstat.tar cd "${cwd}" @@ -95,12 +95,12 @@ ln -s gdas.t18z.abias_air gdas.t18z.abias_air.txt ln -s gdas.t18z.abias_int gdas.t18z.abias_int.txt ln -s gdas.t18z.abias_pc gdas.t18z.abias_pc.txt ln -s gdas.t18z.atma003.ensres.nc gdas.t18z.ensres_analysis.atm.a003.nc -ln -s gdas.t18z.atma009.ensres.nc gdas.t18z.ensres_analysis.atm.a009.nc ln -s gdas.t18z.atmanl.ensres.nc gdas.t18z.ensres_analysis.atm.a006.nc +ln -s gdas.t18z.atma009.ensres.nc gdas.t18z.ensres_analysis.atm.a009.nc ln -s gdas.t18z.atmanl.nc gdas.t18z.analysis.atm.a006.nc ln -s gdas.t18z.atmi003.nc gdas.t18z.increment.atm.i003.nc -ln -s gdas.t18z.atmi009.nc gdas.t18z.increment.atm.i009.nc ln -s gdas.t18z.atminc.nc gdas.t18z.increment.atm.i006.nc +ln -s gdas.t18z.atmi009.nc gdas.t18z.increment.atm.i009.nc ln -s gdas.t18z.cnvstat gdas.t18z.cnvstat.tar ln -s gdas.t18z.dtfanl.nc gdas.t18z.analysis.dtf.a006.nc ln -s gdas.t18z.gsistat gdas.t18z.gsistat.txt @@ -118,8 +118,8 @@ cwd_4848500=${PWD} for dir in mem*; do cd "${dir}/analysis/atmos" ln -s enkfgdas.t12z.ratmi003.nc enkfgdas.t12z.recentered_increment.atm.i003.nc - ln -s enkfgdas.t12z.ratmi009.nc enkfgdas.t12z.recentered_increment.atm.i009.nc ln -s enkfgdas.t12z.ratminc.nc enkfgdas.t12z.recentered_increment.atm.i006.nc + ln -s enkfgdas.t12z.ratmi009.nc enkfgdas.t12z.recentered_increment.atm.i009.nc cd "${cwd_4848500}" cd "${dir}/analysis/ocean" ln -s enkfgdas.t12z.ocninc.nc enkfgdas.t12z.mom6_increment.i006.nc @@ -133,11 +133,11 @@ cwd_4848500=${PWD} for dir in mem*; do cd "${dir}/analysis/atmos" ln -s enkfgdas.t18z.atmi003.nc enkfgdas.t18z.increment.atm.i003.nc - ln -s enkfgdas.t18z.atmi009.nc enkfgdas.t18z.increment.atm.i009.nc ln -s enkfgdas.t18z.atminc.nc enkfgdas.t18z.increment.atm.i006.nc + ln -s enkfgdas.t18z.atmi009.nc enkfgdas.t18z.increment.atm.i009.nc ln -s enkfgdas.t18z.ratmi003.nc enkfgdas.t18z.recentered_increment.atm.i003.nc - ln -s enkfgdas.t18z.ratmi009.nc enkfgdas.t18z.recentered_increment.atm.i009.nc ln -s enkfgdas.t18z.ratminc.nc enkfgdas.t18z.recentered_increment.atm.i006.nc + ln -s enkfgdas.t18z.ratmi009.nc enkfgdas.t18z.recentered_increment.atm.i009.nc cd "${cwd_4848500}" cd "${dir}/analysis/ocean" ln -s enkfgdas.t18z.ocninc.nc enkfgdas.t18z.mom6_increment.i006.nc @@ -157,8 +157,8 @@ ln -s gdas.t12z.abias_air gdas.t12z.abias_air.txt ln -s gdas.t12z.abias_int gdas.t12z.abias_int.txt ln -s gdas.t12z.abias_pc gdas.t12z.abias_pc.txt ln -s gdas.t12z.atmi003.nc gdas.t12z.increment.atm.i003.nc -ln -s gdas.t12z.atmi009.nc gdas.t12z.increment.atm.i009.nc ln -s gdas.t12z.atminc.nc gdas.t12z.increment.atm.i006.nc +ln -s gdas.t12z.atmi009.nc gdas.t12z.increment.atm.i009.nc ln -s gdas.t12z.radstat gdas.t12z.radstat.tar cd "${cwd}" cd C48C48mx500/20250808/gdas.20210324/12/analysis/ocean @@ -171,12 +171,12 @@ ln -s gdas.t18z.abias_air gdas.t18z.abias_air.txt ln -s gdas.t18z.abias_int gdas.t18z.abias_int.txt ln -s gdas.t18z.abias_pc gdas.t18z.abias_pc.txt ln -s gdas.t18z.atma003.ensres.nc gdas.t18z.ensres_analysis.atm.a003.nc -ln -s gdas.t18z.atma009.ensres.nc gdas.t18z.ensres_analysis.atm.a009.nc ln -s gdas.t18z.atmanl.ensres.nc gdas.t18z.ensres_analysis.atm.a006.nc +ln -s gdas.t18z.atma009.ensres.nc gdas.t18z.ensres_analysis.atm.a009.nc ln -s gdas.t18z.atmanl.nc gdas.t18z.analysis.atm.a006.nc ln -s gdas.t18z.atmi003.nc gdas.t18z.increment.atm.i003.nc -ln -s gdas.t18z.atmi009.nc gdas.t18z.increment.atm.i009.nc ln -s gdas.t18z.atminc.nc gdas.t18z.increment.atm.i006.nc +ln -s gdas.t18z.atmi009.nc gdas.t18z.increment.atm.i009.nc ln -s gdas.t18z.cnvstat gdas.t18z.cnvstat.tar ln -s gdas.t18z.dtfanl.nc gdas.t18z.analysis.dtf.a006.nc ln -s gdas.t18z.gsistat gdas.t18z.gsistat.txt @@ -205,8 +205,8 @@ ln -s enkfgdas.t06z.abias_air.ensmean enkfgdas.t06z.abias_air.ensmean.txt ln -s enkfgdas.t06z.abias_int.ensmean enkfgdas.t06z.abias_int.ensmean.txt ln -s enkfgdas.t06z.abias_pc.ensmean enkfgdas.t06z.abias_pc.ensmean.txt ln -s enkfgdas.t06z.atmi003.ensmean.nc enkfgdas.t06z.ensmean_increment.atm.i003.nc -ln -s enkfgdas.t06z.atmi009.ensmean.nc enkfgdas.t06z.ensmean_increment.atm.i009.nc ln -s enkfgdas.t06z.atminc.ensmean.nc enkfgdas.t06z.ensmean_increment.atm.i006.nc +ln -s enkfgdas.t06z.atmi009.ensmean.nc enkfgdas.t06z.ensmean_increment.atm.i009.nc ln -s enkfgdas.t06z.enkfstat enkfgdas.t06z.enkfstat.txt ln -s enkfgdas.t06z.gsistat.ensmean enkfgdas.t06z.gsistat.ensmean.tar ln -s enkfgdas.t06z.loginc.txt enkfgdas.t06z.increment.done.txt @@ -221,11 +221,11 @@ cwd_9648=${PWD} for dir in mem*; do cd "${dir}/analysis/atmos" ln -s enkfgdas.t06z.atmi003.nc enkfgdas.t06z.increment.atm.i003.nc - ln -s enkfgdas.t06z.atmi009.nc enkfgdas.t06z.increment.atm.i009.nc ln -s enkfgdas.t06z.atminc.nc enkfgdas.t06z.increment.atm.i006.nc + ln -s enkfgdas.t06z.atmi009.nc enkfgdas.t06z.increment.atm.i009.nc ln -s enkfgdas.t06z.ratmi003.nc enkfgdas.t06z.recentered_increment.atm.i003.nc - ln -s enkfgdas.t06z.ratmi009.nc enkfgdas.t06z.recentered_increment.atm.i009.nc ln -s enkfgdas.t06z.ratminc.nc enkfgdas.t06z.recentered_increment.atm.i006.nc + ln -s enkfgdas.t06z.ratmi009.nc enkfgdas.t06z.recentered_increment.atm.i009.nc ln -s enkfgdas.t06z.sfci003.nc enkfgdas.t06z.increment.sfc.i003.nc ln -s enkfgdas.t06z.sfci006.nc enkfgdas.t06z.increment.sfc.i006.nc ln -s enkfgdas.t06z.sfci009.nc enkfgdas.t06z.increment.sfc.i009.nc @@ -274,12 +274,12 @@ ln -s gdas.t06z.abias_air gdas.t06z.abias_air.txt ln -s gdas.t06z.abias_int gdas.t06z.abias_int.txt ln -s gdas.t06z.abias_pc gdas.t06z.abias_pc.txt ln -s gdas.t06z.atma003.ensres.nc gdas.t06z.ensres_analysis.atm.a003.nc -ln -s gdas.t06z.atma009.ensres.nc gdas.t06z.ensres_analysis.atm.a009.nc ln -s gdas.t06z.atmanl.ensres.nc gdas.t06z.ensres_analysis.atm.a006.nc +ln -s gdas.t06z.atma009.ensres.nc gdas.t06z.ensres_analysis.atm.a009.nc ln -s gdas.t06z.atmanl.nc gdas.t06z.analysis.atm.a006.nc ln -s gdas.t06z.atmi003.nc gdas.t06z.increment.atm.i003.nc -ln -s gdas.t06z.atmi009.nc gdas.t06z.increment.atm.i009.nc ln -s gdas.t06z.atminc.nc gdas.t06z.increment.atm.i006.nc +ln -s gdas.t06z.atmi009.nc gdas.t06z.increment.atm.i009.nc ln -s gdas.t06z.dtfanl.nc gdas.t06z.analysis.dtf.a006.nc ln -s gdas.t06z.gsistat gdas.t06z.gsistat.txt ln -s gdas.t06z.loganl.txt gdas.t06z.analysis.done.txt @@ -307,8 +307,8 @@ ln -s enkfgdas.t06z.abias_air.ensmean enkfgdas.t06z.abias_air.ensmean.txt ln -s enkfgdas.t06z.abias_int.ensmean enkfgdas.t06z.abias_int.ensmean.txt ln -s enkfgdas.t06z.abias_pc.ensmean enkfgdas.t06z.abias_pc.ensmean.txt ln -s enkfgdas.t06z.atmi003.ensmean.nc enkfgdas.t06z.ensmean_increment.atm.i003.nc -ln -s enkfgdas.t06z.atmi009.ensmean.nc enkfgdas.t06z.ensmean_increment.atm.i009.nc ln -s enkfgdas.t06z.atminc.ensmean.nc enkfgdas.t06z.ensmean_increment.atm.i006.nc +ln -s enkfgdas.t06z.atmi009.ensmean.nc enkfgdas.t06z.ensmean_increment.atm.i009.nc ln -s enkfgdas.t06z.cnvstat.ensmean enkfgdas.t06z.cnvstat.ensmean.tar ln -s enkfgdas.t06z.enkfstat enkfgdas.t06z.enkfstat.txt ln -s enkfgdas.t06z.gsistat.ensmean enkfgdas.t06z.gsistat.ensmean.tar @@ -331,11 +331,11 @@ cwd_9648=${PWD} for dir in mem*; do cd "${dir}/analysis/atmos" ln -s enkfgdas.t06z.atmi003.nc enkfgdas.t06z.increment.atm.i003.nc - ln -s enkfgdas.t06z.atmi009.nc enkfgdas.t06z.increment.atm.i009.nc ln -s enkfgdas.t06z.atminc.nc enkfgdas.t06z.increment.atm.i006.nc + ln -s enkfgdas.t06z.atmi009.nc enkfgdas.t06z.increment.atm.i009.nc ln -s enkfgdas.t06z.ratmi003.nc enkfgdas.t06z.recentered_increment.atm.i003.nc - ln -s enkfgdas.t06z.ratmi009.nc enkfgdas.t06z.recentered_increment.atm.i009.nc ln -s enkfgdas.t06z.ratminc.nc enkfgdas.t06z.recentered_increment.atm.i006.nc + ln -s enkfgdas.t06z.ratmi009.nc enkfgdas.t06z.recentered_increment.atm.i009.nc ln -s enkfgdas.t06z.sfci003.nc enkfgdas.t06z.increment.sfc.i003.nc ln -s enkfgdas.t06z.sfci006.nc enkfgdas.t06z.increment.sfc.i006.nc ln -s enkfgdas.t06z.sfci009.nc enkfgdas.t06z.increment.sfc.i009.nc @@ -391,12 +391,12 @@ ln -s gdas.t06z.abias_air gdas.t06z.abias_air.txt ln -s gdas.t06z.abias_int gdas.t06z.abias_int.txt ln -s gdas.t06z.abias_pc gdas.t06z.abias_pc.txt ln -s gdas.t06z.atma003.ensres.nc gdas.t06z.ensres_analysis.atm.a003.nc -ln -s gdas.t06z.atma009.ensres.nc gdas.t06z.ensres_analysis.atm.a009.nc ln -s gdas.t06z.atmanl.ensres.nc gdas.t06z.ensres_analysis.atm.a006.nc +ln -s gdas.t06z.atma009.ensres.nc gdas.t06z.ensres_analysis.atm.a009.nc ln -s gdas.t06z.atmanl.nc gdas.t06z.analysis.atm.a006.nc ln -s gdas.t06z.atmi003.nc gdas.t06z.increment.atm.i003.nc -ln -s gdas.t06z.atmi009.nc gdas.t06z.increment.atm.i009.nc ln -s gdas.t06z.atminc.nc gdas.t06z.increment.atm.i006.nc +ln -s gdas.t06z.atmi009.nc gdas.t06z.increment.atm.i009.nc ln -s gdas.t06z.cnvstat gdas.t06z.cnvstat.tar ln -s gdas.t06z.dtfanl.nc gdas.t06z.analysis.dtf.a006.nc ln -s gdas.t06z.gsistat gdas.t06z.gsistat.txt @@ -424,11 +424,11 @@ for dir in mem*; do cd "${cwd_retro}" cd "${dir}/analysis/atmos" ln -s enkfgdas.t06z.atmi003.nc enkfgdas.t06z.increment.atm.i003.nc - ln -s enkfgdas.t06z.atmi009.nc enkfgdas.t06z.increment.atm.i009.nc ln -s enkfgdas.t06z.atminc.nc enkfgdas.t06z.increment.atm.i006.nc + ln -s enkfgdas.t06z.atmi009.nc enkfgdas.t06z.increment.atm.i009.nc ln -s enkfgdas.t06z.ratmi003.nc enkfgdas.t06z.recentered_increment.atm.i003.nc - ln -s enkfgdas.t06z.ratmi009.nc enkfgdas.t06z.recentered_increment.atm.i009.nc ln -s enkfgdas.t06z.ratminc.nc enkfgdas.t06z.recentered_increment.atm.i006.nc + ln -s enkfgdas.t06z.ratmi009.nc enkfgdas.t06z.recentered_increment.atm.i009.nc for tile in {1..6}; do ln -s "sfc_inc.tile${tile}.nc" "increment.sfc.i006.tile${tile}.nc" done @@ -443,12 +443,12 @@ ln -s gdas.t06z.abias_air gdas.t06z.abias_air.txt ln -s gdas.t06z.abias_int gdas.t06z.abias_int.txt ln -s gdas.t06z.abias_pc gdas.t06z.abias_pc.txt ln -s gdas.t06z.atma003.ensres.nc gdas.t06z.ensres_analysis.atm.a003.nc -ln -s gdas.t06z.atma009.ensres.nc gdas.t06z.ensres_analysis.atm.a009.nc ln -s gdas.t06z.atmanl.ensres.nc gdas.t06z.ensres_analysis.atm.a006.nc +ln -s gdas.t06z.atma009.ensres.nc gdas.t06z.ensres_analysis.atm.a009.nc ln -s gdas.t06z.atmanl.nc gdas.t06z.analysis.atm.a006.nc ln -s gdas.t06z.atmi003.nc gdas.t06z.increment.atm.i003.nc -ln -s gdas.t06z.atmi009.nc gdas.t06z.increment.atm.i009.nc ln -s gdas.t06z.atminc.nc gdas.t06z.increment.atm.i006.nc +ln -s gdas.t06z.atmi009.nc gdas.t06z.increment.atm.i009.nc ln -s gdas.t06z.cnvstat gdas.t06z.cnvstat.tar ln -s gdas.t06z.dtfanl.nc gdas.t06z.analysis.dtf.a006.nc ln -s gdas.t06z.gsistat gdas.t06z.gsistat.txt From 63825c07923b0124142894c35d5f885635e311c8 Mon Sep 17 00:00:00 2001 From: DavidHuber-NOAA Date: Fri, 7 Nov 2025 17:00:24 +0000 Subject: [PATCH 20/33] Make UFS analysis staging explicit --- parm/stage/analysis.yaml.j2 | 17 ++++++++++++++--- scripts/exglobal_stage_ic.py | 2 +- 2 files changed, 15 insertions(+), 4 deletions(-) diff --git a/parm/stage/analysis.yaml.j2 b/parm/stage/analysis.yaml.j2 index bc30d67fe0e..ad1a642c577 100644 --- a/parm/stage/analysis.yaml.j2 +++ b/parm/stage/analysis.yaml.j2 @@ -14,10 +14,21 @@ analysis: {% if DO_JEDIATMVAR %} {% for itile in range(6) %} - {% for ftype in ["jedi_increment.atm.i006", "jedi_increment.atm.i009", "jedi_increment.atm.i003", "recentered_jedi_increment.atm.i006", "recentered_jedi_increment.atm.i009", "recentered_jedi_increment.atm.i003"] %} - {% if path_exists(ICSDIR ~ "/" ~ COMOUT_ATMOS_ANALYSIS_MEM | relpath(ROTDIR) ~ "/" ~ RUN ~ ".t" ~ current_cycle_HH ~ "z.cubed_sphere_grid_" ~ ftype ~ ".tile" ~ (itile+1) ~ ".nc") %} - - ["{{ ICSDIR }}/{{ COMOUT_ATMOS_ANALYSIS_MEM | relpath(ROTDIR) }}/{{ RUN }}.t{{ current_cycle_HH }}z.cubed_sphere_grid_{{ ftype }}.tile{{ itile+1 }}.nc", "{{ COMOUT_ATMOS_ANALYSIS_MEM }}"] + {% if mem == -1 %} + {% if DOIAU %} + {% set ftypes = ["jedi_increment.atm.i003", "jedi_increment.atm.i006", "jedi_increment.atm.i009" ] %} + {% else %} + {% set ftypes = ["jedi_increment.atm.i006" ] %} + {% endif %} + {% else %} + {% if DOIAU_ENKF %} + {% set ftypes = ["recentered_jedi_increment.atm.i003", "recentered_jedi_increment.atm.i006", "recentered_jedi_increment.atm.i009" ] %} + {% else %} + {% set ftypes = ["recentered_jedi_increment.atm.i006" ] %} + {% endif %} {% endif %} + {% for ftype in ftypes %} + - ["{{ ICSDIR }}/{{ COMOUT_ATMOS_ANALYSIS_MEM | relpath(ROTDIR) }}/{{ RUN }}.t{{ current_cycle_HH }}z.{{ ftype }}.tile{{ itile+1 }}.nc", "{{ COMOUT_ATMOS_ANALYSIS_MEM }}"] {% endfor %} {% endfor %} {% for ftype in ["abias.txt", "abias_air.txt", "abias_int.txt", "abias_pc.txt", "rad_varbc_params.tar"] %} diff --git a/scripts/exglobal_stage_ic.py b/scripts/exglobal_stage_ic.py index e0af18b42fa..88e368a09d0 100755 --- a/scripts/exglobal_stage_ic.py +++ b/scripts/exglobal_stage_ic.py @@ -21,7 +21,7 @@ def main(): keys = ['RUN', 'MODE', 'EXP_WARM_START', 'NMEM_ENS', 'assim_freq', 'current_cycle', 'previous_cycle', 'ROTDIR', 'ICSDIR', 'STAGE_IC_YAML_TMPL', 'DO_JEDIATMVAR', - 'OCNRES', 'waveGRD', 'ntiles', 'DOIAU', + 'OCNRES', 'waveGRD', 'ntiles', 'DOIAU', 'DOIAU_ENKF', 'DO_JEDIOCNVAR', 'DO_STARTMEM_FROM_JEDIICE', 'DO_WAVE', 'DO_OCN', 'DO_ICE', 'DO_NEST', 'DO_CA', 'DO_AERO_ANL', 'USE_ATM_ENS_PERTURB_FILES', 'USE_OCN_ENS_PERTURB_FILES', 'DO_GSISOILDA', 'DO_LAND_IAU'] From 667880de29bef8e8c52f64052a1d7b97eab7e7a9 Mon Sep 17 00:00:00 2001 From: DavidHuber-NOAA Date: Fri, 7 Nov 2025 17:11:08 +0000 Subject: [PATCH 21/33] Correct UFS analysis inputs --- dev/ush/make_ee2_links.sh | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/dev/ush/make_ee2_links.sh b/dev/ush/make_ee2_links.sh index ae992b4371e..6023c56e20f 100644 --- a/dev/ush/make_ee2_links.sh +++ b/dev/ush/make_ee2_links.sh @@ -242,7 +242,7 @@ cwd_9648=${PWD} for dir in mem*; do cd "${dir}/analysis/atmos" for tile in {1..6}; do - ln -s "enkfgdas.t18z.cubed_sphere_grid_ratminc.tile${tile}.nc" "enkfgdas.t18z.jedi_recentered_increment.atm.i006.tile${tile}.nc" + ln -s "enkfgdas.t18z.cubed_sphere_grid_ratminc.tile${tile}.nc" "enkfgdas.t18z.recentered_jedi_increment.atm.i006.tile${tile}.nc" done ln -s enkfgdas.t18z.ratminc.nc enkfgdas.t18z.recentered_increment.atm.i006.nc cd "${cwd_9648}" @@ -291,6 +291,12 @@ for tile in {1..6}; do done cd "${cwd}" +cd C96C48/20250808/gdas.20240223/18/analysis/atmos +for tile in {1..6}; do + ln -s "gdas.t18z.cubed_sphere_grid_atminc.tile${tile}.nc" "gdas.t18z.jedi_increment.atm.i006.tile${tile}.nc" +done +cd "${cwd}" + cd C96C48/20250808/enkfgdas.20211220/12 cwd_9648=${PWD} for dir in mem*; do @@ -358,7 +364,7 @@ cwd_9648=${PWD} for dir in mem*; do cd "${dir}/analysis/atmos" for tile in {1..6}; do - ln -s "enkfgdas.t18z.cubed_sphere_grid_ratminc.tile${tile}.nc" "enkfgdas.t18z.jedi_recentered_increment.atm.i006.tile${tile}.nc" + ln -s "enkfgdas.t18z.cubed_sphere_grid_ratminc.tile${tile}.nc" "enkfgdas.t18z.recentered_jedi_increment.atm.i006.tile${tile}.nc" done cd "${cwd_9648}" done From 002a8f21465589a5cae0051931a8af103eb21886 Mon Sep 17 00:00:00 2001 From: DavidHuber-NOAA Date: Fri, 7 Nov 2025 18:08:39 +0000 Subject: [PATCH 22/33] Fix soil sfc increment link name --- parm/stage/analysis.yaml.j2 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/parm/stage/analysis.yaml.j2 b/parm/stage/analysis.yaml.j2 index ad1a642c577..4ac93c052bc 100644 --- a/parm/stage/analysis.yaml.j2 +++ b/parm/stage/analysis.yaml.j2 @@ -57,7 +57,7 @@ analysis: {% if DO_LAND_IAU %} {% for itile in range(1,7) %} - - ["{{ ICSDIR }}/{{ COMOUT_ATMOS_ANALYSIS_MEM | relpath(ROTDIR) }}/{{ RUN }}.t{{ current_cycle_HH }}z.increment.sfc.i006.tile{{ itile }}.nc", "{{ COMOUT_ATMOS_ANALYSIS_MEM }}"] + - ["{{ ICSDIR }}/{{ COMOUT_ATMOS_ANALYSIS_MEM | relpath(ROTDIR) }}/increment.sfc.i006.tile{{ itile }}.nc", "{{ COMOUT_ATMOS_ANALYSIS_MEM }}"] {% endfor %} {% endif %} {% endif %} From df8cd20b86fd2cfb4b42817834ab723569576194 Mon Sep 17 00:00:00 2001 From: DavidHuber-NOAA Date: Fri, 7 Nov 2025 18:09:04 +0000 Subject: [PATCH 23/33] Only reference DOIAU_ENKF for gfs stge jobs --- scripts/exglobal_stage_ic.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/scripts/exglobal_stage_ic.py b/scripts/exglobal_stage_ic.py index 88e368a09d0..b442cf1b12a 100755 --- a/scripts/exglobal_stage_ic.py +++ b/scripts/exglobal_stage_ic.py @@ -21,11 +21,15 @@ def main(): keys = ['RUN', 'MODE', 'EXP_WARM_START', 'NMEM_ENS', 'assim_freq', 'current_cycle', 'previous_cycle', 'ROTDIR', 'ICSDIR', 'STAGE_IC_YAML_TMPL', 'DO_JEDIATMVAR', - 'OCNRES', 'waveGRD', 'ntiles', 'DOIAU', 'DOIAU_ENKF', + 'OCNRES', 'waveGRD', 'ntiles', 'DOIAU', 'DO_JEDIOCNVAR', 'DO_STARTMEM_FROM_JEDIICE', 'DO_WAVE', 'DO_OCN', 'DO_ICE', 'DO_NEST', 'DO_CA', 'DO_AERO_ANL', 'USE_ATM_ENS_PERTURB_FILES', 'USE_OCN_ENS_PERTURB_FILES', 'DO_GSISOILDA', 'DO_LAND_IAU'] + # Only pull the DOIAU_ENKF key if this is a gfs staging job + if stage.task_config['NET'] == 'gfs': + keys.append('DOIAU_ENKF') + stage_dict = AttrDict() for key in keys: # Make sure OCNRES is three digits From 25e2189e6dd269f82d13811a8aefc619522236d6 Mon Sep 17 00:00:00 2001 From: DavidHuber-NOAA Date: Fri, 7 Nov 2025 21:18:44 +0000 Subject: [PATCH 24/33] Update 'done' data dependencies --- dev/workflow/rocoto/gcafs_tasks.py | 2 +- dev/workflow/rocoto/gfs_tasks.py | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/dev/workflow/rocoto/gcafs_tasks.py b/dev/workflow/rocoto/gcafs_tasks.py index 0d864cf6646..0b13140b06b 100644 --- a/dev/workflow/rocoto/gcafs_tasks.py +++ b/dev/workflow/rocoto/gcafs_tasks.py @@ -763,7 +763,7 @@ def atmanlupp(self): data = f'{atm_anl_path}/{self.run}.t@Hz.analysis.sfc.a006.nc' dep_dict = {'type': 'data', 'data': data, 'age': 120} deps.append(rocoto.add_dependency(dep_dict)) - data = f'{atm_anl_path}/{self.run}.t@Hz.done.txt' + data = f'{atm_anl_path}/{self.run}.t@Hz.analysis.done.txt' dep_dict = {'type': 'data', 'data': data, 'age': 60} deps.append(rocoto.add_dependency(dep_dict)) dependencies = rocoto.create_dependency(dep=deps, dep_condition='and') diff --git a/dev/workflow/rocoto/gfs_tasks.py b/dev/workflow/rocoto/gfs_tasks.py index 6fdff9ee19c..2eb76eea6cc 100644 --- a/dev/workflow/rocoto/gfs_tasks.py +++ b/dev/workflow/rocoto/gfs_tasks.py @@ -1104,7 +1104,7 @@ def atmanlupp(self): data = f'{atm_anl_path}/{self.run}.t@Hz.analysis.sfc.a006.nc' dep_dict = {'type': 'data', 'data': data, 'age': 120} deps.append(rocoto.add_dependency(dep_dict)) - data = f'{atm_anl_path}/{self.run}.t@Hz.done.txt' + data = f'{atm_anl_path}/{self.run}.t@Hz.analysis.done.txt' dep_dict = {'type': 'data', 'data': data, 'age': 60} deps.append(rocoto.add_dependency(dep_dict)) dependencies = rocoto.create_dependency(dep=deps, dep_condition='and') From de7b00ea383f3f812debbfc8f0fd467f3d18ff84 Mon Sep 17 00:00:00 2001 From: David Huber Date: Mon, 10 Nov 2025 10:33:29 -0500 Subject: [PATCH 25/33] Update ice and ocean analysis/increment IC names --- parm/stage/ice.yaml.j2 | 2 +- parm/stage/ocean_rerun.yaml.j2 | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/parm/stage/ice.yaml.j2 b/parm/stage/ice.yaml.j2 index 36fef4d1d8b..56f5e4eea33 100644 --- a/parm/stage/ice.yaml.j2 +++ b/parm/stage/ice.yaml.j2 @@ -17,7 +17,7 @@ ice: {% for mem in range(first_mem, last_mem + 1) %} {% set imem = mem - first_mem %} {% set COMOUT_ICE_ANALYSIS_MEM = COMOUT_ICE_ANALYSIS_MEM_list[imem] %} - - ["{{ ICSDIR }}/{{ COMOUT_ICE_ANALYSIS_MEM | relpath(ROTDIR) }}/{{ m_prefix }}.cice_model_anl.res.nc", "{{ COMOUT_ICE_ANALYSIS_MEM }}/{{ m_prefix }}.analysis.cice_model.res.nc"] + - ["{{ ICSDIR }}/{{ COMOUT_ICE_ANALYSIS_MEM | relpath(ROTDIR) }}/{{ m_prefix }}.analysis.cice_model.res.nc", "{{ COMOUT_ICE_ANALYSIS_MEM }}"] {% endfor %} # mem loop {% else %} mkdir: diff --git a/parm/stage/ocean_rerun.yaml.j2 b/parm/stage/ocean_rerun.yaml.j2 index 3766f9fa476..c64fe82be4c 100644 --- a/parm/stage/ocean_rerun.yaml.j2 +++ b/parm/stage/ocean_rerun.yaml.j2 @@ -9,6 +9,6 @@ ocean_rerun: {% for mem in range(first_mem, last_mem + 1) %} {% set imem = mem - first_mem %} {% set COMOUT_OCEAN_ANALYSIS_MEM = COMOUT_OCEAN_ANALYSIS_MEM_list[imem] %} - - ["{{ ICSDIR }}/{{ COMOUT_OCEAN_ANALYSIS_MEM | relpath(ROTDIR) }}/{{ RUN }}.t{{ current_cycle_HH }}z.ocninc.nc", - "{{ COMOUT_OCEAN_ANALYSIS_MEM }}/{{ RUN }}.t{{ current_cycle_HH }}z.mom6_increment.i006.nc"] + - ["{{ ICSDIR }}/{{ COMOUT_OCEAN_ANALYSIS_MEM | relpath(ROTDIR) }}/{{ RUN }}.t{{ current_cycle_HH }}z.mom6_increment.i006.nc", + "{{ COMOUT_OCEAN_ANALYSIS_MEM }}/"] {% endfor %} # mem loop From 4e0d403ad6c09c59a58f77ca34ad17aa43074584 Mon Sep 17 00:00:00 2001 From: DavidHuber-NOAA Date: Mon, 10 Nov 2025 15:57:51 +0000 Subject: [PATCH 26/33] Add ice analysis links --- dev/ush/make_ee2_links.sh | 44 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) diff --git a/dev/ush/make_ee2_links.sh b/dev/ush/make_ee2_links.sh index 6023c56e20f..7e972d986b5 100644 --- a/dev/ush/make_ee2_links.sh +++ b/dev/ush/make_ee2_links.sh @@ -40,6 +40,10 @@ for dir in mem*; do cd "${dir}/analysis/ocean" ln -s enkfgdas.t12z.ocninc.nc enkfgdas.t12z.mom6_increment.i006.nc cd "${cwd_4848500}" + cd "${dir}/analysis/ice" + ln -s 20210324.090000.cice_model_anl.res.nc 20210324.090000.analysis.cice_model.res.nc + ln -s 20210324.150000.cice_model_anl.res.nc 20210324.150000.analysis.cice_model.res.nc + cd "${cwd_4848500}" done unset cwd_4848500 cd "${cwd}" @@ -89,6 +93,10 @@ cd C48C48mx500/20250327/gdas.20210324/12/analysis/ocean ln -s gdas.t12z.ocninc.nc gdas.t12z.mom6_increment.i006.nc cd "${cwd}" +cd C48C48mx500/20250327/gdas.20210324/12/analysis/ice +ln -s 20210324.090000.cice_model_anl.res.nc 20210324.090000.analysis.cice_model.res.nc +cd "${cwd}" + cd C48C48mx500/20250327/gdas.20210324/18/analysis/atmos ln -s gdas.t18z.abias gdas.t18z.abias.txt ln -s gdas.t18z.abias_air gdas.t18z.abias_air.txt @@ -113,6 +121,10 @@ cd C48C48mx500/20250327/gdas.20210324/18/analysis/ocean ln -s gdas.t18z.ocninc.nc gdas.t18z.mom6_increment.i006.nc cd "${cwd}" +cd C48C48mx500/20250327/gdas.20210324/18/analysis/ice +ln -s 20210324.150000.cice_model_anl.res.nc 20210324.150000.analysis.cice_model.res.nc +cd "${cwd}" + cd C48C48mx500/20250808/enkfgdas.20210324/12 cwd_4848500=${PWD} for dir in mem*; do @@ -124,6 +136,9 @@ for dir in mem*; do cd "${dir}/analysis/ocean" ln -s enkfgdas.t12z.ocninc.nc enkfgdas.t12z.mom6_increment.i006.nc cd "${cwd_4848500}" + cd "${dir}/analysis/ice" + ln -s 20210324.090000.cice_model_anl.res.nc 20210324.090000.analysis.cice_model.res.nc + cd "${cwd_4848500}" done unset cwd_4848500 cd "${cwd}" @@ -142,6 +157,9 @@ for dir in mem*; do cd "${dir}/analysis/ocean" ln -s enkfgdas.t18z.ocninc.nc enkfgdas.t18z.mom6_increment.i006.nc cd "${cwd_4848500}" + cd "${dir}/analysis/ice" + ln -s 20210324.150000.cice_model_anl.res.nc 20210324.150000.analysis.cice_model.res.nc + cd "${cwd_4848500}" done unset cwd_4848500 cd "${cwd}" @@ -164,6 +182,9 @@ cd "${cwd}" cd C48C48mx500/20250808/gdas.20210324/12/analysis/ocean ln -s gdas.t12z.ocninc.nc gdas.t12z.mom6_increment.i006.nc cd "${cwd}" +cd C48C48mx500/20250808/gdas.20210324/12/analysis/ice +ln -s 20210324.090000.cice_model_anl.res.nc 20210324.090000.analysis.cice_model.res.nc +cd "${cwd}" cd C48C48mx500/20250808/gdas.20210324/18/analysis/atmos ln -s gdas.t18z.abias gdas.t18z.abias.txt @@ -189,12 +210,19 @@ cd C48C48mx500/20250808/gdas.20210324/18/analysis/ocean ln -s gdas.t18z.ocninc.nc gdas.t18z.mom6_increment.i006.nc cd "${cwd}" +cd C48C48mx500/20250808/gdas.20210324/18/analysis/ice +ln -s 20210324.150000.cice_model_anl.res.nc 20210324.150000.analysis.cice_model.res.nc +cd "${cwd}" + cd C96C48/20250327/enkfgdas.20211220/12 cwd_9648=${PWD} for dir in mem*; do cd "${dir}/analysis/ocean" ln -s enkfgdas.t12z.ocninc.nc enkfgdas.t12z.mom6_increment.i006.nc cd "${cwd_9648}" + cd "${dir}/analysis/ice" + ln -s 20211220.120000.cice_model_anl.res.nc 20211220.120000.analysis.cice_model.res.nc + cd "${cwd_9648}" done unset cwd_9648 cd "${cwd}" @@ -260,6 +288,9 @@ cd "${cwd}" cd C96C48/20250327/gdas.20211220/12/analysis/ocean ln -s gdas.t12z.ocninc.nc gdas.t12z.mom6_increment.i006.nc cd "${cwd}" +cd C96C48/20250327/gdas.20211220/12/analysis/ice +ln -s 20211220.120000.cice_model_anl.res.nc 20211220.120000.analysis.cice_model.res.nc +cd "${cwd}" cd C96C48/20250327/gdas.20211220/18/analysis/atmos ln -s gdas.t18z.abias gdas.t18z.abias.txt @@ -303,6 +334,9 @@ for dir in mem*; do cd "${dir}/analysis/ocean" ln -s enkfgdas.t12z.ocninc.nc enkfgdas.t12z.mom6_increment.i006.nc cd "${cwd_9648}" + cd "${dir}/analysis/ice" + ln -s 20211220.120000.cice_model_anl.res.nc 20211220.120000.analysis.cice_model.res.nc + cd "${cwd_9648}" done unset cwd_9648 cd "${cwd}" @@ -382,6 +416,9 @@ cd "${cwd}" cd C96C48/20250808/gdas.20211220/12/analysis/ocean ln -s gdas.t12z.ocninc.nc gdas.t12z.mom6_increment.i006.nc cd "${cwd}" +cd C96C48/20250808/gdas.20211220/12/analysis/ice +ln -s 20211220.120000.cice_model_anl.res.nc 20211220.120000.analysis.cice_model.res.nc +cd "${cwd}" cd C96C48/20250808/gdas.20211220/18/analysis/atmos ln -s gdas.t18z.abias gdas.t18z.abias.txt @@ -428,6 +465,9 @@ for dir in mem*; do cd "${dir}/analysis/ocean" ln -s enkfgdas.t06z.ocninc.nc enkfgdas.t06z.mom6_increment.i006.nc cd "${cwd_retro}" + cd "${dir}/analysis/ice" + ln -s 20241115.030000.cice_model_anl.res.nc 20241115.030000.analysis.cice_model.res.nc + cd "${cwd_retro}" cd "${dir}/analysis/atmos" ln -s enkfgdas.t06z.atmi003.nc enkfgdas.t06z.increment.atm.i003.nc ln -s enkfgdas.t06z.atminc.nc enkfgdas.t06z.increment.atm.i006.nc @@ -472,5 +512,9 @@ cd retro_ICs/gdas.20241115/06/analysis/ocean ln -s gdas.t06z.ocninc.nc gdas.t06z.mom6_increment.i006.nc cd "${cwd}" +cd retro_ICs/gdas.20241115/06/analysis/ice +ln -s 20241115.030000.cice_model_anl.res.nc 20241115.030000.analysis.cice_model.res.nc +cd "${cwd}" + echo "Success!!" exit 0 From 0c8e38b5cb3b3458cb0bfbdb87f83c0c7808c323 Mon Sep 17 00:00:00 2001 From: DavidHuber-NOAA Date: Mon, 10 Nov 2025 19:24:21 +0000 Subject: [PATCH 27/33] Archive ice restarts correctly --- parm/archive/enkf_restartb_grp.yaml.j2 | 1 + ush/python/pygfs/task/archive.py | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/parm/archive/enkf_restartb_grp.yaml.j2 b/parm/archive/enkf_restartb_grp.yaml.j2 index 337be34296b..9127671add7 100644 --- a/parm/archive/enkf_restartb_grp.yaml.j2 +++ b/parm/archive/enkf_restartb_grp.yaml.j2 @@ -48,6 +48,7 @@ enkf_restartb_grp: {% set rst_delta = "+3H" | to_timedelta %} {% set rst_time = current_cycle | add_to_datetime(rst_delta) %} - "{{ COMIN_OCEAN_RESTART_MEM | relpath(ROTDIR) }}/{{ cycle_YMD }}.{{ rst_time | strftime("%H") }}0000.MOM.r*.nc" + - "{{ COMIN_ICE_RESTART_MEM | relpath(ROTDIR) }}/{{ cycle_YMD }}.{{ rst_time | strftime("%H") }}0000.cice_model.res.nc" - "{{ COMIN_MED_RESTART_MEM | relpath(ROTDIR) }}/{{ cycle_YMD }}.{{ rst_time | strftime("%H") }}0000.ufs.cpld.cpl.r.nc" {% endif %} {% endfor %} diff --git a/ush/python/pygfs/task/archive.py b/ush/python/pygfs/task/archive.py index 7b77916177c..fdb8d142ba0 100644 --- a/ush/python/pygfs/task/archive.py +++ b/ush/python/pygfs/task/archive.py @@ -707,7 +707,7 @@ def _arch_restart(self, arch_dict: Dict) -> bool: # Restart archiving for gdas RUN if run == "gdas": # TODO: Always archive gdas ocean restarts (for GEFSv13 when project restarts) - if tar_type == "gdasocean_restart" and arch_warm_ics: + if ( tar_type == "gdasocean_restart" or tar_type == "gdasice_restart" ) and arch_warm_ics: return True # Archive warm atmosphere and ice increments if requested From cffd784051fff4c21f9faae325423ac02f3ce5a0 Mon Sep 17 00:00:00 2001 From: DavidHuber-NOAA Date: Mon, 10 Nov 2025 19:26:35 +0000 Subject: [PATCH 28/33] Remove extra whitespace --- ush/python/pygfs/task/archive.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ush/python/pygfs/task/archive.py b/ush/python/pygfs/task/archive.py index fdb8d142ba0..bc89cf6e29d 100644 --- a/ush/python/pygfs/task/archive.py +++ b/ush/python/pygfs/task/archive.py @@ -707,7 +707,7 @@ def _arch_restart(self, arch_dict: Dict) -> bool: # Restart archiving for gdas RUN if run == "gdas": # TODO: Always archive gdas ocean restarts (for GEFSv13 when project restarts) - if ( tar_type == "gdasocean_restart" or tar_type == "gdasice_restart" ) and arch_warm_ics: + if (tar_type == "gdasocean_restart" or tar_type == "gdasice_restart") and arch_warm_ics: return True # Archive warm atmosphere and ice increments if requested From 12c640434aaabbdbda9eb9b4f2c2e9c0eda632e7 Mon Sep 17 00:00:00 2001 From: David Huber Date: Wed, 12 Nov 2025 08:14:20 -0600 Subject: [PATCH 29/33] Remove link script --- dev/ush/make_ee2_links.sh | 520 -------------------------------------- 1 file changed, 520 deletions(-) delete mode 100644 dev/ush/make_ee2_links.sh diff --git a/dev/ush/make_ee2_links.sh b/dev/ush/make_ee2_links.sh deleted file mode 100644 index 7e972d986b5..00000000000 --- a/dev/ush/make_ee2_links.sh +++ /dev/null @@ -1,520 +0,0 @@ -#!/bin/bash -PS4='+ $LINENO: ' - -set -eux -cwd=${PWD} -cd C384C192/20240610/gdas.20230401/18/analysis/atmos -ln -s gdas.t18z.abias gdas.t18z.abias.txt -ln -s gdas.t18z.abias_air gdas.t18z.abias_air.txt -ln -s gdas.t18z.abias_int gdas.t18z.abias_int.txt -ln -s gdas.t18z.abias_pc gdas.t18z.abias_pc.txt -ln -s gdas.t18z.radstat gdas.t18z.radstat.tar -cd "${cwd}" - -cd C384mx025/20241120/gdas.20210701/00/analysis/atmos -ln -s gdas.t00z.abias gdas.t00z.abias.txt -ln -s gdas.t00z.abias_air gdas.t00z.abias_air.txt -ln -s gdas.t00z.abias_int gdas.t00z.abias_int.txt -ln -s gdas.t00z.abias_pc gdas.t00z.abias_pc.txt -ln -s gdas.t00z.radstat gdas.t00z.radstat.tar -cd "${cwd}" - -cd C48C48mx500/20250327/enkfgdas.20210323/12 -cwd_4848500=${PWD} -for dir in mem*; do - cd "${dir}/analysis/ocean" - ln -s gdas.t12z.ocninc.nc gdas.t12z.mom6_increment.i006.nc - cd "${cwd_4848500}" -done -unset cwd_4848500 -cd "${cwd}" - -cd C48C48mx500/20250327/enkfgdas.20210324/12 -cwd_4848500=${PWD} -for dir in mem*; do - cd "${dir}/analysis/atmos" - ln -s enkfgdas.t12z.ratmi003.nc enkfgdas.t12z.recentered_increment.atm.i003.nc - ln -s enkfgdas.t12z.ratminc.nc enkfgdas.t12z.recentered_increment.atm.i006.nc - ln -s enkfgdas.t12z.ratmi009.nc enkfgdas.t12z.recentered_increment.atm.i009.nc - cd "${cwd_4848500}" - cd "${dir}/analysis/ocean" - ln -s enkfgdas.t12z.ocninc.nc enkfgdas.t12z.mom6_increment.i006.nc - cd "${cwd_4848500}" - cd "${dir}/analysis/ice" - ln -s 20210324.090000.cice_model_anl.res.nc 20210324.090000.analysis.cice_model.res.nc - ln -s 20210324.150000.cice_model_anl.res.nc 20210324.150000.analysis.cice_model.res.nc - cd "${cwd_4848500}" -done -unset cwd_4848500 -cd "${cwd}" - -cd C48C48mx500/20250327/enkfgdas.20210324/18 -cwd_4848500=${PWD} -for dir in mem*; do - cd "${dir}/analysis/atmos" - ln -s enkfgdas.t18z.atmi003.nc enkfgdas.t18z.increment.atm.i003.nc - ln -s enkfgdas.t18z.atminc.nc enkfgdas.t18z.increment.atm.i006.nc - ln -s enkfgdas.t18z.atmi009.nc enkfgdas.t18z.increment.atm.i009.nc - ln -s enkfgdas.t18z.ratmi003.nc enkfgdas.t18z.recentered_increment.atm.i003.nc - ln -s enkfgdas.t18z.ratminc.nc enkfgdas.t18z.recentered_increment.atm.i006.nc - ln -s enkfgdas.t18z.ratmi009.nc enkfgdas.t18z.recentered_increment.atm.i009.nc - cd "${cwd_4848500}" - cd "${dir}/analysis/ocean" - ln -s enkfgdas.t18z.ocninc.nc enkfgdas.t18z.mom_6increment.i006.nc - cd "${cwd_4848500}" -done -unset cwd_4848500 -cd "${cwd}" - -cd C48C48mx500/20250327/gdas.20210323/12/analysis/atmos -ln -s gdas.t12z.abias gdas.t12z.abias.txt -ln -s gdas.t12z.abias_air gdas.t12z.abias_air.txt -ln -s gdas.t12z.abias_int gdas.t12z.abias_int.txt -ln -s gdas.t12z.abias_pc gdas.t12z.abias_pc.txt -ln -s gdas.t12z.radstat gdas.t12z.radstat.tar -cd "${cwd}" - -cd C48C48mx500/20250327/gdas.20210323/12/analysis/ocean -ln -s gdas.t12z.ocninc.nc gdas.t12z.mom6_increment.i006.nc -cd "${cwd}" - -cd C48C48mx500/20250327/gdas.20210324/12/analysis/atmos -ln -s gdas.t12z.abias gdas.t12z.abias.txt -ln -s gdas.t12z.abias_air gdas.t12z.abias_air.txt -ln -s gdas.t12z.abias_int gdas.t12z.abias_int.txt -ln -s gdas.t12z.abias_pc gdas.t12z.abias_pc.txt -ln -s gdas.t12z.atmi003.nc gdas.t12z.increment.atm.i003.nc -ln -s gdas.t12z.atminc.nc gdas.t12z.increment.atm.i006.nc -ln -s gdas.t12z.atmi009.nc gdas.t12z.increment.atm.i009.nc -ln -s gdas.t12z.radstat gdas.t12z.radstat.tar -cd "${cwd}" - -cd C48C48mx500/20250327/gdas.20210324/12/analysis/ocean -ln -s gdas.t12z.ocninc.nc gdas.t12z.mom6_increment.i006.nc -cd "${cwd}" - -cd C48C48mx500/20250327/gdas.20210324/12/analysis/ice -ln -s 20210324.090000.cice_model_anl.res.nc 20210324.090000.analysis.cice_model.res.nc -cd "${cwd}" - -cd C48C48mx500/20250327/gdas.20210324/18/analysis/atmos -ln -s gdas.t18z.abias gdas.t18z.abias.txt -ln -s gdas.t18z.abias_air gdas.t18z.abias_air.txt -ln -s gdas.t18z.abias_int gdas.t18z.abias_int.txt -ln -s gdas.t18z.abias_pc gdas.t18z.abias_pc.txt -ln -s gdas.t18z.atma003.ensres.nc gdas.t18z.ensres_analysis.atm.a003.nc -ln -s gdas.t18z.atmanl.ensres.nc gdas.t18z.ensres_analysis.atm.a006.nc -ln -s gdas.t18z.atma009.ensres.nc gdas.t18z.ensres_analysis.atm.a009.nc -ln -s gdas.t18z.atmanl.nc gdas.t18z.analysis.atm.a006.nc -ln -s gdas.t18z.atmi003.nc gdas.t18z.increment.atm.i003.nc -ln -s gdas.t18z.atminc.nc gdas.t18z.increment.atm.i006.nc -ln -s gdas.t18z.atmi009.nc gdas.t18z.increment.atm.i009.nc -ln -s gdas.t18z.cnvstat gdas.t18z.cnvstat.tar -ln -s gdas.t18z.dtfanl.nc gdas.t18z.analysis.dtf.a006.nc -ln -s gdas.t18z.gsistat gdas.t18z.gsistat.txt -ln -s gdas.t18z.oznstat gdas.t18z.oznstat.tar -ln -s gdas.t18z.radstat gdas.t18z.radstat.tar -ln -s gdas.t18z.sfcanl.nc gdas.t18z.analysis.sfc.a006.nc -cd "${cwd}" - -cd C48C48mx500/20250327/gdas.20210324/18/analysis/ocean -ln -s gdas.t18z.ocninc.nc gdas.t18z.mom6_increment.i006.nc -cd "${cwd}" - -cd C48C48mx500/20250327/gdas.20210324/18/analysis/ice -ln -s 20210324.150000.cice_model_anl.res.nc 20210324.150000.analysis.cice_model.res.nc -cd "${cwd}" - -cd C48C48mx500/20250808/enkfgdas.20210324/12 -cwd_4848500=${PWD} -for dir in mem*; do - cd "${dir}/analysis/atmos" - ln -s enkfgdas.t12z.ratmi003.nc enkfgdas.t12z.recentered_increment.atm.i003.nc - ln -s enkfgdas.t12z.ratminc.nc enkfgdas.t12z.recentered_increment.atm.i006.nc - ln -s enkfgdas.t12z.ratmi009.nc enkfgdas.t12z.recentered_increment.atm.i009.nc - cd "${cwd_4848500}" - cd "${dir}/analysis/ocean" - ln -s enkfgdas.t12z.ocninc.nc enkfgdas.t12z.mom6_increment.i006.nc - cd "${cwd_4848500}" - cd "${dir}/analysis/ice" - ln -s 20210324.090000.cice_model_anl.res.nc 20210324.090000.analysis.cice_model.res.nc - cd "${cwd_4848500}" -done -unset cwd_4848500 -cd "${cwd}" - -cd C48C48mx500/20250808/enkfgdas.20210324/18 -cwd_4848500=${PWD} -for dir in mem*; do - cd "${dir}/analysis/atmos" - ln -s enkfgdas.t18z.atmi003.nc enkfgdas.t18z.increment.atm.i003.nc - ln -s enkfgdas.t18z.atminc.nc enkfgdas.t18z.increment.atm.i006.nc - ln -s enkfgdas.t18z.atmi009.nc enkfgdas.t18z.increment.atm.i009.nc - ln -s enkfgdas.t18z.ratmi003.nc enkfgdas.t18z.recentered_increment.atm.i003.nc - ln -s enkfgdas.t18z.ratminc.nc enkfgdas.t18z.recentered_increment.atm.i006.nc - ln -s enkfgdas.t18z.ratmi009.nc enkfgdas.t18z.recentered_increment.atm.i009.nc - cd "${cwd_4848500}" - cd "${dir}/analysis/ocean" - ln -s enkfgdas.t18z.ocninc.nc enkfgdas.t18z.mom6_increment.i006.nc - cd "${cwd_4848500}" - cd "${dir}/analysis/ice" - ln -s 20210324.150000.cice_model_anl.res.nc 20210324.150000.analysis.cice_model.res.nc - cd "${cwd_4848500}" -done -unset cwd_4848500 -cd "${cwd}" - -cd C48C48mx500/20250808/gdas.20210323/12/analysis/ocean -ln -s gdas.t12z.ocninc.nc gdas.t12z.mom6_increment.i006.nc -cd "${cwd}" - -cd C48C48mx500/20250808/gdas.20210324/12/analysis/atmos - -ln -s gdas.t12z.abias gdas.t12z.abias.txt -ln -s gdas.t12z.abias_air gdas.t12z.abias_air.txt -ln -s gdas.t12z.abias_int gdas.t12z.abias_int.txt -ln -s gdas.t12z.abias_pc gdas.t12z.abias_pc.txt -ln -s gdas.t12z.atmi003.nc gdas.t12z.increment.atm.i003.nc -ln -s gdas.t12z.atminc.nc gdas.t12z.increment.atm.i006.nc -ln -s gdas.t12z.atmi009.nc gdas.t12z.increment.atm.i009.nc -ln -s gdas.t12z.radstat gdas.t12z.radstat.tar -cd "${cwd}" -cd C48C48mx500/20250808/gdas.20210324/12/analysis/ocean -ln -s gdas.t12z.ocninc.nc gdas.t12z.mom6_increment.i006.nc -cd "${cwd}" -cd C48C48mx500/20250808/gdas.20210324/12/analysis/ice -ln -s 20210324.090000.cice_model_anl.res.nc 20210324.090000.analysis.cice_model.res.nc -cd "${cwd}" - -cd C48C48mx500/20250808/gdas.20210324/18/analysis/atmos -ln -s gdas.t18z.abias gdas.t18z.abias.txt -ln -s gdas.t18z.abias_air gdas.t18z.abias_air.txt -ln -s gdas.t18z.abias_int gdas.t18z.abias_int.txt -ln -s gdas.t18z.abias_pc gdas.t18z.abias_pc.txt -ln -s gdas.t18z.atma003.ensres.nc gdas.t18z.ensres_analysis.atm.a003.nc -ln -s gdas.t18z.atmanl.ensres.nc gdas.t18z.ensres_analysis.atm.a006.nc -ln -s gdas.t18z.atma009.ensres.nc gdas.t18z.ensres_analysis.atm.a009.nc -ln -s gdas.t18z.atmanl.nc gdas.t18z.analysis.atm.a006.nc -ln -s gdas.t18z.atmi003.nc gdas.t18z.increment.atm.i003.nc -ln -s gdas.t18z.atminc.nc gdas.t18z.increment.atm.i006.nc -ln -s gdas.t18z.atmi009.nc gdas.t18z.increment.atm.i009.nc -ln -s gdas.t18z.cnvstat gdas.t18z.cnvstat.tar -ln -s gdas.t18z.dtfanl.nc gdas.t18z.analysis.dtf.a006.nc -ln -s gdas.t18z.gsistat gdas.t18z.gsistat.txt -ln -s gdas.t18z.oznstat gdas.t18z.oznstat.tar -ln -s gdas.t18z.radstat gdas.t18z.radstat.tar -ln -s gdas.t18z.sfcanl.nc gdas.t18z.analysis.sfc.a006.nc -cd "${cwd}" - -cd C48C48mx500/20250808/gdas.20210324/18/analysis/ocean -ln -s gdas.t18z.ocninc.nc gdas.t18z.mom6_increment.i006.nc -cd "${cwd}" - -cd C48C48mx500/20250808/gdas.20210324/18/analysis/ice -ln -s 20210324.150000.cice_model_anl.res.nc 20210324.150000.analysis.cice_model.res.nc -cd "${cwd}" - -cd C96C48/20250327/enkfgdas.20211220/12 -cwd_9648=${PWD} -for dir in mem*; do - cd "${dir}/analysis/ocean" - ln -s enkfgdas.t12z.ocninc.nc enkfgdas.t12z.mom6_increment.i006.nc - cd "${cwd_9648}" - cd "${dir}/analysis/ice" - ln -s 20211220.120000.cice_model_anl.res.nc 20211220.120000.analysis.cice_model.res.nc - cd "${cwd_9648}" -done -unset cwd_9648 -cd "${cwd}" - -cd C96C48/20250327/enkfgdas.20211221/06/ensstat/analysis/atmos -ln -s enkfgdas.t06z.abias.ensmean enkfgdas.t06z.abias.ensmean.txt -ln -s enkfgdas.t06z.abias_air.ensmean enkfgdas.t06z.abias_air.ensmean.txt -ln -s enkfgdas.t06z.abias_int.ensmean enkfgdas.t06z.abias_int.ensmean.txt -ln -s enkfgdas.t06z.abias_pc.ensmean enkfgdas.t06z.abias_pc.ensmean.txt -ln -s enkfgdas.t06z.atmi003.ensmean.nc enkfgdas.t06z.ensmean_increment.atm.i003.nc -ln -s enkfgdas.t06z.atminc.ensmean.nc enkfgdas.t06z.ensmean_increment.atm.i006.nc -ln -s enkfgdas.t06z.atmi009.ensmean.nc enkfgdas.t06z.ensmean_increment.atm.i009.nc -ln -s enkfgdas.t06z.enkfstat enkfgdas.t06z.enkfstat.txt -ln -s enkfgdas.t06z.gsistat.ensmean enkfgdas.t06z.gsistat.ensmean.tar -ln -s enkfgdas.t06z.loginc.txt enkfgdas.t06z.increment.done.txt -ln -s enkfgdas.t06z.oznstat.ensmean enkfgdas.t06z.oznstat.ensmean.tar -ln -s enkfgdas.t06z.sfci003.nc enkfgdas.t06z.increment.sfc.i003.nc -ln -s enkfgdas.t06z.sfci006.nc enkfgdas.t06z.increment.sfc.i006.nc -ln -s enkfgdas.t06z.sfci009.nc enkfgdas.t06z.increment.sfc.i009.nc -cd "${cwd}" - -cd C96C48/20250327/enkfgdas.20211221/06 -cwd_9648=${PWD} -for dir in mem*; do - cd "${dir}/analysis/atmos" - ln -s enkfgdas.t06z.atmi003.nc enkfgdas.t06z.increment.atm.i003.nc - ln -s enkfgdas.t06z.atminc.nc enkfgdas.t06z.increment.atm.i006.nc - ln -s enkfgdas.t06z.atmi009.nc enkfgdas.t06z.increment.atm.i009.nc - ln -s enkfgdas.t06z.ratmi003.nc enkfgdas.t06z.recentered_increment.atm.i003.nc - ln -s enkfgdas.t06z.ratminc.nc enkfgdas.t06z.recentered_increment.atm.i006.nc - ln -s enkfgdas.t06z.ratmi009.nc enkfgdas.t06z.recentered_increment.atm.i009.nc - ln -s enkfgdas.t06z.sfci003.nc enkfgdas.t06z.increment.sfc.i003.nc - ln -s enkfgdas.t06z.sfci006.nc enkfgdas.t06z.increment.sfc.i006.nc - ln -s enkfgdas.t06z.sfci009.nc enkfgdas.t06z.increment.sfc.i009.nc - for tile in {1..6}; do - ln -s "sfc_inc.tile${tile}.nc" "increment.sfc.i006.tile${tile}.nc" - done - cd "${cwd_9648}" -done -unset cwd_9648 -cd "${cwd}" - -cd C96C48/20250327/enkfgdas.20240223/18 -cwd_9648=${PWD} -for dir in mem*; do - cd "${dir}/analysis/atmos" - for tile in {1..6}; do - ln -s "enkfgdas.t18z.cubed_sphere_grid_ratminc.tile${tile}.nc" "enkfgdas.t18z.recentered_jedi_increment.atm.i006.tile${tile}.nc" - done - ln -s enkfgdas.t18z.ratminc.nc enkfgdas.t18z.recentered_increment.atm.i006.nc - cd "${cwd_9648}" -done -unset cwd_9648 -cd "${cwd}" - -cd C96C48/20250327/gdas.20211220/12/analysis/atmos -ln -s gdas.t12z.abias gdas.t12z.abias.txt -ln -s gdas.t12z.abias_air gdas.t12z.abias_air.txt -ln -s gdas.t12z.abias_int gdas.t12z.abias_int.txt -ln -s gdas.t12z.abias_pc gdas.t12z.abias_pc.txt -ln -s gdas.t12z.radstat gdas.t12z.radstat.tar -cd "${cwd}" -cd C96C48/20250327/gdas.20211220/12/analysis/ocean -ln -s gdas.t12z.ocninc.nc gdas.t12z.mom6_increment.i006.nc -cd "${cwd}" -cd C96C48/20250327/gdas.20211220/12/analysis/ice -ln -s 20211220.120000.cice_model_anl.res.nc 20211220.120000.analysis.cice_model.res.nc -cd "${cwd}" - -cd C96C48/20250327/gdas.20211220/18/analysis/atmos -ln -s gdas.t18z.abias gdas.t18z.abias.txt -ln -s gdas.t18z.abias_air gdas.t18z.abias_air.txt -ln -s gdas.t18z.abias_pc gdas.t18z.abias_pc.txt -ln -s gdas.t18z.radstat gdas.t18z.radstat.tar -cd "${cwd}" - -cd C96C48/20250327/gdas.20211221/06/analysis/atmos -ln -s gdas.t06z.abias gdas.t06z.abias.txt -ln -s gdas.t06z.abias_air gdas.t06z.abias_air.txt -ln -s gdas.t06z.abias_int gdas.t06z.abias_int.txt -ln -s gdas.t06z.abias_pc gdas.t06z.abias_pc.txt -ln -s gdas.t06z.atma003.ensres.nc gdas.t06z.ensres_analysis.atm.a003.nc -ln -s gdas.t06z.atmanl.ensres.nc gdas.t06z.ensres_analysis.atm.a006.nc -ln -s gdas.t06z.atma009.ensres.nc gdas.t06z.ensres_analysis.atm.a009.nc -ln -s gdas.t06z.atmanl.nc gdas.t06z.analysis.atm.a006.nc -ln -s gdas.t06z.atmi003.nc gdas.t06z.increment.atm.i003.nc -ln -s gdas.t06z.atminc.nc gdas.t06z.increment.atm.i006.nc -ln -s gdas.t06z.atmi009.nc gdas.t06z.increment.atm.i009.nc -ln -s gdas.t06z.dtfanl.nc gdas.t06z.analysis.dtf.a006.nc -ln -s gdas.t06z.gsistat gdas.t06z.gsistat.txt -ln -s gdas.t06z.loganl.txt gdas.t06z.analysis.done.txt -ln -s gdas.t06z.loginc.txt gdas.t06z.increment.done.txt -ln -s gdas.t06z.oznstat gdas.t06z.oznstat.tar -ln -s gdas.t06z.sfcanl.nc gdas.t06z.analysis.sfc.a006.nc -for tile in {1..6}; do - ln -s "sfc_inc.tile${tile}.nc" "increment.sfc.i006.tile${tile}.nc" -done -cd "${cwd}" - -cd C96C48/20250808/gdas.20240223/18/analysis/atmos -for tile in {1..6}; do - ln -s "gdas.t18z.cubed_sphere_grid_atminc.tile${tile}.nc" "gdas.t18z.jedi_increment.atm.i006.tile${tile}.nc" -done -cd "${cwd}" - -cd C96C48/20250808/enkfgdas.20211220/12 -cwd_9648=${PWD} -for dir in mem*; do - cd "${dir}/analysis/ocean" - ln -s enkfgdas.t12z.ocninc.nc enkfgdas.t12z.mom6_increment.i006.nc - cd "${cwd_9648}" - cd "${dir}/analysis/ice" - ln -s 20211220.120000.cice_model_anl.res.nc 20211220.120000.analysis.cice_model.res.nc - cd "${cwd_9648}" -done -unset cwd_9648 -cd "${cwd}" - -cd C96C48/20250808/enkfgdas.20220515/06/ensstat/analysis/atmos -ln -s enkfgdas.t06z.abias.ensmean enkfgdas.t06z.abias.ensmean.txt -ln -s enkfgdas.t06z.abias_air.ensmean enkfgdas.t06z.abias_air.ensmean.txt -ln -s enkfgdas.t06z.abias_int.ensmean enkfgdas.t06z.abias_int.ensmean.txt -ln -s enkfgdas.t06z.abias_pc.ensmean enkfgdas.t06z.abias_pc.ensmean.txt -ln -s enkfgdas.t06z.atmi003.ensmean.nc enkfgdas.t06z.ensmean_increment.atm.i003.nc -ln -s enkfgdas.t06z.atminc.ensmean.nc enkfgdas.t06z.ensmean_increment.atm.i006.nc -ln -s enkfgdas.t06z.atmi009.ensmean.nc enkfgdas.t06z.ensmean_increment.atm.i009.nc -ln -s enkfgdas.t06z.cnvstat.ensmean enkfgdas.t06z.cnvstat.ensmean.tar -ln -s enkfgdas.t06z.enkfstat enkfgdas.t06z.enkfstat.txt -ln -s enkfgdas.t06z.gsistat.ensmean enkfgdas.t06z.gsistat.ensmean.tar -ln -s enkfgdas.t06z.loginc.txt enkfgdas.t06z.increment.done.txt -ln -s enkfgdas.t06z.oznstat.ensmean enkfgdas.t06z.oznstat.ensmean.tar -ln -s enkfgdas.t06z.radstat.ensmean enkfgdas.t06z.radstat.ensmean.tar -ln -s enkfgdas.t06z.sfci003.nc enkfgdas.t06z.increment.sfc.i003.nc -ln -s enkfgdas.t06z.sfci006.nc enkfgdas.t06z.increment.sfc.i006.nc -ln -s enkfgdas.t06z.sfci009.nc enkfgdas.t06z.increment.sfc.i009.nc -cd "${cwd}" - -cd C96C48/20250808/enkfgdas.20220515/06/ensstat/analysis/snow -for tile in {1..6}; do - ln -s "snowinc.20220515.060000.sfc_data.tile${tile}.nc" "20220515.060000.snow_increment.sfc_data.tile${tile}.nc" -done -cd "${cwd}" - -cd C96C48/20250808/enkfgdas.20220515/06 -cwd_9648=${PWD} -for dir in mem*; do - cd "${dir}/analysis/atmos" - ln -s enkfgdas.t06z.atmi003.nc enkfgdas.t06z.increment.atm.i003.nc - ln -s enkfgdas.t06z.atminc.nc enkfgdas.t06z.increment.atm.i006.nc - ln -s enkfgdas.t06z.atmi009.nc enkfgdas.t06z.increment.atm.i009.nc - ln -s enkfgdas.t06z.ratmi003.nc enkfgdas.t06z.recentered_increment.atm.i003.nc - ln -s enkfgdas.t06z.ratminc.nc enkfgdas.t06z.recentered_increment.atm.i006.nc - ln -s enkfgdas.t06z.ratmi009.nc enkfgdas.t06z.recentered_increment.atm.i009.nc - ln -s enkfgdas.t06z.sfci003.nc enkfgdas.t06z.increment.sfc.i003.nc - ln -s enkfgdas.t06z.sfci006.nc enkfgdas.t06z.increment.sfc.i006.nc - ln -s enkfgdas.t06z.sfci009.nc enkfgdas.t06z.increment.sfc.i009.nc - for tile in {1..6}; do - ln -s "sfc_inc.tile${tile}.nc" "increment.sfc.i006.tile${tile}.nc" - done - cd "${cwd_9648}" - cd "${dir}/analysis/snow" - for tile in {1..6}; do - ln -s "20220515.030000.sfc_data.tile${tile}.nc" "20220515.030000.snow_increment.sfc_data.tile${tile}.nc" - ln -s "20220515.060000.sfc_data.tile${tile}.nc" "20220515.060000.snow_analysis.sfc_data.tile${tile}.nc" - done - cd "${cwd_9648}" -done -unset cwd_9648 -cd "${cwd}" - -cd C96C48/20250808/enkfgdas.20240223/18 -cwd_9648=${PWD} -for dir in mem*; do - cd "${dir}/analysis/atmos" - for tile in {1..6}; do - ln -s "enkfgdas.t18z.cubed_sphere_grid_ratminc.tile${tile}.nc" "enkfgdas.t18z.recentered_jedi_increment.atm.i006.tile${tile}.nc" - done - cd "${cwd_9648}" -done -unset cwd_9648 -cd "${cwd}" - -cd C96C48/20250808/gdas.20211220/12/analysis/atmos -ln -s gdas.t12z.abias gdas.t12z.abias.txt -ln -s gdas.t12z.abias_air gdas.t12z.abias_air.txt -ln -s gdas.t12z.abias_int gdas.t12z.abias_int.txt -ln -s gdas.t12z.abias_pc gdas.t12z.abias_pc.txt -ln -s gdas.t12z.radstat gdas.t12z.radstat.tar -cd "${cwd}" - -cd C96C48/20250808/gdas.20211220/12/analysis/ocean -ln -s gdas.t12z.ocninc.nc gdas.t12z.mom6_increment.i006.nc -cd "${cwd}" -cd C96C48/20250808/gdas.20211220/12/analysis/ice -ln -s 20211220.120000.cice_model_anl.res.nc 20211220.120000.analysis.cice_model.res.nc -cd "${cwd}" - -cd C96C48/20250808/gdas.20211220/18/analysis/atmos -ln -s gdas.t18z.abias gdas.t18z.abias.txt -ln -s gdas.t18z.abias_air gdas.t18z.abias_air.txt -ln -s gdas.t18z.abias_int gdas.t18z.abias_int.txt -ln -s gdas.t18z.abias_pc gdas.t18z.abias_pc.txt -ln -s gdas.t18z.radstat gdas.t18z.radstat.tar -cd "${cwd}" - -cd C96C48/20250808/gdas.20220515/06/analysis/atmos -ln -s gdas.t06z.abias gdas.t06z.abias.txt -ln -s gdas.t06z.abias_air gdas.t06z.abias_air.txt -ln -s gdas.t06z.abias_int gdas.t06z.abias_int.txt -ln -s gdas.t06z.abias_pc gdas.t06z.abias_pc.txt -ln -s gdas.t06z.atma003.ensres.nc gdas.t06z.ensres_analysis.atm.a003.nc -ln -s gdas.t06z.atmanl.ensres.nc gdas.t06z.ensres_analysis.atm.a006.nc -ln -s gdas.t06z.atma009.ensres.nc gdas.t06z.ensres_analysis.atm.a009.nc -ln -s gdas.t06z.atmanl.nc gdas.t06z.analysis.atm.a006.nc -ln -s gdas.t06z.atmi003.nc gdas.t06z.increment.atm.i003.nc -ln -s gdas.t06z.atminc.nc gdas.t06z.increment.atm.i006.nc -ln -s gdas.t06z.atmi009.nc gdas.t06z.increment.atm.i009.nc -ln -s gdas.t06z.cnvstat gdas.t06z.cnvstat.tar -ln -s gdas.t06z.dtfanl.nc gdas.t06z.analysis.dtf.a006.nc -ln -s gdas.t06z.gsistat gdas.t06z.gsistat.txt -ln -s gdas.t06z.loganl.txt gdas.t06z.analysis.done.txt -ln -s gdas.t06z.loginc.txt gdas.t06z.increment.done.txt -ln -s gdas.t06z.oznstat gdas.t06z.oznstat.tar -ln -s gdas.t06z.radstat gdas.t06z.radstat.tar -ln -s gdas.t06z.sfcanl.nc gdas.t06z.analysis.sfc.a006.nc -for tile in {1..6}; do - ln -s "sfc_inc.tile${tile}.nc" "increment.sfc.i006.tile${tile}.nc" -done -cd "${cwd}" - -cd C96C48/20250808/gdas.20220515/06/analysis/snow -for tile in {1..6}; do - ln -s "snowinc.20220515.060000.sfc_data.tile${tile}.nc" "20220515.060000.snow_increment.sfc_data.tile${tile}.nc" -done -cd "${cwd}" - -cd retro_ICs/enkfgdas.20241115/06 -cwd_retro=${PWD} -for dir in mem*; do - cd "${dir}/analysis/ocean" - ln -s enkfgdas.t06z.ocninc.nc enkfgdas.t06z.mom6_increment.i006.nc - cd "${cwd_retro}" - cd "${dir}/analysis/ice" - ln -s 20241115.030000.cice_model_anl.res.nc 20241115.030000.analysis.cice_model.res.nc - cd "${cwd_retro}" - cd "${dir}/analysis/atmos" - ln -s enkfgdas.t06z.atmi003.nc enkfgdas.t06z.increment.atm.i003.nc - ln -s enkfgdas.t06z.atminc.nc enkfgdas.t06z.increment.atm.i006.nc - ln -s enkfgdas.t06z.atmi009.nc enkfgdas.t06z.increment.atm.i009.nc - ln -s enkfgdas.t06z.ratmi003.nc enkfgdas.t06z.recentered_increment.atm.i003.nc - ln -s enkfgdas.t06z.ratminc.nc enkfgdas.t06z.recentered_increment.atm.i006.nc - ln -s enkfgdas.t06z.ratmi009.nc enkfgdas.t06z.recentered_increment.atm.i009.nc - for tile in {1..6}; do - ln -s "sfc_inc.tile${tile}.nc" "increment.sfc.i006.tile${tile}.nc" - done - cd "${cwd_retro}" -done -unset cwd_retro -cd "${cwd}" - -cd retro_ICs/gdas.20241115/06/analysis/atmos -ln -s gdas.t06z.abias gdas.t06z.abias.txt -ln -s gdas.t06z.abias_air gdas.t06z.abias_air.txt -ln -s gdas.t06z.abias_int gdas.t06z.abias_int.txt -ln -s gdas.t06z.abias_pc gdas.t06z.abias_pc.txt -ln -s gdas.t06z.atma003.ensres.nc gdas.t06z.ensres_analysis.atm.a003.nc -ln -s gdas.t06z.atmanl.ensres.nc gdas.t06z.ensres_analysis.atm.a006.nc -ln -s gdas.t06z.atma009.ensres.nc gdas.t06z.ensres_analysis.atm.a009.nc -ln -s gdas.t06z.atmanl.nc gdas.t06z.analysis.atm.a006.nc -ln -s gdas.t06z.atmi003.nc gdas.t06z.increment.atm.i003.nc -ln -s gdas.t06z.atminc.nc gdas.t06z.increment.atm.i006.nc -ln -s gdas.t06z.atmi009.nc gdas.t06z.increment.atm.i009.nc -ln -s gdas.t06z.cnvstat gdas.t06z.cnvstat.tar -ln -s gdas.t06z.dtfanl.nc gdas.t06z.analysis.dtf.a006.nc -ln -s gdas.t06z.gsistat gdas.t06z.gsistat.txt -ln -s gdas.t06z.loganl.txt gdas.t06z.analysis.done.txt -ln -s gdas.t06z.loginc.txt gdas.t06z.increment.done.txt -ln -s gdas.t06z.oznstat gdas.t06z.oznstat.tar -ln -s gdas.t06z.radstat gdas.t06z.radstat.tar -ln -s gdas.t06z.sfcanl.nc gdas.t06z.analysis.sfc.a006.nc -for tile in {1..6}; do - ln -s "sfc_inc.tile${tile}.nc" "increment.sfc.i006.tile${tile}.nc" -done -cd "${cwd}" - -cd retro_ICs/gdas.20241115/06/analysis/ocean -ln -s gdas.t06z.ocninc.nc gdas.t06z.mom6_increment.i006.nc -cd "${cwd}" - -cd retro_ICs/gdas.20241115/06/analysis/ice -ln -s 20241115.030000.cice_model_anl.res.nc 20241115.030000.analysis.cice_model.res.nc -cd "${cwd}" - -echo "Success!!" -exit 0 From 629f8beb493743290d4e3dc9dbac651a84befb6a Mon Sep 17 00:00:00 2001 From: DavidHuber-NOAA Date: Wed, 12 Nov 2025 21:15:46 +0000 Subject: [PATCH 30/33] Use ice analyses for warm restarts --- dev/parm/config/gfs/config.base.j2 | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/dev/parm/config/gfs/config.base.j2 b/dev/parm/config/gfs/config.base.j2 index e6bfa5ce68f..5c9415db93a 100644 --- a/dev/parm/config/gfs/config.base.j2 +++ b/dev/parm/config/gfs/config.base.j2 @@ -182,7 +182,7 @@ export DO_AERO_ANL="NO" if [[ "${RUN}" == "gfs" ]] ; then export DOBNDPNT_WAVE="YES" # Create point outputs for downstream boundary points else - export DOBNDPNT_WAVE="NO" + export DOBNDPNT_WAVE="NO" fi export FRAC_GRID=".true." @@ -374,7 +374,12 @@ export DO_JEDIATMENS="{{ DO_JEDIATMENS }}" export DO_JEDIOCNVAR="{{ DO_JEDIOCNVAR }}" export DO_JEDISNOWDA="{{ DO_JEDISNOWDA }}" export DO_MERGENSST="{{ DO_MERGENSST }}" -export DO_STARTMEM_FROM_JEDIICE="{{ DO_STARTMEM_FROM_JEDIICE }}" + +if [[ "${EXP_WARM_START}" = ".true." ]]; then + export DO_STARTMEM_FROM_JEDIICE="YES" +else + export DO_STARTMEM_FROM_JEDIICE="{{ DO_STARTMEM_FROM_JEDIICE }}" +fi # Hybrid related export DOHYBVAR="{{ DOHYBVAR }}" From a1a8b83211e1b3563a2754d4b1b6751c7ff3755d Mon Sep 17 00:00:00 2001 From: DavidHuber-NOAA Date: Wed, 12 Nov 2025 21:17:10 +0000 Subject: [PATCH 31/33] Remove cice_model restarts from archive (not used when staging) --- parm/archive/enkf_restartb_grp.yaml.j2 | 1 - 1 file changed, 1 deletion(-) diff --git a/parm/archive/enkf_restartb_grp.yaml.j2 b/parm/archive/enkf_restartb_grp.yaml.j2 index 9127671add7..337be34296b 100644 --- a/parm/archive/enkf_restartb_grp.yaml.j2 +++ b/parm/archive/enkf_restartb_grp.yaml.j2 @@ -48,7 +48,6 @@ enkf_restartb_grp: {% set rst_delta = "+3H" | to_timedelta %} {% set rst_time = current_cycle | add_to_datetime(rst_delta) %} - "{{ COMIN_OCEAN_RESTART_MEM | relpath(ROTDIR) }}/{{ cycle_YMD }}.{{ rst_time | strftime("%H") }}0000.MOM.r*.nc" - - "{{ COMIN_ICE_RESTART_MEM | relpath(ROTDIR) }}/{{ cycle_YMD }}.{{ rst_time | strftime("%H") }}0000.cice_model.res.nc" - "{{ COMIN_MED_RESTART_MEM | relpath(ROTDIR) }}/{{ cycle_YMD }}.{{ rst_time | strftime("%H") }}0000.ufs.cpld.cpl.r.nc" {% endif %} {% endfor %} From 4a7b82ec151b1b00312bfca7f08e26210cd162d2 Mon Sep 17 00:00:00 2001 From: David Huber Date: Thu, 13 Nov 2025 15:54:29 -0500 Subject: [PATCH 32/33] Revert gdasice_restart change --- ush/python/pygfs/task/archive.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ush/python/pygfs/task/archive.py b/ush/python/pygfs/task/archive.py index bc89cf6e29d..d6a60364041 100644 --- a/ush/python/pygfs/task/archive.py +++ b/ush/python/pygfs/task/archive.py @@ -707,7 +707,7 @@ def _arch_restart(self, arch_dict: Dict) -> bool: # Restart archiving for gdas RUN if run == "gdas": # TODO: Always archive gdas ocean restarts (for GEFSv13 when project restarts) - if (tar_type == "gdasocean_restart" or tar_type == "gdasice_restart") and arch_warm_ics: + if (tar_type == "gdasocean_restart") and arch_warm_ics: return True # Archive warm atmosphere and ice increments if requested From 2f3809b4fd06f046b9b2fb42f145c6f9ee57319d Mon Sep 17 00:00:00 2001 From: DavidHuber-NOAA Date: Sat, 15 Nov 2025 15:48:21 +0000 Subject: [PATCH 33/33] Pad cyc with zeros if needed --- ush/python/pygfs/task/fv3_analysis_calc.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ush/python/pygfs/task/fv3_analysis_calc.py b/ush/python/pygfs/task/fv3_analysis_calc.py index 93a8641a9d0..2dca788ce29 100644 --- a/ush/python/pygfs/task/fv3_analysis_calc.py +++ b/ush/python/pygfs/task/fv3_analysis_calc.py @@ -162,7 +162,7 @@ def finalize(self) -> None: # Write analysis log file formatted_date = datetime.now().strftime("%a %b %d %H:%M:%S %Z%Y") - log_file = os.path.join(self.task_config.COMOUT_ATMOS_ANALYSIS, f"{self.task_config.RUN}.t{self.task_config.cyc}z.analysis.done.txt") + log_file = os.path.join(self.task_config.COMOUT_ATMOS_ANALYSIS, f"{self.task_config.RUN}.t{self.task_config.cyc:02d}z.analysis.done.txt") message = f"{self.task_config.rCDUMP} {self.task_config.PDY}{self.task_config.cyc} atmanl and sfcanl done at {formatted_date}" with open(log_file, "w") as file: file.write(f"{message}\n")