Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Include script changes from v16.3 upgrade again #1494

Closed
CatherineThomas-NOAA opened this issue Apr 20, 2023 · 41 comments · Fixed by #1535
Closed

Include script changes from v16.3 upgrade again #1494

CatherineThomas-NOAA opened this issue Apr 20, 2023 · 41 comments · Fixed by #1535
Assignees
Labels
maintenance Regular updates and maintenance work

Comments

@CatherineThomas-NOAA
Copy link
Contributor

Description
The changes in DA scripts for v16.3 were merged into the workflow in PR #1158, but then reverted in PR #1238 due to CRTM issues. The CRTM was updated to 2.4.0 in #1319, which should have fixed the problem. But the scripts were not un-reverted.

The changes to JGDAS_ENKF_FCST and exglobal_atmos_analysis.sh need to be incorporated back into the global-workflow. Because of the missing changes, the GSI is assimilating a lower number of observations in developer parallels.

Acceptance Criteria (Definition of Done)
The global-workflow GSI uses the correct namelist and cloud coefficient files as implemented in v16.3.

@CatherineThomas-NOAA
Copy link
Contributor Author

@emilyhcliu @azadeh-gh @TravisElless-NOAA
For your awareness

@KateFriedman-NOAA KateFriedman-NOAA added the maintenance Regular updates and maintenance work label Apr 21, 2023
@KateFriedman-NOAA KateFriedman-NOAA self-assigned this Apr 21, 2023
@KateFriedman-NOAA
Copy link
Member

@CatherineThomas-NOAA The line in jobs/JGDAS_ENKF_FCST in https://github.com/NOAA-EMC/global-workflow/pull/1158/files has since changed from:
export rCDUMP="gdas"
to
export rCDUMP="enkfgdas"

Is the current "enkfgdas" setting still an issue? Wanted to check. Can you provide some background on why this line should be removed? (For documentation and my own understanding, thanks!)

I have kicked off a C96C48L127 test on Orion with the requested changes:

Orion-login-2[30] /work/noaa/global/kfriedma/git/feature-v16.3_gsi_script_updates$ git diff
diff --git a/jobs/JGDAS_ENKF_FCST b/jobs/JGDAS_ENKF_FCST
index 8a30b9ab..af629de5 100755
--- a/jobs/JGDAS_ENKF_FCST
+++ b/jobs/JGDAS_ENKF_FCST
@@ -10,7 +10,6 @@ source "${HOMEgfs}/ush/jjob_header.sh" -e "efcs" -c "base fcst efcs"
 export CDATE=${CDATE:-${PDY}${cyc}}
 export CDUMP=${CDUMP:-${RUN:-"enkfgdas"}}
 export COMPONENT="atmos"
-export rCDUMP="enkfgdas"

 ##############################################
 # Begin JOB SPECIFIC work
diff --git a/scripts/exglobal_atmos_analysis.sh b/scripts/exglobal_atmos_analysis.sh
index af75d6c7..188c6666 100755
--- a/scripts/exglobal_atmos_analysis.sh
+++ b/scripts/exglobal_atmos_analysis.sh
@@ -55,8 +55,8 @@ lupp=${lupp:-".true."}
 cnvw_option=${cnvw_option:-".false."}

 # Observation usage options
-cao_check=${cao_check:-".false."}
-ta2tb=${ta2tb:-".false."}
+cao_check=${cao_check:-".true."}
+ta2tb=${ta2tb:-".true."}

 # Diagnostic files options
 lobsdiag_forenkf=${lobsdiag_forenkf:-".false."}
@@ -423,9 +423,7 @@ ${NLN} ${RTMFIX}/NPOESS.VISsnow.EmisCoeff.bin  ./crtm_coeffs/NPOESS.VISsnow.Emis
 ${NLN} ${RTMFIX}/NPOESS.VISwater.EmisCoeff.bin ./crtm_coeffs/NPOESS.VISwater.EmisCoeff.bin
 ${NLN} ${RTMFIX}/FASTEM6.MWwater.EmisCoeff.bin ./crtm_coeffs/FASTEM6.MWwater.EmisCoeff.bin
 ${NLN} ${RTMFIX}/AerosolCoeff.bin              ./crtm_coeffs/AerosolCoeff.bin
-${NLN} ${RTMFIX}/CloudCoeff.bin                ./crtm_coeffs/CloudCoeff.bin
-#$NLN $RTMFIX/CloudCoeff.GFDLFV3.-109z-1.bin ./crtm_coeffs/CloudCoeff.bin
-
+${NLN} ${RTMFIX}/CloudCoeff.GFDLFV3.-109z-1.bin ./crtm_coeffs/CloudCoeff.bin

I will point you to the output when it's far enough along, so you can check the GSI is assimilating a sufficient number of observations.

@emilyhcliu
Copy link
Contributor

@CatherineThomas-NOAA The line in jobs/JGDAS_ENKF_FCST in https://github.com/NOAA-EMC/global-workflow/pull/1158/files has since changed from: export rCDUMP="gdas" to export rCDUMP="enkfgdas"

Is the current "enkfgdas" setting still an issue? Wanted to check. Can you provide some background on why this line should be removed? (For documentation and my own understanding, thanks!)

I have kicked off a C96C48L127 test on Orion with the requested changes:

Orion-login-2[30] /work/noaa/global/kfriedma/git/feature-v16.3_gsi_script_updates$ git diff
diff --git a/jobs/JGDAS_ENKF_FCST b/jobs/JGDAS_ENKF_FCST
index 8a30b9ab..af629de5 100755
--- a/jobs/JGDAS_ENKF_FCST
+++ b/jobs/JGDAS_ENKF_FCST
@@ -10,7 +10,6 @@ source "${HOMEgfs}/ush/jjob_header.sh" -e "efcs" -c "base fcst efcs"
 export CDATE=${CDATE:-${PDY}${cyc}}
 export CDUMP=${CDUMP:-${RUN:-"enkfgdas"}}
 export COMPONENT="atmos"
-export rCDUMP="enkfgdas"

 ##############################################
 # Begin JOB SPECIFIC work
diff --git a/scripts/exglobal_atmos_analysis.sh b/scripts/exglobal_atmos_analysis.sh
index af75d6c7..188c6666 100755
--- a/scripts/exglobal_atmos_analysis.sh
+++ b/scripts/exglobal_atmos_analysis.sh
@@ -55,8 +55,8 @@ lupp=${lupp:-".true."}
 cnvw_option=${cnvw_option:-".false."}

 # Observation usage options
-cao_check=${cao_check:-".false."}
-ta2tb=${ta2tb:-".false."}
+cao_check=${cao_check:-".true."}
+ta2tb=${ta2tb:-".true."}

 # Diagnostic files options
 lobsdiag_forenkf=${lobsdiag_forenkf:-".false."}
@@ -423,9 +423,7 @@ ${NLN} ${RTMFIX}/NPOESS.VISsnow.EmisCoeff.bin  ./crtm_coeffs/NPOESS.VISsnow.Emis
 ${NLN} ${RTMFIX}/NPOESS.VISwater.EmisCoeff.bin ./crtm_coeffs/NPOESS.VISwater.EmisCoeff.bin
 ${NLN} ${RTMFIX}/FASTEM6.MWwater.EmisCoeff.bin ./crtm_coeffs/FASTEM6.MWwater.EmisCoeff.bin
 ${NLN} ${RTMFIX}/AerosolCoeff.bin              ./crtm_coeffs/AerosolCoeff.bin
-${NLN} ${RTMFIX}/CloudCoeff.bin                ./crtm_coeffs/CloudCoeff.bin
-#$NLN $RTMFIX/CloudCoeff.GFDLFV3.-109z-1.bin ./crtm_coeffs/CloudCoeff.bin
-
+${NLN} ${RTMFIX}/CloudCoeff.GFDLFV3.-109z-1.bin ./crtm_coeffs/CloudCoeff.bin

I will point you to the output when it's far enough along, so you can check the GSI is assimilating a sufficient number of observations.

@KateFriedman-NOAA @CatherineThomas-NOAA I will check the output as well.

@KateFriedman-NOAA
Copy link
Member

@emilyhcliu @CatherineThomas-NOAA The analysis jobs in the first full cycle of my test have just completed. Please see the following output on Orion, thanks!

clone: /work/noaa/global/kfriedma/git/feature-v16.3_gsi_script_updates
EXPDIR: /work/noaa/global/kfriedma/expdir/gsiv163changes
COMROT: /work/noaa/stmp/kfriedma/comrot/gsiv163changes

Note: I am using the current GSI hash in global-workflow develop (113e307).

@RussTreadon-NOAA
Copy link
Contributor

FYI @KateFriedman-NOAA . The head of GSI develop has jumped ahead two commits from 113e307 to 1661c15. Four GSI PRs are currently working through the review process.

@CatherineThomas-NOAA
Copy link
Contributor Author

@KateFriedman-NOAA
Looking closer, we may not need to include the rCDUMP change after all. From what I can see in PR #1158, removing it broke the early cycle EnKF.

@XianwuXue-NOAA, can you confirm whether the current setting in develop for line 13 of JGDAS_ENKF_FCST is correct and still needed for the early cycle ensemble?

I don't know why it was originally planned to removal in v16.3. @lgannoaa or @emilyhcliu, can you explain why this line (rCDUMP="gdas") was to be removed in the first place?

@emilyhcliu
Copy link
Contributor

@KateFriedman-NOAA @CatherineThomas-NOAA
I checked the output and looked at the statistics for radiance data.
It is not OK. The numbers assimilated are low.
The problem is the following:
The experiment started in 20220118. So, the initial bias correction files are for v16.2 configuration, where we assimilate antenna temperature. In the current operational (v16.3 and above), we are using brightness temperature.

Two things we can do:
(1) re-run the current experiment with zero out bias correction estimation for AMSU-A, ATMS, and MHS.
(2)run the experiment from 20230118 or any dates after v16.3 is operational.

@KateFriedman-NOAA
Copy link
Member

(2) run the experiment from 20230118 or any dates after v16.3 is operational.

I can rerun with newer ICs, just won't be able to get to it until next week. Would it be possible for one of you to provide new low res ICs for a v16.3 date on Orion or Hera? Preferably C96C48L127. That would save me some time...global-workflow CMs are a bit slammed with a few tasks at the moment that are time sensitive.

@emilyhcliu
Copy link
Contributor

(2) run the experiment from 20230118 or any dates after v16.3 is operational.

I can rerun with newer ICs, just won't be able to get to it until next week. Would it be possible for one of you to provide new low res ICs for a v16.3 date on Orion or Hera? Preferably C96C48L127. That would save me some time...global-workflow CMs are a bit slammed with a few tasks at the moment that are time sensitive.

@KateFriedman-NOAA I can do that.
I will prepare the IC for 20230118 with C96C48L127 resolution.

We can use the UFS_UTIL for this, correct?

@KateFriedman-NOAA
Copy link
Member

KateFriedman-NOAA commented Apr 21, 2023

We can use the UFS_UTIL for this, correct?

Yes, should be able to use the gdas_init utility in UFS_UTILS to make those ICs. This section of the global-workflow documentation provides guidance: https://global-workflow.readthedocs.io/en/latest/init.html#manual-generation

Thanks a bunch @emilyhcliu !

@emilyhcliu
Copy link
Contributor

We can use the UFS_UTIL for this, correct?

Yes, should be able to use the gdas_init utility in UFS_UTILS to make those ICs. This section of the global-workflow documentation provides guidance: https://global-workflow.readthedocs.io/en/latest/init.html#manual-generation

Thanks a bunch!

I did this before. I will let you know the location of the ICs on HERA and ORION

@emilyhcliu
Copy link
Contributor

emilyhcliu commented Apr 21, 2023

@KateFriedman-NOAA The initial condition files for C96C48C127 2023010118 are ready.
I ran the UFS utility on HERA to generate the ICs and copy the same set of ICs to ORION.
Since the initial condition files are in netCDF and ASCII format. I think the ICs generated on HERA should work on ORION.
Please let me know if you run into any issues.

You can find the ICs on both HERA and ORION:
HERA: /scratch1/NCEPDEV/stmp4/Emily.Liu/ICs_C96C48C127_2023010118_output
ORION:/work/noaa/da/eliu/ICs_C96C48C127_2023010118_output

Notes:
I ran the latest UFS_UTILS develop to get the ICs.
The enkfgdas directory structure is wrong:

enkfgdas.20230101/18/mem001/atmos

The atmos is inside the mem0XX. This is wrong.

It should be the following:

enkfgdas.20230315/18/atmos/mem001

The copy_coldstart_files.sh under /UFS_UTILS/util/gdas_init need to be modified.

Here is my modification:

else
# SUBDIR=$OUTDIR/enkfgdas.${yy}${mm}${dd}/${hh}/mem${MEMBER}
  SUBDIR=$OUTDIR/enkfgdas.${yy}${mm}${dd}/${hh}/atmos/mem${MEMBER}
  rm -fr $SUBDIR
# SAVEDIR=$SUBDIR/atmos/INPUT
  SAVEDIR=$SUBDIR/INPUT
  copy_data
  touch $SAVEDIR/../enkfgdas.t${hh}z.loginc.txt
fi

Tagging @GeorgeGayno-NOAA for awareness.

@GeorgeGayno-NOAA
Copy link
Contributor

@KateFriedman-NOAA The initial condition files for C96C48C127 2023010118 are ready. I ran the UFS utility on HERA to generate the ICs and copy the same set of ICs to ORION. Since the initial condition files are in netCDF and ASCII format. I think the ICs generated on HERA should work on ORION. Please let me know if you run into any issues.

You can find the ICs on both HERA and ORION: HERA: /scratch1/NCEPDEV/stmp4/Emily.Liu/ICs_C96C48C127_2023010118_output ORION:/work/noaa/da/eliu/ICs_C96C48C127_2023010118_output

Notes: I ran the latest UFS_UTILS develop to get the ICs. The enkfgdas directory structure is wrong:

enkfgdas.20230101/18/mem001/atmos

The atmos is inside the mem0XX. This is wrong.

It should be the following:

enkfgdas.20230315/18/atmos/mem001

The copy_coldstart_files.sh under /UFS_UTILS/util/gdas_init need to be modified.

Here is my modification:

else
# SUBDIR=$OUTDIR/enkfgdas.${yy}${mm}${dd}/${hh}/mem${MEMBER}
  SUBDIR=$OUTDIR/enkfgdas.${yy}${mm}${dd}/${hh}/atmos/mem${MEMBER}
  rm -fr $SUBDIR
# SAVEDIR=$SUBDIR/atmos/INPUT
  SAVEDIR=$SUBDIR/INPUT
  copy_data
  touch $SAVEDIR/../enkfgdas.t${hh}z.loginc.txt
fi

