4import baseConfig
as base
6base.parser.add_argument(
"-w",
"--tracking", type=str, dest=
"tracking",
7 help=
"Which tracking to use to make plots", metavar=
"tracking", default=
"KF")
8base.parser.add_argument(
"-f",
"--makeFlatTuple", type=int, dest=
"makeFlatTuple",
9 help=
"Make True to make vertex ana flat tuple", metavar=
"makeFlatTuple", default=1)
10base.parser.add_argument(
"-r",
"--isRadPDG", type=int, dest=
"isRadPDG",
11 help=
"Set radiative trident PDG ID", metavar=
"isRadPDG", default=622)
12base.parser.add_argument(
"-TS",
"--trackstate", type=str, dest=
"trackstate",
13 help=
"Specify Track State | 'AtECal' or 'AtTarget'. Default " " is origin (AtIP)", metavar=
"trackstate", default=
"")
14base.parser.add_argument(
"-bpc",
"--beamPosCorr", type=str, dest=
"beamPosCorr",
15 help=
"Load beam position corrections from json", metavar=
"beamPosCorr", default=
"")
16options = base.parser.parse_args()
19infile = options.inFilename
20outfile = options.outFilename
22outfile = outfile.split(
".root")[0]+
"_"+options.tracking+
".root"
24print(
'Input file: %s' % infile)
25print(
'Output file: %s' % outfile)
33p.add_library(
"libprocessors")
46recoana_kf.parameters[
"anaName"] =
"vtxana_kf"
47recoana_kf.parameters[
"trkColl"] =
"KalmanFullTracks%s"%(options.trackstate)
48recoana_kf.parameters[
"tsColl"] =
"TSData"
49recoana_kf.parameters[
"vtxColl"] =
"UnconstrainedV0Vertices_KF"
50recoana_kf.parameters[
"mcColl"] =
"MCParticle"
51recoana_kf.parameters[
"hitColl"] =
"SiClusters"
52recoana_kf.parameters[
"ecalColl"] =
"RecoEcalClusters"
53recoana_kf.parameters[
"vtxSelectionjson"] = os.environ[
'HPSTR_BASE']+
"/analysis/selections/vertexSelection.json"
54recoana_kf.parameters[
"histoCfg"] = os.environ[
'HPSTR_BASE']+
"/analysis/plotconfigs/tracking/vtxAnalysis.json"
55recoana_kf.parameters[
"mcHistoCfg"] = os.environ[
'HPSTR_BASE']+
'/analysis/plotconfigs/mc/basicMC.json'
57recoana_kf.parameters[
"beamE"] = base.beamE[
str(options.year)]
58recoana_kf.parameters[
"isData"] = options.isData
59recoana_kf.parameters[
"analysis"] = options.analysis
60recoana_kf.parameters[
"debug"] = 0
61recoana_kf.parameters[
"isRadPDG"] = options.isRadPDG
62recoana_kf.parameters[
"makeFlatTuple"] = options.makeFlatTuple
63recoana_kf.parameters[
"beamPosCfg"] = options.beamPosCorr
67if (options.isData == 1):
69 print(
"Running on data file: Setting CalTimeOffset %d" % CalTimeOffset)
71elif (options.isData == 0):
73 print(
"Running on MC file: Setting CalTimeOffset %d" % CalTimeOffset)
75 print(
"Specify which type of ntuple you are running on: -t 1 [for Data] / -t 0 [for MC]")
77recoana_kf.parameters[
"CalTimeOffset"] = CalTimeOffset
79RegionPath = os.environ[
'HPSTR_BASE']+
"/analysis/selections/"
81recoana_kf.parameters[
"regionDefinitions"] = [RegionPath+
'Tight.json',
82 RegionPath+
'radMatchTight.json']
85recoana_gbl.parameters = recoana_kf.parameters.copy()
86recoana_gbl.parameters[
"anaName"] =
"vtxana_gbl"
87recoana_gbl.parameters[
"vtxColl"] =
"UnconstrainedV0Vertices"
88recoana_gbl.parameters[
"tsColl"] =
"TSData"
89recoana_gbl.parameters[
"hitColl"] =
"RotatedHelicalOnTrackHits"
90recoana_gbl.parameters[
"trkColl"] =
"GBLTracks"
91recoana_gbl.parameters[
"mcColl"] =
"MCParticle"
92recoana_gbl.parameters[
"ecalColl"] =
"RecoEcalClusters"
93recoana_gbl.parameters[
"vtxSelectionjson"] = os.environ[
'HPSTR_BASE']+
"/analysis/selections/vertexSelection.json"
94recoana_gbl.parameters[
"histoCfg"] = os.environ[
'HPSTR_BASE']+
"/analysis/plotconfigs/tracking/vtxAnalysis.json"
95recoana_gbl.parameters[
"mcHistoCfg"] = os.environ[
'HPSTR_BASE']+
'/analysis/plotconfigs/mc/basicMC.json'
97recoana_gbl.parameters[
"beamE"] = base.beamE[
str(options.year)]
98recoana_gbl.parameters[
"isData"] = options.isData
99recoana_gbl.parameters[
"analysis"] = options.analysis
100recoana_gbl.parameters[
"debug"] = 0
101recoana_gbl.parameters[
"isRadPDG"] = options.isRadPDG
102recoana_gbl.parameters[
"makeFlatTuple"] = options.makeFlatTuple
103recoana_gbl.parameters[
"beamPosCfg"] = options.beamPosCorr
105recoana_gbl.parameters[
"CalTimeOffset"] = CalTimeOffset
107RegionPath = os.environ[
'HPSTR_BASE']+
"/analysis/selections/"
108recoana_gbl.parameters[
"regionDefinitions"] = [RegionPath+
'Tight.json',
109 RegionPath+
'radMatchTight.json']
111mcana.parameters[
"debug"] = 0
112mcana.parameters[
"anaName"] =
"mcAna"
113mcana.parameters[
"partColl"] =
"MCParticle"
114mcana.parameters[
"trkrHitColl"] =
"TrackerHits"
115mcana.parameters[
"ecalHitColl"] =
"EcalHits"
116mcana.parameters[
"histCfg"] = os.environ[
'HPSTR_BASE']+
'/analysis/plotconfigs/mc/basicMC.json'
125if (options.tracking ==
"KF"):
126 print(
"Run KalmanFullTracks analysis")
127 p.sequence = [recoana_kf]
128elif (options.tracking ==
"GBL"):
129 print(
"Run GBL analysis")
130 p.sequence = [recoana_gbl]
132 print(
"ERROR::Need to specify which tracks KF or GBL")
135p.skip_events = options.skip_events
136p.max_events = options.nevents
138p.input_files = infile
139p.output_files = [outfile]