14 import FWCore.ParameterSet.Config
as cms
17 from HLTriggerOffline.Exotica.analyses.hltExoticaLowPtTrimuon_cff
import LowPtTrimuonPSet
18 from HLTriggerOffline.Exotica.analyses.hltExoticaHighPtDimuon_cff
import HighPtDimuonPSet
19 from HLTriggerOffline.Exotica.analyses.hltExoticaHighPtDielectron_cff
import HighPtDielectronPSet
20 from HLTriggerOffline.Exotica.analyses.hltExoticaLowPtDimuon_cff
import LowPtDimuonPSet
21 from HLTriggerOffline.Exotica.analyses.hltExoticaLowPtDielectron_cff
import LowPtDielectronPSet
22 from HLTriggerOffline.Exotica.analyses.hltExoticaHighPtElectron_cff
import HighPtElectronPSet
23 from HLTriggerOffline.Exotica.analyses.hltExoticaLowPtElectron_cff
import LowPtElectronPSet
24 from HLTriggerOffline.Exotica.analyses.hltExoticaHighPtPhoton_cff
import HighPtPhotonPSet
25 from HLTriggerOffline.Exotica.analyses.hltExoticaDiPhoton_cff
import DiPhotonPSet
26 from HLTriggerOffline.Exotica.analyses.hltExoticaDisplacedDiPhoton_cff
import DisplacedDiPhotonPSet
27 from HLTriggerOffline.Exotica.analyses.hltExoticaPFHT_cff
import PFHTPSet
28 from HLTriggerOffline.Exotica.analyses.hltExoticaCaloHT_cff
import CaloHTPSet
29 from HLTriggerOffline.Exotica.analyses.hltExoticaJetNoBptx_cff
import JetNoBptxPSet
30 from HLTriggerOffline.Exotica.analyses.hltExoticaMuonNoBptx_cff
import MuonNoBptxPSet
31 from HLTriggerOffline.Exotica.analyses.hltExoticaDisplacedMuEG_cff
import DisplacedMuEGPSet
32 from HLTriggerOffline.Exotica.analyses.hltExoticaDisplacedDimuon_cff
import DisplacedDimuonPSet
33 from HLTriggerOffline.Exotica.analyses.hltExoticaDisplacedL2Dimuon_cff
import DisplacedL2DimuonPSet
34 from HLTriggerOffline.Exotica.analyses.hltExoticaPureMET_cff
import PureMETPSet
35 from HLTriggerOffline.Exotica.analyses.hltExoticaMETplusTrack_cff
import METplusTrackPSet
36 from HLTriggerOffline.Exotica.analyses.hltExoticaMonojet_cff
import MonojetPSet
37 from HLTriggerOffline.Exotica.analyses.hltExoticaMonojetBackup_cff
import MonojetBackupPSet
38 from HLTriggerOffline.Exotica.analyses.hltExoticaEleMu_cff
import EleMuPSet
39 from HLTriggerOffline.Exotica.analyses.hltExoticaHTDisplacedJets_cff
import HTDisplacedJetsPSet
40 from HLTriggerOffline.Exotica.analyses.hltExoticaPhotonMET_cff
import PhotonMETPSet
41 from HLTriggerOffline.Exotica.analyses.hltExoticaSingleMuon_cff
import SingleMuonPSet
42 from HLTriggerOffline.Exotica.analyses.hltExoticaDSTJets_cff
import DSTJetsPSet
43 from HLTriggerOffline.Exotica.analyses.hltExoticaDSTMuons_cff
import DSTMuonsPSet
44 from HLTriggerOffline.Exotica.analyses.hltExoticaTracklessJets_cff
import TracklessJetsPSet
46 from DQMServices.Core.DQMEDAnalyzer
import DQMEDAnalyzer
49 "HLTExoticaValidator",
51 hltProcessName = cms.string(
"HLT"),
56 analyses = cms.vstring(
88 genParticleLabel = cms.string(
"genParticles"),
91 beamSpotLabel = cms.string(
"offlineBeamSpot"),
96 parametersTurnOn = cms.vdouble( 0, 2, 4, 6, 8, 10, 12, 14, 16, 18, 20,
97 22, 24, 26, 28, 30, 32, 34, 36, 38, 40,
98 42, 44, 46, 48, 50, 52, 54, 56, 58, 60,
99 62, 64, 66, 68, 70, 72, 74, 76, 78, 80,
100 82, 84, 86, 88, 90, 92, 94, 96, 98, 100,
104 parametersTurnOnSumEt = cms.vdouble( 0, 100, 200, 300, 400, 500, 600, 700, 800, 900,
105 1000, 1100, 1200, 1300, 1400, 1500, 1600, 1700, 1800, 1900,
106 2000, 2100, 2200, 2300, 2400, 2500, 2600, 2700, 2800, 2900,
107 3000, 3100, 3200, 3300, 3400, 3500, 3600, 3700, 3800, 3900,
108 4000, 4100, 4200, 4300, 4400, 4500, 4600, 4700, 4800, 4900,
109 5000, 5100, 5200, 5300, 5400, 5500, 5600, 5700, 5800, 5900,
110 6000, 6100, 6200, 6300, 6400, 6500, 6600, 6700, 6800, 6900,
115 parametersEta = cms.vdouble(48, -2.400, 2.400),
116 parametersPhi = cms.vdouble(50, -3.142, 3.142),
117 parametersDxy = cms.vdouble(50, -0.015, 0.015),
125 Mu_genCut = cms.string(
"pt > 10 && abs(eta) < 2.4 && abs(pdgId) == 13 && (isPromptFinalState || isDirectPromptTauDecayProductFinalState)"),
126 Mu_recCut = cms.string(
"pt > 10 && abs(eta) < 2.4 && isPFMuon && (isTrackerMuon || isGlobalMuon)"),
130 refittedStandAloneMuons_genCut = cms.string(
"pt > 10 && abs(eta) < 2.4"),
132 refittedStandAloneMuons_recCut = cms.string(
"pt > 10 && abs(eta) < 2.4"),
135 Ele_genCut = cms.string(
"pt > 10 && (abs(eta)<1.444 || abs(eta)>1.566) && abs(eta)<2.5 && abs(pdgId) == 11 && (isPromptFinalState||isDirectPromptTauDecayProductFinalState)"),
136 Ele_recCut = cms.string(
137 "pt > 10 && (abs(eta)<1.444 || abs(eta)>1.566) && abs(eta)< 2.5 "+
138 " && hadronicOverEm < 0.05 "+
139 " && abs(deltaEtaSuperClusterTrackAtVtx)<0.007 && abs(deltaPhiSuperClusterTrackAtVtx)<0.06 "+
140 " && sigmaIetaIeta<0.03 "+
141 " && (pfIsolationVariables.sumChargedParticlePt + pfIsolationVariables.sumNeutralHadronEtHighThreshold + pfIsolationVariables.sumPhotonEtHighThreshold )/pt < 0.10 "+
142 " && abs(1/energy - 1/p)<0.05"),
147 Photon_genCut = cms.string(
"pt > 20 && abs(eta) < 2.4 && abs(pdgId) == 22 && isPromptFinalState"),
148 Photon_recCut = cms.string(
"pt > 20 && abs(eta) < 2.4"),
149 Photon_genCut_leading = cms.string(
"pt > 150 "),
150 Photon_recCut_leading = cms.string(
"pt > 150 "),
153 PFTau_genCut = cms.string(
"pt > 20 && abs(eta) < 2.4 && abs(pdgId) == 15 && isPromptDecayed"),
154 PFTau_recCut = cms.string(
"pt > 20 && abs(eta) < 2.4"),
157 PFJet_genCut = cms.string(
"pt > 30 && abs(eta) < 2.4"),
158 PFJet_recCut = cms.string(
"pt > 30 && abs(eta) < 2.4 &&"+
159 "(neutralHadronEnergy + HFHadronEnergy)/energy < 0.99 &&"+
160 "neutralEmEnergyFraction < 0.99 &&"+
161 "numberOfDaughters > 1 &&"+
162 "chargedHadronEnergyFraction > 0 &&"+
163 "chargedMultiplicity > 0 && "+
164 "chargedEmEnergyFraction < 0.99"),
166 CaloJet_genCut = cms.string(
"pt > 30 && abs(eta) < 2.4"),
167 CaloJet_recCut = cms.string(
"pt > 30 && abs(eta) < 2.4"),
170 MET_genCut = cms.string(
"pt > 75"),
171 MET_recCut = cms.string(
"pt > 75"),
173 PFMET_genCut = cms.string(
"pt > 75"),
174 PFMET_recCut = cms.string(
"pt > 75"),
176 PFMHT_genCut = cms.string(
"pt > 75"),
177 PFMHT_recCut = cms.string(
"pt > 75"),
179 GenMET_genCut = cms.string(
"pt > 75"),
180 GenMET_recCut = cms.string(
"pt > 75"),
182 Track_genCut = cms.string(
"pt > 50"),
183 Track_recCut = cms.string(
"pt > 50"),
185 CaloMET_genCut = cms.string(
"pt > 75"),
186 CaloMET_recCut = cms.string(
"pt > 75"),
188 CaloMHT_genCut = cms.string(
"pt > 75"),
189 CaloMHT_recCut = cms.string(
"pt > 75"),
191 hltMET_genCut = cms.string(
"pt > 75"),
192 hltMET_recCut = cms.string(
"pt > 75"),
209 LowPtTrimuon = LowPtTrimuonPSet,
210 HighPtDimuon = HighPtDimuonPSet,
211 HighPtDielectron = HighPtDielectronPSet,
212 LowPtDimuon = LowPtDimuonPSet,
213 LowPtDielectron = LowPtDielectronPSet,
214 HighPtElectron = HighPtElectronPSet,
215 LowPtElectron = LowPtElectronPSet,
216 HighPtPhoton = HighPtPhotonPSet,
217 DiPhoton = DiPhotonPSet,
218 DisplacedDiPhoton = DisplacedDiPhotonPSet,
219 SingleMuon = SingleMuonPSet,
220 JetNoBptx = JetNoBptxPSet,
221 MuonNoBptx = MuonNoBptxPSet,
222 DisplacedMuEG = DisplacedMuEGPSet,
223 DisplacedDimuon = DisplacedDimuonPSet,
224 DisplacedL2Dimuon = DisplacedL2DimuonPSet,
225 PureMET = PureMETPSet,
226 METplusTrack = METplusTrackPSet,
227 Monojet = MonojetPSet,
228 MonojetBackup = MonojetBackupPSet,
232 PhotonMET = PhotonMETPSet,
233 HTDisplacedJets = HTDisplacedJetsPSet,
234 DSTJets = DSTJetsPSet,
235 DSTMuons = DSTMuonsPSet,
236 TracklessJets = TracklessJetsPSet