-
Notifications
You must be signed in to change notification settings - Fork 31
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
Add an OOPS-based application to recenter snow analysis #1102
Conversation
This is what a YAML would look like for this app:
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
A few thoughts, that may or may not be relevant:
- I don't see any land masks. In GFS, the land variables are defined (and usually zero) over non-land points. Is there any risk that this code could cause problems if we're not careful with the input files over non-land points?
- If we're recentering the snow depth, we should really re-center the other variables too. Is there other code in place to do this?
Also, see comment about making the routine names generic.
Thanks @ClaraDraper-NOAA . For 1, I didn't consider a mask since this will write out an increment and presumably the apply increment code will handle the masking, but I can look into how to add a mask here and see how difficult it would be. For 2, what other variables do you have in mind? The atmospheric fields will be recentered as part of the GSI Var/EnKF machinery. For land fields, we can add extra variables in the YAML with this executable. The original increment will be 0, but the recentering will give the ensemble an increment to be consistent with the deterministic. |
@ClaraDraper-NOAA A quick look seems like through the magic of JEDI I can pretty easily read in
or something like that to make it generic to zero out the increments where the mask value is between min and max |
For the increment file, we just have the surface file available. It is better to just keep the
And the state variables in current JEDI based snow analysis are [snodl,vtype,slmsk] for the Noah-MP LSM.
|
If the masking can be done easily (1/2 a day), I think's it worth it, just to keep things neat. However, you're right that since you're writing out increments here, the code that adds the increments will take care of the masking. |
I answered 1 below. For 2, when we meet tomorrow let's talk quickly about how this code would interact with the soil analysis code - which also requires recentering (which I haven't done). Long term, I think it'd be really useful if this code had the flexibility to recenter vars W and X without adding an increment (or adding a zero increment), while also recentering Y and Z with increments. |
…dasapp into feature/snow-recenter
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I don't want to approve a pr that ignores the ocean! But ...
@ClaraDraper-NOAA see if my latest additions match what you were thinking based on our discussion yesterday. I still want to do some quick spot checks to confirm its working as intended but otherwise I think this is ready for review again. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good to me. Thanks Cory.
* origin/develop: Update wcoss2.intel.lua (#1142) Add yaml file for prepobsaero task (#1141) Diffusion parameter yaml template (#1140) Adjust absolute float tolerance for variational and ensemble DA jjob tests (#1136) Insitu temp and salt (#1135) Adds letkf.yaml(.j2) (#1134) Add optional testing block to 3dvar and lgetkf input YAMLs for jjobs (#1129) updates to build and run some ctests on WCOSS2 (#1122) Addin a GFSv17 ctest (#1130) Feature/rtofs in situ (#1110) update jcb-gdas hash to bring in satwnd yaml changes (#1128) Optionally run specified rocoto task as part of the ctests (#1121) Add build capability to Gaea-C5 (#1101) Python Converter and Json for the ADPUPA BUFR DUMP (#1115) Revert "Fix ice water FV3 increment variable name and add a few more … (#1125) Satwnd and variable name-convention updates for jcb implementation in GDASApp (#1119) Add inverse distance weighting option to superob function (#1116) Resume the Marine Vrfy Task on ctests (#1107) Replicate the creation of the gw-ci cycling test (#1114) Added YAML, JSON, python files for assimilating LEOGEO satwinds (#1099) Add an OOPS-based application to recenter snow analysis (#1102) Fix ice water FV3 increment variable name and add a few more (#1112) Update hera.intel.lua (#1109)
* develop: Update wcoss2.intel.lua (#1142) Add yaml file for prepobsaero task (#1141) Diffusion parameter yaml template (#1140) Adjust absolute float tolerance for variational and ensemble DA jjob tests (#1136) Insitu temp and salt (#1135) Adds letkf.yaml(.j2) (#1134) Add optional testing block to 3dvar and lgetkf input YAMLs for jjobs (#1129) updates to build and run some ctests on WCOSS2 (#1122) Addin a GFSv17 ctest (#1130) Feature/rtofs in situ (#1110) update jcb-gdas hash to bring in satwnd yaml changes (#1128) Optionally run specified rocoto task as part of the ctests (#1121) Add build capability to Gaea-C5 (#1101) Python Converter and Json for the ADPUPA BUFR DUMP (#1115) Revert "Fix ice water FV3 increment variable name and add a few more … (#1125) Satwnd and variable name-convention updates for jcb implementation in GDASApp (#1119) Add inverse distance weighting option to superob function (#1116) Resume the Marine Vrfy Task on ctests (#1107) Replicate the creation of the gw-ci cycling test (#1114) Added YAML, JSON, python files for assimilating LEOGEO satwinds (#1099) Add an OOPS-based application to recenter snow analysis (#1102) Fix ice water FV3 increment variable name and add a few more (#1112) Update hera.intel.lua (#1109)
into feature/rename_atm * 'feature/rename_atm' of https://github.com/NOAA-EMC/GDASApp: Update wcoss2.intel.lua (#1142) Add yaml file for prepobsaero task (#1141) Diffusion parameter yaml template (#1140) Adjust absolute float tolerance for variational and ensemble DA jjob tests (#1136) Insitu temp and salt (#1135) Adds letkf.yaml(.j2) (#1134) Add optional testing block to 3dvar and lgetkf input YAMLs for jjobs (#1129) updates to build and run some ctests on WCOSS2 (#1122) Addin a GFSv17 ctest (#1130) Feature/rtofs in situ (#1110) update jcb-gdas hash to bring in satwnd yaml changes (#1128) Optionally run specified rocoto task as part of the ctests (#1121) Add build capability to Gaea-C5 (#1101) Python Converter and Json for the ADPUPA BUFR DUMP (#1115) Revert "Fix ice water FV3 increment variable name and add a few more … (#1125) Satwnd and variable name-convention updates for jcb implementation in GDASApp (#1119) Add inverse distance weighting option to superob function (#1116) Resume the Marine Vrfy Task on ctests (#1107) Replicate the creation of the gw-ci cycling test (#1114) Added YAML, JSON, python files for assimilating LEOGEO satwinds (#1099) Add an OOPS-based application to recenter snow analysis (#1102) Fix ice water FV3 increment variable name and add a few more (#1112)
Closes #1097
This adds a new GDASApp utility that will:
Effectively recentering the ensemble to the deterministic
This is just the recentering utility, the workflow will need to be modified to use
fregrid
to interpolate, and then theland-apply-inc
code will need to be exercised on every member