![]() |
![]() |
#include <TopLeptonTauFilter.h>
Public Member Functions | |
virtual void | endJob () |
virtual bool | filter (edm::Event &, const edm::EventSetup &) |
TopLeptonTauFilter (const edm::ParameterSet &) | |
~TopLeptonTauFilter () | |
Private Member Functions | |
bool | electronFilter (edm::Event &, const edm::EventSetup &) |
bool | jetFilter (edm::Event &, const edm::EventSetup &) |
bool | muonFilter (edm::Event &, const edm::EventSetup &) |
bool | tauFilter (edm::Event &, const edm::EventSetup &) |
Private Attributes | |
double | CaloJetPtmin_ |
edm::InputTag | CaloJetsrc_ |
bool | ElecFilter_ |
double | ElecPtmin_ |
edm::InputTag | Elecsrc_ |
bool | JetFilter_ |
bool | MuonFilter_ |
double | MuonPtmin_ |
edm::InputTag | Muonsrc_ |
unsigned int | nAccepted_ |
unsigned int | nEvents_ |
int | NminCaloJet_ |
int | NminElec_ |
int | NminMuon_ |
int | NminTau_ |
bool | TauFilter_ |
double | TauPtmin_ |
edm::InputTag | Tausrc_ |
Top DiLepton (e,mu,tau) skimming default pt thresholds (lepton and jets) set to 15 GeV default eta thresholds (lepton and jets) set to 3 At least two leptons and two jets present for each channel
Top DiLepton (e,mu,tau) skimming default pt thresholds (lepton and jets) set to 15 GeV default eta thresholds (lepton and jets) set to 3 At least two leptons and two jets present for each channel
Definition at line 25 of file TopLeptonTauFilter.h.
TopLeptonTauFilter::TopLeptonTauFilter | ( | const edm::ParameterSet & | iConfig | ) | [explicit] |
Definition at line 50 of file TopLeptonTauFilter.cc.
References CaloJetPtmin_, CaloJetsrc_, ElecFilter_, ElecPtmin_, Elecsrc_, edm::ParameterSet::getParameter(), JetFilter_, MuonFilter_, MuonPtmin_, Muonsrc_, NminCaloJet_, NminElec_, NminMuon_, NminTau_, TauFilter_, TauPtmin_, and Tausrc_.
: nEvents_(0), nAccepted_(0) { ElecFilter_ = iConfig.getParameter<bool>( "ElecFilter" ); MuonFilter_ = iConfig.getParameter<bool>( "MuonFilter" ); TauFilter_ = iConfig.getParameter<bool>( "TauFilter" ); JetFilter_ = iConfig.getParameter<bool>( "JetFilter" ); Elecsrc_ = iConfig.getParameter<edm::InputTag>( "Elecsrc" ); Muonsrc_ = iConfig.getParameter<edm::InputTag>( "Muonsrc" ); Tausrc_ = iConfig.getParameter<edm::InputTag>( "Tausrc" ); CaloJetsrc_ = iConfig.getParameter<edm::InputTag>( "CaloJetsrc" ); NminMuon_ = iConfig.getParameter<int>( "NminMuon" ); NminTau_ = iConfig.getParameter<int>( "NminTau" ); NminElec_ = iConfig.getParameter<int>( "NminElec" ); NminCaloJet_ = iConfig.getParameter<int>( "NminCaloJet" ); ElecPtmin_ = iConfig.getParameter<double>( "ElecPtmin" ); MuonPtmin_ = iConfig.getParameter<double>( "MuonPtmin" ); TauPtmin_ = iConfig.getParameter<double>( "TauLeadTkPtmin" ); CaloJetPtmin_ = iConfig.getParameter<double>( "CaloJetPtmin" ); }
TopLeptonTauFilter::~TopLeptonTauFilter | ( | ) |
Definition at line 78 of file TopLeptonTauFilter.cc.
{}
bool TopLeptonTauFilter::electronFilter | ( | edm::Event & | iEvent, |
const edm::EventSetup & | iSetup | ||
) | [private] |
Definition at line 101 of file TopLeptonTauFilter.cc.
References ElecPtmin_, Elecsrc_, edm::Event::getByLabel(), and NminElec_.
Referenced by filter().
{ // dealing with electrons edm::Handle<reco::GsfElectronCollection> ElecHandle; iEvent.getByLabel( Elecsrc_, ElecHandle ); if ( ElecHandle->empty() && NminElec_!=0 ) return false; reco::GsfElectronCollection TheElecs = *ElecHandle; std::stable_sort( TheElecs.begin(), TheElecs.end(), PtSorter() ); int nElec = 0; for ( reco::GsfElectronCollection::const_iterator it = TheElecs.begin(); it != TheElecs.end(); it++ ) { if ( (it->pt() > ElecPtmin_) && (fabs(it->eta()) < 3.0) ) { nElec++; } } if ( nElec < NminElec_ ) return false; return true; }
void TopLeptonTauFilter::endJob | ( | void | ) | [virtual] |
Reimplemented from edm::EDFilter.
Definition at line 210 of file TopLeptonTauFilter.cc.
References nAccepted_, and nEvents_.
{ // edm::LogVerbatim( "TopLeptonTauFilter" ) edm::LogInfo( "TopLeptonTauFilter" ) << "\n Events read " << nEvents_ << " Events accepted " << nAccepted_ << "\nEfficiency " << (double)(nAccepted_)/(double)(nEvents_) << std::endl; }
bool TopLeptonTauFilter::filter | ( | edm::Event & | iEvent, |
const edm::EventSetup & | iSetup | ||
) | [virtual] |
Implements edm::EDFilter.
Definition at line 83 of file TopLeptonTauFilter.cc.
References ElecFilter_, electronFilter(), jetFilter(), JetFilter_, muonFilter(), MuonFilter_, nAccepted_, nEvents_, tauFilter(), and TauFilter_.
{ bool filterResult(true); nEvents_++; if(ElecFilter_){ filterResult = electronFilter(iEvent,iSetup); } if(MuonFilter_){ filterResult = muonFilter(iEvent,iSetup); } if(TauFilter_) { filterResult = tauFilter(iEvent,iSetup); } if(JetFilter_) { filterResult = jetFilter(iEvent,iSetup); } if (filterResult) nAccepted_++; return filterResult; }
bool TopLeptonTauFilter::jetFilter | ( | edm::Event & | iEvent, |
const edm::EventSetup & | iSetup | ||
) | [private] |
Definition at line 185 of file TopLeptonTauFilter.cc.
References CaloJetPtmin_, CaloJetsrc_, edm::Event::getByLabel(), and NminCaloJet_.
Referenced by filter().
{ edm::Handle<reco::CaloJetCollection> CaloJetsHandle; iEvent.getByLabel( CaloJetsrc_, CaloJetsHandle ); if ( CaloJetsHandle->empty() && NminCaloJet_!=0 ) return false; int nJet = 0; for ( reco::CaloJetCollection::const_iterator it = CaloJetsHandle->begin(); it != CaloJetsHandle->end(); it++ ) { if ( (fabs(it->eta()) < 3.0) && (it->pt() > CaloJetPtmin_) ) nJet++; } if ( nJet < NminCaloJet_ ) return false; return true; }
bool TopLeptonTauFilter::muonFilter | ( | edm::Event & | iEvent, |
const edm::EventSetup & | iSetup | ||
) | [private] |
Definition at line 125 of file TopLeptonTauFilter.cc.
References edm::Event::getByLabel(), MuonPtmin_, Muonsrc_, nAccepted_, and NminMuon_.
Referenced by filter().
{ edm::Handle<reco::MuonCollection> MuonHandle; iEvent.getByLabel( Muonsrc_, MuonHandle ); if ( MuonHandle->empty() && NminMuon_!=0 ) return false; reco::MuonCollection TheMuons = *MuonHandle; std::stable_sort( TheMuons.begin(), TheMuons.end(), PtSorter() ); int nMuon = 0; for ( reco::MuonCollection::const_iterator it = TheMuons.begin(); it != TheMuons.end(); it++ ) { if ( (it->pt() > MuonPtmin_) && (fabs(it->eta()) < 3.0) ) { nMuon++; } } if ( nMuon < NminMuon_ ) return false; nAccepted_++; return true; }
bool TopLeptonTauFilter::tauFilter | ( | edm::Event & | iEvent, |
const edm::EventSetup & | iSetup | ||
) | [private] |
Definition at line 154 of file TopLeptonTauFilter.cc.
References edm::Event::getByLabel(), NminTau_, edm::Handle< T >::product(), TauPtmin_, and Tausrc_.
Referenced by filter().
{ edm::Handle<reco::BaseTauCollection> TauHandle; iEvent.getByLabel(Tausrc_,TauHandle); const reco::BaseTauCollection& myTauCollection=*(TauHandle.product()); if ( myTauCollection.empty() && NminTau_!=0 ) return false; int nTau = 0; for(reco::BaseTauCollection::const_iterator it =myTauCollection.begin();it !=myTauCollection.end();it++) { reco::TrackRef theLeadTk = it->leadTrack(); if(!theLeadTk) {} else{ double leadTkPt = (*theLeadTk).pt(); double leadTkEta = (*theLeadTk).eta(); if ( (leadTkPt> TauPtmin_) && (fabs(leadTkEta) < 2.4) ) { nTau++; } } } if ( nTau < NminTau_ ) return false; return true; }
double TopLeptonTauFilter::CaloJetPtmin_ [private] |
Definition at line 46 of file TopLeptonTauFilter.h.
Referenced by jetFilter(), and TopLeptonTauFilter().
edm::InputTag TopLeptonTauFilter::CaloJetsrc_ [private] |
Definition at line 43 of file TopLeptonTauFilter.h.
Referenced by jetFilter(), and TopLeptonTauFilter().
bool TopLeptonTauFilter::ElecFilter_ [private] |
Definition at line 48 of file TopLeptonTauFilter.h.
Referenced by filter(), and TopLeptonTauFilter().
double TopLeptonTauFilter::ElecPtmin_ [private] |
Definition at line 46 of file TopLeptonTauFilter.h.
Referenced by electronFilter(), and TopLeptonTauFilter().
edm::InputTag TopLeptonTauFilter::Elecsrc_ [private] |
Definition at line 40 of file TopLeptonTauFilter.h.
Referenced by electronFilter(), and TopLeptonTauFilter().
bool TopLeptonTauFilter::JetFilter_ [private] |
Definition at line 48 of file TopLeptonTauFilter.h.
Referenced by filter(), and TopLeptonTauFilter().
bool TopLeptonTauFilter::MuonFilter_ [private] |
Definition at line 48 of file TopLeptonTauFilter.h.
Referenced by filter(), and TopLeptonTauFilter().
double TopLeptonTauFilter::MuonPtmin_ [private] |
Definition at line 46 of file TopLeptonTauFilter.h.
Referenced by muonFilter(), and TopLeptonTauFilter().
edm::InputTag TopLeptonTauFilter::Muonsrc_ [private] |
Definition at line 41 of file TopLeptonTauFilter.h.
Referenced by muonFilter(), and TopLeptonTauFilter().
unsigned int TopLeptonTauFilter::nAccepted_ [private] |
Definition at line 51 of file TopLeptonTauFilter.h.
Referenced by endJob(), filter(), and muonFilter().
unsigned int TopLeptonTauFilter::nEvents_ [private] |
Definition at line 50 of file TopLeptonTauFilter.h.
int TopLeptonTauFilter::NminCaloJet_ [private] |
Definition at line 45 of file TopLeptonTauFilter.h.
Referenced by jetFilter(), and TopLeptonTauFilter().
int TopLeptonTauFilter::NminElec_ [private] |
Definition at line 45 of file TopLeptonTauFilter.h.
Referenced by electronFilter(), and TopLeptonTauFilter().
int TopLeptonTauFilter::NminMuon_ [private] |
Definition at line 45 of file TopLeptonTauFilter.h.
Referenced by muonFilter(), and TopLeptonTauFilter().
int TopLeptonTauFilter::NminTau_ [private] |
Definition at line 45 of file TopLeptonTauFilter.h.
Referenced by tauFilter(), and TopLeptonTauFilter().
bool TopLeptonTauFilter::TauFilter_ [private] |
Definition at line 48 of file TopLeptonTauFilter.h.
Referenced by filter(), and TopLeptonTauFilter().
double TopLeptonTauFilter::TauPtmin_ [private] |
Definition at line 46 of file TopLeptonTauFilter.h.
Referenced by tauFilter(), and TopLeptonTauFilter().
edm::InputTag TopLeptonTauFilter::Tausrc_ [private] |
Definition at line 42 of file TopLeptonTauFilter.h.
Referenced by tauFilter(), and TopLeptonTauFilter().