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=625)
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=
"AtTarget")
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/simps/vertexSelection_2016_simp_preselection.json"
54recoana_kf.parameters[
"histoCfg"] = os.environ[
'HPSTR_BASE']+
"/analysis/plotconfigs/tracking/simps/vtxAnalysis_2016_simp_reach.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
66 recoana_kf.parameters[
"eleTrackTimeBias"] = -2.2
67 recoana_kf.parameters[
"posTrackTimeBias"] = -2.2
69 recoana_kf.parameters[
"eleTrackTimeBias"] = -1.5
70 recoana_kf.parameters[
"posTrackTimeBias"] = -1.5
75if (options.isData == 1):
77 print(
"Running on data file: Setting CalTimeOffset %d" % CalTimeOffset)
79elif (options.isData == 0):
81 print(
"Running on MC file: Setting CalTimeOffset %d" % CalTimeOffset)
83 print(
"Specify which type of ntuple you are running on: -t 1 [for Data] / -t 0 [for MC]")
85recoana_kf.parameters[
"CalTimeOffset"] = CalTimeOffset
87RegionPath = os.environ[
'HPSTR_BASE']+
"/analysis/selections/simps/"
89recoana_kf.parameters[
"regionDefinitions"] = [RegionPath+
'Tight_2016_simp_reach_CR.json',
90 RegionPath+
'Tight_2016_simp_reach_SR.json',
91 RegionPath+
'radMatchTight_2016_simp_reach_CR.json',
92 RegionPath+
'radMatchTight_2016_simp_reach_SR.json',
93 RegionPath+
'Tight_nocuts.json',
94 RegionPath+
'Tight_L1L1_nvtx1.json']
97mcana.parameters[
"debug"] = 0
98mcana.parameters[
"anaName"] =
"mcAna"
99mcana.parameters[
"partColl"] =
"MCParticle"
100mcana.parameters[
"trkrHitColl"] =
"TrackerHits"
101mcana.parameters[
"ecalHitColl"] =
"EcalHits"
102mcana.parameters[
"histCfg"] = os.environ[
'HPSTR_BASE']+
'/analysis/plotconfigs/mc/basicMC.json'
107if (options.tracking ==
"KF"):
108 print(
"Run KalmanFullTracks analysis")
109 p.sequence = [recoana_kf]
111 print(
"ERROR::Need to specify which tracks KF or GBL")
114p.skip_events = options.skip_events
115p.max_events = options.nevents
117p.input_files = infile
118p.output_files = [outfile]