diff --git a/BoostedTTHFlatTreeProducer.cc b/BoostedTTHFlatTreeProducer.cc index f210c83cfaf..a7d28cb4114 100644 --- a/BoostedTTHFlatTreeProducer.cc +++ b/BoostedTTHFlatTreeProducer.cc @@ -14,7 +14,7 @@ #include "DataFormats/JetReco/interface/GenJet.h" #include "DataFormats/JetReco/interface/GenJetCollection.h" -#include "KKousour/TopAnalysis/plugins/BoostedTTHFlatTreeProducer.h" +#include "UserCode/TopAnalysis/plugins/BoostedTTHFlatTreeProducer.h" using namespace std; using namespace reco; @@ -223,8 +223,8 @@ void BoostedTTHFlatTreeProducer::beginJob() outTree_->Branch("triggerBit" ,"vector" ,&triggerBit_); outTree_->Branch("triggerPre" ,"vector" ,&triggerPre_); //------------------------------------------------------------------ - discr_ = new BoostedDiscriminatorMVA("KKousour/TopAnalysis/data/"+xmlFile_); - discrJets_ = new DiscriminatorFisher("KKousour/TopAnalysis/data/"+xmlFisherFile_); + discr_ = new BoostedDiscriminatorMVA("UserCode/TopAnalysis/data/"+xmlFile_); + discrJets_ = new DiscriminatorFisher("UserCode/TopAnalysis/data/"+xmlFisherFile_); //------------------- MC --------------------------------- if (isMC_) { @@ -447,8 +447,8 @@ bool BoostedTTHFlatTreeProducer::isGoodJet(const pat::Jet &jet) if (!idT) res = false; if (pt < ptMin_) res = false; if (eta > etaMax_) res = false; - if (jet.userFloat("ak8PFJetsCHSSoftDropMass") < massMin_) res = false; - if ((jet.subjets("SoftDrop")).size() < 2) res = false; + if (jet.userFloat("ak8PFJetsPuppiSoftDropMass") < massMin_) res = false; + if ((jet.subjets("SoftDropPuppi")).size() < 2) res = false; return res; } ////////////////////////////////////////////////////////////////////////////////////////// @@ -551,7 +551,7 @@ bool BoostedTTHFlatTreeProducer::isGoodElectron(const pat::Electron &el,const re float ooEmooP = (float)fabs(1/ecalEnergy - 1/trackMomentumAtVtx); float d0 = (float)el.gsfTrack()->dxy(vtx.position()); float dz = (float)el.gsfTrack()->dz(vtx.position()); - int expectedMissingInnerHits = el.gsfTrack()->hitPattern().numberOfHits(reco::HitPattern::MISSING_INNER_HITS); + int expectedMissingInnerHits = el.gsfTrack()->hitPattern().numberOfAllHits(reco::HitPattern::MISSING_INNER_HITS); bool passConversionVeto = el.passConversionVeto(); if(isEB) {// tight working point if(res && full5x5_sigmaIetaIeta > 0.0101) res = false; @@ -692,15 +692,15 @@ void BoostedTTHFlatTreeProducer::analyze(edm::Event const& iEvent, edm::EventSet phi_ ->push_back(ijet->phi()); eta_ ->push_back(ijet->eta()); mass_ ->push_back(ijet->mass()); - massSoftDrop_ ->push_back(ijet->userFloat("ak8PFJetsCHSSoftDropMass")); + massSoftDrop_ ->push_back(ijet->userFloat("ak8PFJetsPuppiSoftDropMass")); energy_ ->push_back(ijet->energy()); btag_ ->push_back(btag); isBtag_ ->push_back(isBtag); doubleBtag_ ->push_back(doubleBtag); isDoubleBtag_ ->push_back(isDoubleBtag); - tau1_ ->push_back(ijet->userFloat("NjettinessAK8:tau1")); - tau2_ ->push_back(ijet->userFloat("NjettinessAK8:tau2")); - tau3_ ->push_back(ijet->userFloat("NjettinessAK8:tau3")); + tau1_ ->push_back(ijet->userFloat("NjettinessAK8Puppi:tau1")); + tau2_ ->push_back(ijet->userFloat("NjettinessAK8Puppi:tau2")); + tau3_ ->push_back(ijet->userFloat("NjettinessAK8Puppi:tau3")); vP4.push_back(ijet->p4()); @@ -710,28 +710,28 @@ void BoostedTTHFlatTreeProducer::analyze(edm::Event const& iEvent, edm::EventSet nBJets_++; } //---- subjets -------------------- - int nSub((ijet->subjets("SoftDrop")).size()); + int nSub((ijet->subjets("SoftDropPuppi")).size()); int nBSub(0); if (nSub > 0) { - btagSub0_->push_back((ijet->subjets("SoftDrop"))[0]->bDiscriminator(srcBtag_.c_str())); - massSub0_->push_back((ijet->subjets("SoftDrop"))[0]->mass()); - ptSub0_->push_back((ijet->subjets("SoftDrop"))[0]->pt()); - etaSub0_->push_back((ijet->subjets("SoftDrop"))[0]->eta()); - phiSub0_->push_back((ijet->subjets("SoftDrop"))[0]->phi()); - flavorSub0_->push_back((ijet->subjets("SoftDrop"))[0]->partonFlavour()); - flavorHadronSub0_->push_back((ijet->subjets("SoftDrop"))[0]->hadronFlavour()); - if ((ijet->subjets("SoftDrop"))[0]->bDiscriminator(srcBtag_.c_str()) >= btagMin_) { + btagSub0_->push_back((ijet->subjets("SoftDropPuppi"))[0]->bDiscriminator(srcBtag_.c_str())); + massSub0_->push_back((ijet->subjets("SoftDropPuppi"))[0]->mass()); + ptSub0_->push_back((ijet->subjets("SoftDropPuppi"))[0]->pt()); + etaSub0_->push_back((ijet->subjets("SoftDropPuppi"))[0]->eta()); + phiSub0_->push_back((ijet->subjets("SoftDropPuppi"))[0]->phi()); + flavorSub0_->push_back((ijet->subjets("SoftDropPuppi"))[0]->partonFlavour()); + flavorHadronSub0_->push_back((ijet->subjets("SoftDropPuppi"))[0]->hadronFlavour()); + if ((ijet->subjets("SoftDropPuppi"))[0]->bDiscriminator(srcBtag_.c_str()) >= btagMin_) { nBSub++; } if (nSub > 1) { - btagSub1_->push_back((ijet->subjets("SoftDrop"))[1]->bDiscriminator(srcBtag_.c_str())); - massSub1_->push_back((ijet->subjets("SoftDrop"))[1]->mass()); - ptSub1_->push_back((ijet->subjets("SoftDrop"))[1]->pt()); - etaSub1_->push_back((ijet->subjets("SoftDrop"))[1]->eta()); - phiSub1_->push_back((ijet->subjets("SoftDrop"))[1]->phi()); - flavorSub1_->push_back((ijet->subjets("SoftDrop"))[1]->partonFlavour()); - flavorHadronSub1_->push_back((ijet->subjets("SoftDrop"))[1]->hadronFlavour()); - if ((ijet->subjets("SoftDrop"))[1]->bDiscriminator(srcBtag_.c_str()) >= btagMin_) { + btagSub1_->push_back((ijet->subjets("SoftDropPuppi"))[1]->bDiscriminator(srcBtag_.c_str())); + massSub1_->push_back((ijet->subjets("SoftDropPuppi"))[1]->mass()); + ptSub1_->push_back((ijet->subjets("SoftDropPuppi"))[1]->pt()); + etaSub1_->push_back((ijet->subjets("SoftDropPuppi"))[1]->eta()); + phiSub1_->push_back((ijet->subjets("SoftDropPuppi"))[1]->phi()); + flavorSub1_->push_back((ijet->subjets("SoftDropPuppi"))[1]->partonFlavour()); + flavorHadronSub1_->push_back((ijet->subjets("SoftDropPuppi"))[1]->hadronFlavour()); + if ((ijet->subjets("SoftDropPuppi"))[1]->bDiscriminator(srcBtag_.c_str()) >= btagMin_) { nBSub++; @@ -744,7 +744,7 @@ void BoostedTTHFlatTreeProducer::analyze(edm::Event const& iEvent, edm::EventSet // eval mva for each jet to get mva score - jetMva_->push_back(discrJets_->eval(ijet->userFloat("NjettinessAK8:tau1"),ijet->userFloat("NjettinessAK8:tau2"),ijet->userFloat("NjettinessAK8:tau3"),nBSub,nJets_-1,ijet->bDiscriminator(srcDoubleBtag_.c_str()))); + jetMva_->push_back(discrJets_->eval(ijet->userFloat("NjettinessAK8Puppi:tau1"),ijet->userFloat("NjettinessAK8Puppi:tau2"),ijet->userFloat("NjettinessAK8Puppi:tau3"),nBSub,nJets_-1,ijet->bDiscriminator(srcDoubleBtag_.c_str()))); }// if not matched with leptons }// if good jet diff --git a/BoostedTTHFlatTreeProducer.h b/BoostedTTHFlatTreeProducer.h index 38f40e5ff5a..11302e13935 100644 --- a/BoostedTTHFlatTreeProducer.h +++ b/BoostedTTHFlatTreeProducer.h @@ -36,8 +36,8 @@ #include "SimDataFormats/GeneratorProducts/interface/LHEEventProduct.h" #include "SimDataFormats/GeneratorProducts/interface/LHERunInfoProduct.h" #include "SimDataFormats/PileupSummaryInfo/interface/PileupSummaryInfo.h" -#include "KKousour/TopAnalysis/plugins/BoostedDiscriminatorMVA.h" -#include "KKousour/TopAnalysis/plugins/DiscriminatorFisher.h" +#include "UserCode/TopAnalysis/plugins/BoostedDiscriminatorMVA.h" +#include "UserCode/TopAnalysis/plugins/DiscriminatorFisher.h" #include "TTree.h" #include "TH1F.h" #include "TLorentzVector.h" diff --git a/DiscriminatorFisher.cc b/DiscriminatorFisher.cc index 3c1316f8a8c..b15f36c84de 100644 --- a/DiscriminatorFisher.cc +++ b/DiscriminatorFisher.cc @@ -1,5 +1,5 @@ #include -#include "KKousour/TopAnalysis/plugins/DiscriminatorFisher.h" +#include "UserCode/TopAnalysis/plugins/DiscriminatorFisher.h" #include "FWCore/ParameterSet/interface/FileInPath.h" diff --git a/TopAnalysis/plugins/BoostedDiscriminatorMVA.cc b/TopAnalysis/plugins/BoostedDiscriminatorMVA.cc index 5739e96de70..47da19dcd77 100644 --- a/TopAnalysis/plugins/BoostedDiscriminatorMVA.cc +++ b/TopAnalysis/plugins/BoostedDiscriminatorMVA.cc @@ -1,5 +1,5 @@ #include -#include "KKousour/TopAnalysis/plugins/BoostedDiscriminatorMVA.h" +#include "UserCode/TopAnalysis/plugins/BoostedDiscriminatorMVA.h" #include "FWCore/ParameterSet/interface/FileInPath.h" BoostedDiscriminatorMVA::BoostedDiscriminatorMVA(std::string weights) diff --git a/TopAnalysis/plugins/BoostedTTbarFlatTreeProducer.cc b/TopAnalysis/plugins/BoostedTTbarFlatTreeProducer.cc index 5b0a09af1a9..9fc158096f8 100644 --- a/TopAnalysis/plugins/BoostedTTbarFlatTreeProducer.cc +++ b/TopAnalysis/plugins/BoostedTTbarFlatTreeProducer.cc @@ -14,7 +14,7 @@ #include "DataFormats/JetReco/interface/GenJet.h" #include "DataFormats/JetReco/interface/GenJetCollection.h" -#include "KKousour/TopAnalysis/plugins/BoostedTTbarFlatTreeProducer.h" +#include "UserCode/TopAnalysis/plugins/BoostedTTbarFlatTreeProducer.h" using namespace std; using namespace reco; @@ -185,7 +185,7 @@ void BoostedTTbarFlatTreeProducer::beginJob() outTree_->Branch("triggerBit" ,"vector" ,&triggerBit_); outTree_->Branch("triggerPre" ,"vector" ,&triggerPre_); //------------------------------------------------------------------ - discr_ = new BoostedDiscriminatorMVA("KKousour/TopAnalysis/data/"+xmlFile_); + discr_ = new BoostedDiscriminatorMVA("UserCode/TopAnalysis/data/"+xmlFile_); //------------------- MC --------------------------------- if (isMC_) { outTree_->Branch("decay" ,&decay_ ,"decay_/I"); @@ -369,8 +369,8 @@ bool BoostedTTbarFlatTreeProducer::isGoodJet(const pat::Jet &jet) if (!idT) res = false; if (pt < ptMin_) res = false; if (eta > etaMax_) res = false; - if (jet.userFloat("ak8PFJetsCHSSoftDropMass") < massMin_) res = false; - if ((jet.subjets("SoftDrop")).size() < 2) res = false; + if (jet.userFloat("ak8PFJetsPuppiSoftDropMass") < massMin_) res = false; + if ((jet.subjets("SoftDropPuppi")).size() < 2) res = false; return res; } ////////////////////////////////////////////////////////////////////////////////////////// @@ -473,7 +473,7 @@ bool BoostedTTbarFlatTreeProducer::isGoodElectron(const pat::Electron &el,const float ooEmooP = (float)fabs(1/ecalEnergy - 1/trackMomentumAtVtx); float d0 = (float)el.gsfTrack()->dxy(vtx.position()); float dz = (float)el.gsfTrack()->dz(vtx.position()); - int expectedMissingInnerHits = el.gsfTrack()->hitPattern().numberOfHits(reco::HitPattern::MISSING_INNER_HITS); + int expectedMissingInnerHits = el.gsfTrack()->hitPattern().numberOfAllHits(reco::HitPattern::MISSING_INNER_HITS); bool passConversionVeto = el.passConversionVeto(); if(isEB) {// tight working point if(res && full5x5_sigmaIetaIeta > 0.0101) res = false; @@ -530,7 +530,12 @@ void BoostedTTbarFlatTreeProducer::analyze(edm::Event const& iEvent, edm::EventS string trigger_name = string(names.triggerName(itrig)); if (printTriggerMenu_) cout<accept(itrig); pre = triggerPrescales->getPrescaleForIndex(itrig); @@ -572,69 +577,72 @@ void BoostedTTbarFlatTreeProducer::analyze(edm::Event const& iEvent, edm::EventS nBJets_ = 0; ht_ = 0.0; vector vP4; - for(pat::JetCollection::const_iterator ijet =jets->begin();ijet != jets->end(); ++ijet) { - if (isGoodJet(*ijet)) { - float btag= ijet->bDiscriminator(srcBtag_.c_str()); - bool isBtag = (btag >= btagMin_); - bool isLeptonMatched = false; - float DRmax = 0.4; - if(isPrint_) {if (isBtag==true) cout<<"RECO "<pt()<<" "<eta()<<" "<phi()<eta(),lep->phi(),ijet->eta(),ijet->phi()) < DRmax ) isLeptonMatched = true; - if (!isLeptonMatched) { - flavor_ ->push_back(ijet->partonFlavour()); - flavorHadron_ ->push_back(ijet->hadronFlavour()); - chf_ ->push_back(ijet->chargedHadronEnergyFraction()); - nhf_ ->push_back(ijet->neutralHadronEnergyFraction()); - phf_ ->push_back(ijet->photonEnergyFraction()); - elf_ ->push_back(ijet->electronEnergyFraction()); - muf_ ->push_back(ijet->muonEnergyFraction()); - pt_ ->push_back(ijet->pt()); - phi_ ->push_back(ijet->phi()); - eta_ ->push_back(ijet->eta()); - mass_ ->push_back(ijet->mass()); - massSoftDrop_ ->push_back(ijet->userFloat("ak8PFJetsCHSSoftDropMass")); - btag_ ->push_back(btag); - isBtag_ ->push_back(isBtag); - tau1_ ->push_back(ijet->userFloat("NjettinessAK8:tau1")); - tau2_ ->push_back(ijet->userFloat("NjettinessAK8:tau2")); - tau3_ ->push_back(ijet->userFloat("NjettinessAK8:tau3")); - vP4.push_back(ijet->p4()); - ht_ += ijet->pt(); - nJets_++; - if (isBtag) { - nBJets_++; - } - //---- subjets -------------------- - int nSub((ijet->subjets("SoftDrop")).size()); - int nBSub(0); - if (nSub > 0) { - btagSub0_->push_back((ijet->subjets("SoftDrop"))[0]->bDiscriminator(srcBtag_.c_str())); - massSub0_->push_back((ijet->subjets("SoftDrop"))[0]->mass()); - ptSub0_->push_back((ijet->subjets("SoftDrop"))[0]->pt()); - etaSub0_->push_back((ijet->subjets("SoftDrop"))[0]->eta()); - phiSub0_->push_back((ijet->subjets("SoftDrop"))[0]->phi()); - flavorSub0_->push_back((ijet->subjets("SoftDrop"))[0]->partonFlavour()); - flavorHadronSub0_->push_back((ijet->subjets("SoftDrop"))[0]->hadronFlavour()); - if ((ijet->subjets("SoftDrop"))[0]->bDiscriminator(srcBtag_.c_str()) >= btagMin_) { - nBSub++; - } - if (nSub > 1) { - btagSub1_->push_back((ijet->subjets("SoftDrop"))[1]->bDiscriminator(srcBtag_.c_str())); - massSub1_->push_back((ijet->subjets("SoftDrop"))[1]->mass()); - ptSub1_->push_back((ijet->subjets("SoftDrop"))[1]->pt()); - etaSub1_->push_back((ijet->subjets("SoftDrop"))[1]->eta()); - phiSub1_->push_back((ijet->subjets("SoftDrop"))[1]->phi()); - flavorSub1_->push_back((ijet->subjets("SoftDrop"))[1]->partonFlavour()); - flavorHadronSub1_->push_back((ijet->subjets("SoftDrop"))[1]->hadronFlavour()); - if ((ijet->subjets("SoftDrop"))[1]->bDiscriminator(srcBtag_.c_str()) >= btagMin_) { + for(pat::JetCollection::const_iterator ijet =jets->begin();ijet != jets->end(); ++ijet) { + if(ijet->pt() > 200) + { + if (isGoodJet(*ijet)) { + float btag= ijet->bDiscriminator(srcBtag_.c_str()); + bool isBtag = (btag >= btagMin_); + bool isLeptonMatched = false; + float DRmax = 0.4; + if(isPrint_) {if (isBtag==true) cout<<"RECO "<pt()<<" "<eta()<<" "<phi()<eta(),lep->phi(),ijet->eta(),ijet->phi()) < DRmax ) isLeptonMatched = true; + if (!isLeptonMatched) { + flavor_ ->push_back(ijet->partonFlavour()); + flavorHadron_ ->push_back(ijet->hadronFlavour()); + chf_ ->push_back(ijet->chargedHadronEnergyFraction()); + nhf_ ->push_back(ijet->neutralHadronEnergyFraction()); + phf_ ->push_back(ijet->photonEnergyFraction()); + elf_ ->push_back(ijet->electronEnergyFraction()); + muf_ ->push_back(ijet->muonEnergyFraction()); + pt_ ->push_back(ijet->pt()); + phi_ ->push_back(ijet->phi()); + eta_ ->push_back(ijet->eta()); + mass_ ->push_back(ijet->mass()); + massSoftDrop_ ->push_back(ijet->userFloat("ak8PFJetsPuppiSoftDropMass")); + btag_ ->push_back(btag); + isBtag_ ->push_back(isBtag); + tau1_ ->push_back(ijet->userFloat("NjettinessAK8Puppi:tau1")); + tau2_ ->push_back(ijet->userFloat("NjettinessAK8Puppi:tau2")); + tau3_ ->push_back(ijet->userFloat("NjettinessAK8Puppi:tau3")); + vP4.push_back(ijet->p4()); + ht_ += ijet->pt(); + nJets_++; + if (isBtag) { + nBJets_++; + } + //---- subjets -------------------- + int nSub((ijet->subjets("SoftDropPuppi")).size()); + int nBSub(0); + if (nSub > 0) { + btagSub0_->push_back((ijet->subjets("SoftDropPuppi"))[0]->bDiscriminator(srcBtag_.c_str())); + massSub0_->push_back((ijet->subjets("SoftDropPuppi"))[0]->mass()); + ptSub0_->push_back((ijet->subjets("SoftDropPuppi"))[0]->pt()); + etaSub0_->push_back((ijet->subjets("SoftDropPuppi"))[0]->eta()); + phiSub0_->push_back((ijet->subjets("SoftDropPuppi"))[0]->phi()); + flavorSub0_->push_back((ijet->subjets("SoftDropPuppi"))[0]->partonFlavour()); + flavorHadronSub0_->push_back((ijet->subjets("SoftDropPuppi"))[0]->hadronFlavour()); + if ((ijet->subjets("SoftDropPuppi"))[0]->bDiscriminator(srcBtag_.c_str()) >= btagMin_) { nBSub++; } - } - } - nSubJets_->push_back(nSub); - nBSubJets_->push_back(nBSub); - }// if not matched with leptons - }// if good jet + if (nSub > 1) { + btagSub1_->push_back((ijet->subjets("SoftDropPuppi"))[1]->bDiscriminator(srcBtag_.c_str())); + massSub1_->push_back((ijet->subjets("SoftDropPuppi"))[1]->mass()); + ptSub1_->push_back((ijet->subjets("SoftDropPuppi"))[1]->pt()); + etaSub1_->push_back((ijet->subjets("SoftDropPuppi"))[1]->eta()); + phiSub1_->push_back((ijet->subjets("SoftDropPuppi"))[1]->phi()); + flavorSub1_->push_back((ijet->subjets("SoftDropPuppi"))[1]->partonFlavour()); + flavorHadronSub1_->push_back((ijet->subjets("SoftDropPuppi"))[1]->hadronFlavour()); + if ((ijet->subjets("SoftDropPuppi"))[1]->bDiscriminator(srcBtag_.c_str()) >= btagMin_) { + nBSub++; + } + } + } + nSubJets_->push_back(nSub); + nBSubJets_->push_back(nBSub); + }// if not matched with leptons + }// if good jet + } }// jet loop rho_ = *rho; met_ = (*met)[0].et(); diff --git a/TopAnalysis/plugins/BoostedTTbarFlatTreeProducer.h b/TopAnalysis/plugins/BoostedTTbarFlatTreeProducer.h index 69fef7e6d0a..cb6ad088520 100644 --- a/TopAnalysis/plugins/BoostedTTbarFlatTreeProducer.h +++ b/TopAnalysis/plugins/BoostedTTbarFlatTreeProducer.h @@ -36,7 +36,7 @@ #include "SimDataFormats/GeneratorProducts/interface/LHEEventProduct.h" #include "SimDataFormats/GeneratorProducts/interface/LHERunInfoProduct.h" #include "SimDataFormats/PileupSummaryInfo/interface/PileupSummaryInfo.h" -#include "KKousour/TopAnalysis/plugins/BoostedDiscriminatorMVA.h" +#include "UserCode/TopAnalysis/plugins/BoostedDiscriminatorMVA.h" #include "TTree.h" #include "TH1F.h" #include "TLorentzVector.h" diff --git a/TopAnalysis/plugins/DiscriminatorMVA.cc b/TopAnalysis/plugins/DiscriminatorMVA.cc index 56a2522b55d..0f1d926ce3f 100644 --- a/TopAnalysis/plugins/DiscriminatorMVA.cc +++ b/TopAnalysis/plugins/DiscriminatorMVA.cc @@ -1,5 +1,5 @@ #include -#include "KKousour/TopAnalysis/plugins/DiscriminatorMVA.h" +#include "UserCode/TopAnalysis/plugins/DiscriminatorMVA.h" #include "FWCore/ParameterSet/interface/FileInPath.h" DiscriminatorMVA::DiscriminatorMVA(std::string weights) diff --git a/TopAnalysis/plugins/DiscriminatorMVA2.cc b/TopAnalysis/plugins/DiscriminatorMVA2.cc index 8ae981da272..5d5a0284a28 100644 --- a/TopAnalysis/plugins/DiscriminatorMVA2.cc +++ b/TopAnalysis/plugins/DiscriminatorMVA2.cc @@ -1,5 +1,5 @@ #include -#include "KKousour/TopAnalysis/plugins/DiscriminatorMVA2.h" +#include "UserCode/TopAnalysis/plugins/DiscriminatorMVA2.h" #include "FWCore/ParameterSet/interface/FileInPath.h" DiscriminatorMVA2::DiscriminatorMVA2(std::string weights) diff --git a/TopAnalysis/plugins/EventCounter.cc b/TopAnalysis/plugins/EventCounter.cc index 4f0c1b255df..1807ba9c2f6 100644 --- a/TopAnalysis/plugins/EventCounter.cc +++ b/TopAnalysis/plugins/EventCounter.cc @@ -1,4 +1,4 @@ -#include "KKousour/TopAnalysis/plugins/EventCounter.h" +#include "UserCode/TopAnalysis/plugins/EventCounter.h" using namespace reco; diff --git a/TopAnalysis/plugins/JMEFlatTreeProducer.cc b/TopAnalysis/plugins/JMEFlatTreeProducer.cc index b780c4eb32c..8909a61c0f5 100644 --- a/TopAnalysis/plugins/JMEFlatTreeProducer.cc +++ b/TopAnalysis/plugins/JMEFlatTreeProducer.cc @@ -3,7 +3,7 @@ #include #include #include -#include "KKousour/TopAnalysis/plugins/JMEFlatTreeProducer.h" +#include "UserCode/TopAnalysis/plugins/JMEFlatTreeProducer.h" using namespace std; using namespace reco; @@ -281,7 +281,7 @@ bool JMEFlatTreeProducer::isGoodElectron(const pat::Electron &el,const reco::Ver float ooEmooP = (float)fabs(1/ecalEnergy - 1/trackMomentumAtVtx); float d0 = (float)el.gsfTrack()->dxy(vtx.position()); float dz = (float)el.gsfTrack()->dz(vtx.position()); - int expectedMissingInnerHits = el.gsfTrack()->hitPattern().numberOfHits(reco::HitPattern::MISSING_INNER_HITS); + int expectedMissingInnerHits = el.gsfTrack()->hitPattern().numberOfAllHits(reco::HitPattern::MISSING_INNER_HITS); bool passConversionVeto = el.passConversionVeto(); if(isEB) { if(res && full5x5_sigmaIetaIeta > 0.010557) res = false; @@ -353,7 +353,12 @@ void JMEFlatTreeProducer::analyze(edm::Event const& iEvent, edm::EventSetup cons for(unsigned int itrig=0;itrigsize();itrig++) { string trigger_name = string(names.triggerName(itrig)); //--- erase the last character, i.e. the version number---- - trigger_name.pop_back(); + + std::size_t last_index = trigger_name.find_last_not_of("0123456789"); + //increment by +1 since the index we have is for the non-numeric character + //and erase everything starting starting from that index + trigger_name.erase(last_index+1, trigger_name.length()-1); + if (trigger_name == triggerNames_[k]) { bit = triggerResults->accept(itrig); pre = triggerPrescales->getPrescaleForIndex(itrig); diff --git a/TopAnalysis/plugins/JetCleanedProducer.cc b/TopAnalysis/plugins/JetCleanedProducer.cc index 5a7fa8ffd99..4a9640c340e 100644 --- a/TopAnalysis/plugins/JetCleanedProducer.cc +++ b/TopAnalysis/plugins/JetCleanedProducer.cc @@ -110,7 +110,7 @@ bool JetCleanedProducer::isGoodElectron(const pat::Electron &el,const reco::Vert float ooEmooP = (float)fabs(1/ecalEnergy - 1/trackMomentumAtVtx); float d0 = (float)el.gsfTrack()->dxy(vtx.position()); float dz = (float)el.gsfTrack()->dz(vtx.position()); - int expectedMissingInnerHits = el.gsfTrack()->hitPattern().numberOfHits(reco::HitPattern::MISSING_INNER_HITS); + int expectedMissingInnerHits = el.gsfTrack()->hitPattern().numberOfAllHits(reco::HitPattern::MISSING_INNER_HITS); bool passConversionVeto = el.passConversionVeto(); if(isEB) {// medium working point if(res && full5x5_sigmaIetaIeta > 0.0101) res = false; @@ -165,7 +165,7 @@ void JetCleanedProducer::produce(edm::Event& iEvent, const edm::EventSetup& iSet iEvent.getByToken(electronsToken,electrons); iEvent.getByToken(recVtxsToken,recVtxs); - std::auto_ptr result(new pat::JetCollection); //Cleaned jets + std::unique_ptr result(new pat::JetCollection); //Cleaned jets const int size = jets->size(); result->reserve(size); @@ -197,7 +197,7 @@ void JetCleanedProducer::produce(edm::Event& iEvent, const edm::EventSetup& iSet NumericSafeGreaterByPt compJets; std::sort(result->begin(),result->end(),compJets); - iEvent.put(result); + iEvent.put(std::move(result)); return; } diff --git a/TopAnalysis/plugins/JetShiftProducer.cc b/TopAnalysis/plugins/JetShiftProducer.cc index 14eb1826d96..0c38cc7765c 100644 --- a/TopAnalysis/plugins/JetShiftProducer.cc +++ b/TopAnalysis/plugins/JetShiftProducer.cc @@ -74,7 +74,7 @@ void JetShiftProducer::produce(edm::Event& iEvent, const edm::EventSetup& iSetup iEvent.getByToken(jetsToken,jets); pat::JetCollection pat_jets = *jets; - std::auto_ptr result(new pat::JetCollection); //Shifted jets + std::unique_ptr result(new pat::JetCollection); //Shifted jets const int size = pat_jets.size(); result->reserve(size); @@ -91,7 +91,7 @@ void JetShiftProducer::produce(edm::Event& iEvent, const edm::EventSetup& iSetup res_sf = JME::JetResolutionScaleFactor::get(iSetup,payload_+"_pt"); */ if (doSmear_) { - res_sf = JME::JetResolutionScaleFactor(edm::FileInPath("KKousour/TopAnalysis/data/"+resSFFile_).fullPath()); + res_sf = JME::JetResolutionScaleFactor(edm::FileInPath("UserCode/TopAnalysis/data/"+resSFFile_).fullPath()); } for(pat::JetCollection::const_iterator ijet = pat_jets.begin(); ijet != pat_jets.end(); ++ijet) { @@ -144,7 +144,7 @@ void JetShiftProducer::produce(edm::Event& iEvent, const edm::EventSetup& iSetup } NumericSafeGreaterByPt compJets; std::sort(result->begin(),result->end(),compJets); - iEvent.put(result); + iEvent.put(std::move(result)); return; } diff --git a/TopAnalysis/plugins/TTHDiscriminatorMVA.cc b/TopAnalysis/plugins/TTHDiscriminatorMVA.cc index bdbb2fa6dcd..c088650429c 100644 --- a/TopAnalysis/plugins/TTHDiscriminatorMVA.cc +++ b/TopAnalysis/plugins/TTHDiscriminatorMVA.cc @@ -1,5 +1,5 @@ #include -#include "KKousour/TopAnalysis/plugins/TTHDiscriminatorMVA.h" +#include "UserCode/TopAnalysis/plugins/TTHDiscriminatorMVA.h" #include "FWCore/ParameterSet/interface/FileInPath.h" TTHDiscriminatorMVA::TTHDiscriminatorMVA(std::string weights, std::string CAT, std::string TYPE_BKG) diff --git a/TopAnalysis/plugins/TTHFlatTreeProducer.cc b/TopAnalysis/plugins/TTHFlatTreeProducer.cc index 062b6301366..b629c462446 100644 --- a/TopAnalysis/plugins/TTHFlatTreeProducer.cc +++ b/TopAnalysis/plugins/TTHFlatTreeProducer.cc @@ -23,7 +23,7 @@ #include "TMatrixDSym.h" #include "TMatrixDSymEigen.h" -#include "KKousour/TopAnalysis/plugins/TTHFlatTreeProducer.h" +#include "UserCode/TopAnalysis/plugins/TTHFlatTreeProducer.h" using namespace std; using namespace reco; @@ -188,10 +188,10 @@ void TTHFlatTreeProducer::beginJob() outTree_->Branch("lepIso" ,"vector" ,&lIso_); //------------------------------------------------------------------ - discrQCD_CAT0_ = new TTHDiscriminatorMVA("KKousour/TopAnalysis/data/"+xmlFileQCD_CAT0_, "CAT0", "QCD"); - discrQCD_CAT1_ = new TTHDiscriminatorMVA("KKousour/TopAnalysis/data/"+xmlFileQCD_CAT1_, "CAT1", "QCD"); - discrTTbar_CAT0_ = new TTHDiscriminatorMVA("KKousour/TopAnalysis/data/"+xmlFileTTbar_CAT0_,"CAT0", "TTbar"); - discrTTbar_CAT1_ = new TTHDiscriminatorMVA("KKousour/TopAnalysis/data/"+xmlFileTTbar_CAT1_,"CAT1", "TTbar"); + discrQCD_CAT0_ = new TTHDiscriminatorMVA("UserCode/TopAnalysis/data/"+xmlFileQCD_CAT0_, "CAT0", "QCD"); + discrQCD_CAT1_ = new TTHDiscriminatorMVA("UserCode/TopAnalysis/data/"+xmlFileQCD_CAT1_, "CAT1", "QCD"); + discrTTbar_CAT0_ = new TTHDiscriminatorMVA("UserCode/TopAnalysis/data/"+xmlFileTTbar_CAT0_,"CAT0", "TTbar"); + discrTTbar_CAT1_ = new TTHDiscriminatorMVA("UserCode/TopAnalysis/data/"+xmlFileTTbar_CAT1_,"CAT1", "TTbar"); triggerBit_ = new std::vector; triggerPre_ = new std::vector; @@ -310,7 +310,7 @@ bool TTHFlatTreeProducer::isGoodElectron(const pat::Electron &el,const reco::Ver float ooEmooP = (float)fabs(1/ecalEnergy - 1/trackMomentumAtVtx); float d0 = (float)el.gsfTrack()->dxy(vtx.position()); float dz = (float)el.gsfTrack()->dz(vtx.position()); - int expectedMissingInnerHits = el.gsfTrack()->hitPattern().numberOfHits(reco::HitPattern::MISSING_INNER_HITS); + int expectedMissingInnerHits = el.gsfTrack()->hitPattern().numberOfAllHits(reco::HitPattern::MISSING_INNER_HITS); bool passConversionVeto = el.passConversionVeto(); if(isEB) {// medium working point if(res && full5x5_sigmaIetaIeta > 0.0101) res = false; @@ -548,7 +548,12 @@ void TTHFlatTreeProducer::analyze(edm::Event const& iEvent, edm::EventSetup cons for(unsigned int itrig=0;itrigsize();itrig++) { string trigger_name = string(names.triggerName(itrig)); //--- erase the last character, i.e. the version number---- - trigger_name.pop_back(); + + std::size_t last_index = trigger_name.find_last_not_of("0123456789"); + //increment by +1 since the index we have is for the non-numeric character + //and erase everything starting starting from that index + trigger_name.erase(last_index+1, trigger_name.length()-1); + if (trigger_name == triggerNames_[k]) { bit = triggerResults->accept(itrig); pre = triggerPrescales->getPrescaleForIndex(itrig); diff --git a/TopAnalysis/plugins/TTHFlatTreeProducer.h b/TopAnalysis/plugins/TTHFlatTreeProducer.h index e1e0bb348ae..d2f0bb1fe1e 100644 --- a/TopAnalysis/plugins/TTHFlatTreeProducer.h +++ b/TopAnalysis/plugins/TTHFlatTreeProducer.h @@ -35,7 +35,7 @@ #include "SimDataFormats/GeneratorProducts/interface/LHEEventProduct.h" #include "SimDataFormats/GeneratorProducts/interface/LHERunInfoProduct.h" #include "SimDataFormats/PileupSummaryInfo/interface/PileupSummaryInfo.h" -#include "KKousour/TopAnalysis/plugins/TTHDiscriminatorMVA.h" +#include "UserCode/TopAnalysis/plugins/TTHDiscriminatorMVA.h" #include "TTree.h" #include "TH1F.h" diff --git a/TopAnalysis/plugins/TTVDiscriminatorMVA.cc b/TopAnalysis/plugins/TTVDiscriminatorMVA.cc index 2da74cc26b5..12e85deec8e 100644 --- a/TopAnalysis/plugins/TTVDiscriminatorMVA.cc +++ b/TopAnalysis/plugins/TTVDiscriminatorMVA.cc @@ -1,5 +1,5 @@ #include -#include "KKousour/TopAnalysis/plugins/TTVDiscriminatorMVA.h" +#include "UserCode/TopAnalysis/plugins/TTVDiscriminatorMVA.h" #include "FWCore/ParameterSet/interface/FileInPath.h" TTVDiscriminatorMVA::TTVDiscriminatorMVA(std::string weights,std::string selection) diff --git a/TopAnalysis/plugins/TTVFlatTreeProducer.cc b/TopAnalysis/plugins/TTVFlatTreeProducer.cc index a7e221020ae..f0d27240ce8 100644 --- a/TopAnalysis/plugins/TTVFlatTreeProducer.cc +++ b/TopAnalysis/plugins/TTVFlatTreeProducer.cc @@ -9,7 +9,7 @@ #include "TMatrixDSym.h" #include "TMatrixDSymEigen.h" -#include "KKousour/TopAnalysis/plugins/TTVFlatTreeProducer.h" +#include "UserCode/TopAnalysis/plugins/TTVFlatTreeProducer.h" using namespace std; using namespace reco; @@ -163,8 +163,8 @@ void TTVFlatTreeProducer::beginJob() outTree_->Branch("pdfWeights" ,"vector" ,&pdfWeights_); } } - discrTTW_ = new TTVDiscriminatorMVA("KKousour/TopAnalysis/data/"+xmlFileTTW_,"selW"); - discrTTZ_ = new TTVDiscriminatorMVA("KKousour/TopAnalysis/data/"+xmlFileTTZ_,"selZ"); + discrTTW_ = new TTVDiscriminatorMVA("UserCode/TopAnalysis/data/"+xmlFileTTW_,"selW"); + discrTTZ_ = new TTVDiscriminatorMVA("UserCode/TopAnalysis/data/"+xmlFileTTZ_,"selZ"); cout<<"Begin job finished"<dxy(vtx.position()); float dz = (float)el.gsfTrack()->dz(vtx.position()); - int expectedMissingInnerHits = el.gsfTrack()->hitPattern().numberOfHits(reco::HitPattern::MISSING_INNER_HITS); + int expectedMissingInnerHits = el.gsfTrack()->hitPattern().numberOfAllHits(reco::HitPattern::MISSING_INNER_HITS); bool passConversionVeto = el.passConversionVeto(); if(isEB) {// medium working point if(res && full5x5_sigmaIetaIeta > 0.0101) res = false; @@ -349,7 +349,12 @@ void TTVFlatTreeProducer::analyze(edm::Event const& iEvent, edm::EventSetup cons for(unsigned int itrig=0;itrigsize();itrig++) { string trigger_name = string(names.triggerName(itrig)); //--- erase the last character, i.e. the version number---- - trigger_name.pop_back(); + + std::size_t last_index = trigger_name.find_last_not_of("0123456789"); + //increment by +1 since the index we have is for the non-numeric character + //and erase everything starting starting from that index + trigger_name.erase(last_index+1, trigger_name.length()-1); + if (trigger_name == triggerNames_[k]) { bit = triggerResults->accept(itrig); pre = triggerPrescales->getPrescaleForIndex(itrig); diff --git a/TopAnalysis/plugins/TTVFlatTreeProducer.h b/TopAnalysis/plugins/TTVFlatTreeProducer.h index 9c3badccdbd..41b64c80e56 100644 --- a/TopAnalysis/plugins/TTVFlatTreeProducer.h +++ b/TopAnalysis/plugins/TTVFlatTreeProducer.h @@ -35,7 +35,7 @@ #include "SimDataFormats/GeneratorProducts/interface/LHEEventProduct.h" #include "SimDataFormats/GeneratorProducts/interface/LHERunInfoProduct.h" #include "SimDataFormats/PileupSummaryInfo/interface/PileupSummaryInfo.h" -#include "KKousour/TopAnalysis/plugins/TTVDiscriminatorMVA.h" +#include "UserCode/TopAnalysis/plugins/TTVDiscriminatorMVA.h" #include "TTree.h" #include "TH1F.h" #include "TLorentzVector.h" diff --git a/TopAnalysis/plugins/TTbarFlatTreeProducer.cc b/TopAnalysis/plugins/TTbarFlatTreeProducer.cc index 246575dea71..51d995b42e4 100644 --- a/TopAnalysis/plugins/TTbarFlatTreeProducer.cc +++ b/TopAnalysis/plugins/TTbarFlatTreeProducer.cc @@ -9,7 +9,7 @@ #include "TMatrixDSym.h" #include "TMatrixDSymEigen.h" -#include "KKousour/TopAnalysis/plugins/TTbarFlatTreeProducer.h" +#include "UserCode/TopAnalysis/plugins/TTbarFlatTreeProducer.h" using namespace std; using namespace reco; @@ -327,7 +327,7 @@ bool TTbarFlatTreeProducer::isGoodElectron(const pat::Electron &el,const reco::V float ooEmooP = (float)fabs(1/ecalEnergy - 1/trackMomentumAtVtx); float d0 = (float)el.gsfTrack()->dxy(vtx.position()); float dz = (float)el.gsfTrack()->dz(vtx.position()); - int expectedMissingInnerHits = el.gsfTrack()->hitPattern().numberOfHits(reco::HitPattern::MISSING_INNER_HITS); + int expectedMissingInnerHits = el.gsfTrack()->hitPattern().numberOfAllHits(reco::HitPattern::MISSING_INNER_HITS); bool passConversionVeto = el.passConversionVeto(); if(isEB) { if(res && full5x5_sigmaIetaIeta > 0.010557) res = false; @@ -465,7 +465,12 @@ void TTbarFlatTreeProducer::analyze(edm::Event const& iEvent, edm::EventSetup co for(unsigned int itrig=0;itrigsize();itrig++) { string trigger_name = string(names.triggerName(itrig)); //--- erase the last character, i.e. the version number---- - trigger_name.pop_back(); + + std::size_t last_index = trigger_name.find_last_not_of("0123456789"); + //increment by +1 since the index we have is for the non-numeric character + //and erase everything starting starting from that index + trigger_name.erase(last_index+1, trigger_name.length()-1); + if (trigger_name == triggerNames_[k]) { bit = triggerResults->accept(itrig); pre = triggerPrescales->getPrescaleForIndex(itrig); diff --git a/TopAnalysis/plugins/VVFlatTreeProducer.cc b/TopAnalysis/plugins/VVFlatTreeProducer.cc index 923f47e812b..0ad994625f6 100644 --- a/TopAnalysis/plugins/VVFlatTreeProducer.cc +++ b/TopAnalysis/plugins/VVFlatTreeProducer.cc @@ -5,7 +5,7 @@ #include #include "Math/SpecFuncMathMore.h" #include "TMath.h" -#include "KKousour/TopAnalysis/plugins/VVFlatTreeProducer.h" +#include "UserCode/TopAnalysis/plugins/VVFlatTreeProducer.h" using namespace std; using namespace reco; @@ -262,7 +262,7 @@ bool VVFlatTreeProducer::isGoodElectron(const pat::Electron &el,const reco::Vert float ooEmooP = (float)fabs(1/ecalEnergy - 1/trackMomentumAtVtx); float d0 = (float)el.gsfTrack()->dxy(vtx.position()); float dz = (float)el.gsfTrack()->dz(vtx.position()); - int expectedMissingInnerHits = el.gsfTrack()->hitPattern().numberOfHits(reco::HitPattern::MISSING_INNER_HITS); + int expectedMissingInnerHits = el.gsfTrack()->hitPattern().numberOfAllHits(reco::HitPattern::MISSING_INNER_HITS); bool passConversionVeto = el.passConversionVeto(); if(isEB) {// tight working point if(res && full5x5_sigmaIetaIeta > 0.0101) res = false; @@ -315,7 +315,12 @@ void VVFlatTreeProducer::analyze(edm::Event const& iEvent, edm::EventSetup const for(unsigned int itrig=0;itrigsize();itrig++) { string trigger_name = string(names.triggerName(itrig)); //--- erase the last character, i.e. the version number---- - trigger_name.pop_back(); + + std::size_t last_index = trigger_name.find_last_not_of("0123456789"); + //increment by +1 since the index we have is for the non-numeric character + //and erase everything starting starting from that index + trigger_name.erase(last_index+1, trigger_name.length()-1); + if (trigger_name == triggerNames_[k]) { bit = triggerResults->accept(itrig); pre = triggerPrescales->getPrescaleForIndex(itrig); diff --git a/TopAnalysis/prod/ttbar/flat-data-cfg.py b/TopAnalysis/prod/ttbar/flat-data-cfg.py index 5b65739f8a1..ce42b61f755 100644 --- a/TopAnalysis/prod/ttbar/flat-data-cfg.py +++ b/TopAnalysis/prod/ttbar/flat-data-cfg.py @@ -2,13 +2,15 @@ process = cms.Process('myprocess') process.TFileService=cms.Service("TFileService",fileName=cms.string('flatTree.root')) process.load('Configuration.StandardSequences.FrontierConditions_GlobalTag_condDBv2_cff') -process.GlobalTag.globaltag = '80X_dataRun2_2016SeptRepro_v7' +process.GlobalTag.globaltag = '92X_dataRun2_Prompt_v8' ##-------------------- Define the source ---------------------------- process.maxEvents = cms.untracked.PSet(input = cms.untracked.int32(-1)) process.source = cms.Source("PoolSource", fileNames = cms.untracked.vstring( #"/store/data/Run2016E/JetHT/MINIAOD/23Sep2016-v1/100000/0248DC22-B889-E611-B75F-0025905A60AA.root" - '/store/data/Run2016G/SingleMuon/MINIAOD/23Sep2016-v1/1110000/A2C0F697-B19C-E611-A4D8-F04DA275BFF2.root' + #'root://cms-xrd-global.cern.ch///store/data/Run2017E/JetHT/MINIAOD/PromptReco-v1/000/303/569/00000/26CB3404-74A0-E711-A8FF-02163E0143D8.root' + #'root://cms-xrd-global.cern.ch///store/data/Run2017D/JetHT/MINIAOD/PromptReco-v1/000/302/031/00000/90AD63BD-468F-E711-8E76-02163E019CD0.root' + #'/store/data/Run2016G/SingleMuon/MINIAOD/23Sep2016-v1/1110000/A2C0F697-B19C-E611-A4D8-F04DA275BFF2.root' ) ) ############# Format MessageLogger ################# @@ -35,7 +37,7 @@ process.patJetCorrFactorsReapplyJECAK8 = process.updatedPatJetCorrFactors.clone( src = cms.InputTag("slimmedJetsAK8"), levels = ['L1FastJet','L2Relative','L3Absolute','L2L3Residual'], - payload = 'AK8PFchs' + payload = 'AK8PFPuppi' ) process.patJetsReapplyJECAK8 = process.updatedPatJets.clone( @@ -62,13 +64,13 @@ xmlFile = cms.string('boosted_mva_MLP.weights.xml'), triggerNames = cms.vstring( 'HLT_AK8PFJet360_TrimMass30_v', - 'HLT_AK8DiPFJet250_200_TrimMass30_BTagCSV_p20_v', - 'HLT_AK8DiPFJet280_200_TrimMass30_BTagCSV_p20_v', - 'HLT_AK8DiPFJet250_200_TrimMass30_v', - 'HLT_AK8DiPFJet280_200_TrimMass30_v', 'HLT_AK8PFJet140_v', 'HLT_AK8PFJet200_v', 'HLT_AK8PFJet260_v', + 'HLT_AK8PFHT750_TrimMass50_v', + 'HLT_AK8PFHT800_TrimMass50_v', + 'HLT_AK8PFHT900_TrimMass50_v', + 'HLT_AK8PFHT950_TrimMass50_v', 'HLT_IsoMu27_v', 'HLT_Mu50_v' ), @@ -80,12 +82,4 @@ process.patJetCorrFactorsReapplyJECAK8 + process.patJetsReapplyJECAK8 + process.boosted -) - - - - - - - - +) \ No newline at end of file