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 orbit coefficient docstrings in seviri_l1b_hrit #916

Merged
merged 1 commit into from
Sep 30, 2019
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
20 changes: 14 additions & 6 deletions satpy/readers/seviri_l1b_hrit.py
Original file line number Diff line number Diff line change
Expand Up @@ -308,7 +308,7 @@ def _get_satpos_cart(self):
"""
orbit_polynomial = self.prologue['SatelliteStatus']['Orbit']['OrbitPolynomial']

# Find Chebyshev coefficients for the given time
# Find Chebyshev coefficients for the start time of the scan
coef_idx = self._find_orbit_coefs()
tstart = orbit_polynomial['StartTime'][0, coef_idx]
tend = orbit_polynomial['EndTime'][0, coef_idx]
Expand All @@ -326,11 +326,19 @@ def _get_satpos_cart(self):
return x*1000, y*1000, z*1000 # km -> m

def _find_orbit_coefs(self):
"""Find orbit coefficients for the current time.

The orbital Chebyshev coefficients are only valid for a certain time interval. The header entry
SatelliteStatus/Orbit/OrbitPolynomial contains multiple coefficients for multiple time intervals. Find the
coefficients which are valid for the nominal timestamp of the scan.
"""Find orbit coefficients for the start time of the scan.

The header entry SatelliteStatus/Orbit/OrbitPolynomial contains multiple coefficients, each
of them valid for a certain time interval. Find the coefficients which are valid for the
start time of the scan.

A manoeuvre is a discontinuity in the orbit parameters. The flight dynamic algorithms are
not made to interpolate over the time-span of the manoeuvre; hence we have elements
describing the orbit before a manoeuvre and a new set of elements describing the orbit after
the manoeuvre. The flight dynamic products are created so that there is an intentional gap
at the time of the manoeuvre. Also the two pre-manoeuvre elements may overlap. But the
overlap is not of an issue as both sets of elements describe the same pre-manoeuvre orbit
(with negligible variations).

Returns: Corresponding index in the coefficient list.

Expand Down