Loading ale/base/data_naif.py +15 −10 Original line number Diff line number Diff line Loading @@ -295,14 +295,20 @@ class NaifSpice(): : (sun_positions, sun_velocities) a tuple containing a list of sun positions, a list of sun velocities """ times = [self.center_ephemeris_time] positions = [] velocities = [] for time in times: sun_state, _ = spice.spkezr("SUN", self.center_ephemeris_time, time, self.reference_frame, 'LT+S', self.target_name) positions = 1000 * np.asarray([sun_state[:3]]) velocities = 1000 * np.asarray([sun_state[3:6]]) times = np.asarray([self.center_ephemeris_time]) positions.append(sun_state[:3]) velocities.append(sun_state[3:6]) positions = 1000 * np.asarray(positions) velocities = 1000 * np.asarray(velocities) return positions, velocities, times Loading Loading @@ -526,4 +532,3 @@ class NaifSpice(): self._naif_keywords = {**self._naif_keywords, **util.query_kernel_pool(f"*{self.ikid}*"), **util.query_kernel_pool(f"*{self.target_id}*")} return self._naif_keywords ale/drivers/__init__.py +1 −1 Original line number Diff line number Diff line Loading @@ -28,7 +28,7 @@ __formatters__ = {'usgscsm': to_usgscsm, 'isis': to_isis} def sort_drivers(drivers=[]): return list(sorted(drivers, key=lambda x:IsisSpice in x.__bases__, reverse=True)) return list(sorted(drivers, key=lambda x:IsisSpice in x.__bases__, reverse=False)) class AleJsonEncoder(json.JSONEncoder): def default(self, obj): Loading ale/drivers/dawn_drivers.py +6 −1 Original line number Diff line number Diff line Loading @@ -10,6 +10,11 @@ from ale.base.data_naif import NaifSpice from ale.base.label_pds3 import Pds3Label from ale.base.type_sensor import Framer ID_LOOKUP = { "FC1" : "DAWN_FC1", "FC2" : "DAWN_FC2" } class DawnFcPds3NaifSpiceDriver(Framer, Pds3Label, NaifSpice, Driver): """ Dawn driver for generating an ISD from a Dawn PDS3 image. Loading @@ -32,7 +37,7 @@ class DawnFcPds3NaifSpiceDriver(Framer, Pds3Label, NaifSpice, Driver): instrument_id = super().instrument_id filter_number = self.filter_number return "DAWN_{}_FILTER_{}".format(instrument_id, filter_number) return "{}_FILTER_{}".format(ID_LOOKUP[instrument_id], filter_number) @property def label(self): Loading tests/pytests/test_load.py +1 −1 Original line number Diff line number Diff line Loading @@ -22,7 +22,7 @@ def mess_kernels(): def test_priority(tmpdir, monkeypatch): drivers = [type('FooNaifSpice', (NaifSpice,), {}), type('BarIsisSpice', (IsisSpice,), {}), type('BazNaifSpice', (NaifSpice,), {}), type('FubarIsisSpice', (IsisSpice,), {})] sorted_drivers = sort_drivers(drivers) assert all([IsisSpice in klass.__bases__ for klass in sorted_drivers[:2]]) assert all([IsisSpice in klass.__bases__ for klass in sorted_drivers[2:]]) def test_mess_load(mess_kernels): updated_kernels = mess_kernels Loading Loading
ale/base/data_naif.py +15 −10 Original line number Diff line number Diff line Loading @@ -295,14 +295,20 @@ class NaifSpice(): : (sun_positions, sun_velocities) a tuple containing a list of sun positions, a list of sun velocities """ times = [self.center_ephemeris_time] positions = [] velocities = [] for time in times: sun_state, _ = spice.spkezr("SUN", self.center_ephemeris_time, time, self.reference_frame, 'LT+S', self.target_name) positions = 1000 * np.asarray([sun_state[:3]]) velocities = 1000 * np.asarray([sun_state[3:6]]) times = np.asarray([self.center_ephemeris_time]) positions.append(sun_state[:3]) velocities.append(sun_state[3:6]) positions = 1000 * np.asarray(positions) velocities = 1000 * np.asarray(velocities) return positions, velocities, times Loading Loading @@ -526,4 +532,3 @@ class NaifSpice(): self._naif_keywords = {**self._naif_keywords, **util.query_kernel_pool(f"*{self.ikid}*"), **util.query_kernel_pool(f"*{self.target_id}*")} return self._naif_keywords
ale/drivers/__init__.py +1 −1 Original line number Diff line number Diff line Loading @@ -28,7 +28,7 @@ __formatters__ = {'usgscsm': to_usgscsm, 'isis': to_isis} def sort_drivers(drivers=[]): return list(sorted(drivers, key=lambda x:IsisSpice in x.__bases__, reverse=True)) return list(sorted(drivers, key=lambda x:IsisSpice in x.__bases__, reverse=False)) class AleJsonEncoder(json.JSONEncoder): def default(self, obj): Loading
ale/drivers/dawn_drivers.py +6 −1 Original line number Diff line number Diff line Loading @@ -10,6 +10,11 @@ from ale.base.data_naif import NaifSpice from ale.base.label_pds3 import Pds3Label from ale.base.type_sensor import Framer ID_LOOKUP = { "FC1" : "DAWN_FC1", "FC2" : "DAWN_FC2" } class DawnFcPds3NaifSpiceDriver(Framer, Pds3Label, NaifSpice, Driver): """ Dawn driver for generating an ISD from a Dawn PDS3 image. Loading @@ -32,7 +37,7 @@ class DawnFcPds3NaifSpiceDriver(Framer, Pds3Label, NaifSpice, Driver): instrument_id = super().instrument_id filter_number = self.filter_number return "DAWN_{}_FILTER_{}".format(instrument_id, filter_number) return "{}_FILTER_{}".format(ID_LOOKUP[instrument_id], filter_number) @property def label(self): Loading
tests/pytests/test_load.py +1 −1 Original line number Diff line number Diff line Loading @@ -22,7 +22,7 @@ def mess_kernels(): def test_priority(tmpdir, monkeypatch): drivers = [type('FooNaifSpice', (NaifSpice,), {}), type('BarIsisSpice', (IsisSpice,), {}), type('BazNaifSpice', (NaifSpice,), {}), type('FubarIsisSpice', (IsisSpice,), {})] sorted_drivers = sort_drivers(drivers) assert all([IsisSpice in klass.__bases__ for klass in sorted_drivers[:2]]) assert all([IsisSpice in klass.__bases__ for klass in sorted_drivers[2:]]) def test_mess_load(mess_kernels): updated_kernels = mess_kernels Loading