Skip to content
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

Failed to load AVHRR LAC data #2001

Closed
BigShuiTai opened this issue Jan 29, 2022 · 4 comments
Closed

Failed to load AVHRR LAC data #2001

BigShuiTai opened this issue Jan 29, 2022 · 4 comments

Comments

@BigShuiTai
Copy link

Describe the bug
Failed to load AVHRR LAC data

To Reproduce

# Your code here
scn = Scene(['NSS.LHRR.NF.D88278.S0708.E0716.B1963535.WI'], reader='avhrr_l1b_gaclac')
scn.load([10.8])

Actual results

/root/miniconda3/lib/python3.8/site-packages/pygac/reader.py:274: RuntimeWarning: Unexpected number of scanlines!
  warnings.warn("Unexpected number of scanlines!",
Failed to load DataID(name='longitude', resolution=1050, modifiers=()) from <GACLACFile: 'NSS.LHRR.NF.D88278.S0708.E0716.B1963535.WI'>
Traceback (most recent call last):
  File "/root/miniconda3/lib/python3.8/site-packages/satpy/readers/yaml_reader.py", line 687, in _load_dataset
    projectable = fh.get_dataset(dsid, ds_info)
  File "/root/miniconda3/lib/python3.8/site-packages/satpy/readers/avhrr_l1b_gaclac.py", line 132, in get_dataset
    self.read_raw_data()
  File "/root/miniconda3/lib/python3.8/site-packages/satpy/readers/avhrr_l1b_gaclac.py", line 126, in read_raw_data
    self.reader.read(self.filename)
  File "/root/miniconda3/lib/python3.8/site-packages/pygac/pod_reader.py", line 298, in read
    self.spacecraft_name = self.spacecraft_names[self.spacecraft_id]
KeyError: 32
Could not load dataset 'DataID(name='longitude', resolution=1050, modifiers=())': "Could not load DataID(name='longitude', resolution=1050, modifiers=()) from any provided files"
Traceback (most recent call last):
  File "/root/miniconda3/lib/python3.8/site-packages/satpy/readers/yaml_reader.py", line 839, in _load_dataset_with_area
    ds = self._load_dataset_data(file_handlers, dsid, **kwargs)
  File "/root/miniconda3/lib/python3.8/site-packages/satpy/readers/yaml_reader.py", line 711, in _load_dataset_data
    proj = self._load_dataset(dsid, ds_info, file_handlers, **kwargs)
  File "/root/miniconda3/lib/python3.8/site-packages/satpy/readers/yaml_reader.py", line 696, in _load_dataset
    raise KeyError(
KeyError: "Could not load DataID(name='longitude', resolution=1050, modifiers=()) from any provided files"
/root/miniconda3/lib/python3.8/site-packages/numpy/core/fromnumeric.py:3440: RuntimeWarning: Mean of empty slice.
  return _methods._mean(a, axis=axis, dtype=dtype,
/root/miniconda3/lib/python3.8/site-packages/numpy/core/_methods.py:189: RuntimeWarning: invalid value encountered in double_scalars
  ret = ret.dtype.type(ret / rcount)
Could not load dataset 'DataID(name='latitude', resolution=1050, modifiers=())': max() arg is an empty sequence
Traceback (most recent call last):
  File "/root/miniconda3/lib/python3.8/site-packages/satpy/readers/yaml_reader.py", line 839, in _load_dataset_with_area
    ds = self._load_dataset_data(file_handlers, dsid, **kwargs)
  File "/root/miniconda3/lib/python3.8/site-packages/satpy/readers/yaml_reader.py", line 711, in _load_dataset_data
    proj = self._load_dataset(dsid, ds_info, file_handlers, **kwargs)
  File "/root/miniconda3/lib/python3.8/site-packages/satpy/readers/yaml_reader.py", line 687, in _load_dataset
    projectable = fh.get_dataset(dsid, ds_info)
  File "/root/miniconda3/lib/python3.8/site-packages/satpy/readers/avhrr_l1b_gaclac.py", line 136, in get_dataset
    _, data = self.reader.get_lonlat()
  File "/root/miniconda3/lib/python3.8/site-packages/pygac/reader.py", line 560, in get_lonlat
    self.update_meta_data()
  File "/root/miniconda3/lib/python3.8/site-packages/pygac/reader.py", line 491, in update_meta_data
    self.get_sun_earth_distance_correction())
  File "/root/miniconda3/lib/python3.8/site-packages/pygac/reader.py", line 483, in get_sun_earth_distance_correction
    self.get_times()
  File "/root/miniconda3/lib/python3.8/site-packages/pygac/reader.py", line 429, in get_times
    year, jday, msec = self.correct_times_median(year=year, jday=jday,
  File "/root/miniconda3/lib/python3.8/site-packages/pygac/reader.py", line 841, in correct_times_median
    jday = np.where(if_wrong_jday < 0, max(jday), jday)
ValueError: max() arg is an empty sequence
Could not load dataset 'DataID(name='4', wavelength=WavelengthRange(min=10.3, central=10.8, max=11.3, unit='µm'), resolution=1050, calibration=<calibration.brightness_temperature>, modifiers=())': max() arg is an empty sequence
Traceback (most recent call last):
  File "/root/miniconda3/lib/python3.8/site-packages/satpy/readers/yaml_reader.py", line 839, in _load_dataset_with_area
    ds = self._load_dataset_data(file_handlers, dsid, **kwargs)
  File "/root/miniconda3/lib/python3.8/site-packages/satpy/readers/yaml_reader.py", line 711, in _load_dataset_data
    proj = self._load_dataset(dsid, ds_info, file_handlers, **kwargs)
  File "/root/miniconda3/lib/python3.8/site-packages/satpy/readers/yaml_reader.py", line 687, in _load_dataset
    projectable = fh.get_dataset(dsid, ds_info)
  File "/root/miniconda3/lib/python3.8/site-packages/satpy/readers/avhrr_l1b_gaclac.py", line 160, in get_dataset
    data = self._get_channel(key)
  File "/root/miniconda3/lib/python3.8/site-packages/satpy/readers/avhrr_l1b_gaclac.py", line 259, in _get_channel
    self.calib_channels = self.reader.get_calibrated_channels()
  File "/root/miniconda3/lib/python3.8/site-packages/pygac/reader.py", line 503, in get_calibrated_channels
    self.get_times()
  File "/root/miniconda3/lib/python3.8/site-packages/pygac/reader.py", line 429, in get_times
    year, jday, msec = self.correct_times_median(year=year, jday=jday,
  File "/root/miniconda3/lib/python3.8/site-packages/pygac/reader.py", line 841, in correct_times_median
    jday = np.where(if_wrong_jday < 0, max(jday), jday)
ValueError: max() arg is an empty sequence
The following datasets were not created and may require resampling to be generated: DataID(name='4', wavelength=WavelengthRange(min=10.3, central=10.8, max=11.3, unit='µm'), resolution=1050, calibration=<calibration.brightness_temperature>, modifiers=())

Environment Info:

  • OS: CentOS 7.6.1810 x86_64
  • Satpy Version: 0.33.0

NSS.LHRR.NF.D88278.S0708.E0716.B1963535.zip

@mraspaud
Copy link
Member

Thanks for reporting this! Do you get this error with several files or just this one?

@BigShuiTai
Copy link
Author

Thanks for reporting this! Do you get this error with several files or just this one?

I have tested another file, but not the error I got before:

# code
scn = Scene(['NSS.LHRR.ND.D91330.S2140.E2146.B0278888.WI'], reader='avhrr_l1b_gaclac')
scn.load([10.8])

# error
Traceback (most recent call last):
  File "avhrr.py", line 27, in <module>
    scn.load([10.8])
  File "/root/miniconda3/lib/python3.8/site-packages/satpy/scene.py", line 1205, in load
    self._read_datasets_from_storage(**kwargs)
  File "/root/miniconda3/lib/python3.8/site-packages/satpy/scene.py", line 1225, in _read_datasets_from_storage
    return self._read_dataset_nodes_from_storage(nodes, **kwargs)
  File "/root/miniconda3/lib/python3.8/site-packages/satpy/scene.py", line 1231, in _read_dataset_nodes_from_storage
    loaded_datasets = self._load_datasets_by_readers(reader_datasets, **kwargs)
  File "/root/miniconda3/lib/python3.8/site-packages/satpy/scene.py", line 1256, in _load_datasets_by_readers
    new_datasets = reader_instance.load(ds_ids, **kwargs)
  File "/root/miniconda3/lib/python3.8/site-packages/satpy/readers/yaml_reader.py", line 943, in load
    ds = self._load_dataset_with_area(dsid, coords, **kwargs)
  File "/root/miniconda3/lib/python3.8/site-packages/satpy/readers/yaml_reader.py", line 839, in _load_dataset_with_area
    ds = self._load_dataset_data(file_handlers, dsid, **kwargs)
  File "/root/miniconda3/lib/python3.8/site-packages/satpy/readers/yaml_reader.py", line 711, in _load_dataset_data
    proj = self._load_dataset(dsid, ds_info, file_handlers, **kwargs)
  File "/root/miniconda3/lib/python3.8/site-packages/satpy/readers/yaml_reader.py", line 687, in _load_dataset
    projectable = fh.get_dataset(dsid, ds_info)
  File "/root/miniconda3/lib/python3.8/site-packages/satpy/readers/avhrr_l1b_gaclac.py", line 136, in get_dataset
    _, data = self.reader.get_lonlat()
  File "/root/miniconda3/lib/python3.8/site-packages/pygac/reader.py", line 569, in get_lonlat
    self._adjust_clock_drift()
  File "/root/miniconda3/lib/python3.8/site-packages/pygac/pod_reader.py", line 490, in _adjust_clock_drift
    missed_lons, missed_lats = self._compute_missing_lonlat(missed_utcs)
  File "/root/miniconda3/lib/python3.8/site-packages/pygac/pod_reader.py", line 431, in _compute_missing_lonlat
    tle1, tle2 = self.get_tle_lines()
  File "/root/miniconda3/lib/python3.8/site-packages/pygac/reader.py", line 690, in get_tle_lines
    tle_data = self.read_tle_file(self.get_tle_file())
  File "/root/miniconda3/lib/python3.8/site-packages/pygac/reader.py", line 666, in get_tle_file
    raise RuntimeError("TLE directory not specified!")
RuntimeError: TLE directory not specified!

NSS.LHRR.ND.D91330.S2140.E2146.B0278888.zip

@mraspaud
Copy link
Member

That second error I'm more familiar with, you need to have a file with the TLE data to be able to navigate the scene. Have a look at the documentation for Pygac to set it up.

@BigShuiTai
Copy link
Author

That second error I'm more familiar with, you need to have a file with the TLE data to be able to navigate the scene. Have a look at the documentation for Pygac to set it up.

Thanks for your explanation! I will try it again with your suggestion.

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

No branches or pull requests

2 participants