satpy icon indicating copy to clipboard operation
satpy copied to clipboard

Add combined GRIB reader for both SEVIRI and FCI L2 products

Open dnaviap opened this issue 1 year ago • 5 comments

Add combined GRIB reader that can be used for both SEVIRI and FCI L2 products.

  • [X] Tests added
  • [X] Fully documented
  • [X] Add @dnaviap to AUTHORS.md

dnaviap avatar Jan 11 '24 12:01 dnaviap

Thanks for working on this @dnaviap :) Before reviewing in more detail, I think we need some refactoring of the files:

  1. Instead of having a eum_l2_grib.yaml files I suggest to keep the seviri_l2_grib.yaml file (which is still there) and add the FCI cloud mask dataset in a new fci_l2_grib.yaml file. That way we don't change the user interface to the reader. That's also how it's being done for the BUFR reader (#2603)
  2. eum_l2_grib.py should be compatible with both FCI and SEVIRI data, meaning that seviri_l2_grib.py should become obsolete and should therefore be removed.
  3. Similarly, the new test file test_eum_l2_grib.py should make test_seviri_l2_grib.py obsolete, meaning it can be removed as well.

strandgren avatar Jan 11 '24 16:01 strandgren

The refactoring is complete and tested.

dnaviap avatar Jan 12 '24 15:01 dnaviap

Thanks for the refactoring! :) See a couple of comments inline.

Can you please also modify the doc-string of the _scale_earth_axis method to read:

    def _scale_earth_axis(data):
        """Scale Earth axis data to make sure the value matched the expected unit [m].
        
        The earthMinorAxis value stored in the MPEF aerosol over sea product prior to December 12, 2022 has the wrong unit and this method provides a flexible work-around by making sure that all earth axis values are scaled such
        that they are on the order of millions of meters as expected by the reader. 
        
        """

That was a fix implemented by me a while ago when we noticed some issues in one of the products, and although it has been fixed in the product, the archived files will still have the issue meaning that the fix is still useful to have in the reader.

dnaviap avatar May 13 '24 08:05 dnaviap

Codecov Report

All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 95.95%. Comparing base (fc95ee1) to head (12f1860). Report is 2 commits behind head on main.

Additional details and impacted files
@@            Coverage Diff             @@
##             main    #2717      +/-   ##
==========================================
+ Coverage   95.94%   95.95%   +0.01%     
==========================================
  Files         366      368       +2     
  Lines       53584    53671      +87     
==========================================
+ Hits        51412    51501      +89     
+ Misses       2172     2170       -2     
Flag Coverage Δ
behaviourtests 4.03% <0.00%> (-0.01%) :arrow_down:
unittests 96.05% <100.00%> (+0.01%) :arrow_up:

Flags with carried forward coverage won't be shown. Click here to find out more.

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.

codecov[bot] avatar Jun 24 '24 08:06 codecov[bot]

Pull Request Test Coverage Report for Build 9743868855

Details

  • 168 of 168 (100.0%) changed or added relevant lines in 5 files are covered.
  • No unchanged relevant lines lost coverage.
  • Overall coverage increased (+0.01%) to 96.056%

Totals Coverage Status
Change from base Build 9702977764: 0.01%
Covered Lines: 51732
Relevant Lines: 53856

💛 - Coveralls

coveralls avatar Jul 01 '24 12:07 coveralls