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()
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()
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()