def __init__(self, percentage=90): ROOT.gROOT.cd() self.microphonics_list = ROOT.TEventList("microphonics_list", "microphonics_list") self.risetime_list = ROOT.TEventList("risetime_list", "risetime_list") self.LN_cut_list = ROOT.TEventList("LN_cut_list", "LN_cut_list") self.odd_pulse_cut_list = ROOT.TEventList("odd_pulse_cut_list", "odd_pulse_cut_list") self.LN_cut_on_list = ROOT.TEventList("LN_cut_on_list", "LN_cut_on_list") self.combination_list = ROOT.TEventList("combination_list", "combination_list") # The risetime cut is a dump from the results of the rise-time fit. server = SoudanServer() # Grab the trigger efficiency trigger_doc = server.get_trigger_efficiency_doc() self.erfc_function = trigger_doc.trigger_efficiency['standard'].efficiency_function # Grab the microphonics cuts microdoc = server.get_microphonics_cut_doc( ) temp = microdoc.all_micro_cuts[99] self.lower_cut, self.upper_cut, self.microphonics_efficiency = \ temp.lower_cut, temp.upper_cut, temp.efficiency_function # Grab the risetime cuts risedoc = server.get_rise_time_cut_doc() temp = risedoc.all_rise_cuts[percentage] self.risetime_cut, self.upper_risetime_cut, self.risetime_efficiency = \ temp.low_energy_function, temp.high_energy_function, temp.efficiency_function self.cuts_list = [self.get_risetime_cut_list, self.get_microphonics_cuts_list, self.get_LN_fill_cut_list, self.get_odd_pulse_cut_list] self.eff_list = [self.risetime_efficiency, self.microphonics_efficiency, self.erfc_function] self.odd_pulse_cut = server.get_pulse_cut_doc().pulse_cut
def get_available_rise_cuts(cls): server = SoudanServer() risedoc = server.get_rise_time_cut_doc() return risedoc.all_rise_cuts.keys()