Source code for pipeline.hifv.heuristics.standard

import pipeline.infrastructure.api as api
import pipeline.infrastructure.utils as utils


[docs]class Standard(api.Heuristic): ephemeris_fields = { 'Mars', 'Jupiter', 'Uranus', 'Neptune', 'Pluto', 'Io', 'Europa', 'Ganymede', 'Callisto', 'Titan', 'Triton', 'Ceres', 'Pallas', 'Vesta', 'Juno', 'Victoria', 'Davida'}
[docs] def calculate(self, field: str) -> str: field = set(utils.safe_split(field)) if field.issubset(self.ephemeris_fields): return 'Butler-JPL-Horizons 2012' # return 'Butler-JPL-Horizons 2010' elif field.isdisjoint(self.ephemeris_fields): return 'Perley-Butler 2017' else: raise Exception('not all fields in same standard')