2 #include "Math/GenVector/VectorUtil.h"
8 l2preJets_(iConfig.getParameter<std::vector<edm::InputTag> >(
"L2RegionalJets")),
9 l2TauInfoAssoc_(iConfig.getParameter<edm::InputTag>(
"L2InfoAssociationInput")),
12 triggerTag_(iConfig.getParameter<std::string>(
"DQMFolder")),
13 l2Isolated_(iConfig.getParameter<edm::InputTag>(
"L2IsolatedJets")),
40 jetEt->
getTH1F()->GetXaxis()->SetTitle(
"L2 selected Jet E_{T}");
44 jetEta->
getTH1F()->GetXaxis()->SetTitle(
"L2 selected Jet #eta");
48 jetPhi->
getTH1F()->GetXaxis()->SetTitle(
"L2 selected Jet #phi");
181 for(
unsigned int i=0;
i<l2Regional->size();++
i)
182 l2MergedJets.push_back(l2Regional->at(
i));
193 while(l2MergedJets.size()>0) {
194 l2CleanJets.push_back(l2MergedJets.at(0));
196 for(
unsigned int i=1 ;
i<l2MergedJets.size();++
i) {
197 double DR = ROOT::Math::VectorUtil::DeltaR(l2MergedJets.at(0).p4(),l2MergedJets.at(
i).p4());
199 tmp.push_back(l2MergedJets.at(
i));
202 l2MergedJets.swap(tmp);
211 for(
unsigned int i=0;
i<McInfo.size();++
i) {
212 std::pair<bool,reco::CaloJet>
m =
inverseMatch(McInfo.at(
i),l2CleanJets);
220 l2RegionalJets.push_back(m.second);
225 for(
unsigned int i=0;
i<l2CleanJets.size();++
i) {
233 l2RegionalJets.push_back(jet);
247 if(l2TauInfoAssoc->size()>0)
256 std::pair<bool,LV>
m =
match(jet,McInfo);
340 for(LVColl::const_iterator it = McInfo.begin();it!=McInfo.end();++it)
342 double delta = ROOT::Math::VectorUtil::DeltaR(jet.
p4(),*it);
351 std::pair<bool,LV>
p = std::make_pair(matched,mLV);
356 std::pair<bool,reco::CaloJet>
366 double distance=100000;
368 for(reco::CaloJetCollection::const_iterator it = jets.begin();it!=jets.end();++it)
372 double delta=fabs(jet.pt()-it->pt());
380 std::pair<bool,reco::CaloJet>
p = std::make_pair(matched,mjet);
394 for(reco::CaloJetCollection::const_iterator it = McInfo.begin();it!=McInfo.end();++it)
398 if(jet.
p4()==it->p4())
MonitorElement * isoEtaEffDenom
MonitorElement * hcalClusterDeltaRRMS
Jets made from CaloTowers.
MonitorElement * book1D(const char *name, const char *title, int nchX, double lowX, double highX)
Book 1D histogram.
virtual double et() const
transverse energy
MonitorElement * isoEtaEffNum
Base class for all types of Jets.
std::vector< edm::InputTag > l2preJets_
std::vector< double > hcalClusterShape() const
MonitorElement * preJetEta
MonitorElement * nHcalClusters
MonitorElement * isoEtEffDenom
MonitorElement * ecalClusterEtaRMS
MonitorElement * isoEtEffNum
MonitorElement * seedHcalEt
MonitorElement * recoPhiEffDenom
virtual double eta() const
momentum pseudorapidity
MonitorElement * isoPhiEffNum
math::XYZTLorentzVectorD LV
MonitorElement * ecalClusterDeltaRRMS
MonitorElement * seedEcalEt
edm::InputTag l2TauInfoAssoc_
MonitorElement * isoJetEta
double seedEcalHitEt() const
void analyze(const edm::Event &, const edm::EventSetup &, const LVColl &)
MonitorElement * isoJetEt
MonitorElement * preJetPhi
MonitorElement * isoJetPhi
MonitorElement * ecalClusterPhiRMS
double ecalIsolEt() const
MonitorElement * recoEtEffDenom
MonitorElement * recoEtaEffNum
bool getByLabel(InputTag const &tag, Handle< PROD > &result) const
MonitorElement * recoPhiEffNum
MonitorElement * recoEtaEffDenom
std::pair< bool, LV > match(const reco::Jet &, const LVColl &)
MonitorElement * isoPhiEffDenom
std::pair< bool, reco::CaloJet > inverseMatch(const LV &, const reco::CaloJetCollection &)
virtual double pt() const
transverse momentum
HLTTauDQMCaloPlotter(const edm::ParameterSet &, int, int, int, double, bool, double)
TH1F * getTH1F(void) const
double hcalIsolEt() const
MonitorElement * preJetEt
std::vector< std::vector< double > > tmp
MonitorElement * hcalClusterEtaRMS
edm::InputTag l2Isolated_
MonitorElement * hcalIsolEt
MonitorElement * jetEtRes
bool matchJet(const reco::Jet &, const reco::CaloJetCollection &)
std::vector< double > ecalClusterShape() const
virtual double phi() const
momentum azimuthal angle
virtual const LorentzVector & p4() const
four-momentum Lorentz vector
MonitorElement * recoEtEffNum
MonitorElement * ecalIsolEt
void setCurrentFolder(const std::string &fullpath)
MonitorElement * hcalClusterPhiRMS
std::vector< CaloJet > CaloJetCollection
collection of CaloJet objects
MonitorElement * nEcalClusters
double seedHcalHitEt() const