Skip to content

Commit

Permalink
Merge pull request #11620 from ndaci/ExoValDev_76Xto74X_PR8
Browse files Browse the repository at this point in the history
Splitted HT category into CaloHT and PFHT categories. Added paths that are removde JetIdCleaned suffix (MonoJet, PhotonMET,and PureMET). Optimized binning of sumEt plot in MonoJet category. Added new paths in PFHT category.
  • Loading branch information
cmsbuild committed Oct 28, 2015
2 parents 4fc83fe + dad4fb4 commit 3f3cd37
Show file tree
Hide file tree
Showing 11 changed files with 130 additions and 32 deletions.
1 change: 1 addition & 0 deletions HLTriggerOffline/Exotica/interface/HLTExoticaSubAnalysis.h
Original file line number Diff line number Diff line change
Expand Up @@ -174,6 +174,7 @@ class HLTExoticaSubAnalysis {
StringCutObjectSelector<reco::PFMET> * _recPFMHTSelector;
StringCutObjectSelector<reco::GenMET> * _genMETSelector;
StringCutObjectSelector<reco::CaloMET> * _recCaloMETSelector;
StringCutObjectSelector<reco::CaloMET> * _recCaloMHTSelector;
StringCutObjectSelector<l1extra::L1EtMissParticle> * _l1METSelector;
StringCutObjectSelector<reco::PFTau> * _recPFTauSelector;
StringCutObjectSelector<reco::Photon> * _recPhotonSelector;
Expand Down
12 changes: 11 additions & 1 deletion HLTriggerOffline/Exotica/python/ExoticaValidation_cff.py
Original file line number Diff line number Diff line change
Expand Up @@ -42,8 +42,18 @@
excludePFMuons = cms.bool( True )
)

recoExoticaValidationCaloHT = cms.EDProducer(
"CaloMETProducer",
src = cms.InputTag("ak4CaloJets"),
noHF = cms.bool(True),
alias = cms.string('CaloMHT'),
globalThreshold = cms.double(30.0),
calculateSignificance = cms.bool(False),
jets = cms.InputTag("ak4CaloJets") # for significance calculation
)

ExoticaValidationProdSeq = cms.Sequence(
recoExoticaValidationHT + recoExoticaValidationMETNoMu + recoExoticaValidationMHTNoMu
recoExoticaValidationHT + recoExoticaValidationMETNoMu + recoExoticaValidationMHTNoMu + recoExoticaValidationCaloHT
)

