xradar icon indicating copy to clipboard operation
xradar copied to clipboard

Bugs in NEXRAD L2 reader

Open ghiggi opened this issue 7 months ago • 4 comments

  • xradar version: 0.5.0
  • Python version: 3.11
  • Operating System: Linux

Description

I identified two bugs affecting the NEXRAD L2 reader.

  • The first bug cause the time coordinates and time_coverage variables to be shifted by 1 day compared to the actual time. This impacts all NEXRAD L2 files.
  • The second bug is related to an indexing error arising with some NEXRAD files.

Can someone have a look at it ? Maybe @mgrover1 who implemented the reader?

Here below I provide MCVE and error logs.


MCVE - Time is shifted by 1 day

import xradar as xd
import fsspec # s3fs need to be installed 
filepath = 'noaa-nexrad-level2/2023/08/20/KNKX/KNKX20230820_220808_V06' 
file = fsspec.open_local(
    f"simplecache::s3://{filepath}",
    s3={"anon": True},
    filecache={"cache_storage": "."},
dt_gr = xd.io.open_nexradlevel2_datatree(file)
print(dt_gr["time_coverage_start"])  # '2023-08-21T22:08:08Z'
print(dt_gr["time_coverage_end"]) # '2023-08-21T22:13:33Z'
print(dt_gr["sweep_0"]["time"]) # you will see the date is +1 day

MCVE - IndexError: list index out of range

import xradar as xd
import fsspec # s3fs need to be installed 
filepath = 'noaa-nexrad-level2/2023/08/19/KNKX/KNKX20230819_220909_V06'
file = fsspec.open_local(
    f"simplecache::s3://{filepath}",
    s3={"anon": True},
    filecache={"cache_storage": "."},
dt_gr = xd.io.open_nexradlevel2_datatree(file)

Error log:

  File ~/micromamba/envs/gpm-api-dev/lib/python3.11/site-packages/xradar/io/backends/nexrad_level2.py:485 in get_sweep
    moments = self.msg_31_data_header[sweep_number]["msg_31_data_header"].keys()

IndexError: list index out of range

ghiggi avatar Jul 26 '24 10:07 ghiggi