#include <L2TauRelaxingIsolationSelector.h>
Public Member Functions | |
L2TauRelaxingIsolationSelector (const edm::ParameterSet &) | |
~L2TauRelaxingIsolationSelector () | |
Private Member Functions | |
virtual void | beginJob () |
virtual void | endJob () |
virtual void | produce (edm::Event &, const edm::EventSetup &) |
Private Attributes | |
edm::InputTag | associationInput_ |
std::vector< double > | drRMS_ |
std::vector< double > | ecalIsolEt_ |
double | et_ |
std::vector< double > | etaRMS_ |
std::vector< double > | nClusters_ |
std::vector< double > | phiRMS_ |
double | seedTowerEt_ |
std::vector< double > | towerIsolEt_ |
Definition at line 21 of file L2TauRelaxingIsolationSelector.h.
L2TauRelaxingIsolationSelector::L2TauRelaxingIsolationSelector | ( | const edm::ParameterSet & | iConfig | ) | [explicit] |
Definition at line 7 of file L2TauRelaxingIsolationSelector.cc.
: associationInput_(iConfig.getParameter<edm::InputTag>("L2InfoAssociation")), ecalIsolEt_(iConfig.getParameter<std::vector<double> >("EcalIsolationEt")), towerIsolEt_(iConfig.getParameter<std::vector<double> >("TowerIsolationEt")), nClusters_(iConfig.getParameter<std::vector<double> >("NumberOfClusters")), phiRMS_(iConfig.getParameter<std::vector<double> >("ClusterPhiRMS")), etaRMS_(iConfig.getParameter<std::vector<double> >("ClusterEtaRMS")), drRMS_(iConfig.getParameter<std::vector<double> >("ClusterDRRMS")), et_(iConfig.getParameter<double>("MinJetEt")), seedTowerEt_(iConfig.getParameter<double>("SeedTowerEt")) { produces<CaloJetCollection>("Isolated"); }
L2TauRelaxingIsolationSelector::~L2TauRelaxingIsolationSelector | ( | ) |
Definition at line 22 of file L2TauRelaxingIsolationSelector.cc.
{ }
void L2TauRelaxingIsolationSelector::beginJob | ( | void | ) | [private, virtual] |
Reimplemented from edm::EDProducer.
Definition at line 69 of file L2TauRelaxingIsolationSelector.cc.
{ }
void L2TauRelaxingIsolationSelector::endJob | ( | void | ) | [private, virtual] |
Reimplemented from edm::EDProducer.
Definition at line 75 of file L2TauRelaxingIsolationSelector.cc.
{ }
void L2TauRelaxingIsolationSelector::produce | ( | edm::Event & | iEvent, |
const edm::EventSetup & | iSetup | ||
) | [private, virtual] |
Implements edm::EDProducer.
Definition at line 33 of file L2TauRelaxingIsolationSelector.cc.
References associationInput_, drRMS_, reco::L2TauIsolationInfo::ecalClusterShape(), reco::L2TauIsolationInfo::ecalIsolEt(), ecalIsolEt_, reco::LeafCandidate::et(), et_, etaRMS_, edm::Event::getByLabel(), reco::L2TauIsolationInfo::hcalIsolEt(), metsig::jet, nClusters_, reco::L2TauIsolationInfo::nEcalHits(), L1TEmulatorMonitor_cff::p, phiRMS_, edm::Event::put(), reco::L2TauIsolationInfo::seedHcalHitEt(), seedTowerEt_, and towerIsolEt_.
{ using namespace edm; edm::Handle<L2TauInfoAssociation> Imap; std::auto_ptr<CaloJetCollection> l2IsolCaloJets( new CaloJetCollection ); iEvent.getByLabel(associationInput_ ,Imap); if(Imap->size()>0) for(L2TauInfoAssociation::const_iterator p = Imap->begin();p!=Imap->end();++p) { //Retrieve The L2TauIsolationInfo Class from the AssociationMap const L2TauIsolationInfo l2info = p->val; //Retrieve the Jet const CaloJet jet =*(p->key); //If The Cuts are Satisfied if(jet.et()>et_) if(l2info.seedHcalHitEt()>seedTowerEt_) if(l2info.ecalIsolEt()< ecalIsolEt_[0]+ecalIsolEt_[1]*jet.et()+ecalIsolEt_[2]*jet.et()*jet.et()) if(l2info.nEcalHits() <(int)(nClusters_[0]+nClusters_[1]*jet.et()+nClusters_[2]*jet.et()*jet.et())) if(l2info.ecalClusterShape()[0] <etaRMS_[0]+etaRMS_[1]*jet.et()+etaRMS_[2]*jet.et()*jet.et()) if(l2info.ecalClusterShape()[1] <phiRMS_[0]+phiRMS_[1]*jet.et()+phiRMS_[2]*jet.et()*jet.et()) if(l2info.ecalClusterShape()[2] <drRMS_[0]+drRMS_[1]*jet.et()+drRMS_[2]*jet.et()*jet.et()) if(l2info.hcalIsolEt()<towerIsolEt_[0]+towerIsolEt_[1]*jet.et()+towerIsolEt_[2]*jet.et()*jet.et()) { l2IsolCaloJets->push_back(jet); } } iEvent.put(l2IsolCaloJets, "Isolated"); }
Definition at line 33 of file L2TauRelaxingIsolationSelector.h.
Referenced by produce().
std::vector<double> L2TauRelaxingIsolationSelector::drRMS_ [private] |
Definition at line 41 of file L2TauRelaxingIsolationSelector.h.
Referenced by produce().
std::vector<double> L2TauRelaxingIsolationSelector::ecalIsolEt_ [private] |
Definition at line 36 of file L2TauRelaxingIsolationSelector.h.
Referenced by produce().
double L2TauRelaxingIsolationSelector::et_ [private] |
Definition at line 44 of file L2TauRelaxingIsolationSelector.h.
Referenced by produce().
std::vector<double> L2TauRelaxingIsolationSelector::etaRMS_ [private] |
Definition at line 40 of file L2TauRelaxingIsolationSelector.h.
Referenced by produce().
std::vector<double> L2TauRelaxingIsolationSelector::nClusters_ [private] |
Definition at line 38 of file L2TauRelaxingIsolationSelector.h.
Referenced by produce().
std::vector<double> L2TauRelaxingIsolationSelector::phiRMS_ [private] |
Definition at line 39 of file L2TauRelaxingIsolationSelector.h.
Referenced by produce().
double L2TauRelaxingIsolationSelector::seedTowerEt_ [private] |
Definition at line 45 of file L2TauRelaxingIsolationSelector.h.
Referenced by produce().
std::vector<double> L2TauRelaxingIsolationSelector::towerIsolEt_ [private] |
Definition at line 37 of file L2TauRelaxingIsolationSelector.h.
Referenced by produce().