24 from ROOT.Belle2
import CDCDedxMomentumAlgorithm, CDCDedxCosineAlgorithm
25 from ROOT.Belle2
import CDCDedxWireGainAlgorithm, CDCDedxRunGainAlgorithm
26 from ROOT.Belle2
import CDCDedx2DCorrectionAlgorithm, CDCDedx1DCleanupAlgorithm
27 from caf.framework
import Calibration, CAF
29 ROOT.gROOT.SetBatch(
True)
32 input_files = [os.path.abspath(
33 '/group/belle2/users/jbennett/GCR2/release-01-02-01/DB00000359/r00282/dst.cosmic.0002.0282.f00000.root')]
36 momentum_col = register_module(
'CDCDedxElectronCollector')
37 momentum_col_params = {
'cleanupCuts':
False,
40 'momentumCorFromDB':
False,
43 momentum_col.param(momentum_col_params)
45 mod_col = register_module(
'CDCDedxElectronCollector')
46 mod_col_params = {
'cleanupCuts':
True,
49 'momentumCorFromDB':
False,
52 mod_col.param(mod_col_params)
55 momentum_alg = CDCDedxMomentumAlgorithm()
56 cosine_alg = CDCDedxCosineAlgorithm()
57 run_gain_alg = CDCDedxRunGainAlgorithm()
58 wire_gain_alg = CDCDedxWireGainAlgorithm()
59 twod_alg = CDCDedx2DCorrectionAlgorithm()
60 oned_alg = CDCDedx1DCleanupAlgorithm()
64 name=
'MomentumCalibration',
65 collector=momentum_col,
66 algorithms=[momentum_alg],
67 input_files=input_files)
70 name=
'CosineCalibration',
72 algorithms=[cosine_alg],
73 input_files=input_files)
76 name=
'WireGainCalibration',
78 algorithms=[wire_gain_alg],
79 input_files=input_files)
82 name=
'RunGainCalibration',
84 algorithms=[run_gain_alg],
85 input_files=input_files)
88 name=
'OtherDedxCalibrations',
90 algorithms=[twod_alg, oned_alg],
91 input_files=input_files)
94 momdb =
'calibration_results/MomentumCalibration/outputdb'
95 cosdb =
'calibration_results/CosineCalibration/outputdb'
96 wgdb =
'calibration_results/WireGainCalibration/outputdb'
97 rgdb =
'calibration_results/RunGainCalibration/outputdb'
98 localdb =
'/home/belle2/jbennett/CRDATA/release-00-09-01/DB00000266/r03118/calib/localdb/database.txt'
100 momentum_cal.use_local_database(localdb)
102 cosine_cal.use_local_database(localdb)
103 cosine_cal.use_local_database(momdb)
105 wire_gain_cal.use_local_database(localdb)
106 wire_gain_cal.use_local_database(momdb)
107 wire_gain_cal.use_local_database(cosdb)
109 run_gain_cal.use_local_database(localdb)
110 run_gain_cal.use_local_database(momdb)
111 run_gain_cal.use_local_database(cosdb)
112 run_gain_cal.use_local_database(wgdb)
114 other_cal.use_local_database(localdb)
115 other_cal.use_local_database(momdb)
116 other_cal.use_local_database(cosdb)
117 other_cal.use_local_database(wgdb)
118 other_cal.use_local_database(rgdb)
121 correct_for_mom = create_path()
122 correct_for_mom.add_module(
'CDCDedxCorrection', scaleCor=
False, momentumCor=
False,
123 momentumCorFromDB=
False, cosineCor=
True,
124 runGain=
True, wireGain=
True)
125 momentum_cal.pre_collector_path = correct_for_mom
127 correct_for_cos = create_path()
128 correct_for_cos.add_module(
'CDCDedxCorrection', scaleCor=
False, momentumCor=
True,
129 momentumCorFromDB=
True, cosineCor=
False,
130 runGain=
True, wireGain=
True)
131 cosine_cal.pre_collector_path = correct_for_cos
132 cosine_cal.depends_on(momentum_cal)
134 correct_for_wire_gain = create_path()
135 correct_for_wire_gain.add_module(
'CDCDedxCorrection', scaleCor=
False, momentumCor=
True,
136 momentumCorFromDB=
True, cosineCor=
True,
137 runGain=
True, wireGain=
False)
138 wire_gain_cal.pre_collector_path = correct_for_wire_gain
139 wire_gain_cal.depends_on(momentum_cal)
140 wire_gain_cal.depends_on(cosine_cal)
142 correct_for_run_gain = create_path()
143 correct_for_run_gain.add_module(
'CDCDedxCorrection', scaleCor=
False, momentumCor=
True,
144 momentumCorFromDB=
True, cosineCor=
True,
145 runGain=
False, wireGain=
True)
146 run_gain_cal.pre_collector_path = correct_for_run_gain
147 run_gain_cal.depends_on(momentum_cal)
148 run_gain_cal.depends_on(cosine_cal)
149 run_gain_cal.depends_on(wire_gain_cal)
151 correct_for_others = create_path()
152 correct_for_others.add_module(
'CDCDedxCorrection', scaleCor=
False, momentumCor=
True,
153 momentumCorFromDB=
True, cosineCor=
True,
154 runGain=
True, wireGain=
True)
155 other_cal.pre_collector_path = correct_for_others
156 other_cal.depends_on(momentum_cal)
157 other_cal.depends_on(cosine_cal)
158 other_cal.depends_on(wire_gain_cal)
159 other_cal.depends_on(run_gain_cal)
164 caf_fw.add_calibration(momentum_cal)
165 caf_fw.add_calibration(cosine_cal)
166 caf_fw.add_calibration(wire_gain_cal)
167 caf_fw.add_calibration(run_gain_cal)
168 caf_fw.add_calibration(other_cal)