Tagging @GeorgeGayno-NOAA for awareness.

@KateFriedman-NOAA is this a recent change to the directory or was there a bug in UFS_UTILS?

@KateFriedman-NOAA
Copy link
Member

@GeorgeGayno-NOAA @emilyhcliu The /atmos subfolder within the mem### folder is correct. We recently restructured to flip the /atmos subfolder into the mem001 folder ahead of the much larger reorg that is about to go in. I suspect we'll need a UFS_UTILS update to the gdas_init utility to accommodate the full reorg. I will check with @WalterKolczynski-NOAA (who is doing the reorg). See PR #1421 for more details on the reorg changes.

@emilyhcliu Thanks for making these ICs! I have a script that can flip the order of /atmos and mem### subfolders so I'll pull them into my ROTDIR on Orion today and do that ahead of kicking off a test for this issue.

@emilyhcliu
Copy link
Contributor

@GeorgeGayno-NOAA @emilyhcliu The /atmos subfolder within the mem### folder is correct. We recently restructured to flip the /atmos subfolder into the mem001 folder ahead of the much larger reorg that is about to go in. I suspect we'll need a UFS_UTILS update to the gdas_init utility to accommodate the full reorg. I will check with @WalterKolczynski-NOAA (who is doing the reorg). See PR #1421 for more details on the reorg changes.

@emilyhcliu Thanks for making these ICs! I have a script that can flip the order of /atmos and mem### subfolders so I'll pull them into my ROTDIR on Orion today and do that ahead of kicking off a test for this issue.
I
@KateFriedman-NOAA The ICs for your test already reverted back to atms/mem###`.

@KateFriedman-NOAA
Copy link
Member

@emilyhcliu They should be mem###/atmos now.

@KateFriedman-NOAA
Copy link
Member

@emilyhcliu I have copied the ICs you generated to my own space on Orion (for future use too) and flipped the subfolders to match the new mem###/atmos convention. See them here for your knowledge: /work/noaa/stmp/kfriedma/ICs/ICs_C96C48C127_2023010118_output

Will kick off the test for this issue and check on the subfolder conventions for gdas_init to see what updates it may need.

@KateFriedman-NOAA
Copy link
Member

@emilyhcliu @CatherineThomas-NOAA Alrighty...please see this output now using the 2023 ICs:

clone: /work/noaa/global/kfriedma/git/feature-v16.3_gsi_script_updates
EXPDIR: /work/noaa/global/kfriedma/expdir/gsiv163changes
COMROT: /work/noaa/stmp/kfriedma/comrot/gsiv163changes

@emilyhcliu
Copy link
Contributor

I compared the GSI gsiparm.anl at run time: one from v16.3.5.6 parallel (v16.gsiparm) and one from Kate's test run (v17.gsiparm)

diff -b -w v16.gsiparm v17.gsiparm
This is the whole thing. Let's look at them one by one.

7c7
<   gencode=0,deltim=189,
---
>   gencode=0,deltim=900,
12c12
<   use_pbl=.false.,use_compress=.true.,nsig_ext=45.,gpstop=50.,commgpstop=45.,commgpserrinf=1.0,
---
>   use_pbl=.false.,use_compress=.true.,nsig_ext=12,gpstop=50.,commgpstop=45.,commgpserrinf=1.0,
19c19
<   cwoption=3,imp_physics=11,lupp=.true.,cnvw_option=.false.,cao_check=.true.,
---
>   cwoption=3,imp_physics=8,lupp=.true.,cnvw_option=.false.,cao_check=.true.,
25,26c25,26
<   incvars_to_zero= 'liq_wat_inc','icmr_inc','rwmr_inc','snmr_inc','grle_inc',
<   incvars_zero_strat= 'sphum_inc','liq_wat_inc','icmr_inc','rwmr_inc','snmr_inc','grle_inc',
---
>   incvars_to_zero= 'liq_wat_inc','icmr_inc',
>   incvars_zero_strat= 'sphum_inc','liq_wat_inc','icmr_inc',
28c28
<   niter(1)=50,niter(2)=150,niter_no_qc(1)=25,niter_no_qc(2)=0,thin4d=.true.,ens_nstarthr=3,l4densvar=.true.,lwrite4danl=.true.,gpstop=55,nsig_ext=45,
---
>   niter(1)=50,niter(2)=150,niter_no_qc(1)=25,niter_no_qc(2)=0,thin4d=.true.,ens_nstarthr=3,l4densvar=.true.,lwrite4danl=.true.,gpstop=55,nsig_ext=56,
31c31
<   JCAP_B=766,JCAP=382,NLAT=386,NLON=768,nsig=127,
---
>   JCAP_B=190,JCAP=94,NLAT=98,NLON=192,nsig=127,
65c65
<   dmesh(1)=145.0,dmesh(2)=150.0,dmesh(3)=100.0,dmesh(4)=50.0,time_window_max=3.0,
---
>   dmesh(1)=145.0,dmesh(2)=150.0,dmesh(3)=100.0,dmesh(4)=25.0,time_window_max=3.0,
200c200
<   n_ens=80,jcap_ens=382,nlat_ens=386,nlon_ens=768,jcap_ens_test=382,
---
>   n_ens=20,jcap_ens=94,nlat_ens=98,nlon_ens=192,jcap_ens_test=94,
211c211
<   oblat=45.,oblon=180.,obpres=1000.,obdattim=2023031900,
---
>   oblat=45.,oblon=180.,obpres=1000.,obdattim=2023010200,

@XianwuXue-NOAA
Copy link
Contributor

@KateFriedman-NOAA Looking closer, we may not need to include the rCDUMP change after all. From what I can see in PR #1158, removing it broke the early cycle EnKF.

@XianwuXue-NOAA, can you confirm whether the current setting in develop for line 13 of JGDAS_ENKF_FCST is correct and still needed for the early cycle ensemble?

I don't know why it was originally planned to removal in v16.3. @lgannoaa or @emilyhcliu, can you explain why this line (rCDUMP="gdas") was to be removed in the first place?

@CatherineThomas-NOAA I am sorry that I missed it last Friday. I think you mean export rCDUMP="enkfgdas", I think we still need it, because early cycle enkf will get some previous cycle files from the enkfgdas

@emilyhcliu
Copy link
Contributor

emilyhcliu commented Apr 25, 2023

