66 edm::LogInfo(
"SUSY_HLT_DiJet_MET") <<
"SUSY_HLT_DiJet_MET::analyze" << std::endl;
73 if (!pfMETCollection.
isValid()) {
74 edm::LogError(
"SUSY_HLT_DiJet_MET") <<
"invalid collection: PFMET" 80 if (!caloMETCollection.
isValid()) {
81 edm::LogError(
"SUSY_HLT_DiJet_MET") <<
"invalid collection: CaloMET" 90 if (!pfJetCollection.
isValid()) {
91 edm::LogError(
"SUSY_HLT_DiJet_MET") <<
"invalid collection: PFJets" 97 if (!caloJetCollection.
isValid()) {
98 edm::LogError(
"SUSY_HLT_DiJet_MET") <<
"invalid collection: CaloJets" 109 edm::LogError(
"SUSY_HLT_DiJet_MET") <<
"invalid collection: TriggerResults" 115 if (!triggerSummary.
isValid()) {
116 edm::LogError(
"SUSY_HLT_DiJet_MET") <<
"invalid collection: TriggerSummary" 127 if (!(filterIndex >= triggerSummary->
sizeFilters())) {
129 for (
size_t j = 0; j < keys.size(); ++j) {
136 std::vector<float> ptJet, etaJet, phiJet;
137 if (!(jetFilterIndex >= triggerSummary->
sizeFilters())) {
139 for (
size_t j = 0; j < keys_jetfilter.size(); ++j) {
145 ptJet.push_back(foundObject.
pt());
146 etaJet.push_back(foundObject.
eta());
147 phiJet.push_back(foundObject.
phi());
152 bool hasFired =
false;
153 bool hasFiredAuxiliaryForHadronicLeg =
false;
155 unsigned int numTriggers = trigNames.
size();
156 for (
unsigned int hltIndex = 0; hltIndex < numTriggers; ++hltIndex) {
158 hltresults->
accept(hltIndex))
161 hltresults->
wasrun(hltIndex) && hltresults->
accept(hltIndex))
162 hasFiredAuxiliaryForHadronicLeg =
true;
165 if (hasFiredAuxiliaryForHadronicLeg) {
166 int offlineJetCounter = 0;
167 int offlineCentralJets = 0;
168 int nMatch = 0, jet1Index = -1, jet2Index = -1;
170 for (reco::PFJetCollection::const_iterator i_pfjet = pfJetCollection->begin(); i_pfjet != pfJetCollection->end();
173 offlineCentralJets++;
174 if (offlineCentralJets == 2 && pfMETCollection->begin()->et() >
metCut_)
177 for (
unsigned int itrigjet = 0; itrigjet < ptJet.size(); ++itrigjet) {
179 (
sqrt((i_pfjet->phi() - phiJet.at(itrigjet)) * (i_pfjet->phi() - phiJet.at(itrigjet)) +
180 (i_pfjet->eta() - etaJet.at(itrigjet)) * (i_pfjet->eta() - etaJet.at(itrigjet))) < 0.4)) {
183 jet1Index = offlineJetCounter;
185 jet2Index = offlineJetCounter;
191 if (offlineCentralJets == 2 && pfMETCollection->begin()->et() >
metCut_)
208 if (jet1Index > -1 && jet2Index > -1) {
210 fabs(
reco::deltaPhi(pfJetCollection->at(jet1Index).phi(), pfJetCollection->at(jet2Index).phi())));
constexpr double deltaPhi(double phi1, double phi2)
bool wasrun() const
Was at least one path run?
MonitorElement * h_triggerJetEta
trigger::size_type sizeFilters() const
edm::InputTag triggerFilter_
edm::EDGetTokenT< reco::CaloJetCollection > theCaloJetCollection_
MonitorElement * h_pfMetTurnOn_num
MonitorElement * h_pfMetPhi
MonitorElement * h_pfJetPt
bool accept() const
Has at least one path accepted the event?
const Keys & filterKeys(trigger::size_type index) const
trigger::size_type filterIndex(const edm::InputTag &filterTag) const
find index of filter in data-member vector from filter tag
MonitorElement * h_caloMetvsPFMet
MonitorElement * h_pfJetEta
Strings::size_type size() const
MonitorElement * h_triggerMetPhi
Single trigger physics object (e.g., an isolated muon)
edm::EDGetTokenT< reco::PFMETCollection > thePfMETCollection_
const TriggerObjectCollection & getObjects() const
MonitorElement * h_triggerMet
MonitorElement * h_pfJet2PtTurnOn_den
MonitorElement * h_pfJet1Jet2DPhi
std::vector< TriggerObject > TriggerObjectCollection
collection of trigger physics objects (e.g., all isolated muons)
static const char *const trigNames[]
MonitorElement * h_pfJetPhi
edm::InputTag triggerJetFilter_
std::string const & triggerName(unsigned int index) const
std::vector< size_type > Keys
MonitorElement * h_pfJet2PtTurnOn_num
edm::EDGetTokenT< reco::PFJetCollection > thePfJetCollection_
edm::EDGetTokenT< edm::TriggerResults > triggerResults_
edm::EDGetTokenT< reco::CaloMETCollection > theCaloMETCollection_
std::string triggerPathAuxiliaryForHadronic_
MonitorElement * h_pfMetTurnOn_den
edm::EDGetTokenT< trigger::TriggerEvent > theTrigSummary_
MonitorElement * h_triggerJetPt
MonitorElement * h_triggerJetPhi