27 from ROOT
import Belle2
31 from basf2
import conditions
as b2conditions
46 print(
"Python arguments:")
50 counting = counting + 1
52 fileNames = [
'eclBhabhaTimeCalibrationValidationCollector.root']
55 fileNames = glob(sys.argv[1])
56 algo.setInputFileNames(fileNames)
60 basePath = sys.argv[2] +
"/"
61 print(
"basePath = ", basePath)
66 algo.meanCleanRebinFactor = 3
68 algo.meanCleanCutMinFactor = 0.4
70 b2.set_debug_level(35)
71 b2.set_log_level(b2.LogLevel.INFO)
74 exprun_vector = algo.getRunListFromAllData()
76 baseName =
"eclBhabhaTValidationAlgorithm"
77 basePathAndName = basePath + baseName
78 algo.debugFilenameBase = basePathAndName
83 b2conditions.override_globaltags()
85 b2.B2INFO(
"Adding Local Database {} to head of chain of local databases.")
86 b2conditions.prepend_testing_payloads(
"localdb/database.txt")
87 b2.B2INFO(
"Using Global Tag {}")
88 b2conditions.prepend_globaltag(
"dp_recon_release6_patch")
89 b2conditions.prepend_globaltag(
"Reco_master_patch_rel5")
90 b2conditions.prepend_globaltag(
"AIRFLOW_online_snapshot_20210719-124441")
91 b2conditions.prepend_globaltag(
"data_reprocessing_prompt")
95 print(
"Combining all runs' histograms for a single calibration")
96 print(
"path = ", basePathAndName)
97 alg_result = algo.execute()
98 print(
"Calibration completion status", alg_result)
102 print(
"Calibrating each run individually")
103 runsWithoutEnoughData = []
104 for exprun
in exprun_vector:
105 iov_to_execute = ROOT.vector(
"std::pair<int,int>")()
106 iov_to_execute.push_back(exprun)
107 print(
"path = ", basePathAndName)
108 alg_result = algo.execute(iov_to_execute, 0)
109 print(
"Calibration success-result was", alg_result,
" (0=ok, 2=needs more data)")
110 if (alg_result == 0):
114 print(
"Summary of possible calibration completion status values:")
115 print(
" c_OK = Finished successfuly = 0 in Python")
116 print(
" c_Iterate, = Needs iteration = 1 in Python")
117 print(
" c_NotEnoughData, = Needs more data = 2 in Python")
118 print(
" c_Failure, = Failed = 3 in Python")
119 print(
" c_Undefined = Not yet known (before execution) = 4 in Python")
Validate the ecl timing calibrations using a hadronic event selection.
static Environment & Instance()
Static method to get a reference to the Environment instance.