-
Notifications
You must be signed in to change notification settings - Fork 4
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
[End-to-End Test Code Sprint] Bufr to Ioda converter for SEVIRI METEOSAT-8 and to METEOSAT-11 #99
Comments
@ADCollard The plots show that both JEDI and GSI final obs error were almost 2.5 k everywhere. The min and max values on the plots are: vmin=2.5000, vmax=2.5001 |
@azadeh-gh Thanks! I just spotted the "+2.5" on the color bar that is what was confusing me. Sorry for that. This looks good. |
I worked on the seviri radiance a bit while I am in Tawian. Three suggestions: |
@emilyhcliu Thank you Emily.
|
The distribution of QC'd obs is much better than before, but the O-Bs don't match particularly well either. So I am aslo guessing there is a time level issue. |
My color bar is too long. I should make it shorter (like the colorbar in your plots) so my globe will be bigger. |
This exercise of using IODA obs file from GSI diagnostics is to check if the QC filters work as expected without thinning. |
Here is the channel statistics after QC (unthinned) between GSI and UFO (using IODA obs file generated from GSI)UFO and GSI match well for all channels UFO Statistics (number of observation passed QC for each channel)
UFO Statistics (number of observations passed QC for each channel) --- look at the 3rd column
|
@azadeh-gh It looks like there are still residual QC differences at the very bottom. Can you zoom in a report the QC flag there in the GSI? |
@ADCollard The PreQC=55 on those locations. |
@azadeh-gh amd @ADCollard |
Nice @emilyhcliu . Is it still the cloud amount? |
I checked the Python converter code. The fix for the cloud/clear amount is not correct. The cloud/clear amount should be one dimension (Location), not two dimensions (Location, Channel). Here is the number of observations passed QC (unthinned) for m08 and m11 using the IODA obs file converted from BUFR (Python converter)
Here is the number of observations passed QC (3rd column; unthinned) for m08 and m11 from GSI:
The numbers of observations passed QC (unthinned) match well between GSI and JEDI for all channels (active and passive) I will post the plots for channel 5 here later (before and after QC) |
@emilyhcliu but I checked the cloud amount values in bufr file and the cloud amount changes in each channel. |
Here is the updated Python code on ORION: I will leave the test with |
The dimension of the cloud/clear amount is not correct. |
@emilyhcliu in the python script you changed this line: q.add("cloudFree", "/RPSEQ7/NCLDMNT") |
@azadeh-gh You have more data QCed out over sea-ice area. I think your O-Fs near the south pole must be very different from GSI. Please plot the O-F without QC (unthinned). If you see large differences between GSI and JEDI. The difference must be coming from HofX. So, compare the HofX between GSI and JEDI.
@azadeh-gh Yes, the cloudFree (clear fraction) should be read from channel 5. |
@azadeh-gh In the IODA obs file from GSI (see below), the dimensions of cloud and clear amount are "Location" only/
These are cloud amounts at each location without channel dependency. |
@azadeh-gh Please try the updated python converter code in your end-to-end test for unthinned case and post your plots for channel 5 here. I will post mine here for your reference. |
Please note that there are 6 time levels. Please post seviri m08 channel 5 for time levels 1, 3, and 6. |
@emilyhcliu Thank you, Emily. I will update the plots. |
@azadeh-gh I updated the ratio of the plots (see plots above) so the globe is bigger. |
@azadeh-gh @emilyhcliu I think you are both right. The confusion arises because in the GSI only channel 5 is used to generate the "cloud free" field even though the BUFR defines a cloud fraction for each channel. We (@azadeh-gh and me) were focussed on replicating the BUFR messages correctly and had not had not taken the second step yet.
Your original code did not specify a channel:
which is why it was picking up the wrong channel in the original version. Emily explicitly adds the 5:
But (and this is my caveat), should the converter be producing what the GSI eventually wants (just channel 5) or should it properly replicate what is in the BUFR (channel dependent)? I would argue for the latter (i.e., @azadeh-gh 's latest version of the converter and to explicitly specify channel 5 in that UFO YAML). Thoughts? |
One more thing. Looking in ObsSpace.yaml,
If we want to retain the original channel information we should use
|
@emilyhcliu @ADCollard |
@emilyhcliu @ADCollard Example of No thinning but passed QCs for time level 6, The observations that rejected in GSI but passed in JEDI had preQC= 5 (ifail_surface_qc=5, Reject due to not using over this surface in qc routine). a few obs rejected in JEDI but passed in GSI with EffectiveQC=19Thinned and passed QCs |
What we have if OK. I use cloudFree
@azadeh-gh, Two questions: |
Both ways are OK with me. |
|
I asked because the two versions of the converter create cloud amount in different dimensions. One of them has an additional channel dimension, so the YAML where the variable is used should be modified accordingly. |
@emilyhcliu @ADCollard Updated YAMLs and python converter in PR#766 |
Thinned passed QcsJEDI |
Spinning Enhanced Visible and InfraRed Imager (SEVIRI) from METEOSAT-8 and to METEOSAT-11 GDASApp end-to-end testing.
The text was updated successfully, but these errors were encountered: