Beispiel #1
0
    def beam_angles(self, surfaces: Sequence[SurfaceData], packet: L1AProcessingData,
                    working_surface_location: SurfaceData) -> None:
        """
        call the beam angles algorithm and store the results
        """
        self.beam_angles_algorithm(surfaces, packet, working_surface_location)

        packet.beam_angles_list = self.beam_angles_algorithm.beam_angles
        packet.surfaces_seen_list = self.beam_angles_algorithm.surfaces_seen

        packet.calculate_beam_angles_trend(
            self.beam_angles_list_size_prev,
            self.beam_angles_trend_prev
        )
        self.beam_angles_list_size_prev = \
            len(packet.beam_angles_list)
        self.beam_angles_trend_prev = \
            packet.beam_angles_trend

        last_index = 0

        for seen_surface_index, seen_surface_counter in enumerate(packet.surfaces_seen_list):
            for curr_surface in surfaces[last_index:]:
                last_index += 1

                if curr_surface.surface_counter == seen_surface_counter:
                    curr_surface.add_stack_beam_index(
                        seen_surface_index,
                        packet.beam_angles_trend,
                        len(packet.beam_angles_list)
                    )

                    curr_surface.add_stack_burst(packet)

                    break
Beispiel #2
0
    def beam_angles(self, surfaces: Sequence[SurfaceData],
                    packet: L1AProcessingData,
                    working_surface_location: SurfaceData) -> None:
        """
        call the beam angles algorithm and store the results
        """
        self.beam_angles_algorithm(surfaces, packet, working_surface_location)

        packet.beam_angles_list = self.beam_angles_algorithm.beam_angles
        packet.surfaces_seen_list = self.beam_angles_algorithm.surfaces_seen

        packet.calculate_beam_angles_trend(self.beam_angles_list_size_prev,
                                           self.beam_angles_trend_prev)
        self.beam_angles_list_size_prev = \
            len(packet.beam_angles_list)
        self.beam_angles_trend_prev = \
            packet.beam_angles_trend

        last_index = 0

        for seen_surface_index, seen_surface_counter in enumerate(
                packet.surfaces_seen_list):
            for curr_surface in surfaces[last_index:]:
                last_index += 1

                if curr_surface.surface_counter == seen_surface_counter:
                    curr_surface.add_stack_beam_index(
                        seen_surface_index, packet.beam_angles_trend,
                        len(packet.beam_angles_list))

                    curr_surface.add_stack_burst(packet)

                    break
Beispiel #3
0
 def azimuth_processing(self, packet: L1AProcessingData) -> None:
     """
     call the azimuth processing algorithm and store the results
     """
     self.azimuth_processing_algorithm(packet, self.chd.wv_length_ku)
     packet.beams_focused = self.azimuth_processing_algorithm.beams_focused
Beispiel #4
0
 def azimuth_processing(self, packet: L1AProcessingData) -> None:
     """
     call the azimuth processing algorithm and store the results
     """
     self.azimuth_processing_algorithm(packet, self.chd.wv_length_ku)
     packet.beams_focused = self.azimuth_processing_algorithm.beams_focused