ExoticaValidationSequence = cms.Sequence(
Expand Down
26 changes: 26 additions & 0 deletions HLTriggerOffline/Exotica/python/analyses/hltExoticaCaloHT_cff.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
import FWCore.ParameterSet.Config as cms

CaloHTPSet = cms.PSet(
hltPathsToCheck = cms.vstring(
"HLT_HT900_v", # Run2
"HLT_HT300_v", # Run2
"HLT_ECALHT800_v", # Run2 7e33
"HLT_Photon90_CaloIdL_PFHT600_v" # 50ns backup menu
"HLT_HT650_v",
"HLT_HT450to470_v", # HT Parking
"HLT_HT470to500_v", # HT Parking
"HLT_HT500to550_v", # HT Parking
"HLT_HT550to650_v", # HT Parking
"DST_HT250_CaloScouting_v", # scouting
"DST_CaloJet40_CaloScouting_v",
"DST_L1HTT125ORHTT150ORHTT175_CaloScouting_v"
),
recCaloMHTLabel = cms.InputTag("recoExoticaValidationCaloHT"),
recCaloJetLabel = cms.InputTag("ak4CaloJets"),
# -- Analysis specific cuts
minCandidates = cms.uint32(1),
# -- Analysis specific binnings
parametersTurnOn = cms.vdouble(0, 50, 100, 150, 200, 250, 300, 350, 400, 450, 470,
500, 550, 600, 650, 700, 800, 900, 1000
)
)
16 changes: 12 additions & 4 deletions HLTriggerOffline/Exotica/python/analyses/hltExoticaMonojet_cff.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,14 +2,17 @@

MonojetPSet = cms.PSet(
hltPathsToCheck = cms.vstring(
#"HLT_PFMETNoMu90_NoiseCleaned_PFMHTNoMu90_IDTight_v",
"HLT_PFMETNoMu90_PFMHTNoMu90_IDTight_v",
"HLT_PFMETNoMu120_PFMHTNoMu120_IDTight_v",
"HLT_MET200_v",
"HLT_MonoCentralPFJet80_PFMETNoMu120_PFMHTNoMu120_IDTight_v",
"HLT_MonoCentralPFJet80_PFMETNoMu90_PFMHTNoMu90_IDTight_v",

# For backward compatibility
"HLT_PFMETNoMu90_JetIdCleaned_PFMHTNoMu90_IDTight_v",
#"HLT_PFMETNoMu120_NoiseCleaned_PFMHTNoMu120_IDTight_v",
"HLT_PFMETNoMu120_JetIdCleaned_PFMHTNoMu120_IDTight_v",
"HLT_MET200_JetIdCleaned_v",
#"HLT_MonoCentralPFJet80_PFMETNoMu120_NoiseCleaned_PFMHTNoMu120_IDTight_v",
"HLT_MonoCentralPFJet80_PFMETNoMu120_JetIdCleaned_PFMHTNoMu120_IDTight_v",
#"HLT_MonoCentralPFJet80_PFMETNoMu90_NoiseCleaned_PFMHTNoMu90_IDTight_v"
"HLT_MonoCentralPFJet80_PFMETNoMu90_JetIdCleaned_PFMHTNoMu90_IDTight_v"
),

Expand All @@ -33,6 +36,11 @@
320, 340, 360, 380, 400,
420, 440, 460, 480, 500,600,700,800,900,1100,1200,
1400,1600,1800,2000,2200,2400,2600,2800,3000),

parametersTurnOnSumEt = cms.vdouble( 0, 100, 200, 300, 400, 500, 600, 700, 800, 900,
1000, 1100, 1200, 1300, 1400, 1500
),

dropPt2 = cms.bool(True),
dropPt3 = cms.bool(True),
)
Original file line number Diff line number Diff line change
@@ -1,32 +1,26 @@
import FWCore.ParameterSet.Config as cms

