Skip to content

Add importer for DWD radar data products and reprojection onto a regular grid as part of #464 #483

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

Draft
wants to merge 4 commits into
base: master
Choose a base branch
from

Conversation

m-rempel
Copy link

Implementation of an importer for DWD radar data products and a reprojection onto a regular grid. These are necessary to test the implementation of the reduced-space EnKF combination approach (Nerini et al., 2019) and to compare the results with the already existing code base that uses DWD data.

@RubenImhoff
Copy link
Contributor

Many thanks for this contribution, @m-rempel!

Although we have discussed within the pysteps community to limit the number of new importers, I can imagine that this importer is a useful addition to allow for the ensemble Kalman filter blending setup, testing and possibly some gallery examples. I will have a quick look to see if there is any overlap with other HDF5 importers to see if we can shorten the code a bit. @dnerini, what do you think?

Regarding the addition to the reprojection, the code looks good, but at this moment pysteps does not yet support xarray (we will from version 2). Is there a way to rewrite this approach without xarray? If not, we could consider these improvements as part of the pysteps v2 release. @dnerini, what is your take on this?


except:

d[key] = value.value
Copy link
Contributor

Choose a reason for hiding this comment

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

What exception are you expecting here?


def _read_hdf5_cont(f, d):
"""
Recursively read nested dictionaries from a HDF5 file.
Copy link
Contributor

Choose a reason for hiding this comment

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

Good to add some extra docstrings here about what the input variables are and what you expect to return.



def _identify_info_bits(data):

Copy link
Contributor

Choose a reason for hiding this comment

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

Could you also add some docstrings here?

----------
filename: str
Name of the file to import.
product: {'WX','RX','EX','RY','RW','AY','RS','YW','WN'}
Copy link
Contributor

Choose a reason for hiding this comment

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

Would it make sense to call this variable product_name? Then the prod variable can get a longer, more descriptive name as well.

Geodata for RADOLAN products. Hard-coded here, cause there is only basic
information about the projection in the header of the binary RADOLAN
files.
"""
Copy link
Contributor

@RubenImhoff RubenImhoff Jul 1, 2025

Choose a reason for hiding this comment

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

Add some more docstrings here, too (input parameters and output). I have already added much more docstrings, but feel free to edit them from here.

@RubenImhoff
Copy link
Contributor

Almost forgot to mention it, but we will have to add some tests if we continue with this approach! :)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Status: No status
Development

Successfully merging this pull request may close these issues.

2 participants