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

Update angle generation to prefer "actual" satellite position #2034

Merged
merged 2 commits into from Mar 1, 2022

Conversation

djhoese
Copy link
Member

@djhoese djhoese commented Feb 25, 2022

As discussed in #2012 and #2031 and #2030, some data like AHI HSD have inconsistent satellite position data between bands and even segments. This PR updates sensor angle generation so it requests the "actual" satellite position instead of the "nadir" satellite position. This allows AHI HSD true_color to be generated in 3 minutes instead of 4+.

However, now that I re-read the documentation for the nadir position I see it says that nadir should be used for computing viewing angles. This makes me wonder if I should have rounded the nadir position instead of the "actual" position. Thoughts @sfinkens @mraspaud @pnuu @simonrp84?

  * ``nadir_longitude/latitude``: Intersection of the instrument's Nadir with the surface of the
    earth. May differ from the actual satellite position, if the instrument is pointing slightly
    off the axis (satellite, earth-center). If available, this should be used to compute viewing
    angles etc. Otherwise, use the actual satellite position.

Additionally, @mraspaud do you want me to define a configuration option for this preference?

  • Closes #xxxx
  • Tests added
  • Fully documented

@djhoese djhoese added enhancement code enhancements, features, improvements component:compositors labels Feb 25, 2022
@codecov
Copy link

codecov bot commented Feb 25, 2022

Codecov Report

Merging #2034 (7f2a59c) into main (c4f484d) will increase coverage by 0.00%.
The diff coverage is 100.00%.

Impacted file tree graph

@@           Coverage Diff           @@
##             main    #2034   +/-   ##
=======================================
  Coverage   93.65%   93.66%           
=======================================
  Files         282      282           
  Lines       41954    42005   +51     
=======================================
+ Hits        39293    39344   +51     
  Misses       2661     2661           
Flag Coverage Δ
behaviourtests 4.73% <0.00%> (-0.01%) ⬇️
unittests 94.20% <100.00%> (+<0.01%) ⬆️

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files Coverage Δ
satpy/_config.py 98.59% <ø> (ø)
satpy/modifiers/angles.py 96.70% <100.00%> (+0.01%) ⬆️
satpy/tests/test_modifiers.py 100.00% <100.00%> (ø)
satpy/tests/reader_tests/test_seadas_l2.py 98.66% <0.00%> (+0.22%) ⬆️
satpy/readers/seadas_l2.py 98.11% <0.00%> (+0.28%) ⬆️

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update c4f484d...7f2a59c. Read the comment docs.

@coveralls
Copy link

coveralls commented Feb 25, 2022

Coverage Status

Coverage increased (+0.005%) to 94.145% when pulling 7f2a59c on djhoese:feature-angle-gen-actual-pos into 0a5acaa on pytroll:main.

@mraspaud
Copy link
Member

Yes, I would like this to be configurable

@djhoese
Copy link
Member Author

djhoese commented Mar 1, 2022

@mraspaud Config option has been adding.

@sfinkens
Copy link
Member

sfinkens commented Mar 1, 2022

Yes in general the Nadir position would be more accurate, but we agreed that it doesn't make a big difference. Quoting @simonrp84's reply from the slack discussion:

If so, it's probably fine to use the "actual" position, as sfinkens says the two quantities don't differ much for Himawari (or any of the other geosats) as the sensor typically points nadir.

@mraspaud
Copy link
Member

mraspaud commented Mar 1, 2022

I suppose attitude offsets could be a problem here, but it seems geostationary satellites aren't really affected by these, right?

Copy link
Member

@mraspaud mraspaud left a comment

Choose a reason for hiding this comment

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

LGTM

@sfinkens
Copy link
Member

sfinkens commented Mar 1, 2022

I suppose attitude offsets could be a problem here, but it seems geostationary satellites aren't really affected by these, right?

To be honest I don't know and I'm relying on Simon's experience here :) To my knowledge the Nadir position is only provided by AHI, so at least it doesn't seem to be a common problem.

@sfinkens
Copy link
Member

sfinkens commented Mar 1, 2022

And I don't want to create even more work for @djhoese if it doesn't make a big difference 🙂

@mraspaud
Copy link
Member

mraspaud commented Mar 1, 2022

Agreed, merging.

@mraspaud mraspaud merged commit 169e147 into pytroll:main Mar 1, 2022
@simonrp84
Copy link
Member

Only just saw this. Off nadir pointing can be a problem (Met-8 is off nadir quite often) but as most of the satellites don't provide any information about their actual attitude there's not much we can do about it!
For Himawari (which does provide) it's hardly ever an issue, Him-8 is well stabilised.

@djhoese djhoese deleted the feature-angle-gen-actual-pos branch March 1, 2022 16:35
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
component:compositors enhancement code enhancements, features, improvements
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

5 participants