14 <input>PartGunChargedStableGenSim.root</input>
15 <contact>Marco Milesi, marco.milesi@unimelb.edu.au</contact>
16 <description> This steering script fully reconstructs particle gun events for a set of charged stable particles,
17 and dumps ECL PID validation info in an ntuple and a set of histograms (one file for each pdgId).</description>
22 from reconstruction
import add_reconstruction
23 from ROOT
import Belle2
26 chargedStableList = []
27 for idx
in range(len(Belle2.Const.chargedStableSet)):
28 particle = Belle2.Const.chargedStableSet.at(idx)
30 if particle == Belle2.Const.deuteron:
32 pdgId = particle.getPDGCode()
33 chargedStableList.extend([pdgId, -pdgId])
37 mergeChargeOfPdgIds = [
38 Belle2.Const.pion.getPDGCode(),
39 Belle2.Const.kaon.getPDGCode(),
40 Belle2.Const.proton.getPDGCode()
44 main = basf2.create_path()
47 inputFileName =
"../PartGunChargedStableGenSim.root"
48 main.add_module(
"RootInput", inputFileName=inputFileName)
51 main.add_module(
"Gearbox")
53 main.add_module(
"Geometry")
56 add_reconstruction(main)
60 "ECLChargedPIDDataAnalysisValidation",
61 outputFileName=
"ECLChargedPid",
62 inputPdgIdList=chargedStableList,
63 mergeChargeOfPdgIds=mergeChargeOfPdgIds)
66 main.add_module(
"ProgressBar")
68 basf2.print_path(main)
70 main.add_module(
'Progress')
72 print(basf2.statistics)