diff --git a/CAL/CalibrationCommon/lib/datacontainers/holography_datatable.py b/CAL/CalibrationCommon/lib/datacontainers/holography_datatable.py index 7146ce828747bfcbc08b435055a78e4bc97d8756..0278ff0f7f3048b13eb2be2d203b6268a643d5e7 100644 --- a/CAL/CalibrationCommon/lib/datacontainers/holography_datatable.py +++ b/CAL/CalibrationCommon/lib/datacontainers/holography_datatable.py @@ -89,7 +89,7 @@ class HolographyDataTable(LazyH5Table): try: self.__get_index_arrays() except KeyError: - logger.debug('uri missing creating datable at: ' + self.uri) + logger.debug('uri missing, creating datable at: ' + self.uri) def __get_index_arrays(self): """ @@ -109,12 +109,12 @@ class HolographyDataTable(LazyH5Table): # I select the first reference station just for convenience to iterate on the third level first_frequency = frequencies_string[0] beam_numbers = {beam_number for beam_number in self.h5_file[self.uri] - [first_frequency] - [first_reference_station]} + [first_reference_station] + [first_frequency]} - self._frequencies = set(sorted(map(float, frequencies_string))) - self._reference_stations = reference_stations - self._beam_numbers = set(sorted(map(int, beam_numbers))) + self._frequencies = tuple(sorted(map(float, frequencies_string))) + self._reference_stations = tuple(reference_stations) + self._beam_numbers = tuple(sorted(map(int, beam_numbers))) @property def frequencies(self): @@ -173,7 +173,7 @@ class HolographyDataTable(LazyH5Table): reference_station, frequency, beam_number = key self._frequencies.add(float(frequency)) - self._reference_stations.add(frequency) + self._reference_stations.add(reference_station) self._beam_numbers.add(int(beam_number)) super().__setitem__((reference_station, @@ -184,13 +184,14 @@ class HolographyDataTable(LazyH5Table): for frequency in self._frequencies: for station in self._reference_stations: for beam in self._beam_numbers: - yield (float(frequency), station, int(beam)), \ + yield (station, float(frequency), int(beam)), \ self.__getitem__((station, frequency, beam)) def keys(self): key_set = set() - for frequency in self._frequencies: - for station in self._reference_stations: + + for station in self._reference_stations: + for frequency in self._frequencies: for beam in self._beam_numbers: - key_set.add((frequency, station, beam)) + key_set.add((station, frequency, beam)) return key_set