Skip to content

add option to ignore qm=9 for T2m and q2m in prepbufr files.#866

Merged
RussTreadon-NOAA merged 5 commits into
NOAA-EMC:developfrom
ClaraDraper-NOAA:feature/ignore_2mQC
Apr 22, 2025
Merged

add option to ignore qm=9 for T2m and q2m in prepbufr files.#866
RussTreadon-NOAA merged 5 commits into
NOAA-EMC:developfrom
ClaraDraper-NOAA:feature/ignore_2mQC

Conversation

@ClaraDraper-NOAA
Copy link
Copy Markdown
Contributor

@ClaraDraper-NOAA ClaraDraper-NOAA commented Apr 16, 2025

Description

Updates read_prepbufr with an explicit flag (ignore_2mQM) to over-ride quality mark of 9 (no obs error) in prepbufr files for q2m and T2m. Previously, these quality marks were ignored for all cases when the 2m obs are assimilated. With the coming update to the obs table in GSI-fix PR 33 to include the obs errors in the prepbufr, we now only need to ignore the quality marks when using archived prepbufr files (i.e., for the reanalysis).

Also fixes bug that was preventing q2m from being assimilated, by not properly resettings the quality mark.

Resolves #861

Type of change

Please delete options that are not relevant.

  • Bug fix (non-breaking change which fixes an issue)
  • [ x] New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to not work as expected)
  • This change requires a documentation update

How Has This Been Tested?

Compared:
-ignore_2mQM = .true. and original obs table (with no obs errors for q2m and T2m)
-ignore_2mQM = .False. and obs table from GSI-fix PR 33 .

The two are not the same, but differences can be explained. Specifically, the latter excludes a handful more obs that the former, due to these obs have quality mark = 9 due to missing pressure obs errors.

Checklist

  • [x ] My code follows the style guidelines of this project
  • [ x] I have performed a self-review of my own code
  • [ x] I have commented my code, particularly in hard-to-understand areas
  • New and existing tests pass with my changes
  • Any dependent changes have been merged and published

Is dependent on GSI-fix PR 33

@ClaraDraper-NOAA
Copy link
Copy Markdown
Contributor Author

Creating as a draft for now, until GSI-fix PR 33 is merged.

@jswhit2

@RussTreadon-NOAA
Copy link
Copy Markdown
Contributor

We should run GSI ctests with the fix files changes from GSI-fix PR #33.

Copy link
Copy Markdown
Contributor

@RussTreadon-NOAA RussTreadon-NOAA left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Consider echoing the values of hofx_2m_sfcfile and ignore_2mQM to stdout when gsi.x runs.

Comment thread src/gsi/gsimod.F90
@ClaraDraper-NOAA
Copy link
Copy Markdown
Contributor Author

We should run GSI ctests with the fix files changes from GSI-fix PR #33.

Running them now. I'll confirm once they've passed.

@ClaraDraper-NOAA
Copy link
Copy Markdown
Contributor Author

We should run GSI ctests with the fix files changes from GSI-fix PR #33.

Running them now. I'll confirm once they've passed.

The global tests have passed on hera, using this PR and GSI-fix PR 33.

@RussTreadon-NOAA
Copy link
Copy Markdown
Contributor

@ClaraDraper-NOAA , GSI-fix PR #33 has been merged into GSI-fix develop. Done at 8ea29cd.

The fix submodule hash in this PR can be updated.

Copy link
Copy Markdown
Contributor

@RussTreadon-NOAA RussTreadon-NOAA left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Approve pending updating of fix submodule to 8ea29cd

@RussTreadon-NOAA
Copy link
Copy Markdown
Contributor

@ClaraDraper-NOAA , we need two peer reviews and approvals of this PR before we can merge into develop. Who would you like me to assign as peer reviewers?

@RussTreadon-NOAA RussTreadon-NOAA marked this pull request as ready for review April 18, 2025 10:28
@ClaraDraper-NOAA
Copy link
Copy Markdown
Contributor Author

ClaraDraper-NOAA commented Apr 18, 2025

Approve pending updating of fix submodule to 8ea29cd

I've update the hash for the fix submodule.

@ClaraDraper-NOAA
Copy link
Copy Markdown
Contributor Author

@ClaraDraper-NOAA , we need two peer reviews and approvals of this PR before we can merge into develop. Who would you like me to assign as peer reviewers?

@jiaruidong2017 , @ilianagenkova , and/or @tsga would all be good options.

Comment thread src/gsi/read_prepbufr.f90 Outdated
tqm(k)=2
if (kx==187) obserr(3,k)=2.0_r_double
if (kx==181) obserr(3,k)=2.0_r_double
if (kx==183) obserr(3,k)=2.0_r_double
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
if (kx==183) obserr(3,k)=2.0_r_double

Do you think it is necessary to discard the obs type 183 and keep consistent with new obs error table? If yes, please make change for the qob case below.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Good point. I removed 183 from the global_2m_land option higher up.

Copy link
Copy Markdown

@jiaruidong2017 jiaruidong2017 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good, and great efforts.

Comment thread fix
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The error table changes look good.

The global_convinfo.txt file changes achieve the following:

  • allow GOES-19 winds to be assimilated (types 245,246,247) , monitored (240) , skipped altogether (251) which is the intend here, I believe
  • allow saildrone (type 180,280 , subtype 02) to be monitoried
  • adds gps types 803 and 804
    If that was the goal, then the changes are good.

@RussTreadon-NOAA
Copy link
Copy Markdown
Contributor

Thank you @ilianagenkova for noting the impact of the updated global_convinfo.txt. Tagging @ADCollard and @XuanliLi-NOAA for their input regarding what your comment / question.

