satpy
satpy copied to clipboard
Add first draft reader for MWS onboard EPS-SG-A
This is a first draft reader for the EPS-SG MWS level-1b netCDF file format.
- [ ] Closes #xxxx
- [x] Tests added
- [ ] Fully documented
- [x] Add your name to
AUTHORS.md
if not there already
This is an early draft so far, and several things needs to be addressed:
- [x] Rearrange the
FrquencyRange
and related classes defined in the AAPP-MHS reader so they can be reused in several readers - [x] Add unittests for the reader
- [x] Decide how the channel comparisons should behave!
- [x] Add handling of auxiliary data sets, see FCI and VII readers
Here a sketch of some parts of the MWS temperature sounding channels, to illustrate the quadruple side bands (as for instance also seen on AMSU-A):
Codecov Report
Merging #2120 (40e8461) into main (acd0745) will increase coverage by
0.10%
. The diff coverage is98.93%
.
@@ Coverage Diff @@
## main #2120 +/- ##
==========================================
+ Coverage 94.03% 94.14% +0.10%
==========================================
Files 289 293 +4
Lines 44564 45091 +527
==========================================
+ Hits 41904 42449 +545
+ Misses 2660 2642 -18
Flag | Coverage Δ | |
---|---|---|
behaviourtests | 4.68% <0.00%> (-0.07%) |
:arrow_down: |
unittests | 94.79% <98.93%> (+0.09%) |
:arrow_up: |
Flags with carried forward coverage won't be shown. Click here to find out more.
Impacted Files | Coverage Δ | |
---|---|---|
satpy/readers/yaml_reader.py | 97.50% <ø> (+0.22%) |
:arrow_up: |
satpy/readers/pmw_channels_definitions.py | 97.60% <97.60%> (ø) |
|
satpy/readers/mws_l1b.py | 98.51% <98.51%> (ø) |
|
satpy/readers/aapp_mhs_amsub_l1c.py | 95.89% <100.00%> (+2.76%) |
:arrow_up: |
satpy/tests/reader_tests/test_mws_l1b_nc.py | 100.00% <100.00%> (ø) |
|
satpy/tests/test_dataset.py | 100.00% <100.00%> (ø) |
|
satpy/tests/test_yaml_reader.py | 99.60% <100.00%> (ø) |
|
satpy/tests/reader_tests/test_hrit_base.py | 96.55% <0.00%> (-1.67%) |
:arrow_down: |
satpy/readers/utils.py | 91.95% <0.00%> (-0.39%) |
:arrow_down: |
satpy/utils.py | 24.69% <0.00%> (-0.31%) |
:arrow_down: |
... and 23 more |
Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.
Coverage increased (+0.1%) to 94.741% when pulling 40e8461c7f5401540484e2f64d3845c4a90cf43c on adybbroe:add-epssg-mws-level1b-reader into acd074530f1eeaa860c1d18de22ecbfd75be8166 on pytroll:main.
I have a hard time deciding how the channel/band inter-comparison should behave here! :-|
Here, a quick example usage:
In [1]: from satpy import Scene
In [2]: AREAID = 'nsper_swe'
In [3]: FILENAMES = ['/path-to-my-epssg-mws-testdata/W_XX-EUMETSAT-Darmstadt,SAT,SGA1-MWS-1B-RAD_C_EUMT_20210609095009_G_D_20070912084321_20070912102225_T_N____.nc']
In [4]: scn = Scene(filenames=FILENAMES, reader='mws_l1b_nc')
In [5]: from satpy.dataset import DataQuery
In [6]: frq_24 = DataQuery(frequency_range=23.8)
In [7]: scn.load([frq_24])
In [8]: local = scn.resample(AREAID)
In [9]: local.show(frq_24)
It is also possible to load the data simply by specifying the channel number, like: scn.load(['1'])
LGTM. Regarding the title, is this still a first draft?
I changed the title. It is adding a reader. Then as this has been developed on test data and we cannot start testing and use it in real applications I suppose there might be things we would like to change and improve. But we don't know yet.