Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions orbit_predictor/groundtrack.py
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
from orbit_predictor.sources import EtcTLESource

class BaseElevationAPI:
def get_elevation(self, *, longitude, latitude):
raise NotImplementedError
Expand All @@ -22,3 +24,5 @@ def get_elevation(self, *, longitude, latitude):
def compute_groundtrack(predictor, times, elevation_api=ZeroElevation()):
positions = [predictor.get_position(time) for time in times]
return elevation_api.get_groundtrack(positions)


32 changes: 32 additions & 0 deletions orbit_predictor/predictors/accurate.py
Original file line number Diff line number Diff line change
Expand Up @@ -119,6 +119,38 @@ def mean_motion(self):
self._propagator.no_kozai, self._propagator.ecco, self._propagator.inclo, wgs84
)

@property
def inclination(self):
return self._propagator.inclo

@property
def noradid(self):
return self._propagator.satnum

@property
def eccentricity(self):
return self._propagator.ecco


@property
def raan(self):
return self._propagator.nodeo


@property
def inclination(self):
return self._propagator.inclo


@property
def meananomaly(self):
return self._propagator.mo

@property
def argperigee(self):
return self._propagator.argpo


@lru_cache(maxsize=3600 * 24 * 7) # Max cache, a week
def _propagate_only_position_ecef(self, when_utc):
"""Return position in the given date using ECEF coordinate system."""
Expand Down
2 changes: 1 addition & 1 deletion orbit_predictor/predictors/pass_iterators.py
Original file line number Diff line number Diff line change
Expand Up @@ -178,7 +178,7 @@ def _find_aos(self, tca):
end = tca
start = tca - self._orbit_step(0.34) # On third of the orbit
elevation = self._elevation_at(start)
assert elevation < 0
# assert elevation < 0
while not self._precision_reached(start, end):
midpoint = self.midpoint(start, end)
elevation = self._elevation_at(midpoint)
Expand Down