HTPSet = cms.PSet(
PFHTPSet = cms.PSet(
hltPathsToCheck = cms.vstring(
"HLT_PFHT650_WideJetMJJ900DEtaJJ1p5_v",
"HLT_PFHT650_WideJetMJJ950DEtaJJ1p5_v",
#"HLT_PFHT750_4Jet_v", # Run2
"HLT_PFHT750_4Jet_v",
"HLT_PFHT550_4JetPt50_v",
"HLT_PFHT650_4JetPt50_v",
"HLT_PFHT750_4JetPt50_v",
"HLT_PFHT650_4Jet_v", # Run2
"HLT_PFHT550_4Jet_v", # Run2
#"HLT_PFHT900_v", # Run2
"HLT_PFHT800_v",
"HLT_PFHT650_v",
"HLT_HT900_v", # Run2
"HLT_HT300_v", # Run2
"HLT_HT450to470_v", # HT Parking
"HLT_HT470to500_v", # HT Parking
"HLT_HT500to550_v", # HT Parking
"HLT_HT550to650_v", # HT Parking
"HLT_HT650_v", # HT Parking
"HLT_ECALHT800_v", # Run2 7e33
"HLT_Photon90_CaloIdL_PFHT600_v" # 50ns backup menu
#"HLT_HT750_v" # Run1 (frozenHLT)
"DST_HT450_PFReco_PFBTagCSVReco_PFScouting_v",
"DST_L1HTT125ORHTT150ORHTT175_PFReco_PFBTagCSVReco_PFScouting_v",
"DST_CaloJet40_PFReco_PFBTagCSVReco_PFScouting_v"
),
recPFMHTLabel = cms.InputTag("recoExoticaValidationHT"),
recPFJetLabel = cms.InputTag("ak4PFJets"),
# -- Analysis specific cuts
MET_genCut = cms.string("sumEt > 75"),
MET_recCut = cms.string("sumEt > 75"),
#MET_genCut = cms.string("sumEt > 75"),
#MET_recCut = cms.string("sumEt > 75"),
minCandidates = cms.uint32(1),
# -- Analysis specific binnings
parametersTurnOn = cms.vdouble(0, 50, 100, 150, 200, 250, 300, 350, 400, 450, 470,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,8 @@

PhotonMETPSet = cms.PSet(
hltPathsToCheck = cms.vstring(
#"HLT_Photon135_PFMET100_NoiseCleaned_v"
"HLT_Photon135_PFMET100_JetIdCleaned_v",
"HLT_Photon135_PFMET100_v",
"HLT_Photon135_PFMET100_JetIdCleaned_v", # For backward compatibility
"HLT_Photon125_v" # 0T
),
recPFMETLabel = cms.InputTag("pfMet"),
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,14 @@
hltPathsToCheck = cms.vstring(
"HLT_PFMET170_v",
"HLT_PFMET170_HBHECleaned_v",
"HLT_PFMET170_JetIdCleaned_v",
"HLT_PFMET170_v",
"HLT_PFMET170_NoiseCleaned_v", # Run2
"HLT_MET200_v",
"HLT_MET100_v", # 0T
"HLT_MET150_v", # 0T

# For backward compatibility
"HLT_PFMET170_JetIdCleaned_v",
"HLT_MET200_JetIdCleaned_v",
"HLT_MET100_JetIdCleaned_v", # 0T
"HLT_MET150_JetIdCleaned_v" # 0T
Expand Down
15 changes: 10 additions & 5 deletions HLTriggerOffline/Exotica/python/hltExoticaPostProcessors_cff.py
Original file line number Diff line number Diff line change
Expand Up @@ -71,7 +71,7 @@ def add_reco_strings(strings):
#--- IMPORTANT: Update this collection whenever you introduce a new object
# in the code (from EVTColContainer::getTypeString)
obj_types = ["Mu","refittedStandAloneMuons","Track","Ele","Photon","PFTau","PFJet","MET","PFMET","PFMHT","GenMET","CaloJet"
,"CaloMET","l1MET"]
,"CaloMET","CaloMHT","l1MET"]
#--- IMPORTANT: Trigger are extracted from the hltExoticaValidator_cfi.py module
triggers = [ ]
efficiency_strings = []
Expand Down Expand Up @@ -138,9 +138,13 @@ def add_reco_strings(strings):
hltExoticaPostSingleMuon.subDirs = ['HLT/Exotica/SingleMuon']
hltExoticaPostSingleMuon.efficiencyProfile = efficiency_strings

hltExoticaPostHT = hltExoticaPostProcessor.clone()
hltExoticaPostHT.subDirs = ['HLT/Exotica/HT']
hltExoticaPostHT.efficiencyProfile = efficiency_strings
hltExoticaPostPFHT = hltExoticaPostProcessor.clone()
hltExoticaPostPFHT.subDirs = ['HLT/Exotica/PFHT']
hltExoticaPostPFHT.efficiencyProfile = efficiency_strings

hltExoticaPostCaloHT = hltExoticaPostProcessor.clone()
hltExoticaPostCaloHT.subDirs = ['HLT/Exotica/CaloHT']
hltExoticaPostCaloHT.efficiencyProfile = efficiency_strings

hltExoticaPostJetNoBptx = hltExoticaPostProcessor.clone()
hltExoticaPostJetNoBptx.subDirs = ['HLT/Exotica/JetNoBptx']
Expand Down Expand Up @@ -209,7 +213,8 @@ def add_reco_strings(strings):
hltExoticaPostHighPtPhoton +
hltExoticaPostDiPhoton +
# HT path
hltExoticaPostHT +
hltExoticaPostPFHT +
hltExoticaPostCaloHT +
# NoBptx paths
hltExoticaPostJetNoBptx +
hltExoticaPostMuonNoBptx +
Expand Down
12 changes: 9 additions & 3 deletions HLTriggerOffline/Exotica/python/hltExoticaValidator_cfi.py
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,8 @@
#from HLTriggerOffline.Exotica.analyses.hltExoticaLowPtElectron_cff import LowPtElectronPSet
from HLTriggerOffline.Exotica.analyses.hltExoticaHighPtPhoton_cff import HighPtPhotonPSet
from HLTriggerOffline.Exotica.analyses.hltExoticaDiPhoton_cff import DiPhotonPSet
from HLTriggerOffline.Exotica.analyses.hltExoticaHT_cff import HTPSet
from HLTriggerOffline.Exotica.analyses.hltExoticaPFHT_cff import PFHTPSet
from HLTriggerOffline.Exotica.analyses.hltExoticaCaloHT_cff import CaloHTPSet
from HLTriggerOffline.Exotica.analyses.hltExoticaJetNoBptx_cff import JetNoBptxPSet
from HLTriggerOffline.Exotica.analyses.hltExoticaMuonNoBptx_cff import MuonNoBptxPSet
from HLTriggerOffline.Exotica.analyses.hltExoticaDisplacedMuEG_cff import DisplacedMuEGPSet
Expand Down Expand Up @@ -62,7 +63,8 @@
"SingleMuon",
"JetNoBptx",
"MuonNoBptx",
"HT",
"PFHT",
"CaloHT",
"DisplacedMuEG",
"DisplacedMuJet",
"DisplacedDimuon",
Expand Down Expand Up @@ -178,6 +180,9 @@
CaloMET_genCut = cms.string("pt > 75"),
CaloMET_recCut = cms.string("pt > 75"),

CaloMHT_genCut = cms.string("pt > 75"),
CaloMHT_recCut = cms.string("pt > 75"),

hltMET_genCut = cms.string("pt > 75"),
hltMET_recCut = cms.string("pt > 75"),

Expand Down Expand Up @@ -219,7 +224,8 @@
METplusTrack = METplusTrackPSet,
Monojet = MonojetPSet,
MonojetBackup = MonojetBackupPSet,
HT = HTPSet,
PFHT = PFHTPSet,
CaloHT = CaloHTPSet,
#DisplacedDimuonDijet = DisplacedDimuonDijetPSet,
EleMu = EleMuPSet,
PhotonMET = PhotonMETPSet,
Expand Down
13 changes: 13 additions & 0 deletions HLTriggerOffline/Exotica/src/EVTColContainer.cc
Original file line number Diff line number Diff line change
Expand Up @@ -59,6 +59,7 @@ struct EVTColContainer {
L1MET = 390004,
PFJET = 211,
CALOJET = 111,
CALOMHT = 400002,
_nMAX
};

Expand All @@ -75,6 +76,7 @@ struct EVTColContainer {
const std::vector<reco::PFMET> * pfMHTs;
const std::vector<reco::GenMET> * genMETs;
const std::vector<reco::CaloMET> * caloMETs;
const std::vector<reco::CaloMET> * caloMHTs;
const std::vector<l1extra::L1EtMissParticle> * l1METs;
const std::vector<reco::PFTau> * pfTaus;
const std::vector<reco::PFJet> * pfJets;
Expand All @@ -95,6 +97,7 @@ struct EVTColContainer {
pfMHTs(0),
genMETs(0),
caloMETs(0),
caloMHTs(0),
l1METs(0),
pfTaus(0),
pfJets(0),
Expand Down Expand Up @@ -128,6 +131,7 @@ struct EVTColContainer {
pfMHTs = 0;
genMETs = 0;
caloMETs = 0;
caloMHTs = 0;
l1METs = 0;
pfTaus = 0;
pfJets = 0;
Expand Down Expand Up @@ -182,6 +186,11 @@ struct EVTColContainer {
caloMETs = v;
++nInitialized;
}
void setCaloMHT(const reco::CaloMETCollection * v)
{
caloMHTs = v;
++nInitialized;
}
void set(const l1extra::L1EtMissParticleCollection * v)
{
l1METs = v;
Expand Down Expand Up @@ -227,6 +236,8 @@ struct EVTColContainer {
size = genMETs->size();
} else if (objtype == EVTColContainer::CALOMET && caloMETs != 0) {
size = caloMETs->size();
} else if (objtype == EVTColContainer::CALOMHT && caloMHTs != 0) {
size = caloMHTs->size();
} else if (objtype == EVTColContainer::L1MET && l1METs != 0) {
size = l1METs->size();
} else if (objtype == EVTColContainer::PFTAU && pfTaus != 0) {
Expand Down Expand Up @@ -265,6 +276,8 @@ struct EVTColContainer {
objTypestr = "GenMET";
} else if (objtype == EVTColContainer::CALOMET) {
objTypestr = "CaloMET";
} else if (objtype == EVTColContainer::CALOMHT) {
objTypestr = "CaloMHT";
} else if (objtype == EVTColContainer::L1MET) {
objTypestr = "l1MET";
} else if (objtype == EVTColContainer::PFTAU) {
Expand Down
31 changes: 30 additions & 1 deletion HLTriggerOffline/Exotica/src/HLTExoticaSubAnalysis.cc
Original file line number Diff line number Diff line change
Expand Up @@ -51,6 +51,7 @@ HLTExoticaSubAnalysis::HLTExoticaSubAnalysis(const edm::ParameterSet & pset,
_recPFMHTSelector(0),
_genMETSelector(0),
_recCaloMETSelector(0),
_recCaloMHTSelector(0),
_l1METSelector(0),
_recPFTauSelector(0),
_recPhotonSelector(0),
Expand Down Expand Up @@ -175,6 +176,8 @@ HLTExoticaSubAnalysis::~HLTExoticaSubAnalysis()
_genMETSelector = 0;
delete _recCaloMETSelector;
_recCaloMETSelector = 0;
delete _recCaloMHTSelector;
_recCaloMHTSelector = 0;
delete _l1METSelector;
_l1METSelector = 0;
delete _recPFTauSelector;
Expand Down Expand Up @@ -730,7 +733,7 @@ const std::vector<unsigned int> HLTExoticaSubAnalysis::getObjectsType(const std:
{
LogDebug("ExoticaValidation") << "In HLTExoticaSubAnalysis::getObjectsType()";

static const unsigned int objSize = 14;
static const unsigned int objSize = 15;
static const unsigned int objtriggernames[] = {
EVTColContainer::MUON,
EVTColContainer::MUTRK,
Expand All @@ -742,6 +745,7 @@ const std::vector<unsigned int> HLTExoticaSubAnalysis::getObjectsType(const std:
EVTColContainer::PFMHT,
EVTColContainer::GENMET,
EVTColContainer::CALOMET,
EVTColContainer::CALOMHT,
EVTColContainer::L1MET,
EVTColContainer::PFTAU,
EVTColContainer::PFJET,
Expand Down Expand Up @@ -809,6 +813,10 @@ void HLTExoticaSubAnalysis::getNamesOfObjects(const edm::ParameterSet & anpset)
_recLabels[EVTColContainer::CALOMET] = anpset.getParameter<edm::InputTag>("recCaloMETLabel");
_genSelectorMap[EVTColContainer::CALOMET] = 0 ;
}
if (anpset.exists("recCaloMHTLabel")) {
_recLabels[EVTColContainer::CALOMHT] = anpset.getParameter<edm::InputTag>("recCaloMHTLabel");
_genSelectorMap[EVTColContainer::CALOMHT] = 0 ;
}
if (anpset.exists("hltMETLabel")) {
_recLabels[EVTColContainer::CALOMET] = anpset.getParameter<edm::InputTag>("hltMETLabel");
_genSelectorMap[EVTColContainer::CALOMET] = 0 ;
Expand Down Expand Up @@ -908,6 +916,11 @@ void HLTExoticaSubAnalysis::registerConsumes(edm::ConsumesCollector & iC)
edm::EDGetToken token(particularToken);
_tokens[it->first] = token;
}
else if (it->first == EVTColContainer::CALOMHT) {
edm::EDGetTokenT<reco::CaloMETCollection> particularToken = iC.consumes<reco::CaloMETCollection>(it->second);
edm::EDGetToken token(particularToken);
_tokens[it->first] = token;
}
else if (it->first == EVTColContainer::L1MET) {
edm::EDGetTokenT<l1extra::L1EtMissParticleCollection> particularToken = iC.consumes<l1extra::L1EtMissParticleCollection>(it->second);
edm::EDGetToken token(particularToken);
Expand Down Expand Up @@ -1020,6 +1033,11 @@ void HLTExoticaSubAnalysis::getHandlesToObjects(const edm::Event & iEvent, EVTCo
iEvent.getByToken(it->second, theHandle);
if (theHandle.isValid()) col->set(theHandle.product());
}
else if (it->first == EVTColContainer::CALOMHT) {
edm::Handle<reco::CaloMETCollection> theHandle;
iEvent.getByToken(it->second, theHandle);
if (theHandle.isValid()) col->setCaloMHT(theHandle.product());
}
else if (it->first == EVTColContainer::L1MET) {
edm::Handle<l1extra::L1EtMissParticleCollection> theHandle;
iEvent.getByToken(it->second, theHandle);
Expand Down Expand Up @@ -1149,6 +1167,8 @@ void HLTExoticaSubAnalysis::initSelector(const unsigned int & objtype)
_genMETSelector = new StringCutObjectSelector<reco::GenMET>(_recCut[objtype]);
} else if (objtype == EVTColContainer::CALOMET && _recCaloMETSelector == 0) {
_recCaloMETSelector = new StringCutObjectSelector<reco::CaloMET>(_recCut[objtype]);
} else if (objtype == EVTColContainer::CALOMHT && _recCaloMHTSelector == 0) {
_recCaloMHTSelector = new StringCutObjectSelector<reco::CaloMET>(_recCut[objtype]);
} else if (objtype == EVTColContainer::L1MET && _l1METSelector == 0) {
_l1METSelector = new StringCutObjectSelector<l1extra::L1EtMissParticle>(_recCut[objtype]);
} else if (objtype == EVTColContainer::PFTAU && _recPFTauSelector == 0) {
Expand Down Expand Up @@ -1264,6 +1284,15 @@ void HLTExoticaSubAnalysis::insertCandidates(const unsigned int & objType, const
if(i==0) theSumEt[objType] = cols->caloMETs->at(i).sumEt();
}
}
} else if (objType == EVTColContainer::CALOMHT) {
for (size_t i = 0; i < cols->caloMHTs->size(); i++) {
LogDebug("ExoticaValidation") << "Inserting CaloMHT " << i ;
if (_recCaloMHTSelector->operator()(cols->caloMHTs->at(i))) {
reco::LeafCandidate m(0, cols->caloMHTs->at(i).p4(), cols->caloMHTs->at(i).vertex(), objType, 0, true);
matches->push_back(m);
if(i==0) theSumEt[objType] = cols->caloMHTs->at(i).sumEt();
}
}
} else if (objType == EVTColContainer::L1MET) {
for (size_t i = 0; i < cols->l1METs->size(); i++) {
LogDebug("ExoticaValidation") << "Inserting L1MET " << i ;
Expand Down

0 comments on commit 3f3cd37

Please sign in to comment.