Andrew and Xuanli: Do we want the noted changes to global_convinfo.txt to be the defaults for GSI develop?

@XuanliLi-NOAA
Copy link
Copy Markdown
Contributor

@RussTreadon-NOAA: Yes, please add gps 803 and 804 in global_convinfo as the default settings for GSI.

@ClaraDraper-NOAA
Copy link
Copy Markdown
Contributor Author

@RussTreadon-NOAA Would you mind if I updated the GSI-fix hash once more in this PR to include the new reject list as well (merged in PR ? It's a minor udpdate, adding a single SYNOP station to the reject list for T and q.

@RussTreadon-NOAA
Copy link
Copy Markdown
Contributor

@ClaraDraper-NOAA : updating the GSI-fix hash is fine. Once the updated hash is in ClaraDraper-NOAA:feature/ignore_2mQC we need to rerun ctests and and get a new round of peer reviews & approvals.

@ClaraDraper-NOAA
Copy link
Copy Markdown
Contributor Author

Thanks @RussTreadon-NOAA . I'll request approvals once the tests have passed.

@ClaraDraper-NOAA
Copy link
Copy Markdown
Contributor Author

The global ctests have passed on hera with the new hash for GSI-fix, which includes an initial station to be rejected for T and q obs.

/scratch2/BMC/gsienkf/Clara.Draper/gerrit-hera/PRtesting/gsi/GSI-EMC/build $ ctest -R global
Test project /scratch2/BMC/gsienkf/Clara.Draper/gerrit-hera/PRtesting/gsi/GSI-EMC/build
Start 1: global_4denvar
1/2 Test #1: global_4denvar ................... Passed 2205.11 sec
Start 6: global_enkf
2/2 Test #6: global_enkf ...................... Passed 1428.31 sec

100% tests passed, 0 tests failed out of 2

Total Test time (real) = 3633.48 sec

@ilianagenkova
Copy link
Copy Markdown
Contributor

ilianagenkova commented Apr 21, 2025

@ClaraDraper-NOAA and @RussTreadon-NOAA, I missed the moment when adding fix/rejectlist_global.txt was discussed. I am falling behind on all the GSI changes, yet based on past experience I'd say that introducing fix/rejectlist_global.txt is probably a good idea. Is it just the Land DA that will read/use that file?

Another way to "turn off" a single station (not an entire kx data type!) would have been through the sdmedit list ( /lfs/h1/ops/prod/dcom/sdmedit ) - including a station in that list will assign the observations a QM value such that all models will filter out the data.

@ADCollard, tagging you for awareness.

@RussTreadon-NOAA
Copy link
Copy Markdown
Contributor

WCOSS2 ctests

Install ClaraDraper-NOAA:feature/ignore_2mQC at 05b07b8 and develop at bed9513 on Cactus. Run ctests with following results

Test project /lfs/h2/emc/da/noscrub/russ.treadon/git/gsi/pr866/build
    Start 1: global_4denvar
    Start 2: rtma
    Start 3: rrfs_3denvar_rdasens
    Start 4: hafs_4denvar_glbens
    Start 5: hafs_3denvar_hybens
    Start 6: global_enkf
1/6 Test #3: rrfs_3denvar_rdasens .............   Passed  731.18 sec
2/6 Test #6: global_enkf ......................   Passed  922.15 sec
3/6 Test #2: rtma .............................   Passed  1035.32 sec
4/6 Test #5: hafs_3denvar_hybens ..............   Passed  1341.54 sec
5/6 Test #4: hafs_4denvar_glbens ..............***Failed  1401.03 sec
6/6 Test #1: global_4denvar ...................   Passed  1984.07 sec

83% tests passed, 1 tests failed out of 6

Total Test time (real) = 1984.09 sec

The hafs_4denvar_glbens failure is due to

The runtime for hafs_4denvar_glbens_hiproc_updat is 269.198716 seconds.  This has exceeded maximum allowable threshold time of 264.816746 seconds, resulting in Failure of timethresh2 the regression test.

This is not a fatal failure.

Note: The updated global_convinfo.txt in this PR turns on assimilation of gpsro data from satellite ids 803 and 804. Thus, merger of this PR into GSI develop alters global gsi.x analysis results. @xuanli confirms that we want this change in GSI develop. This note is added as a reminder to all so no one is caught off guard by altered global analysis results after this PR is merged into develop.

@RussTreadon-NOAA
Copy link
Copy Markdown
Contributor

@ClaraDraper-NOAA: This PR can be scheduled for merger into GSI develop pending one or more peer reviews and approvals. Please reach out to peer reviewers.

Copy link
Copy Markdown
Contributor

@RussTreadon-NOAA RussTreadon-NOAA left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Approve pending sufficient peer reviews and approvals.

@RussTreadon-NOAA RussTreadon-NOAA merged commit 0912493 into NOAA-EMC:develop Apr 22, 2025
@RussTreadon-NOAA
Copy link
Copy Markdown
Contributor

@ClaraDraper-NOAA and @jiaruidong2017 : Have you opened a g-w issue to update the staged GSI fix files. g-w does NOT get GSI fix files from $HOMEgfs/sorc/gsi_enk.fd/fix. g-w gets GSI fix files from $HOMEgfs/fix/gsi

@jiaruidong2017
Copy link
Copy Markdown

jiaruidong2017 commented Apr 22, 2025

Thanks @RussTreadon-NOAA for your information. We have opened an issue in g-w NOAA-EMC/global-workflow#3546

xyzemc pushed a commit to xyzemc/GSI_develop-v16-tms that referenced this pull request Feb 27, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Improve processing of T2m and q2m in read_prepbufr

7 participants