20from caf.framework
import CAF, Calibration, CentralDatabase
21from caf
import backends
22from caf
import strategies
27b2.set_log_level(b2.LogLevel.INFO)
36def SVDHotStripsCalibrations(files, tags):
38 from ROOT
import Belle2
39 from ROOT.Belle2
import SVDHotStripsCalibrationsAlgorithm
42 path = b2.create_path()
46 path.add_module(
'Progress')
48 path.add_module(
'RootInput', branchNames=input_branches)
50 path.add_module(
"Gearbox")
51 path.add_module(
"Geometry", useDB=
True)
59 raw.add_unpackers(path, components=[
'SVD'])
61 collector = b2.register_module(
'SVDOccupancyCalibrationsCollector')
62 collector.param(
"SVDShaperDigitsName",
"SVDShaperDigits")
63 algorithm = SVDHotStripsCalibrationsAlgorithm(
"SVDHotStripsCAF")
69 pre_collector_path=path,
70 database_chain=[CentralDatabase(tag)
for tag
in tags],
72 max_files_per_collector_job=1,
76 calibration.strategies = strategies.SequentialRunByRun
81if __name__ ==
"__main__":
83 input_files = [os.path.abspath(file)
for file
in [
84 "/group/belle2/dataprod/Data/Raw/e0008/r01309/sub00/physics.0008.01309.HLT5.f00098.root"]]
89 if not len(input_files):
90 print(
"You have to specify some input file(s)\n"
91 "using the standard basf2 command line option - i")
92 print(
"See: basf2 -h")
95 svdOccupCAF = SVDHotStripsCalibrations(input_files,
96 [
'giulia_CDCEDepToADCConversions_rel4_patch',
97 'data_reprocessing_prompt_rel4_patch'])
101 cal_fw.add_calibration(svdOccupCAF)
102 cal_fw.backend = backends.LSF()
105 if multiprocessing.cpu_count() < 10:
106 cal_fw.backend = backends.Local(8)