Example #1
0
    def analyze(self):
        if self.global_iterations:
            GdacTuning.analyze(self)
            FeedbackTuning.analyze(self)
        if self.local_iterations:
            TdacTuning.analyze(self)
            FdacTuning.analyze(self)

        if self.make_plots:
            if self.local_iterations:
                plot_three_way(hist=self.tot_mean_best.transpose(),
                               title="Mean ToT after last FDAC tuning",
                               x_axis_title='Mean ToT',
                               filename=self.plots_filename)
                plot_three_way(
                    hist=self.register.get_pixel_register_value(
                        "FDAC").transpose(),
                    title="FDAC distribution after last FDAC tuning",
                    x_axis_title='FDAC',
                    filename=self.plots_filename,
                    maximum=16)
            if self.local_iterations >= 0:
                plot_three_way(hist=self.occupancy_best.transpose(),
                               title="Occupancy after tuning",
                               x_axis_title='Occupancy',
                               filename=self.plots_filename,
                               maximum=100)
                plot_three_way(hist=self.register.get_pixel_register_value(
                    "TDAC").transpose(),
                               title="TDAC distribution after complete tuning",
                               x_axis_title='TDAC',
                               filename=self.plots_filename,
                               maximum=32)

            self.plots_filename.close()
Example #2
0
    def analyze(self):
        if self.global_iterations > 0:
            FeedbackTuning.analyze(self)
        if self.global_iterations >= 0:
            GdacTuning.analyze(self)

        if self.local_iterations > 0:
            FdacTuning.analyze(self)
        if self.local_iterations >= 0:
            TdacTuning.analyze(self)

        # write configuration to avoid high current states
        commands = []
        commands.extend(self.register.get_commands("ConfMode"))
        commands.extend(self.register.get_commands("WrRegister", name=["Vthin_AltCoarse", "Vthin_AltFine", "PrmpVbpf"]))
        commands.extend(self.register.get_commands("WrFrontEnd", same_mask_for_all_dc=False, name="TDAC"))
        commands.extend(self.register.get_commands("WrFrontEnd", same_mask_for_all_dc=False, name="FDAC"))
        self.register_utils.send_commands(commands)

        if self.local_iterations > 0:
            plot_three_way(hist=self.tot_mean_best.transpose(), title="Mean ToT after last FDAC tuning", x_axis_title='Mean ToT', filename=self.plots_filename, maximum=15)
            plot_three_way(hist=self.register.get_pixel_register_value("FDAC").transpose(), title="FDAC distribution after last FDAC tuning", x_axis_title='FDAC', filename=self.plots_filename, maximum=15)
        if self.local_iterations >= 0:
            plot_three_way(hist=self.occupancy_best.transpose(), title="Occupancy after last TDAC tuning", x_axis_title='Occupancy', filename=self.plots_filename, maximum=self.n_injections_tdac)
            plot_three_way(hist=self.register.get_pixel_register_value("TDAC").transpose(), title="TDAC distribution after last TDAC tuning", x_axis_title='TDAC', filename=self.plots_filename, maximum=31)

        self.plots_filename.close()
Example #3
0
    def analyze(self):
        if self.global_iterations:
            GdacTuning.analyze(self)
            FeedbackTuning.analyze(self)
        if self.local_iterations:
            TdacTuning.analyze(self)
            FdacTuning.analyze(self)

        if self.make_plots:
            if self.local_iterations:
                plotThreeWay(hist=self.tot_mean_best.transpose(), title="Mean ToT after last FDAC tuning", x_axis_title='Mean ToT', filename=self.plots_filename)
                plotThreeWay(hist=self.register.get_pixel_register_value("FDAC").transpose(), title="FDAC distribution after last FDAC tuning", x_axis_title='FDAC', filename=self.plots_filename, maximum=16)
            if self.local_iterations >= 0:
                plotThreeWay(hist=self.occupancy_best.transpose(), title="Occupancy after tuning", x_axis_title='Occupancy', filename=self.plots_filename, maximum=100)
                plotThreeWay(hist=self.register.get_pixel_register_value("TDAC").transpose(), title="TDAC distribution after complete tuning", x_axis_title='TDAC', filename=self.plots_filename, maximum=32)

            self.plots_filename.close()