v16.gsiparm (top, my v16.3.6 parallel) vs. v17.gsiparm (bottom, Kate's parallel)

This is OK, since my v16.3.6 parallel is running at C384/C192 and Kate's run is at C96/C48

7c7
<   gencode=0,deltim=189,
---
>   gencode=0,deltim=900,

This is GPSRO-related changes: nsig_ext should be changed from 12 to 45

12c12
<   use_pbl=.false.,use_compress=.true.,nsig_ext=45.,gpstop=50.,commgpstop=45.,commgpserrinf=1.0,
---
>   use_pbl=.false.,use_compress=.true.,nsig_ext=12,gpstop=50.,commgpstop=45.,commgpserrinf=1.0,

This is OK, since we want Thompson (imp_physics=8) in v17

19c19
<   cwoption=3,imp_physics=11,lupp=.true.,cnvw_option=.false.,cao_check=.true.,
---
>   cwoption=3,imp_physics=8,lupp=.true.,cnvw_option=.false.,cao_check=.true.,

We need to change to the top one to include the rwmr_inc, snmr_inc, and grle_inc

25,26c25,26
<   incvars_to_zero= 'liq_wat_inc','icmr_inc','rwmr_inc','snmr_inc','grle_inc',
<   incvars_zero_strat= 'sphum_inc','liq_wat_inc','icmr_inc','rwmr_inc','snmr_inc','grle_inc',
---
>   incvars_to_zero= 'liq_wat_inc','icmr_inc',
>   incvars_zero_strat= 'sphum_inc','liq_wat_inc','icmr_inc',

This change is not done through script. It is done in global-workflow/parm/config.base

This is GPSRO-related changes: nsig_exp should be 45

28c28
<   niter(1)=50,niter(2)=150,niter_no_qc(1)=25,niter_no_qc(2)=0,thin4d=.true.,ens_nstarthr=3,l4densvar=.true.,lwrite4danl=.true.,gpstop=55,nsig_ext=45,
---
>   niter(1)=50,niter(2)=150,niter_no_qc(1)=25,niter_no_qc(2)=0,thin4d=.true.,ens_nstarthr=3,l4densvar=.true.,lwrite4danl=.true.,gpstop=55,nsig_ext=56,

This is OK --- resolution difference between two experiments

<   JCAP_B=766,JCAP=382,NLAT=386,NLON=768,nsig=127,
---
>   JCAP_B=190,JCAP=94,NLAT=98,NLON=192,nsig=127,

This change is related to NSST - dmesh(4) should be 50

65c65
<   dmesh(1)=145.0,dmesh(2)=150.0,dmesh(3)=100.0,dmesh(4)=50.0,time_window_max=3.0,
---
>   dmesh(1)=145.0,dmesh(2)=150.0,dmesh(3)=100.0,dmesh(4)=25.0,time_window_max=3.0,

This is OK, related to resolution and time period differences between the two run.

200c200
<   n_ens=80,jcap_ens=382,nlat_ens=386,nlon_ens=768,jcap_ens_test=382,
---
>   n_ens=20,jcap_ens=94,nlat_ens=98,nlon_ens=192,jcap_ens_test=94,
211c211
<   oblat=45.,oblon=180.,obpres=1000.,obdattim=2023031900,
---
>   oblat=45.,oblon=180.,obpres=1000.,obdattim=2023010200,

@emilyhcliu
Copy link
Contributor

Also, MetOp-C AMSU-A should be assimilated by not in Kate's test run.
I am checking now. Will report back later.

@emilyhcliu
Copy link
Contributor

emilyhcliu commented Apr 25, 2023

Number of AMSU-A and MHS from MetOp-C assimilated

Emily's v16.3.6 parallel

o-g 01 rad  metop-c   amsua           1870485       135038       115064    41140.       41140.      0.35754      0.35754
o-g 01 rad  metop-c   mhs             2858770        46715        19325    3946.7       3946.7      0.20423      0.20423

Kate's experiment

o-g 01 rad  metop-c   amsua           1854855            0            0    0.0000       0.0000       0.0000       0.0000
o-g 01 rad  metop-c   mhs             2854470            0            0    0.0000       0.0000       0.0000       0.0000

I confirmed that the AMSU-A and MHS from MetOp-C are not assimilated in Kate's experiment. The data are read in OK.

The reason why the AMSU-A and MHS from MetOp-c are not assimilated in Kates' experiment is the following:

On Orion (Kate's experiment)

 1252 Feb  4  2022 /apps/contrib/NCEP/libs/hpc-stack/intel-2018.4/crtm/2.4.0/fix/amsua_metop-c.SpcCoeff.bin

 1252 Feb  4  2022 /apps/contrib/NCEP/libs/hpc-stack/intel-2018.4/crtm/2.4.0/fix/amsua_metop-c.SpcCoeff.bin

On Hera (Emily's experiment)

12196 Apr 10 04:58 /scratch2/NCEPDEV/nwprod/hpc-stack/libs/hpc-stack-gfsv16/intel-18.0.5.274/crtm/2.4.0/fix/amsua_metop-c.SpcCoeff.bin
12196 Apr 10 04:58 /scratch2/NCEPDEV/nwprod/hpc-stack/libs/hpc-stack-gfsv16/intel-18.0.5.274/crtm/2.4.0/fix/amsua_metop-c.SpcCoeff.bin

Note that the size of the SpcCoeff files for AMSU-A and MHS on ORION have much smaller size than the same files on HERA (1252 vs. 12196). The SpcCoeff files for AMSU-A and HS on ORION are empty.

This caused the following failure while running the GSI:

65:  READ_BUFRTOVS:             1  versions of SpcCoeff found for mhs_metop-c
65:  Apply_AntCorr(FAILURE) : Input iFOV inconsistent with AC data
12:  READ_BUFRTOVS:             1  versions of SpcCoeff found for amsua_metop-c
12:  Apply_AntCorr(FAILURE) : Input iFOV inconsistent with AC data

But, this has nothing to do with the script update for this PR.
To fix the SpcCoeff problem for AMSU-A and MHS, the CRTM installation needs to be updated.

An issue has been opened for updating the CRTM installation on all other HPC machines

The EMC POC for CRTM related issue is @HaixiaLiu-NOAA
Tagging @HaixiaLiu-NOAA for awareness

@emilyhcliu
Copy link
Contributor

emilyhcliu commented Apr 25, 2023

@KateFriedman-NOAA Please let me know if you want me to add these changes into the branch gw_i_1148 related to PR #1158 ?

@KateFriedman-NOAA
Copy link
Member

@emilyhcliu That branch and PR are gone/closed so I am submitting the changes via a new PR. I will add you as a reviewer. Thanks for checking the outputs! Stay tuned...

@KateFriedman-NOAA
Copy link
Member

@XianwuXue-NOAA confirmed in an earlier comment that we still need the rCDUMP line so I won't be making any changes to jobs/JGDAS_ENKF_FCST. So this issue and its PR will only make the following updates to scripts/exglobal_atmos_analysis.sh:

Orion-login-4[71] /work/noaa/global/kfriedma/git/feature-v16.3_gsi_script_updates$ git diff
diff --git a/scripts/exglobal_atmos_analysis.sh b/scripts/exglobal_atmos_analysis.sh
index ccedbdab..8c68d85c 100755
--- a/scripts/exglobal_atmos_analysis.sh
+++ b/scripts/exglobal_atmos_analysis.sh
@@ -55,8 +55,8 @@ lupp=${lupp:-".true."}
 cnvw_option=${cnvw_option:-".false."}

 # Observation usage options
-cao_check=${cao_check:-".false."}
-ta2tb=${ta2tb:-".false."}
+cao_check=${cao_check:-".true."}
+ta2tb=${ta2tb:-".true."}

 # Diagnostic files options
 lobsdiag_forenkf=${lobsdiag_forenkf:-".false."}
@@ -423,9 +423,7 @@ ${NLN} ${RTMFIX}/NPOESS.VISsnow.EmisCoeff.bin  ./crtm_coeffs/NPOESS.VISsnow.Emis
 ${NLN} ${RTMFIX}/NPOESS.VISwater.EmisCoeff.bin ./crtm_coeffs/NPOESS.VISwater.EmisCoeff.bin
 ${NLN} ${RTMFIX}/FASTEM6.MWwater.EmisCoeff.bin ./crtm_coeffs/FASTEM6.MWwater.EmisCoeff.bin
 ${NLN} ${RTMFIX}/AerosolCoeff.bin              ./crtm_coeffs/AerosolCoeff.bin
-${NLN} ${RTMFIX}/CloudCoeff.bin                ./crtm_coeffs/CloudCoeff.bin
-#$NLN $RTMFIX/CloudCoeff.GFDLFV3.-109z-1.bin ./crtm_coeffs/CloudCoeff.bin
-
+${NLN} ${RTMFIX}/CloudCoeff.GFDLFV3.-109z-1.bin ./crtm_coeffs/CloudCoeff.bin

 ##############################################################

KateFriedman-NOAA added a commit to KateFriedman-NOAA/global-workflow that referenced this issue Apr 26, 2023
- These updates to scripts/exglobal_atmos_analysis.sh are being put in
again after a CRTM issue was resolved.
- These updates are needed to resolve an issue with the GSI assimilating
too low of a number of observations.
- These updates are from the GFSv16.3 operational upgrade.

Refs NOAA-EMC#1494
@CatherineThomas-NOAA
Copy link
Contributor Author

Thanks @emilyhcliu for going through the namelist. From your list, I see these additional needed changes in exglobal_atmos_analysis.sh:

  • Line 705: nsig = 45
  • Line 758: dmesh(4) = 50.0

config.base:

  • Line 357: export INCREMENTS_TO_ZERO="'liq_wat_inc','icmr_inc','rwmr_inc','snmr_inc','grle_inc'"
  • Line 363: export INCVARS_ZERO_STRAT="'sphum_inc','liq_wat_inc','icmr_inc','rwmr_inc','snmr_inc','grle_inc'"

config.anal:

  • Line 32: n_sig = 45

Did I miss anything @emilyhcliu?
@KateFriedman-NOAA - Should these be addressed in this PR or in a separate PR?

@emilyhcliu
Copy link
Contributor

Thanks @emilyhcliu for going through the namelist. From your list, I see these additional needed changes in exglobal_atmos_analysis.sh:

  • Line 705: nsig = 45
  • Line 758: dmesh(4) = 50.0

config.base:

  • Line 357: export INCREMENTS_TO_ZERO="'liq_wat_inc','icmr_inc','rwmr_inc','snmr_inc','grle_inc'"
  • Line 363: export INCVARS_ZERO_STRAT="'sphum_inc','liq_wat_inc','icmr_inc','rwmr_inc','snmr_inc','grle_inc'"

config.anal:

  • Line 32: n_sig = 45

Did I miss anything @emilyhcliu? @KateFriedman-NOAA - Should these be addressed in this PR or in a separate PR?

@CatherineThomas-NOAA Yes, You got them all and correct!

@KateFriedman-NOAA
Copy link
Member

Should these be addressed in this PR or in a separate PR?

@CatherineThomas-NOAA I can fold these into the current open PR #1535. I will rerun an analysis job to be sure there aren't any issues.

I see these additional needed changes in exglobal_atmos_analysis.sh:

  • Line 705: nsig = 45

config.anal:

  • Line 32: n_sig = 45

For ^ these changes...did you mean nsig_ext? I see nsig_ext in my updated copy (ingested COM reorg) of exglobal_atmos_analysis.sh and config.anal. I made a guess it's changing nsig_ext...here are all of the GSI-related changes in a clone I'm using to test a new UFS_UTILS hash (to save time on setting up another test) and which now has the COM reorg updates as well:

(gfs_workflow) -bash-4.2$ git diff
diff --git a/parm/config/config.anal b/parm/config/config.anal
index 018bab95..0648b5bf 100644
--- a/parm/config/config.anal
+++ b/parm/config/config.anal
@@ -29,7 +29,7 @@ fi
 # Set parameters specific to L127
 if [[ ${LEVS} = "128" ]]; then
   export GRIDOPTS="nlayers(63)=1,nlayers(64)=1,"
-  export SETUP="gpstop=55,nsig_ext=56,${SETUP:-}"
+  export SETUP="gpstop=55,nsig_ext=45,${SETUP:-}"
 fi
 
 # Set namelist option for LETKF
diff --git a/parm/config/config.base.emc.dyn b/parm/config/config.base.emc.dyn
index 0af91daa..522d3879 100644
--- a/parm/config/config.base.emc.dyn
+++ b/parm/config/config.base.emc.dyn
@@ -354,13 +354,13 @@ export MAKE_NSSTBUFR="@MAKE_NSSTBUFR@"
 export MAKE_ACFTBUFR="@MAKE_ACFTBUFR@"
 
 # Analysis increments to zero in CALCINCEXEC
-export INCREMENTS_TO_ZERO="'liq_wat_inc','icmr_inc'"
+export INCREMENTS_TO_ZERO="'liq_wat_inc','icmr_inc','rwmr_inc','snmr_inc','grle_inc'"
 
 # Write analysis files for early cycle EnKF
 export DO_CALC_INCREMENT_ENKF_GFS="YES"
 
 # Stratospheric increments to zero
-export INCVARS_ZERO_STRAT="'sphum_inc','liq_wat_inc','icmr_inc'"
+export INCVARS_ZERO_STRAT="'sphum_inc','liq_wat_inc','icmr_inc','rwmr_inc','snmr_inc','grle_inc'"
 export INCVARS_EFOLD="5"
 
 # Swith to generate netcdf or binary diagnostic files.  If not specified,
diff --git a/scripts/exglobal_atmos_analysis.sh b/scripts/exglobal_atmos_analysis.sh
index ccedbdab..6ab24523 100755
--- a/scripts/exglobal_atmos_analysis.sh
+++ b/scripts/exglobal_atmos_analysis.sh
@@ -55,8 +55,8 @@ lupp=${lupp:-".true."}
 cnvw_option=${cnvw_option:-".false."}
 
 # Observation usage options
-cao_check=${cao_check:-".false."}
-ta2tb=${ta2tb:-".false."}
+cao_check=${cao_check:-".true."}
+ta2tb=${ta2tb:-".true."}
 
 # Diagnostic files options
 lobsdiag_forenkf=${lobsdiag_forenkf:-".false."}
@@ -423,9 +423,7 @@ ${NLN} ${RTMFIX}/NPOESS.VISsnow.EmisCoeff.bin  ./crtm_coeffs/NPOESS.VISsnow.Emis
 ${NLN} ${RTMFIX}/NPOESS.VISwater.EmisCoeff.bin ./crtm_coeffs/NPOESS.VISwater.EmisCoeff.bin
 ${NLN} ${RTMFIX}/FASTEM6.MWwater.EmisCoeff.bin ./crtm_coeffs/FASTEM6.MWwater.EmisCoeff.bin
 ${NLN} ${RTMFIX}/AerosolCoeff.bin              ./crtm_coeffs/AerosolCoeff.bin
-${NLN} ${RTMFIX}/CloudCoeff.bin                ./crtm_coeffs/CloudCoeff.bin
-#$NLN $RTMFIX/CloudCoeff.GFDLFV3.-109z-1.bin ./crtm_coeffs/CloudCoeff.bin
-
+${NLN} ${RTMFIX}/CloudCoeff.GFDLFV3.-109z-1.bin ./crtm_coeffs/CloudCoeff.bin
 
 ##############################################################
 # Observational data
@@ -702,7 +700,7 @@ cat > gsiparm.anl << EOF
   iguess=-1,
   tzr_qc=${TZR_QC},
   oneobtest=.false.,retrieval=.false.,l_foto=.false.,
-  use_pbl=.false.,use_compress=.true.,nsig_ext=12,gpstop=50.,commgpstop=45.,commgpserrinf=1.0,
+  use_pbl=.false.,use_compress=.true.,nsig_ext=45,gpstop=50.,commgpstop=45.,commgpserrinf=1.0,
   use_gfs_nemsio=.false.,use_gfs_ncio=.true.,sfcnst_comb=.true.,
   use_readin_anl_sfcmask=${USE_READIN_ANL_SFCMASK},
   lrun_subdirs=${lrun_subdirs},
@@ -755,7 +753,7 @@ cat > gsiparm.anl << EOF
   ${OBSQC}
 /
 &OBS_INPUT
-  dmesh(1)=145.0,dmesh(2)=150.0,dmesh(3)=100.0,dmesh(4)=25.0,time_window_max=3.0,
+  dmesh(1)=145.0,dmesh(2)=150.0,dmesh(3)=100.0,dmesh(4)=50.0,time_window_max=3.0,
   ${OBSINPUT}
 /
 OBS_INPUT::

@emilyhcliu
Copy link
Contributor

@KateFriedman-NOAA and @CatherineThomas-NOAA, I will check the re-run analysis job for confirmation.

@CatherineThomas-NOAA
Copy link
Contributor Author

@KateFriedman-NOAA
Yes, sorry, nsig_ext for both of those.

KateFriedman-NOAA added a commit to KateFriedman-NOAA/global-workflow that referenced this issue Apr 26, 2023
- Change nsig_ext value from 56 to 45 within SETUP variable setting.

Refs NOAA-EMC#1494
KateFriedman-NOAA added a commit to KateFriedman-NOAA/global-workflow that referenced this issue Apr 26, 2023
KateFriedman-NOAA added a commit to KateFriedman-NOAA/global-workflow that referenced this issue Apr 26, 2023
- Update nsig_ext from 12 to 45
- Update dmesh(4) from 25.0 to 50.0

Refs NOAA-EMC#1494
@KateFriedman-NOAA
Copy link
Member

No worries, thanks for the clarification @CatherineThomas-NOAA !

I have an analysis job waiting in the queue on Hera (bad fairshare). Will share output when it runs...

KateFriedman-NOAA added a commit to KateFriedman-NOAA/global-workflow that referenced this issue Apr 27, 2023
- Update INCREMENTS_TO_ZERO and INCVARS_ZERO_STRAT similarly
to config.base.emc.dyn

Refs NOAA-EMC#1494
@KateFriedman-NOAA
Copy link
Member

@emilyhcliu @CatherineThomas-NOAA Please see the following output/log/test on Hera using the full set of changes now in the PR:

COMROT: /scratch1/NCEPDEV/stmp4/Kate.Friedman/comrot/testgdasinit
Log: /scratch1/NCEPDEV/stmp4/Kate.Friedman/comrot/testgdasinit/logs/2023010200/gdasanal.log

Note: I put this issue's changes into another test I already had started (to test updated UFS_UTILS hash). No other changes in this test beyond it having the COM reorg changes. This test used the same date and ICs created with an updated gdas_init utility (COM reorg updates).

@emilyhcliu
Copy link
Contributor

emilyhcliu commented Apr 27, 2023

@KateFriedman-NOAA
I checked the run time gsianal.parm between testgdasinit and my run. The GSI parameters used are identical.
I also checked global_satinfo.txt, global_convinfo.txt and global_anavinfo.l127.txt.
global_satinfo.txt are identical
global_convinfo.txt has the following difference between my gfs.v16.3.6_ctl run and the testgdasinit

139,140c139,140
<  uv       245  271   -1     3.0      0      0      0   1.3  20.0   1.4   1.3  0.005000     0  200.   100.      0    0.     0.   15   -8
<  uv       245  272    1     3.0      0      0      0   1.3  20.0   1.4   1.3  0.005000     0  200.   100.      0    0.     0.   15   -8
---
>  uv       245  271    1     3.0      0      0      0   1.3  20.0   1.4   1.3  0.005000     0  200.   100.      0    0.     0.   15   -8
>  uv       245  272   -1     3.0      0      0      0   1.3  20.0   1.4   1.3  0.005000     0  200.   100.      0    0.     0.   15   -8
145,146c145,146
<  uv       246  271   -1     3.0      0      0      0   1.3  20.0   1.4   1.3  0.005000     0  200.   100.      0    0.     0.   15   -8
<  uv       246  272    1     3.0      0      0      0   1.3  20.0   1.4   1.3  0.005000     0  200.   100.      0    0.     0.   15   -8
---
>  uv       246  271    1     3.0      0      0      0   1.3  20.0   1.4   1.3  0.005000     0  200.   100.      0    0.     0.   15   -8
>  uv       246  272   -1     3.0      0      0      0   1.3  20.0   1.4   1.3  0.005000     0  200.   100.      0    0.     0.   15   -8
151,152c151,152
<  uv       247  271   -1     3.0      0      0      0   2.5  20.0   1.4   2.5  0.005000     0    0.     0.      0    0.     0.   15   -8
<  uv       247  272    1     3.0      0      0      0   2.5  20.0   1.4   2.5  0.005000     0    0.     0.      0    0.     0.   15   -8
---
>  uv       247  271    1     3.0      0      0      0   2.5  20.0   1.4   2.5  0.005000     0    0.     0.      0    0.     0.   15   -8
>  uv       247  272   -1     3.0      0      0      0   2.5  20.0   1.4   2.5  0.005000     0    0.     0.      0    0.     0.   15   -8

The difference is satellite wind from ABI G17 and G18.

And, in your run, you are still using the previous version of global_anavinfo.l127.txt

So, our gsi fix files are different.

@KateFriedman-NOAA
Copy link
Member

And, in your run, you are still using the previous version of global_anavinfo.l127.txt
So, our gsi fix files are different.

@emilyhcliu Is this something to fix? I expect to turn G18 back on with the upcoming GSI ops update and then translate that change to develop too...is that the diff?

Thanks for checking the outputs!

@emilyhcliu
Copy link
Contributor

emilyhcliu commented Apr 27, 2023

@KateFriedman-NOAA I figured out.
The differences between our convinfo for sat winds are OK
Your run is 20230102 and Mine is 20230320
Before 20230105, the ABI should have G17 on and G18 off
After 20230105, the ABI should have G17 off and G18 on.
So, when I 'diff' our convinfo. There should be difference in ABI G17/G18 for satwind.
Both of our runs are OK.

@emilyhcliu
Copy link
Contributor

emilyhcliu commented Apr 27, 2023

@KateFriedman-NOAA But, our global_convinfo.l127.txt are different.
I checked your HOMEgfs. The gsi fix directory is pointing to /scratch1/NCEPDEV/global/glopara/fix/gsi/20221128
This is probably is an old snap shot of the GSI fix directory.

@KateFriedman-NOAA
Copy link
Member

@emilyhcliu Ok, thanks for confirming our runs are ok and we just need a fix file update.

Can you open a separate global-workflow issue to request to update the fix file? We just created a new issue template for updating/documenting fix file updates: https://github.com/NOAA-EMC/global-workflow/issues/new?assignees=KateFriedman-NOAA%2CWalterKolczynski-NOAA&labels=Fix+Files&template=fix_file.md

I will take the issue after you open it and update the fix file in our sets from what you point me to in the issue. Thanks!

@emilyhcliu
Copy link
Contributor

@KateFriedman-NOAA Yes, I will open an issue to request the fix file update.

@emilyhcliu
Copy link
Contributor

@KateFriedman-NOAA
Here is the fix directory version in current GSI develop repository:
https://github.com/NOAA-EMC/GSI-fix/tree/0be26971f834fe9b1d5b118e1e0ffed53facf671
Shall we update the fix to the one in GSI develop?

KateFriedman-NOAA added a commit that referenced this issue May 8, 2023
…1535)

Updates to scripts/exglobal_atmos_analysis.sh are being put in again
after a CRTM issue was resolved. These updates are needed to resolve 
an issue with the GSI assimilating too low of a number of observations.

Also update gsi_ver to 20230112 in fix.ver

Refs #1494 #1550
@KateFriedman-NOAA
Copy link
Member

This update and the matching fix file update (issue #1550) are now complete. Thanks for remembering we needed to do this @CatherineThomas-NOAA, thanks for checking the test outputs @emilyhcliu, and thanks for helping with the fix files @aerorahul!

jkhender added a commit to jkhender/global-workflow that referenced this issue Jul 28, 2023
…nch used for HFIP2023

Squashed commit of the following:

commit daf395d6f1b3a5dac9f44be29f90deb788481a4d
Author: Judy.K.Henderson <Judy.K.Henderson@noaa.gov>
Date:   Fri Jul 14 21:01:46 2023 +0000

     Updated GSL template for jet XML files

     Create hera and jet specific config.base.emc.dyn files

commit 108db520c8ab70799e603c0038af8c5fdb44dc91
Author: Judy.K.Henderson <Judy.K.Henderson@noaa.gov>
Date:   Thu Jul 13 04:42:38 2023 +0000

     Remove extra 'else' line in config.fcst

commit 1dfa79017f236dac89f83d39f499864d1b64dd99
Author: Judy.K.Henderson <Judy.K.Henderson@noaa.gov>
Date:   Thu Jul 13 02:38:27 2023 +0000

     Correct paths in build script for Joe's fork

commit 62a375a153a2d02a9c8a1bef01b2adf046aaf1ff
Author: Judy.K.Henderson <Judy.K.Henderson@noaa.gov>
Date:   Wed Jul 12 23:28:29 2023 +0000

     Add scripts to check out Joe's HFIP2023 branch from Joe's fork and compile it

commit 3761ac9003c55a2e74c98d4e848ddb3a75a11a47
Author: Judy.K.Henderson <Judy.K.Henderson@noaa.gov>
Date:   Wed Jul 12 23:25:06 2023 +0000

     Turn off creation of flux and pgrb2b grib2 files in config.post

commit 6057da21ab39086711e902c02b0ebea54a69320b
Author: Judy.K.Henderson <Judy.K.Henderson@noaa.gov>
Date:   Wed Jul 12 23:21:35 2023 +0000

     Use aerosol-aware Thompson for MYNN runs
       - add lcnorm=.true. for MYNN in config.fcst

     Change namelist settings in config.fcst to those suggested by Fanglin
       tau=0.0
       rf_cutoff=10
       fast_tau_w_sec=0.2
       n_split=4

     Remove older CCPP suites from config.fcst

     Add fast_tau_w_sec and lcnorm to ush/parsing_namelists_FV3.sh

commit 288e147cf70fcc284ecf9c60ab16b97c2c573a8b
Author: Judy.K.Henderson <Judy.K.Henderson@noaa.gov>
Date:   Mon Jul 10 06:31:20 2023 +0000

     Remove ufs_model_haiqin.x from config.fcst since we can use the same executable to
       run all 3 experiments once we updated to 26jun23 UFS
     Add v17p8_c3 SDF to build_ufs.sh

commit 0f100fd506effebe85e253e94b31010970fe0d2d
Author: Judy.K.Henderson <Judy.K.Henderson@noaa.gov>
Date:   Mon Jul 10 06:28:40 2023 +0000

     Add getic and init tasks to workflow for creating initial conditions in realtime

     Update ufs_utils.fd_gsl directory

commit 3aad7afc322658e0927a28e31f16ca15bcb5a4c8
Author: Judy.K.Henderson <Judy.K.Henderson@noaa.gov>
Date:   Mon Jul 10 05:26:01 2023 +0000

     Set COMINsyn in workflow/hosts/jet.yaml instead of changing conifg.vrfy

commit ba17b77a0ac9708c111d9303fd07f8f3561f142f
Author: Judy.K.Henderson <Judy.K.Henderson@noaa.gov>
Date:   Thu Jun 29 19:42:43 2023 +0000

     Update config.post files in experiment directories
       * Set default value for npe_dwn

commit 60a1d8d9cebb84edc554c7f75b91e8cab24481c5
Author: Judy.K.Henderson <Judy.K.Henderson@noaa.gov>
Date:   Thu Jun 29 19:37:15 2023 +0000

     Update UFS version to 26Jun23, ed7fc88, in checkout scripts

commit e1761702693f3fe4190c5d44d8cc0733775b4fc1
Author: Judy.K.Henderson <Judy.K.Henderson@noaa.gov>
Date:   Thu Jun 29 17:21:41 2023 +0000

     Update hera experiment directory, v17_p8_12x12_2wg_12wt, for running 2019 storms

commit 587bcb349bc2df5b67ccae0c7d03a25a1af245d8
Author: Judy.K.Henderson <Judy.K.Henderson@noaa.gov>
Date:   Tue Jun 27 22:13:55 2023 +0000

     Correct path for DATAROOT and change machine name to upper-case in config.ufs

commit 1c16a443c8582a296a50724e0d78e0e4ccdfa100
Author: Judy.K.Henderson <Judy.K.Henderson@noaa.gov>
Date:   Tue Jun 27 22:09:04 2023 +0000

     Update paths for DATAROOT in GSL template XML files

commit c36cbac40c3528150631cf72c6ab6b432418b423
Author: Judy.K.Henderson <Judy.K.Henderson@noaa.gov>
Date:   Tue Jun 27 15:58:26 2023 +0000

     Correct if machine statement in config.ufs

     Add/update experiment directories for 1wg/14wt on hera:  v17_p8_c3_12x12_1wg_14wt, v17_p8_thompson_12x12_1wg_14wt, v17_p8_mynn_12x12_1wg_14wt

commit 3481ea68587ebfbe8cd556ecc249611e33cc7ba3
Author: Judy.K.Henderson <Judy.K.Henderson@noaa.gov>
Date:   Tue Jun 27 00:21:02 2023 +0000

     Set npe_dwn in config.post if running on hera

     Update DATAROOT to be generic in GSL XML file templates

commit 5e071d38e502c469daae407e9b2dce1711fc6da4
Author: Judy.K.Henderson <Judy.K.Henderson@noaa.gov>
Date:   Thu Jun 22 23:41:16 2023 +0000

     Add c3 experiment directory on hera:  v17_p8_c3_12x12_2wg_12wt

commit ad8d8af2b91ded431d9b8e919b76bcd616a6fc1c
Author: Judy.K.Henderson <Judy.K.Henderson@noaa.gov>
Date:   Thu Jun 22 18:06:54 2023 +0000

     Add experiment directories for Thompson on jet:  v17_p8_thompson_12x12_vjet_2wg_12wt, v17_p8_thompson_12x12_xjet_2wg_12wt

commit 65e0d92e4dafbbfa216028f19172772186ec0b9a
Author: Judy.K.Henderson <Judy.K.Henderson@noaa.gov>
Date:   Thu Jun 22 17:47:59 2023 +0000

     Add jet XML template for GSL

     Add experiment directory for c3:  v17_p8_c3_12x12_xjet_1wg_14wt

     Add xml files to test running post on sjet with v17_p8_mynn_12x12_vjet_2wg_12wt experiment

commit d3ce3ef0ba48996d023136634184f4e915272f78
Author: Judy.K.Henderson <Judy.K.Henderson@noaa.gov>
Date:   Thu Jun 22 17:42:29 2023 +0000

     Add updated config.fcst file to experiment directories, test_hera and test_jet

commit e7137777ead823e860ff2e4bd38bb9f9cc2a53f5
Author: Judy.K.Henderson <Judy.K.Henderson@noaa.gov>
Date:   Thu Jun 22 01:03:32 2023 +0000

     Remove post database files and obsolete xml file from v17_p8_mynn_12x12_xjet_2wg_12wt experiment

commit 0b87272872a5370697bfa29ec11b27a7b8ceea5b
Author: Judy.K.Henderson <Judy.K.Henderson@noaa.gov>
Date:   Thu Jun 22 00:58:41 2023 +0000

     Commit correct version of config.post file

     Add updated config.post and config.resources file to experiment directories

commit eec5ae5282173b30e8f1cc045f7e435b1d5a7918
Author: Judy.K.Henderson <Judy.K.Henderson@noaa.gov>
Date:   Thu Jun 22 00:52:04 2023 +0000

     Delete database files and log file from v17_p8_mynn_12x12_xjet_2wg_12wt experiment

commit 6862a2285d274ed24bb63c1d3c94e7e1a04e78c1
Author: Judy.K.Henderson <Judy.K.Henderson@noaa.gov>
Date:   Thu Jun 22 00:02:25 2023 +0000

     Add PARTITION_POST_BATCH to run post jobs with different partition (default=sjet)

     Add "" to variables in if statements to make consistent in config.resources and config.post

commit 027ec8a13c5fecc7e37bae3078d11ed047ad254e
Author: Judy.K.Henderson <Judy.K.Henderson@noaa.gov>
Date:   Wed Jun 21 20:44:04 2023 +0000

     Delete obsolete files from v17_p8_mynn_12x12_xjet_2wg_12wt experiment

commit 3226494ba6b382b51ad1011b28fc4512390f7261
Author: Judy.K.Henderson <Judy.K.Henderson@noaa.gov>
Date:   Wed Jun 21 20:16:37 2023 +0000

     Correct link for vrfy.sh under jobs/rocoto

commit b7d32263e5b802eea2d67076ac8358abebff4eee
Author: Judy.K.Henderson <Judy.K.Henderson@noaa.gov>
Date:   Wed Jun 21 18:20:47 2023 +0000

     Update v17_p8_mynn_12x12_vjet_2wg_12wt and v17_p8_mynn_12x12_xjet_2wg_12wt experiments

commit 10eed6eb2f3b8394181583018800d56e7d30876c
Author: Judy.K.Henderson <Judy.K.Henderson@noaa.gov>
Date:   Wed Jun 21 18:19:31 2023 +0000

     Move additional experiments with older workflow files to testing directory

commit 4cdd857c1040b7cfb5c8502a7277a1d36a2c7fca
Author: Judy.K.Henderson <Judy.K.Henderson@noaa.gov>
Date:   Wed Jun 21 17:48:15 2023 +0000

     Move experiments with older workflow files to testing directory

commit e67b4bf5010404592f37736acaf3f402628d7f86
Author: Judy.K.Henderson <Judy.K.Henderson@noaa.gov>
Date:   Tue Jun 20 23:53:09 2023 +0000

     Changes for tracker for GSL
        syndat file:  /lfs4/HFIP/hwrf-data/hwrf-input/SYNDAT-PLUS
        only VRFYTRAK is set to "YES" in config.vrfy
        rename track file using ATCFNAME variable

commit 45a636ce9e647cee7861d64e747b1e771434511e
Author: Judy.K.Henderson <Judy.K.Henderson@noaa.gov>
Date:   Tue Jun 20 18:27:17 2023 +0000

     Update config.post for different jet partitions

     Update compile parameters for Haiqin's fork

     Update Jet yaml file with GSL paths

commit f1851a02bf426b443c87fd1c8797e0ff3efeb62f
Author: Judy.K.Henderson <Judy.K.Henderson@noaa.gov>
Date:   Thu Jun 15 19:05:18 2023 +0000

     Set WRTTASK_PER_GROUP_PER_THREAD_PER_TILE_GFS values based on machine for C768 in config.ufs

     Create GSL-specific versions of workflow python scripts
       * Add NATIVE_STR to xml files

     Make shell scripts executable

     Add template XML file for GSL jobs on hera

commit 812ee9ba4803f308f9e8bae27bbe1f063e5c2e9c
Author: Judy.K.Henderson <Judy.K.Henderson@noaa.gov>
Date:   Wed Jun 14 23:33:31 2023 +0000

     Update config.resources and XML files for experiment directories on hera

commit 81aa8e36a1c6d65a66d66a7dbd3cf56651cf9fb9
Author: Judy.K.Henderson <Judy.K.Henderson@noaa.gov>
Date:   Wed Jun 14 22:19:15 2023 +0000

      Change post to run on 1 node
      Make walltimes smaller for gfsfcst and gfspost tasks

commit 0cc889e8994ea28a0c160d773ed65e92eae841ba
Author: Judy.K.Henderson <Judy.K.Henderson@noaa.gov>
Date:   Wed Jun 14 22:06:12 2023 +0000

     Adding experiment directories for hera
        v17_p8_12x12_2wg_12wt
        v17_p8_c3_12x12_2wg_12wt
        v17_p8_mynn_12x12_1wg_14wt
        v17_p8_thompson_12x12_2wg_12wt

commit b7340601b600f8553268141d750b653bfa1bec93
Author: Judy.K.Henderson <Judy.K.Henderson@noaa.gov>
Date:   Tue Jun 13 23:58:27 2023 +0000

      Add memory report to srun command in env/HERA.env
      Add script to create links for initial conditions
      Remove if statements for GSL suites and v16 suites from config.fcst
      Update to UFS 12jun23 version
        - Add RT_COMPILER to compilation parameters in build_ufs.sh (changed in 31May23 commit)
        - Change default version in checkout.sh and checkout_ufs.sh
        - Add script to build 12Jun23 UFS
        - Update ufs_model.fd_gsl directories
           * delete mynnedmf_wrapper.F90
           * delete v17p8_gf_mynn suite definition file
      Remove checkout_jun08.sh script
      Check for existence of directory in rsync_gsl.sh
      Add test-mynn.sh experiment setup script

commit ca2025372cf529714e4f192b1b2ffc2deeb0ea6f
Author: Judy.K.Henderson <Judy.K.Henderson@noaa.gov>
Date:   Tue Jun 13 12:29:28 2023 +0000

     Add experiment directories
        vjet: 12 write tasks, 2 write groups
        vjet: 14 write tasks, 1 write group
        xjet: 14 write tasks, 1 and 2 write groups

commit fb0ce2fb4d6269f672271cd62b537de51102ae4b
Author: Judy.K.Henderson <Judy.K.Henderson@noaa.gov>
Date:   Mon Jun 12 13:32:45 2023 +0000

     Update test_hera experiment directory to run out to 120h
       - change walltime to 2h10m
       - modify FHMAX to 120 in config.base

commit 59acf1ecb11800ecd02e214c9a7ded16a6c87b97
Author: Judy.K.Henderson <Judy.K.Henderson@noaa.gov>
Date:   Sun Jun 11 11:42:23 2023 +0000

     Update STMP/PTMP path in config.base for test_hera

commit 655b16ba0a6cf37b0fd083a07a767016348a2401
Author: Judy.K.Henderson <Judy.K.Henderson@noaa.gov>
Date:   Sun Jun 11 11:20:15 2023 +0000

     Modify hera settings due to out of memory issues
      - Change to 12 write tasks for C768 in config.ufs
      - Change FHOUT_GFS to 6 in config.base

commit b8a5f750bcfc5ba11ca962d077a24db01b16ab2c
Author: Judy.K.Henderson <Judy.K.Henderson@noaa.gov>
Date:   Sat Jun 10 13:59:12 2023 +0000

     Update test_hera_12x12.xml file
     Delete FV3GFSwfm/test experiment directory

commit 5b5ef140f9e53dabbf907f794ac08af9888f0f0c
Author: Judy.K.Henderson <Judy.K.Henderson@noaa.gov>
Date:   Sat Jun 10 13:41:37 2023 +0000

     Modify scripts for building XML on hera
     Add experiment directory, FV3GFSwfm/test_hera for 12x12 layout
     Change defaults to 12x12 layout, 2 write groups for C768 in config.ufs
     Change FHOUT_GFS to 6, FHMAX to 120 in config.base

commit 2f4eb26117cc5fc39900f78fbfdd7015696e4741
Author: Judy.K.Henderson <Judy.K.Henderson@noaa.gov>
Date:   Fri Jun 9 13:03:26 2023 +0000

     Add scripts to checkout Haiqin's fork, checkout 08Jun23 UFS, sync GSL-specific directories
     Add v17p8_thompson SDF to ufs_model.fd_gsl  (copy of v17p8)

commit 0f2461255fd4488809ba2c2deb15da1660f54180
Author: Judy.K.Henderson <Judy.K.Henderson@noaa.gov>
Date:   Fri Jun 9 08:56:30 2023 +0000

     Update config.fcst to set progsigma=.false. for v17p8_c3

commit b114eb453c4dcf7ff238118bb0d2bcf32ef7f009
Author: Judy.K.Henderson <Judy.K.Henderson@noaa.gov>
Date:   Tue Jun 6 01:26:50 2023 +0000

     Remove database and log files from experiment directories

commit 53d72734b3a79d1577f8370ce17f3a3ab055cac4
Author: Judy.K.Henderson <Judy.K.Henderson@noaa.gov>
Date:   Tue Jun 6 01:24:29 2023 +0000

     Add experiment directories for HFIP application

commit f0d86c477daf41e97e34ba7ed94bd56d6248b25f
Author: Judy.K.Henderson <Judy.K.Henderson@noaa.gov>
Date:   Tue Jun 6 01:20:23 2023 +0000

     Create branch from NOAA-EMC:global-workflow 19May23 develop branch

     Add initial changes needed for GSL

commit 0fae23fa0012ef52b37ad70ab7c3eeb8a8c6b1bd
Author: Rahul Mahajan <aerorahul@users.noreply.github.com>
Date:   Fri May 19 14:01:30 2023 -0400

    Cast dict as an AttDict to handle nested dicts properly in update_configs (#1630)

    Some of the keys in the `defaults` were not being updated in `update_configs()` because it was
    using a regular `**dict` that would only update keys at the top-level.  These dictionaries are
    nested and deep. This fixes the bug by replacing `**dict` with the `update` method from `AttrDict`.

commit b29c95b83d217a57422f7fc4c480af728fdc6452
Author: AndrewEichmann-NOAA <58948505+AndrewEichmann-NOAA@users.noreply.github.com>
Date:   Fri May 19 11:42:21 2023 -0400

    Adding path to atmosphere analysis in ocean verification job (#1632)

commit 5e687f098b179d2f995bad831f34016152006535
Author: AndrewEichmann-NOAA <58948505+AndrewEichmann-NOAA@users.noreply.github.com>
Date:   Fri May 19 09:48:16 2023 -0400

    fixes use of wrong directory variables (#1631)

commit 10a6776351b1d1a62ff761016c0207913698aeda
Author: Jessica Meixner <jessica.meixner@noaa.gov>
Date:   Thu May 18 16:59:53 2023 -0400

    Add GEFS wave grid to scripts and ensure post runs (#1608)

    This is an expansion of @NeilBarton-NOAA 's work in PR #1488

    * Adds new glo_025 grid to workflow which will be used by GEFSv13  (fixes #1434)
    * Ensures post works
    * Creates a section in config.wave for various wave grids so that it's easier to switch between grids
    * Adds documentation for adding a wave grid so that it will hopefully be easier the next time
    * Initial condition was added to hera for 2013010100 for this new grid so that C384/ P8 like tests can be made.  (Needs to be synced to other platforms if desired).

    This work expands on the work in PR #1605

    Fixes #1434
    Fixes #1604

commit 4bebafd61d5a0fc2f52910294204af5f1f51cb21
Author: Kate Friedman <kate.friedman@noaa.gov>
Date:   Thu May 18 13:30:56 2023 -0400

    Fixes for enkf archival bugs in ush/hpssarch_gen.sh (#1626)

    Fixes for enkf archival bugs

    Refs #1622 and #1623

commit 481b65903f9f4f55039ed68e24c929378dee3cca
Author: RussTreadon-NOAA <26926959+RussTreadon-NOAA@users.noreply.github.com>
Date:   Thu May 18 11:37:09 2023 -0400

    Bugfix in atm_analysis.py and setup_expt.py.

    resens was mischaracterized as ensres.
    CASE_ANL is not used in atmens_analysis.py
    set CASE_ANL=CASE in config.atmanl

commit 26ea93396ca6dad7ae9d86ec2890fc69725fa122
Author: Rahul Mahajan <aerorahul@users.noreply.github.com>
Date:   Wed May 17 17:32:08 2023 -0400

    Allow use of nested yamls during setup_expt.py (#1624)

    This PR:
    - allows a user to define their own configuration via a yaml during `setup_expt.py`, while retaining the `defaults.yaml` which is a must when templates are being set
    - updates to `setup_expt.py` to allow the above.
    - adds a `test_ci.yaml` as a demonstration for use in CI

    This PR will facilitate deprecating `config.defaults.s2s` as well as allowing users to make their own configurations.

commit 580f09ac1f169e2b9bb5986d55cee5fd0a05acfe
Author: TerrenceMcGuinness-NOAA <terrence.mcguinness@cox.net>
Date:   Wed May 17 14:21:41 2023 -0400

    Add throttling to CI (#1568)

    Adds the ability to throttle the number of PRs and cases being run concurrently.

commit 53ba0753b962fbcbbccfcba74b645a1a07a99689
Author: Walter Kolczynski - NOAA <Walter.Kolczynski@noaa.gov>
Date:   Tue May 16 19:43:17 2023 -0400

    Fix type of donst for sfcanl namelist (#1620)

    The variable type expected by gaussian_sfcanl for donst was recently
    changed from YES/NO to a boolean (.true./.false.)

    Fixes #1619

commit 472cf8d0116ffab79f9bfdc4055d9eeb8cd199ed
Author: Rahul Mahajan <aerorahul@users.noreply.github.com>
Date:   Tue May 16 17:26:32 2023 -0400

    Prepare snow depth observations for JEDI-based Land DA. (#1609)

    This PR:
    - adds a job to prepare IMS snow depth observations as a task in the workflow.  This task depends on the `prep.sh` job to bring IMS data.  To test this type of data `DMPDIR` in `config.base` needed to be pointed to `"/scratch1/NCEPDEV/global/Jiarui.Dong/JEDI/GlobalWorkflow/para_gfs/glopara_dump"`
    - `land_analysis.py` introduces a method `prepare_IMS` for this type of data.
    - Updates are necessary in the `GDASApp` repo.  See companion PR https://github.com/NOAA-EMC/GDASApp/pull/472

    This job only runs at the `18z` cycle in the workflow.  This is controlled in the XML and not in the script.
    Consequently, updates are in the `workflow/` scripts to make this happen.

    Other updates included:
    - Adds a method (and associated test) to provide a datetime in the form of Julian day of the year.  The method is `to_julian` in `timetools.py`
    - `executable.py` was updated to accept a `list` of arguments (in addition to `str`).

    **Note:**
    - `calcfIMS.exe` is a serial executable and yet requires to be run with `srun`.  I recommend compiling this executable without MPI. @jiaruidong2017 @CoryMartin-NOAA
    - There are several deprecation warnings from the python IODA converter that will need to be addressed.  I recommend creating an issue to be resolved later. @jiaruidong2017 @CoryMartin-NOAA

    Part of Land DA work for snow depth assimilation, for which there is no issue open.

commit c005fbcdfef7803b8bde1b6138183ccb62db4d01
Author: Jessica Meixner <jessica.meixner@noaa.gov>
Date:   Mon May 15 17:15:31 2023 -0400

    Code Updates for New Wave Fix Files  (#1605)

    Updates the code to point to correct fix files with name changes.

    Fixes #1493

commit 255d99b7f2151682699f181197529c0ac0f7050e
Author: Cory Martin <cory.r.martin@noaa.gov>
Date:   Fri May 12 09:20:00 2023 -0400

    Make JEDI cycling toggle switches YAML configurable and their names more explicit  (#1607)

    * make some JEDI cycling options configurable through YAML

commit a8edbc7b429a740f444b42b5708ca70d59e7e5e8
Author: Kate Friedman <kate.friedman@noaa.gov>
Date:   Thu May 11 15:02:18 2023 -0400

    Update gfs-utils hash to 8965258 (#1586)

    New gfs-utils hash includes gfs_bufr code fix to resolve bugzilla #1208
    Other commits included in new hash are:
    - Partial removal of deprecated utilities and code
    - Updated Jet's module to point to the EPIC hpc-stack

    Refs #1245

commit f7e60f9a4e4e45428b0e9fecc4f6ec445e21c9a2
Author: Cory Martin <cory.r.martin@noaa.gov>
Date:   Thu May 11 14:03:44 2023 -0400

    Allow YAML input to override config.base and make HPSS_PROJECT configurable (#1603)

commit 8544015c668d0d2196fab5e0eb3d0f55b7df0d18
Author: Walter.Kolczynski <Walter.Kolczynski@noaa.gov>
Date:   Wed May 10 12:39:32 2023 -0500

    Fix RTD python requirements path

    Refs: #1595

commit c7cc877ca675db8731e7276c4280dbd66aa8dd65
Author: Walter.Kolczynski <Walter.Kolczynski@noaa.gov>
Date:   Wed May 10 12:37:11 2023 -0500

    Clean up RTD python install settings

    Refs: #1595

commit 2392a413bb704be4b0b90d4c357fba0c6552161a
Author: Walter.Kolczynski <Walter.Kolczynski@noaa.gov>
Date:   Wed May 10 12:30:47 2023 -0500

    Use RTD python system packages

    Still trying to resolve issues with RTD build.

    Refs: #1595

commit 805f203a8f95cf62ee92149ad14386b429148642
Author: Walter.Kolczynski <Walter.Kolczynski@noaa.gov>
Date:   Wed May 10 12:22:38 2023 -0500

    Fix python RTD parameter name

    Refs: #1595

commit c4a090c19b7343be1f68b3506cd979cb34b5f5c1
Author: Walter.Kolczynski <Walter.Kolczynski@noaa.gov>
Date:   Wed May 10 12:19:08 2023 -0500

    Update RTD python install

    Refs: #1595

commit 7fa59a1302ba947917d774da04f7fdc7a0742f25
Author: Walter.Kolczynski <Walter.Kolczynski@noaa.gov>
Date:   Wed May 10 11:58:05 2023 -0500

    Restore RTD python version and add requirements

    Restored the python version to 3.11 after degrading it to 3.7 did not
    solve the bibtex issue. Instead, specify the requirements file in the
    config (the file already existed).

    Refs: #1595

commit 98bd25c465cae6fb6293a686a70d050ef770e76f
Author: Walter Kolczynski - NOAA <Walter.Kolczynski@noaa.gov>
Date:   Wed May 10 12:03:16 2023 -0400

    Revert python version for RTD (#1598)

    Reverts the python version for RTD back to 3.7 to see if that solves
    the missing bibtex import issue.

    Fixes #1595

commit 9f837d008cee71a0bceadc86cd576075086d3846
Author: Walter Kolczynski - NOAA <Walter.Kolczynski@noaa.gov>
Date:   Wed May 10 11:45:02 2023 -0400

    Move RTD config to root of repo (#1597)

    Read-the-docs config file was in the wrong location.

    Fixes #1595

commit c24b9ade80106808d72b96d499b1ad26f672192e
Author: Walter Kolczynski - NOAA <Walter.Kolczynski@noaa.gov>
Date:   Wed May 10 11:32:36 2023 -0400

    Add RTD config (#1596)

    Adds a read the docs config to get around docker image/library
    mismatch.

    Fixes #1595

commit e55f090208de1ce52ddde51732cbaf26e2323480
Author: Henry R. Winterbottom <49202169+HenryWinterbottom-NOAA@users.noreply.github.com>
Date:   Wed May 10 08:24:05 2023 -0600

    Add `schema` library to manage schema for variety of input configurations. (#1567)

    Adds schema.py from https://github.com/keleshev/schema
    Adds a test harness and additional functions to setup the Schema object.

    Co-authored-by: Rahul Mahajan <aerorahul@users.noreply.github.com>

commit 6b0172ba1543ce682c6f28a826002788f298ed11
Author: Walter Kolczynski - NOAA <Walter.Kolczynski@noaa.gov>
Date:   Tue May 9 23:16:24 2023 -0400

    Add S2SA to the allowed app list in setup expt (#1591)

    Adds S2SA to the list of allowed apps for all experiment types. The
    workflow config files already supported this option, but it was not
    on the allowed list.

    Refs: #1589

commit bd8585b7289c675df76fb5b53792fc27a8f08934
Author: David Huber <69919478+DavidHuber-NOAA@users.noreply.github.com>
Date:   Tue May 9 22:36:25 2023 -0400

    Avoid parsing group name when checking RadMon diagnostic files (#1559)

    This changes the way the RadMon diagnostic file checker determines if a diagnostic
    file is 0-sized.  Instead of attempting to parse the output of `tar -tv`, the script now
    extracts the `radstat` file and runs `du -b` on each gzipped diagnostic file.  On S4, the
    primary group is `domain users`, which, containing a space, caused issues with the
    previous method.

    Fixes #1515

commit 106e74726a82573c09c5196a3866770968bfda34
Author: Rahul Mahajan <aerorahul@users.noreply.github.com>
Date:   Tue May 9 22:33:35 2023 -0400

    Remove gldas from global-workflow (#1590)

    Removes all instances of GLDAS from the global-workflow `develop` as it will not
     be used in GFS v17. Also updates the documentation to reflect this change.

    Fixes #1512

commit da2da72ded007386bfdd2f5c7b3c62b135ac66f5
Author: Walter Kolczynski - NOAA <Walter.Kolczynski@noaa.gov>
Date:   Tue May 9 18:46:34 2023 -0400

    Add GEFS capability to setup_expt (#1582)

    Allows GEFS experiment directories to be set up using `setup_expt.py`. This
    only creates the experiment directory; workflow generation will be added
    in a follow-up PR.

    To facilitate this, a new positional argument is added in the first position to
    specify which system to set up: `gfs` or `gefs`. If gfs is chosen, the second
    positional argument is to choose the mode, and allows the same values as
    before: `cycled` and `forecast-only`. If gefs is chosen, forecast-only is
    assumed and no second positional argument is required.

    To allow both gfs and gefs configure files to exist in workflow concurrently,
    the `parm/config` directory contains two new directories: gfs and gefs. All
    of the old config files have been moved into the gfs directory. A few select
    config files have also been copied to the gefs directory. As yet, they are un-
    modified (except the changes noted below). These config files will be
    updated in a future PR so the modifications for GEFS are not hidden in the
    new file creation. The `yaml/defaults` is also copied over, but the contents
    were removed since GEFS will not be running its own analyses.

    A couple variables have been renamed to be more appropriate for use in
    both systems: `NMEM_ENKF`, `NMEM_EFCS`, and `CASE_ENKF` are now
    `NMEM_ENS`, `NMEM_ENS_GFS`, and `CASE_ENS` respectively. Further,
    `HOMEfv3gfs` were removed as unused.

    Finally, resolution validation was extended to the ensemble resolution as well.

    Fixes: #1576

commit 2fd43d134f9d8479eb37c3800f6bcb715ceb7c3f
Author: Kate Friedman <kate.friedman@noaa.gov>
Date:   Mon May 8 16:53:21 2023 -0400

    Redo v16.3 GSI script updates to scripts/exglobal_atmos_analysis.sh (#1535)

    Updates to scripts/exglobal_atmos_analysis.sh are being put in again
    after a CRTM issue was resolved. These updates are needed to resolve
    an issue with the GSI assimilating too low of a number of observations.

    Also update gsi_ver to 20230112 in fix.ver

    Refs #1494 #1550

commit 6838c0ba5a1dc9033c2e7488ab1a970f70fea506
Author: Guillaume Vernieres <guillaume.vernieres@noaa.gov>
Date:   Fri May 5 16:41:36 2023 -0400

    Fix bugs in the COM refactor of marine DA (#1566)

    Fixes a couple bugs and does a little cleanup of the COM refactor for marine DA. COM variable definitions are also updated to match the style used in other scripts.

commit dd19f05afa8b80e207de215c3d5f447107924f13
Author: Rahul Mahajan <aerorahul@users.noreply.github.com>
Date:   Fri May 5 16:36:34 2023 -0400

    Retire `getic.sh` and `init.sh` jobs from global-workflow (#1578)

    This PR removes:
    - `getic.sh` - job used to get initial conditions from HPSS from a past experiment/ops
    - `init.sh` - job used to create experiment resolution specific initial conditions from the ones fetched by `getic.sh`.

    Both these jobs were primarily used by the atmosphere model component developers in the past.
    They have since been staging pre-generated ICs making these jobs obsolete.

    Documentation will point to ufs-utils to generate the initial conditions.  The utilities from ufs-utils were used to identify the appropriate HPSS tarball as well as performing interpolation for the atmospheric model component.
    There is no such utility available for the other model components making these scripts only partially useful.

    In a future PR, an update to the definition of `BASE_CPLIC` and `coupled_ic` jobs will be made to make use of `--icsdir` to point to pre-staged locations of initial conditions.

    Fixes #1569

commit 63d5522e98fa65ce62d7ff681ed8923f48f0517e
Author: Kate Friedman <kate.friedman@noaa.gov>
Date:   Fri May 5 16:35:24 2023 -0400

    New UFS_UTILS hash for gdas_init COM reorg updates (#1581)

    This PR updates the UFS_UTILS hash to get `gdas_init` updates for the recent COM reorg.

    A few additional UFS_UTILS commits are also included but aren't significant changes, as noted by @GeorgeGayno-NOAA: "Updates since that hash have been mostly small things like bug fixes. However, the w3nco library was replaced by the w3emc library at https://github.com/ufs-community/UFS_UTILS/commit/7efbe0fd2dd373ae54d6c2954ebd484e0a3aab48". Updates to improve repo build are also included with this hash (https://github.com/ufs-community/UFS_UTILS/commit/b4900c483bd9cdb274aae6f75c0815a5f86bdaae).

    New hash from completion of https://github.com/ufs-community/UFS_UTILS/pull/820

    Resolves #1527

commit cf064a5c043106ea5ea6c2ce27e036e6d40babf5
Author: Walter Kolczynski - NOAA <Walter.Kolczynski@noaa.gov>
Date:   Fri May 5 16:32:31 2023 -0400

    Update documentation for PR standards (#1573)

    The section on commit message standards is updated to be for pull
    requests instead. Additional messaging about using the provided
    template is added, and bullets not relevant to PRs (line-wrapping
    and leaving a space between subject and body) are removed.

commit 8ff4c380d59ffa12f74dcef2cfa0e112b44b97c2
Author: Kate Friedman <kate.friedman@noaa.gov>
Date:   Thu May 4 16:43:54 2023 -0400

    Update prepobs install copy for atm log filename fix (#1571)

    Begin using feature-GFSv17_com_reorg_log_update install which updated
    the atm logf filename checked for by prepobs getges_nc.sh.

    Refs #1570

commit 3768c11e564ff82bfd2766a54513b49b4853e44c
Author: Rahul Mahajan <aerorahul@users.noreply.github.com>
Date:   Wed May 3 11:40:25 2023 -0400

    Update LandDA related job post COM refactor plus other minor fixes (#1564)

    This PR:
    - updates the j-jobs to accommodate post COM refactor upgrades.
    - minor updates to config.resources for land DA tasks
    - add task dependencies in the rocoto workflow
    - when doing LandDA, use sfc_data.tile{{ t }}.nc created by Land DA is used as input of global_cycle for the deterministic and case w/ DOIAU=NO.

commit a4177bb97722a6e90487af2b9744f3cbc960fb6b
Author: Rahul Mahajan <aerorahul@users.noreply.github.com>
Date:   Wed May 3 02:52:38 2023 -0400

    Replace `CDATE` with `PDYcyc` combo (#1561)

    Replaces `${CDATE}` with `${PDY}${cyc}` in all `config.*` files. Also fixes permissions on some of the config files that were turned to be executable in some of the JEDI PRs.

    Fixes #1560
    Partially fixes #198

commit 1242952faa4ce95d9a1fe2ce3e4ea20425d440d0
Author: Kate Friedman <kate.friedman@noaa.gov>
Date:   Tue May 2 16:23:18 2023 -0400

    Update init.rst cycled coupled IC info (#1562)

    * Update init.rst cycled coupled IC info
    * The cycled ATM w/ coupled (S2S) model ICs were updated
    and the folder was renamed from "C48mx500" to "C48C48mx500"
    * Added note to mention that the EnKF member ICs are
    currently just dummy duplicates of the deterministic.

commit 2e2357bc067390d51d1320d982abdce23b67d4ed
Author: Walter Kolczynski - NOAA <Walter.Kolczynski@noaa.gov>
Date:   Tue May 2 11:06:52 2023 -0400

    Use correct number of tasks in CICE when using threads (#1558)

    When the workflow was updated to use ESMF threading, the CICE namelist
    was not updated to use the new ntasks_cic6 variable instead of ICEPETS.
    This caused the incorrect number to be used when using multiple threads.

    Fixes #1549

commit 608ff650fbc902114203a8d03893e3d26fa05d70
Author: Kate Friedman <kate.friedman@noaa.gov>
Date:   Mon May 1 22:19:39 2023 -0400

    Remove gdas bump fix files (#1553)

    * Remove bump_ver from versions/fix.ver
    - No longer need a bump version variable in fix.ver.
    Refs #1552

commit 810071bff4878b16e5b70113fff990a1b1e80a4f
Author: Walter Kolczynski - NOAA <Walter.Kolczynski@noaa.gov>
Date:   Mon May 1 22:18:31 2023 -0400

    Remove remnant WAVE_RUN from archive (#1556)

    `$WAVE_RUN` is no longer used in workflow, but one reference remained
    in the archive job, which would cause failures. The conditional did
    not need to be replaced by `$RUN` since `$RUN` has already been checked
    at that point.

    Fixes #1548

commit f2ea92bf7345be1669677affab401bf25dd917ff
Author: Walter Kolczynski - NOAA <Walter.Kolczynski@noaa.gov>
Date:   Mon May 1 17:08:30 2023 -0400

    Update UFS to develop as of 2023 Apr 17 (#1509)

    Updates the UFS model hash to the version as of 2023 Apr 17.

    Some associated changes accompany this update
    - Restart filenames for MOM6 (ufs-community/ufs-weather-model#1599)
    - Remove store coriolis setting from MOM6 namelist (ufs-community/ufs-weather-model#1599)
    - Change in atm 'log' file names (ufs-community/ufs-weather-model#1704)
    - Additions to diag_table for frozen species (ufs-community/ufs-weather-model#1529)
    - Restart quilting (ufs-community/ufs-weather-model#1633)
    - Update to post itag (ufs-community/ufs-weather-model#1690)

    The switch to restart quilting adds an additional constraint on the size of write groups to be divisible by the number of tiles, so all were increased to the next multiple of 6.

    In the process of updating the diag tables, unused tables were removed.

    Closes #1279 as moot
    Closes #1445
    Closes #1499
    Partially addresses #1277

commit 6d3ed8ac4b71759fbace38f3dd544f7ee018b821
Author: Guillaume Vernieres <guillaume.vernieres@noaa.gov>
Date:   Mon May 1 14:36:01 2023 -0400

    Adapt the marine DA to the new COM structure (#1554)

commit 6c48e94b4f3c7cf180cd443a13b957c8ab87ab4c
Author: Cory Martin <cory.r.martin@noaa.gov>
Date:   Mon May 1 02:02:37 2023 -0400

    Update aerosol DA to use new COM structure (#1551)

    This PR updates the j-jobs and python classes for aerosol DA to use the new COM directory structure.
    This PR also includes removing of the chem history staging for the ICSDIR in setup_expt.py. The aerosol fields are treated as FV3 tracers, so they are either available (warm start) with the fv_tracer files or start at 0 (cold start) and must be spun up from emissions.

    Fixes #1516

commit ec2dd3ab8fb78c4e0aff7d81cb64095fe6130ad6
Author: RussTreadon-NOAA <26926959+RussTreadon-NOAA@users.noreply.github.com>
Date:   Fri Apr 28 14:45:09 2023 -0400

    Update UFSDA ATM ens for new COM directory structure (#1538)

    g-w PR #1421 changed the GFS COM directory structure. This PR updates UFSDA ATM ensemble analysis jobs and python script to work with the updated GFS COM directory structure.

    Fixes #1518

commit 406d6900963ca9c5152ef4b84de0d2840b0c2fd3
Author: Rahul Mahajan <aerorahul@users.noreply.github.com>
Date:   Fri Apr 28 12:55:05 2023 -0400

    Run an ensemble forecast of the coupled model (#1545)

commit ff37168eddd52e00b288cde4bdbdb1927369abe6
Author: Walter Kolczynski - NOAA <Walter.Kolczynski@noaa.gov>
Date:   Fri Apr 28 12:53:59 2023 -0400

    Fix ocean anl path in staging (#1544)

    The path for ocean analysis files was not properly updated after
    analysis was moved out of model_data into its own directory.

commit 8506ec6977c53018a100fd4881c296016a7df630
Author: Cory Martin <cory.r.martin@noaa.gov>
Date:   Thu Apr 27 15:48:47 2023 -0400

    Two minor bugfixes (#1542)

    Found some odd bugs in the aerosol DA changes that need to be fixed to work properly.
    Not sure how they worked before with testing (by luck?) but these are straightforward fixes
    to implement.

    one has a missing / in a path for FileHandler
    and the other has a missing .nc causing files to not be found

commit 5f66da919c2525e189a169bad1f3fcbab3a64739
Author: AndrewEichmann-NOAA <58948505+AndrewEichmann-NOAA@users.noreply.github.com>
Date:   Thu Apr 27 14:04:55 2023 -0400

    Move guts of ocean analysis post out of j-job (#1539)

    Removes most of content of JGDAS_GLOBAL_OCEAN_ANALYSIS_POST to scripts/exgdas_global_marine_analysis_post.py in GDASApp, now just calls that script.

    Addresses first bullet of #1480

commit 3dd6bbe7a77145ab31d00bd4c23af7649353cbd9
Author: RussTreadon-NOAA <26926959+RussTreadon-NOAA@users.noreply.github.com>
Date:   Wed Apr 26 17:02:05 2023 -0400

    Update UFSDA ATM anl for new COM directory structure (#1537)

    g-w PR #1421 changed the GFS COM directory structure. This PR updates UFSDA ATM variational analysis jobs and python scripts to work with the updated GFS COM directory structure.

    Fixes #1517

commit b5d173f6a95ccc5df55aecb9dc490fffb79b26ca
Author: Walter Kolczynski - NOAA <Walter.Kolczynski@noaa.gov>
Date:   Wed Apr 26 13:39:45 2023 -0400

    Fix incorrect ocean history tmpl during workflow generation (#1533)

    The trailing '_TMPL' was accidentally ommited from the ocean history
    template used during workflow generation.

    Refs: #1532

commit 789ae97a1210117b9b629c4a47d6cfa999b551ab
Author: Walter Kolczynski - NOAA <Walter.Kolczynski@noaa.gov>
Date:   Wed Apr 26 13:39:31 2023 -0400

    Fix ocean stating from flat structure (#1531)

    A typo led to the same variable being defined twice instead of the
    variable that was supposed to be defined.

    Fixes #1530

commit 1e4a24c35088a3db6348156c15bbc81b6f814e40
Author: Guillaume Vernieres <guillaume.vernieres@noaa.gov>
Date:   Wed Apr 26 00:17:56 2023 -0400

    Fix warm-start IC staging (#1529)

    The incorrect path was used for staging coupled components during the COM refactor update (#1421). These are now corrected.

    Fixes #1528

commit 7421d805e6f50a59cd0be611d3ad7568ae603985
Author: Walter Kolczynski - NOAA <Walter.Kolczynski@noaa.gov>
Date:   Tue Apr 25 15:37:04 2023 -0400

    Quiet generate_com (#1526)

    Turns off trace for the duration of the generate_com function unless
    DEBUG_WORKFLOW is not set to "NO" (the default). In its place, the
    function will now echo the assignment.

    Closes #1524

commit 23e6cc22a456c4a4294216037673473db0a144af
Author: Guillaume Vernieres <guillaume.vernieres@noaa.gov>
Date:   Tue Apr 25 11:45:16 2023 -0400

    Add ocnanlvrfy job and bugfixes. (#1514)

commit efa5180462f71ec476aeb6c5de4ba074a9d38a29
Author: Walter Kolczynski - NOAA <Walter.Kolczynski@noaa.gov>
Date:   Mon Apr 24 15:37:52 2023 -0400

    Reorganize COM and refactor to use templates (#1421)

    Reorganizes the entire COM directory into a more hierarchical structure and uses centrally-defined templates to define COM paths.

    ## Hierarchical Structure
    To organize output a lot better and not have 30000+ files in a single directory, all of the component COM directories are divided into a number of subdirectories for each type of output.

    Sample directory trees

    ### Cycled atmosphere only
    ```
    gdas.20211222/00
    ├── analysis
    │   └── atmos
    │       └── gsidiags
    │           ├── dir.0000
    │           ├── dir.0001
    │           ├── (Additional dir.* directories omitted for brevity)
    │           └── dir.0083
    ├── model_data
    │   └── atmos
    │       ├── history
    │       ├── master
    │       └── restart
    ├── obs
    └── products
        └── atmos
            ├── cyclone
            │   └── tracks
            └── grib2
                ├── 0p25
                ├── 0p50
                └── 1p00

    101 directories
    ```
    ```
    enkfgdas.20211222/00
    ├── earc00
    ├── ensstat
    │   ├── analysis
    │   │   └── atmos
    │   │       └── gsidiags
    │   │           ├── dir.0000
    │   │           ├── dir.0001
    │   │           ├── (Additional dir.* omitted for brevity)
    │   │           └── dir.0039
    │   └── model_data
    │       └── atmos
    │           └── history
    ├── mem001
    │   ├── analysis
    │   │   └── atmos
    │   └── model_data
    │       └── atmos
    │           ├── history
    │           ├── master
    │           └── restart
    └── mem002
        ├── analysis
        │   └── atmos
        └── model_data
            └── atmos
                ├── history
                ├── master
                └── restart

    64 directories
    ```
    ```
    gfs.20211222/00
    ├── analysis
    │   └── atmos
    ├── model_data
    │   └── atmos
    │       ├── history
    │       ├── master
    │       └── restart
    ├── obs
    └── products
        └── atmos
            ├── bufr
            ├── cyclone
            │   ├── genesis_vital
            │   └── tracks
            ├── gempak
            │   ├── 0p25
            │   ├── 0p50
            │   ├── 1p00
            │   ├── 35km_atl
            │   ├── 35km_pac
            │   └── 40km
            ├── grib2
            │   ├── 0p25
            │   ├── 0p50
            │   └── 1p00
            └── wmo

    26 directories
    ```
    ```
    enkfgfs.20211222/00
    ├── earc00
    ├── ensstat
    │   ├── analysis
    │   │   └── atmos
    │   │       └── gsidiags
    │   │           ├── dir.0000
    │   │           ├── dir.0001
    │   │           ├── (Additional dir.* directories removed for brevity)
    │   │           └── dir.0039
    │   └── model_data
    │       └── atmos
    │           └── history
    ├── mem001
    │   ├── analysis
    │   │   └── atmos
    │   └── model_data
    │       └── atmos
    │           ├── history
    │           ├── master
    │           └── restart
    └── mem002
        ├── analysis
        │   └── atmos
        └── model_data
            └── atmos
                ├── history
                ├── master
                └── restart

    64 directories
    ```

    ### S2SWA coupled
    prototype (forecast-only):
    ```
    gfs.20130401/00/
    ├── model_data
    │   ├── atmos
    │   │   ├── history
    │   │   ├── input
    │   │   ├── master
    │   │   └── restart
    │   ├── chem
    │   │   └── history
    │   ├── ice
    │   │   ├── history
    │   │   ├── input
    │   │   └── restart
    │   ├── med
    │   │   └── restart
    │   ├── ocean
    │   │   ├── history
    │   │   ├── input
    │   │   └── restart
    │   └── wave
    │       ├── history
    │       ├── prep
    │       └── restart
    └── products
        ├── atmos
        │   ├── cyclone
        │   │   ├── genesis_vital
        │   │   └── tracks
        │   ├── gempak
        │   │   ├── 0p25
        │   │   ├── 0p50
        │   │   ├── 1p00
        │   │   ├── 35km_atl
        │   │   ├── 35km_pac
        │   │   └── 40km
        │   ├── grib2
        │   │   ├── 0p25
        │   │   ├── 0p50
        │   │   └── 1p00
        │   └── wmo
        ├── ocean
        │   ├── 2D
        │   ├── 3D
        │   ├── grib
        │   │   ├── 0p25
        │   │   └── 0p50
        │   └── xsect
        └── wave
            ├── gempak
            ├── gridded
            ├── station
            └── wmo

    51 directories
    ```

    ### Trees with files
    gdas: https://gist.github.com/WalterKolczynski-NOAA/f1de04901e2703fd24d38146d2669789
    gfs: https://gist.github.com/WalterKolczynski-NOAA/5d1b7c0a0f4b8cfff0be1ae54082316a
    enkfgdas: https://gist.github.com/WalterKolczynski-NOAA/860aaa804e3e70e191e7cae2ebb1055b
    enkfgfs: https://gist.github.com/WalterKolczynski-NOAA/130bfff4650ed8b07cf395079b65d318
    S2SWA P8: https://gist.github.com/WalterKolczynski-NOAA/6ae90c6eafb573878f60682ce47179db

    ## Templating
    All of the COM paths have been replaced with new variables that are derived from a set of templates centrally defined in `config.com`. Variables in the templates are then substituted at runtime to generate the COM paths via the use of `envsubst`. To facilitate this, there is a new function, `generate_com` (see below), provided to automatically generate the COM paths.

    Where possible, COM paths are defined at the j-job level and made read-only. However, many of the EnKF scripts loop over the ensemble members, forcing the definitions to be made at the exscript level instead (and be mutable).

    The arguments to `generate_com()` are the list of COM variables to generate, optionally accompanied by a template to use using a colon to separate them. When no template is specified, the variable will be generated using the ${varname}_TMPL template. Two options are accepted, `-r` and `-x`, which will mark the variable as read-only and for export, respectively (the same as with the `declare` builtin). It is best practice to define any additional variables needed by the template on the same line to avoid adding them to the calling script’s scope. Here are some examples used in the code:

    Generate the path to the atmos analysis directory for the current cycle and `$RUN` (implicitly from the `$COM_ATMOS_ANALYSIS_TMPL` template) and mark as read-only and export:
    ```
    YMD=${PDY} HH=${cyc} generate_com -rx COM_ATMOS_ANALYSIS
    ```

    Generate the path to the atmos history directory for the previous cycle's gdas from the `$COM_ATMOS_HISTORY_TMPL` template and mark as read-only and export:
    ```
    RUN=${GDUMP} YMD=${gPDY} HH=${gcyc} generate_com -rx \
        COM_ATMOS_HISTORY_PREV:COM_ATMOS_HISTORY_TMPL
    ```

    Generate the path to the first ensemble member's history directory of the current cycle and `$RUN` and mark for export:
    ```
    MEMDIR=’mem001’ YMD=${PDY} HH=${cyc} generate_com -x COM_ATMOS_HISTORY
    ```

    ## Additional information
    The staging of initial conditions in `setup_expy.py` has been updated to stage in the new locations. The source of the initial conditions can **either** be in the new hierarchical structure or in the old flat structure and the script will stage the files in the new structure. The destination paths are hard-coded here, so if any changes are made to the analysis, input, or restart templates, they will need to be mirrored in `setup_expy.py`.

    ### Stipulations
    All changes in this PR are subject to approval by several stakeholders, including NCO. Sample COM trees above are subject to revision based on feedback (for instance, file X isn't really an obs file).

    File name updates are not included in this PR. File names (primarily for coupled components) will be updated to comply with NCO standards in a future PR.

    AWIPS jobs are now almost working (they do not in current develop), but one last program is still ending with an error.

    Work on fit2obs is deferred, so that portion of the verify job does not work.

    WAFS scripts are all external and have not yet been updated. WAFS is expected to be packaged separately going forward, so will need to be updated like any other downstream package.

    Some scripts that are not part of our normal development workflow have not yet been updated. I may be able to knock a few more off this list, but some just aren’t available in development mode currently:
    - All UFSDA app jobs (to be handled separately)
    - With associated dev jobs (may still modify and test)
      - JGDAS_ATMOS_GLDAS
      - ~~JGLOBAL_WAVE_GEMPAK~~
      - ~~JGLOBAL_WAVE_POST_BNDPNT~~
      - ~~JGLOBAL_WAVE_POST_BNDPNTBLL~~
      - ~~JGLOBAL_WAVE_PRDGEN_BULLS~~
      - ~~JGLOBAL_WAVE_PRDGEN_GRIDDED~~
      - ~~JGLOBAL_WAVE_PREP~~
    - With no associated dev job
      - JGDAS_ATMOS_GEMPAK_META_NCDCJGFS_ATMOS_FBWIND
      - JGFS_ATMOS_FSU_GENESIS
      - JGFS_ATMOS_GEMPAK_META
      - JGFS_ATMOS_GEMPAK_NCDC_UPAPGIF
      - JGLOBAL_ATMOS_EMCSFC_SFC_PREP
      - JGLOBAL_ATMOS_POST_MANAGER
      - JGLOBAL_ATMOS_TROPCY_QC_RELOC
    + All downstream scripts for the above

    There are also a few scripts that are not available to the development workflow that I have already made a good-faith effort at updating:
    - JGDAS_ATMOS_GEMPAK
    - JGFS_ATMOS_PGRB2_SPEC_NPOESS

    ## Related Issues
    Closes #761
    Fixes #978
    Fixes #999
    Fixes #1207
    Partially addresses #198
    Partially addresses #289
    Partially addresses #293
    Partially addresses #1299
    Partially addresses #1326

commit 408ef65a8e2318125ad61478746024b2d0ef463d
Author: Walter Kolczynski - NOAA <Walter.Kolczynski@noaa.gov>
Date:   Mon Apr 24 15:26:58 2023 -0400

    Move GDASApp hash to stable version (#1508)

    Changes the GDASApp hash to a more stable version than the tip of
    develop.
    See post-merge converastion in #1506

commit 699a759f80352aaade4203425c5df24842fcefa3
Author: RussTreadon-NOAA <26926959+RussTreadon-NOAA@users.noreply.github.com>
Date:   Mon Apr 24 13:37:04 2023 -0400

    update GDASApp hash to d34f616 (#1505) (#1506)

commit 44f5c28518a7d4b9e06658c6c21b9b1ee1d0918e
Author: AndrewEichmann-NOAA <58948505+AndrewEichmann-NOAA@users.noreply.github.com>
Date:   Mon Apr 24 12:26:14 2023 -0400

    ignore archiving sfluxgrbf00[124578] files when they are not present (#1498)

    * ignore archiving certain sfluxgrbf??? files when they are not present.
    Co-authored-by: Rahul Mahajan <aerorahul@users.noreply.github.com>

commit 2e88dbfc5ff7a0bb2c6c1630b0c2783d76049d21
Author: Jiarui Dong <Jiarui.Dong@noaa.gov>
Date:   Mon Apr 24 09:17:48 2023 -0400

    Add initial land DA cycling scripts (#1351)

    This PR adds rocoto jobs, jjobs, config files and updates to the machine.env to enable land-da  cycling capability.

commit f159d39a3b28dfcc120cdcdf87d11a611c75061f
Author: TerrenceMcGuinness-NOAA <terrence.mcguinness@cox.net>
Date:   Fri Apr 21 15:46:35 2023 -0400

    Add CI cron jobs (#1476)

    As a maintainer of the CI framework, I need a set of cron jobs that will fully automate the CI pipeline so that whenever the appropriate label on GitHub is created the PR gets cloned and built followed by a set of functional experiments that are executed and reported on.

commit 587e469a1be5e278326fc0cbceefedc90caf75bf
Author: RussTreadon-NOAA <26926959+RussTreadon-NOAA@users.noreply.github.com>
Date:   Fri Apr 21 13:28:11 2023 -0400

    Refactor UFS-DA ATM ens component to use python g-w (#1373)

    This PR contains UFS-DA ATM ens changes originally in PR #1354.

    Below is a list of changes in this PR
    - rename UFS-DA ATM ens jobs atmensanalprep, atmensanalrun, and atmensanalpost as atmensanlinit, atmensanlrun, and atmensanlfinal, respectively
    - replace UFS-DA ATM ens shell scripts with python scripts
    - rename UFS-DA ATM ens j-jobs consistent with initialize, run, and finalize functions. Update j-jobs to execute python scripts instead of shell scripts
    - rename UFS-DA ATM ens rocoto jobs to be consistent with initialize, run, and finalize functions. Update jobs to set python paths and execute renamed j-jobs
    - update rocoto workflow generation to new names for UFS-DA ATM ens jobs
    - update UFS-DA ATM ens job names in machine dependent env files to new job names
    - rename UFS-DA ATM ens configuration files consistent with change in job names
    - add python class for UFS-DA ATM ens analysis
    - unify JEDIEXE link for UFS-DA Aerosol, ATM, and ENS
    - properly set `cycledefs` for `gfsatmanlinit`
    - remove unused `FV3JEDI_FIX` from atmanl and atmensanl config

    The above changes are part of a larger g-w effort to transition from shell scripts to python. UFS-DA Aerosol was the first GDASApp system to be converted. PR #1372 converted UFS-DA atmospheric variational DA to the python based approach.  This PR converts converts UFS-DA atmospheric local ensemble DA to the python based approach.

    Fixes #1313
    Depends (in part) on #1370 and #1372 and NOAA-EMC/GDASApp#388

commit 7db70496063fe32928cacb9790e45a1e987a3510
Author: David Huber <69919478+DavidHuber-NOAA@users.noreply.github.com>
Date:   Fri Apr 21 12:42:00 2023 -0400

    Added Fit2Obs to S4. #1489 (#1497)

    Adds Fit2Obs support for S4 by adding the module use/load commands to the module_base.s4.lua modulefile.

    Fixes #1489.

commit fb236523140b09686a4c2961e0552e7bd5dbf04f
Author: Guillaume Vernieres <guillaume.vernieres@noaa.gov>
Date:   Fri Apr 21 12:40:11 2023 -0400

    Add new task to post-process marine DA (#1485)

    The work in this PR is only meant to bring us closer to a viable WCDA system. The refactoring of the marine DA to the new standard introduced by @aerorahul and used by @RussTreadon-NOAA and @CoryMartin-NOAA will be addressed after this [Epic](https://github.com/noaa-emc/gdasapp/issues/416) is resolved.

    ### Motivation and context
    This work adds a separate j-job ```JGDAS_GLOBAL_OCEAN_ANALYSIS_CHKPT ``` that calls a script that will be in the GDASApp for the time being (PR to come once this is merged) and does the following:
    - prepares the `SOCA` increment for `MOM6` IAU
    - recursively apply the `SOCA2CICE` change of variable. A mapping from the 2D seaice analysis variable to the CICE6 dynamical and thermodynamic variables.
    - merge the `Tref` increment from the `NSST` analysis with the `SOCA` increment

    ### Summary of the change
    - HPC environment: the new j-job runs a `JEDI` executable twice and one python script. All are serial jobs but the JEDI exec need to be called as an MPI job with 1 pe.
    - `jobs/JGDAS_GLOBAL_OCEAN_ANALYSIS_CHKPT`, that script point to a ex-script that is not in the GDASApp develop yet.
    - addition of the option to merge the Tref NSST increment with the MOM6 increment. This is triggered with the `DO_MERGENSST` switch
    - The new j-job dependency was added, with the option to wait for the surface analysis file `sfcanl.nc` if `do_mergensst` is true.

    Refs: #1480.
    Fixes NOAA-EMC/GDASApp/#418

commit 740daba8d6d34a327199701c1df7d6e10da73ec5
Author: Kate Friedman <kate.friedman@noaa.gov>
Date:   Fri Apr 21 03:11:51 2023 -0400

    Create fix file issue template (#1495)

    Create fix_file.md template file for new fix file request issue. This should help formalize the process and document updates.

    New issue will auto-assign to @KateFriedman-NOAA and @WalterKolczynski-NOAA (the developers with access to make fix files changes).

    Fixes #1492

commit 35942896ca4eeef243fe35d47416be64fe0058ff
Author: Kate Friedman <kate.friedman@noaa.gov>
Date:   Thu Apr 20 10:00:23 2023 -0400

    Update TC_tracker version to v1.1.15.6

    New ens_tracker.v1.1.15.6 tag installed on supported platforms. Adds Jet support and moves package to use new EPIC-installed hpc-stacks on R&Ds.

    Refs #1463

commit 86c3923bf60b1ce39165070bf2e5c3d60193d6dd
Author: Kate Friedman <kate.friedman@noaa.gov>
Date:   Thu Apr 20 09:39:56 2023 -0400

    Update GSI-Monitor hash to reflect recent assimilation changes.

    New GSI-Monitor hash to 45783e3 to update two fix files.

    Refs #1483

commit 2f347f6ddc770f2524394af25561a8da0d8dfb50
Author: Kate Friedman <kate.friedman@noaa.gov>
Date:   Wed Apr 19 15:54:19 2023 -0400

    Fit2Obs updates for package reorganization and invocation via module (#1484)

    The Fit2Obs repo has been reorganized to meet a few NCO standards and to add a module for invoking it from other packages.

    Refs #1472

commit b2ed8648f80946de85983a51664b120540854cc9
Author: RussTreadon-NOAA <26926959+RussTreadon-NOAA@users.noreply.github.com>
Date:   Tue Apr 18 16:21:14 2023 -0400

    Refactor UFS-DA ATM var component to use python g-w (#1372)

    This PR contains UFS-DA ATM var changes in PR https://github.com/NOAA-EMC/global-workflow/pull/1354.

    Below is a list of changes in this PR
    - rename UFS-DA ATM var jobs `atmanalprep`, `atmanalrun`, and `atmanalpost` as `atmanlinit`, `atmanlrun`, and `atmanlfinal`, respectively
    - replace UFS-DA ATM var shell scripts with python scripts
    - rename UFS-DA ATM var j-jobs consistent with initialize, run, and finalize functions.  Update j-jobs to execute python scripts instead of shell scripts
    - rename UFS-DA ATM var rocoto jobs to be consistent with initialize, run, and finalize functions.  Update jobs to set python paths and execute renamed j-jobs
    - update rocoto workflow generation to new names for UFS-DA ATM var jobs
    - update UFS-DA ATM var job names in machine dependent `env` files to new job names
    - rename UFS-DA ATM var configuration files consistent with change in job names
    - add UFS-DA ATM yaml files for UFS-DA fix files, crtm files, and increments
    - add python class for UFS-DA ATM var analysis
    - link UFS-DA python increment conversion script from GDASApp to g-w `ush` directory

    The above changes are part of a larger g-w effort to transition from shell scripts to python.  UFS-DA Aerosol was the first GDASApp system to be converted.   This PR represents the second GDASApp system, UFS-DA atmospheric variational DA, to be converted.  PR #1373 contains changes to convert the UFS-DA ensemble DA to a python based approach.

    Fixes (in part) #1313
    Depends (in part) on PR #1370 and [GDASApp #388](https://github.com/NOAA-EMC/GDASApp/pull/388)

commit 70a7d99bb65fd7661d7d2bac10633c0dda5d39fd
Author: David Huber <69919478+DavidHuber-NOAA@users.noreply.github.com>
Date:   Tue Apr 18 10:26:00 2023 -0400

    Port the global workflow to Jet (#1301)

    Provides initial cycled and free-forecast support for the global workflow on Jet.  References #357.  Not included in this port is support for GLDAS, verif-global, and TC_tracker.

    Jet will eventually support the following, with the currently tested options bolded, on xjet and kjet partitions
    - uncoupled, cycled and free-forecast experiments at C48, C96, C192, C384, and C768 resolutions
    - coupled, free-forecast experiments (ATMA, ATMW, S2S, and S2SW) at C384
    ~Note that currently coupled ICs are not available on Jet, so only ATM-only experiments can performed.~

    Fixes #357

commit d2b268ab3d965c9a2cf998dd048ac7a3ee7dc36b
Author: Walter Kolczynski - NOAA <Walter.Kolczynski@noaa.gov>
Date:   Mon Apr 17 21:15:04 2023 -0400

    Consolidate wave parm files (#1477)

    When the new wave parm directory was created, the existing parm files
    were not moved into the new directory. These files were used for AWIPS,
    so not generally tested.

commit 8dcfaa6fbc5e0a94d44952f710f77c3b18ffa50d
Author: Walter Kolczynski - NOAA <Walter.Kolczynski@noaa.gov>
Date:   Mon Apr 17 13:37:26 2023 -0400

    Split MPMD stdout into tasks on slurm (#1469)

    It can be difficult to debug MPMD jobs because their logs are all written concurrently to a single file. While the use of tags to designate which task via the preamble and PS4 can help identify which line is from which task, it is still difficult to follow a single task through the log, particularly for larger MPMD jobs with dozens of tasks.

    Individual stdout files are now created by using the `srun` `--output` option. These files are written to the working directory (in `$DATA`).

    Fixes: #1468

commit 6e7e4f1db78bbb67d94d54bdcb0a021a626b01f1
Author: Henry R. Winterbottom <49202169+HenryWinterbottom-NOAA@users.noreply.github.com>
Date:   Mon Apr 17 09:59:01 2023 -0600

    GFS fixed-file YAMLs. (#1471)

    Add a few fixed-file YAMLs used in the GFS.

commit 2ec4125f67e6b6c1d8dee6f6fcf1d0798f587a31
Author: Rahul Mahajan <aerorahul@users.noreply.github.com>
Date:   Fri Apr 14 20:55:57 2023 -0400

    Initial blocks in place for forecast refactor work (#1466)

    This PR is a first in a series of PR for transforming the forecast job.
    This PR does not affect current function of the forecast job.
    This PR:
    - adds initial blocks to separate task specific and model configuration for the task blocks

commit d47f33f142824c0d2111f7e2f08c43f99b33bff4
Author: Walter Kolczynski - NOAA <Walter.Kolczynski@noaa.gov>
Date:   Fri Apr 14 15:51:14 2023 -0400

    Update buoys file and fix boundary point jobs (#1465)

    The buoy file used by the wave jobs ([wave_gfs.buoys](https://github.com/NOAA-EMC/global-workflow/blob/develop/parm/wave/wave_gfs.buoys)) was just a copy of [wave_gfs.buoys.dat](https://github.com/NOAA-EMC/global-workflow/blob/develop/parm/wave/wave_gfs.buoys.dat). In addition to being a duplicate, the file was a truncated version without any boundary points, causing boundary point jobs to fail.

    The duplicate file has been removed and replaced by a symlink to the full buoy list [wave_gfs.buoys.full](https://github.com/NOAA-EMC/global-workflow/blob/develop/parm/wave/wave_gfs.buoys.full). This maintains the provenance of the file and prevents the former duplicate from becoming out-of-sync. Users who still want to use the truncated buoy can change the target of the symlink to wave_gfs.buoys.dat.

    There are also a few minor bugs fixes that were necessary to get boundary point jobs to run:
    - `FHMAX_WAV_IBP` had been set in the bndpnt config file but not used in the j-job. This was invisible unless a user changed the value, since the config and j-job used the same default.
    - Checks against `FHMAX_WAV` would set the unused `FHMAX_WAV_IBP` to the max value instead of the `FHMAX_WAV_PNT` used for the loop. This is a problem when running for less than 180 h (the default value).
    - The boundary point bulletin job was not in the env job list for Orion (other machines have it).

    Now the boundary point jobs set `FHMAX_WAV_PNT` to `$FHMAX_WAV_IBP`. `FHMAX_WAV_IBP` was moved from the bndpnt config to config.wave so it is visible to bndpntbll as well.

    Fixes #1464

commit e496e393b16565207c227f4b69a5691d97098624
Author: Kate Friedman <kate.friedman@noaa.gov>
Date:   Wed Apr 12 15:59:00 2023 -0400

    Move Fit2Obs to stand-alone job (#1456)

    This PR moves the Fit2Obs invocation out of the vrfy job and into its own dedicated `fit2obs` job in the gdas suite. This new dedicated job uses the latest Fit2Obs tag `wflow.1.0`.

    The Fit2Obs requires a type of spin-up. The job looks back `VBACKUP_FITS` hrs and needs available inputs for that lookback cycle in the `ROTDIR`. The `jobs/JGDAS_FIT2OBS` script will first check that `xdate` (`CDATE` - `VBACKUP_FITS`) > `SDATE` and then if met, will check that the needed inputs exist.
    - If `xdate>SDATE` is not yet satisfied, the job will exit 0 with "Too early for FIT2OBS to run. Exiting.". The conditional is greater-than and not greater-than-or-equal since the first half cycle generally does not have some of the needed inputs (e.g. prepbufr). Thus the first half cycle is not included in the valid lookback cycles. This avoids erroneous job failures for the first cycle to run the Fit2Obs package. Additional logic could be introduced to include the half cycle if all available inputs are available.
    - If any of the needed inputs are missing the job will abort with "FATAL ERROR: FILE MISSING: ${file}".

    This spin-up means that the first cycles will run the job but exit 0 immediately. The 6th cycle (if `VBACKUP_FITS=24`) will be the first cycle to run the Fit2Obs package and produce output in the online archive.

    Changes:

    1. Remove fit2obs variables and settings from `config.vrfy` and into newly created `config.fit2obs` for `fit2obs` job.
    2. Remove fit2obs submission/invocation from `jobs/rocoto/vrfy.sh`.
    3. Create new `fit2obs` job scripts: `jobs/rocoto/fit2obs.sh` and `jobs/JGDAS_FIT2OBS`
    4. Add new `fit2obs` job to setup scripts: `workflow/applications.py` and `workflow/rocoto/workflow_tasks.py`
    5. Add new `fit2obs` job to all env files.
    6. Add new `fit2obs` job into `config.resources` (use 1 node on WCOSS2 and 3 nodes elsewhere).
    7. Add `export DO_FIT2OBS="YES"` to `config.base.emc.dyn`.

    Resolves #1405
    Resolves #1232

commit 363a2b47de11ab327408d2df20a3718f25062fa5
Author: David Huber <69919478+DavidHuber-NOAA@users.noreply.github.com>
Date:   Wed Apr 12 14:42:50 2023 -0400

    Rework arch job dependencies (#1455)

    This reworks the dependencies for arch tasks so that if there are no verification tasks selected and it is an uncoupled experiment, a dependency for the cycle's post jobs is added. It also fixes the dependency checks in rocoto.py to check for an empty list or string instead of checking the first element of a list, which may not exist if no dependencies are given. Lastly, it issues a warning to the user if there are no dependencies for any job.

    Fixes #1451

commit 7e661f4cd00cf99b12e55574318bbd0eb1a5eaa0
Author: RussTreadon-NOAA <26926959+RussTreadon-NOAA@users.noreply.github.com>
Date:   Wed Apr 12 10:36:58 2023 -0400

    Stage bias files for UFSDA aerosols (#1370)

    Updates UFSDA aerosols to stage bias files. Also adds in the threads and aprun commands for the run portion of the UFDA aero jobs.

    Fixes (in part) #1313.

commit d5ae3328fa4041b177357b1133f6b92e81c859d7
Author: Henry R. Winterbottom <49202169+HenryWinterbottom-NOAA@users.noreply.github.com>
Date:   Tue Apr 4 03:34:48 2023 -0600

    Add logging level to logger (#1442)

    This PR provides task-level support for the respective pygfs applications. As an example, logging-level may be defined within jobs/JGLOBAL_FORECAST as follows.

    ```
    #! /usr/bin/env bash

    source "${HOMEgfs}/ush/preamble.sh"
    source "${HOMEgfs}/ush/jjob_header.sh" -e "fcst" -c "base fcst"

    export LOGGING_LEVEL="DEBUG"
    ```

    This feature allows a user to change the logging level from the run-time environment rather than requiring modification of the respective pygfs module or task.

    Fixes #1438

commit de81c5911c308679366b97fda19f015b1388d9dc
Author: TerrenceMcGuinness-NOAA <terrence.mcguinness@cox.net>
Date:   Mon Apr 3 17:53:12 2023 -0400

    Update hash for GDASApp to db2f998 (#1443)

    When an update described below made a change to the HASH in the `${HOMEgfs}/sorc/checkout.sh` script for the corresponding GDASApp it was entered in error:

    _3e73038c - Use V2 version of fix files needed for Thompson MP (#1422) (7 days ago) <Rahul Mahajan>_

    Examining the GDASApp repo it should be confirmed that the correct HASH should be **db2f998**

    Fixes #1441

commit 0d1e993b2b5db6160c4a6b88b67899dc8e9754f8
Author: Kate Friedman <kate.friedman@noaa.gov>
Date:   Fri Mar 31 09:58:22 2023 -0400

    Remove para module paths for ncdiag on WCOSS2 (#1437)

    The ncdiag/1.0.0 module moved from para to prod on WCOSS2 on March 27th (RFC 10769).

    * Remove para m…
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
maintenance Regular updates and maintenance work
Projects
None yet
6 participants