6 <input>PartGunChargedStableGenSim.root</input>
7 <contact>Marco Milesi, marco.milesi@unimelb.edu.au</contact>
8 <description> This steering script fully reconstructs particle gun events for a set of charged stable particles,
9 and dumps ECL PID validation info in an ntuple and a set of histograms (one file for each pdgId).</description>
14 from reconstruction
import add_reconstruction
15 from ROOT
import Belle2
18 chargedStableList = []
19 for idx
in range(len(Belle2.Const.chargedStableSet)):
20 particle = Belle2.Const.chargedStableSet.at(idx)
22 if particle == Belle2.Const.deuteron:
24 pdgId = particle.getPDGCode()
25 chargedStableList.extend([pdgId, -pdgId])
29 mergeChargeOfPdgIds = [
30 Belle2.Const.pion.getPDGCode(),
31 Belle2.Const.kaon.getPDGCode(),
32 Belle2.Const.proton.getPDGCode()
36 main = basf2.create_path()
39 inputFileName =
"../PartGunChargedStableGenSim.root"
40 main.add_module(
"RootInput", inputFileName=inputFileName)
43 main.add_module(
"Gearbox")
45 main.add_module(
"Geometry")
48 add_reconstruction(main)
52 "ECLChargedPIDDataAnalysisValidation",
53 outputFileName=
"ECLChargedPid",
54 inputPdgIdList=chargedStableList,
55 mergeChargeOfPdgIds=mergeChargeOfPdgIds)
58 main.add_module(
"ProgressBar")
60 basf2.print_path(main)
63 print(basf2.statistics)