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

navigation available for all L1b readers #1865

Closed
bhelgs opened this issue Oct 25, 2021 · 6 comments
Closed

navigation available for all L1b readers #1865

bhelgs opened this issue Oct 25, 2021 · 6 comments

Comments

@bhelgs
Copy link

bhelgs commented Oct 25, 2021

Feature Request

Is your feature request related to a problem?
I have been trying to get the following data for different sorts of l1b inputs:

  • ['satellite_zenith_angle', 'solar_azimuth_angle', 'satellite_azimuth_angle', 'longitude', 'latitude']

Is there currently a way to get those from all sorts of l1b?
I notice that:

scn = satpy.Scene(reader='viirs_sdr', filenames=filenames)
print(scn.available_dataset_names())

Yields:

['DNB', 'I01', 'I02', 'I03', 'I04', 'I05', 'M01', 'M02', 'M03', 'M04', 'M05', 'M06', 'M07', 'M08', 'M09', 'M10', 'M11', 'M12', 'M13', 'M14', 'M15', 'M16', 'dnb_latitude', 'dnb_longitude', 'dnb_lunar_azimuth_angle', 'dnb_lunar_zenith_angle', 'dnb_moon_illumination_fraction', 'dnb_satellite_azimuth_angle', 'dnb_satellite_zenith_angle', 'dnb_solar_azimuth_angle', 'dnb_solar_zenith_angle', 'i_latitude', 'i_longitude', 'm_latitude', 'm_longitude', 'satellite_azimuth_angle', 'satellite_zenith_angle', 'solar_azimuth_angle', 'solar_zenith_angle']

but it's not clear to me what resolution these are:
['satellite_azimuth_angle', 'satellite_zenith_angle', 'solar_azimuth_angle', 'solar_zenith_angle']
and also why ABI/MTG-FCI doesn't have those variables available.

Describe the solution you'd like
TBD

Describe any changes to existing user workflow
TBD

Additional context
TBD

@bhelgs bhelgs closed this as completed Oct 25, 2021
@djhoese
Copy link
Member

djhoese commented Oct 25, 2021

Similar to #77

@bhelgs bhelgs reopened this Oct 25, 2021
@bhelgs
Copy link
Author

bhelgs commented Oct 25, 2021

Thank you for linking to that issue.

@djhoese
Copy link
Member

djhoese commented Oct 25, 2021

Also note the related work I'm starting in #1863

@bhelgs
Copy link
Author

bhelgs commented Oct 25, 2021

So I guess scene / load just the wrong tool for the job at the moment for certain satellites?
Thank you for clarifying.

I will probably make a local copy of your _angles.py
and give those a try (as needed) in the meantime .

I appreciate your help.

@djhoese
Copy link
Member

djhoese commented Oct 25, 2021

It is more that there is no tool right now for doing it as a first class interface in satpy. The times it comes from the reader are the times that the files actually have that data in them. The readers, in general, are just there to provide whatever the files have. If the files don't have that angle information (very common for geostationary satellite instrument) then the reader "can't" provide them. In general the lon/lat arrays can be accessed from a loaded DataArray by doing lons, lats = scn['some_loaded_dataset'].attrs['area'].get_lonlats().

Some composites/modifiers (ex. rayleigh correction) need the angle information even if the reader can't provide it so they access the functionality from other pytroll packages like pyorbital to generate them. My _angles.py change is an attempt to consolidate these use cases so there is only one location where the relevant code is.

In the future I'd hope that a user can just ask for "solar_zenith_angle" and get it returned, but there are complexities that make that a little difficult. The primary one is that readers can often produce data at different spacial resolutions and in some cases different scanning patterns at the same resolution. So asking for a generic "solar_zenith_angle" isn't easy to determine with no other information.

@bhelgs
Copy link
Author

bhelgs commented Oct 25, 2021

Alright, that makes sense. I was just getting started trying out this library. Thank you.

@djhoese djhoese closed this as completed Aug 5, 2022
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