CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
List of all members | Classes | Public Member Functions | Private Member Functions | Private Attributes
HLTTauDQMCaloPlotter Class Reference

#include <HLTTauDQMCaloPlotter.h>

Classes

class  SorterByPt
 

Public Member Functions

void analyze (const edm::Event &, const edm::EventSetup &, const LVColl &)
 
 HLTTauDQMCaloPlotter (const edm::ParameterSet &, int, int, int, double, bool, double)
 
 ~HLTTauDQMCaloPlotter ()
 

Private Member Functions

std::pair< bool, reco::CaloJetinverseMatch (const LV &, const reco::CaloJetCollection &)
 
std::pair< bool, LVmatch (const reco::Jet &, const LVColl &)
 
bool matchJet (const reco::Jet &, const reco::CaloJetCollection &)
 

Private Attributes

bool doRef_
 
MonitorElementecalClusterDeltaRRMS
 
MonitorElementecalClusterEtaRMS
 
MonitorElementecalClusterPhiRMS
 
MonitorElementecalIsolEt
 
double EtMax_
 
MonitorElementhcalClusterDeltaRRMS
 
MonitorElementhcalClusterEtaRMS
 
MonitorElementhcalClusterPhiRMS
 
MonitorElementhcalIsolEt
 
MonitorElementisoEtaEffDenom
 
MonitorElementisoEtaEffNum
 
MonitorElementisoEtEffDenom
 
MonitorElementisoEtEffNum
 
MonitorElementisoJetEt
 
MonitorElementisoJetEta
 
MonitorElementisoJetPhi
 
MonitorElementisoPhiEffDenom
 
MonitorElementisoPhiEffNum
 
MonitorElementjetEt
 
MonitorElementjetEta
 
MonitorElementjetEtRes
 
MonitorElementjetPhi
 
edm::InputTag l2Isolated_
 
std::vector< edm::InputTagl2preJets_
 
edm::InputTag l2TauInfoAssoc_
 
double matchDeltaRMC_
 
edm::InputTag met_
 
MonitorElementnEcalClusters
 
int NEtaBins_
 
MonitorElementnHcalClusters
 
int NPhiBins_
 
int NPtBins_
 
MonitorElementpreJetEt
 
MonitorElementpreJetEta
 
MonitorElementpreJetPhi
 
MonitorElementrecoEtaEffDenom
 
MonitorElementrecoEtaEffNum
 
MonitorElementrecoEtEffDenom
 
MonitorElementrecoEtEffNum
 
MonitorElementrecoPhiEffDenom
 
MonitorElementrecoPhiEffNum
 
MonitorElementseedEcalEt
 
MonitorElementseedHcalEt
 
DQMStorestore
 
std::string triggerTag_
 

Detailed Description

Definition at line 40 of file HLTTauDQMCaloPlotter.h.

Constructor & Destructor Documentation

HLTTauDQMCaloPlotter::HLTTauDQMCaloPlotter ( const edm::ParameterSet iConfig,
int  etbins,
int  etabins,
int  phibins,
double  maxpt,
bool  ref,
double  dr 
)

Definition at line 7 of file HLTTauDQMCaloPlotter.cc.

References DQMStore::book1D(), ecalClusterDeltaRRMS, ecalClusterEtaRMS, ecalClusterPhiRMS, ecalIsolEt, EtMax_, MonitorElement::getTH1F(), hcalClusterDeltaRRMS, hcalClusterEtaRMS, hcalClusterPhiRMS, hcalIsolEt, isoEtaEffDenom, isoEtaEffNum, isoEtEffDenom, isoEtEffNum, isoJetEt, isoJetEta, isoJetPhi, isoPhiEffDenom, isoPhiEffNum, jetEt, jetEta, jetEtRes, jetPhi, nEcalClusters, NEtaBins_, nHcalClusters, NPhiBins_, NPtBins_, preJetEt, preJetEta, preJetPhi, recoEtaEffDenom, recoEtaEffNum, recoEtEffDenom, recoEtEffNum, recoPhiEffDenom, recoPhiEffNum, seedEcalEt, seedHcalEt, DQMStore::setCurrentFolder(), store, and triggerTag_.

7  :
8  l2preJets_(iConfig.getParameter<std::vector<edm::InputTag> >("L2RegionalJets")),
9  l2TauInfoAssoc_(iConfig.getParameter<edm::InputTag>("L2InfoAssociationInput")),
10  doRef_(ref),
11  matchDeltaRMC_(dr),
12  triggerTag_(iConfig.getParameter<std::string>("DQMFolder")),
13  l2Isolated_(iConfig.getParameter<edm::InputTag>("L2IsolatedJets")),
14  EtMax_(maxpt),
15  NPtBins_(etbins),
16  NEtaBins_(etabins),
17  NPhiBins_(phibins)
18 {
20 
21  if(store)
22  {
23 
24  //Create the histograms
26 
27  preJetEt= store->book1D("L2PreTauEt","L2 regional #tau E_{t}",NPtBins_,0,EtMax_);
28  preJetEt->getTH1F()->GetXaxis()->SetTitle("L2 regional Jet E_{T}");
29  preJetEt->getTH1F()->GetYaxis()->SetTitle("entries");
30 
31  preJetEta= store->book1D("L2PreTauEta","L2 regional #tau #eta",NEtaBins_,-2.5,2.5);
32  preJetEta->getTH1F()->GetXaxis()->SetTitle("L2 regional Jet #eta");
33  preJetEta->getTH1F()->GetYaxis()->SetTitle("entries");
34 
35  preJetPhi= store->book1D("L2PreTauPhi","L2 regional #tau #phi",NPhiBins_,-3.2,3.2);
36  preJetPhi->getTH1F()->GetXaxis()->SetTitle("L2 regional Jet #phi");
37  preJetPhi->getTH1F()->GetYaxis()->SetTitle("entries");
38 
39  jetEt= store->book1D("L2TauEt","L2 #tau E_{t}",NPtBins_,0,EtMax_);
40  jetEt->getTH1F()->GetXaxis()->SetTitle("L2 selected Jet E_{T}");
41  jetEt->getTH1F()->GetYaxis()->SetTitle("entries");
42 
43  jetEta= store->book1D("L2TauEta","L2 #tau #eta",NEtaBins_,-2.5,2.5);
44  jetEta->getTH1F()->GetXaxis()->SetTitle("L2 selected Jet #eta");
45  jetEta->getTH1F()->GetYaxis()->SetTitle("entries");
46 
47  jetPhi= store->book1D("L2TauPhi","L2 #tau #phi",NPhiBins_,-3.2,3.2);
48  jetPhi->getTH1F()->GetXaxis()->SetTitle("L2 selected Jet #phi");
49  jetPhi->getTH1F()->GetYaxis()->SetTitle("entries");
50 
51  jetEtRes= store->book1D("L2TauEtResol","L2 #tau E_{t} resolution",40,-2,2);
52  jetEtRes->getTH1F()->GetXaxis()->SetTitle("L2 selected Jet #phi");
53  jetEtRes->getTH1F()->GetYaxis()->SetTitle("entries");
54 
55  isoJetEt= store->book1D("L2IsoTauEt","L2 isolated #tau E_{t}",NPtBins_,0,EtMax_);
56  isoJetEt->getTH1F()->GetXaxis()->SetTitle("L2 isolated Jet E_{T}");
57  isoJetEt->getTH1F()->GetYaxis()->SetTitle("entries");
58 
59  isoJetEta= store->book1D("L2IsoTauEta","L2 isolated #tau #eta",NEtaBins_,-2.5,2.5);
60  isoJetEta->getTH1F()->GetXaxis()->SetTitle("L2 isolated Jet #eta");
61  isoJetEta->getTH1F()->GetYaxis()->SetTitle("entries");
62 
63  isoJetPhi= store->book1D("L2IsoTauPhi","L2 isolated #tau #phi",NPhiBins_,-3.2,3.2);
64  isoJetPhi->getTH1F()->GetXaxis()->SetTitle("L2 isolated Jet #phi");
65  isoJetPhi->getTH1F()->GetYaxis()->SetTitle("entries");
66 
67  ecalIsolEt=store->book1D("L2EcalIsolation","ECAL Isolation",40,0,20);
68  ecalIsolEt->getTH1F()->GetXaxis()->SetTitle("L2 ECAL isolation E_{T}");
69  ecalIsolEt->getTH1F()->GetYaxis()->SetTitle("entries");
70 
71  hcalIsolEt=store->book1D("L2HcalIsolation","HCAL Isolation",40,0,20);
72  hcalIsolEt->getTH1F()->GetXaxis()->SetTitle("L2 HCAL isolation E_{T}");
73  hcalIsolEt->getTH1F()->GetYaxis()->SetTitle("entries");
74 
75  seedHcalEt=store->book1D("L2HighestHCALCluster","Highest HCAL Cluster",40,0,80);
76  seedHcalEt->getTH1F()->GetXaxis()->SetTitle("HCAL seed E_{T}");
77  seedHcalEt->getTH1F()->GetYaxis()->SetTitle("entries");
78 
79  seedEcalEt=store->book1D("L2HighestECALCluster","Highest ECAL Cluster",25,0,50);
80  seedEcalEt->getTH1F()->GetXaxis()->SetTitle("ECAL seed E_{T}");
81  seedEcalEt->getTH1F()->GetYaxis()->SetTitle("entries");
82 
83  nEcalClusters=store->book1D("L2NEcalClusters","Nucmber of ECAL Clusters",20,0,20);
84  nEcalClusters->getTH1F()->GetXaxis()->SetTitle("n. of ECAL Clusters");
85  nEcalClusters->getTH1F()->GetYaxis()->SetTitle("entries");
86 
87  ecalClusterEtaRMS=store->book1D("L2EcalEtaRMS","ECAL Cluster #eta RMS",15,0,0.05);
88  ecalClusterEtaRMS->getTH1F()->GetXaxis()->SetTitle("ECAL cluster #eta RMS");
89  ecalClusterEtaRMS->getTH1F()->GetYaxis()->SetTitle("entries");
90 
91  ecalClusterPhiRMS=store->book1D("L2EcalPhiRMS","ECAL Cluster #phi RMS",30,0,0.1);
92  ecalClusterPhiRMS->getTH1F()->GetXaxis()->SetTitle("ECAL cluster #phi RMS");
93  ecalClusterPhiRMS->getTH1F()->GetYaxis()->SetTitle("entries");
94 
95 
96  ecalClusterDeltaRRMS=store->book1D("L2EcalDeltaRRMS","ECAL Cluster #DeltaR RMS",30,0,0.1);
97  ecalClusterDeltaRRMS->getTH1F()->GetXaxis()->SetTitle("ECAL cluster #DeltaR RMS");
98  ecalClusterDeltaRRMS->getTH1F()->GetYaxis()->SetTitle("entries");
99 
100  nHcalClusters=store->book1D("L2NHcalClusters","Nucmber of HCAL Clusters",20,0,20);
101  nHcalClusters->getTH1F()->GetXaxis()->SetTitle("n. of ECAL Clusters");
102  nHcalClusters->getTH1F()->GetYaxis()->SetTitle("entries");
103 
104  hcalClusterEtaRMS=store->book1D("L2HcalEtaRMS","HCAL Cluster #eta RMS",15,0,0.05);
105  hcalClusterEtaRMS->getTH1F()->GetXaxis()->SetTitle("HCAL cluster #eta RMS");
106  hcalClusterEtaRMS->getTH1F()->GetYaxis()->SetTitle("entries");
107 
108  hcalClusterPhiRMS=store->book1D("L2HcalPhiRMS","HCAL Cluster #phi RMS",30,0,0.1);
109  hcalClusterPhiRMS->getTH1F()->GetXaxis()->SetTitle("HCAL cluster #phi RMS");
110  hcalClusterPhiRMS->getTH1F()->GetYaxis()->SetTitle("entries");
111 
112  hcalClusterDeltaRRMS=store->book1D("L2HcalDeltaRRMS","HCAL Cluster #DeltaR RMS",30,0,0.1);
113  hcalClusterDeltaRRMS->getTH1F()->GetXaxis()->SetTitle("HCAL cluster #DeltaR RMS");
114  hcalClusterDeltaRRMS->getTH1F()->GetYaxis()->SetTitle("entries");
115 
116 
117  store->setCurrentFolder(triggerTag_+"/EfficiencyHelpers");
118 
119  recoEtEffNum=store->book1D("L2RecoTauEtEffNum","Efficiency vs E_{t}(Numerator)",NPtBins_,0,EtMax_);
120  recoEtEffNum->getTH1F()->Sumw2();
121 
122  recoEtEffDenom=store->book1D("L2RecoTauEtEffDenom","Efficiency vs E_{t}(Denominator)",NPtBins_,0,EtMax_);
123  recoEtEffDenom->getTH1F()->Sumw2();
124 
125  recoEtaEffNum=store->book1D("L2RecoTauEtaEffNum","Efficiency vs #eta (Numerator)",NEtaBins_,-2.5,2.5);
126  recoEtaEffNum->getTH1F()->Sumw2();
127 
128  recoEtaEffDenom=store->book1D("L2RecoTauEtaEffDenom","Efficiency vs #eta(Denominator)",NEtaBins_,-2.5,2.5);
129  recoEtaEffDenom->getTH1F()->Sumw2();
130 
131  recoPhiEffNum=store->book1D("L2RecoTauPhiEffNum","Efficiency vs #phi (Numerator)",NPhiBins_,-3.2,3.2);
132  recoPhiEffNum->getTH1F()->Sumw2();
133 
134  recoPhiEffDenom=store->book1D("L2RecoTauPhiEffDenom","Efficiency vs #phi(Denominator)",NPhiBins_,-3.2,3.2);
135  recoPhiEffDenom->getTH1F()->Sumw2();
136 
137  isoEtEffNum=store->book1D("L2IsoTauEtEffNum","Efficiency vs E_{t}(Numerator)",NPtBins_,0,EtMax_);
138  isoEtEffNum->getTH1F()->Sumw2();
139 
140  isoEtEffDenom=store->book1D("L2IsoTauEtEffDenom","Efficiency vs E_{t}(Denominator)",NPtBins_,0,EtMax_);
141  isoEtEffDenom->getTH1F()->Sumw2();
142 
143  isoEtaEffNum=store->book1D("L2IsoTauEtaEffNum","Efficiency vs #eta (Numerator)",NEtaBins_,-2.5,2.5);
144  isoEtaEffNum->getTH1F()->Sumw2();
145 
146  isoEtaEffDenom=store->book1D("L2IsoTauEtaEffDenom","Efficiency vs #eta(Denominator)",NEtaBins_,-2.5,2.5);
147  isoEtaEffDenom->getTH1F()->Sumw2();
148 
149  isoPhiEffNum=store->book1D("L2IsoTauPhiEffNum","Efficiency vs #phi (Numerator)",NPhiBins_,-3.2,3.2);
150  isoPhiEffNum->getTH1F()->Sumw2();
151 
152  isoPhiEffDenom=store->book1D("L2IsoTauPhiEffDenom","Efficiency vs #phi(Denominator)",NPhiBins_,-3.2,3.2);
153  isoPhiEffDenom->getTH1F()->Sumw2();
154  }
155 
156 }
T getParameter(std::string const &) const
MonitorElement * isoEtaEffDenom
MonitorElement * hcalClusterDeltaRRMS
MonitorElement * book1D(const char *name, const char *title, int nchX, double lowX, double highX)
Book 1D histogram.
Definition: DQMStore.cc:519
MonitorElement * isoEtaEffNum
std::vector< edm::InputTag > l2preJets_
MonitorElement * preJetEta
MonitorElement * nHcalClusters
MonitorElement * isoEtEffDenom
MonitorElement * ecalClusterEtaRMS
MonitorElement * isoEtEffNum
MonitorElement * seedHcalEt
MonitorElement * recoPhiEffDenom
MonitorElement * isoPhiEffNum
MonitorElement * ecalClusterDeltaRRMS
MonitorElement * seedEcalEt
MonitorElement * isoJetEta
MonitorElement * isoJetEt
MonitorElement * preJetPhi
MonitorElement * isoJetPhi
MonitorElement * ecalClusterPhiRMS
MonitorElement * recoEtEffDenom
MonitorElement * recoEtaEffNum
MonitorElement * recoPhiEffNum
MonitorElement * recoEtaEffDenom
MonitorElement * isoPhiEffDenom
TH1F * getTH1F(void) const
MonitorElement * preJetEt
MonitorElement * hcalClusterEtaRMS
MonitorElement * hcalIsolEt
MonitorElement * jetEtRes
MonitorElement * recoEtEffNum
MonitorElement * ecalIsolEt
void setCurrentFolder(const std::string &fullpath)
Definition: DQMStore.cc:237
MonitorElement * hcalClusterPhiRMS
MonitorElement * nEcalClusters
HLTTauDQMCaloPlotter::~HLTTauDQMCaloPlotter ( )

Definition at line 158 of file HLTTauDQMCaloPlotter.cc.

159 {
160 }

Member Function Documentation

void HLTTauDQMCaloPlotter::analyze ( const edm::Event iEvent,
const edm::EventSetup iSetup,
const LVColl McInfo 
)

Definition at line 163 of file HLTTauDQMCaloPlotter.cc.

References doRef_, ecalClusterDeltaRRMS, ecalClusterEtaRMS, ecalClusterPhiRMS, reco::L2TauIsolationInfo::ecalClusterShape(), reco::L2TauIsolationInfo::ecalIsolEt(), ecalIsolEt, reco::LeafCandidate::et(), reco::LeafCandidate::eta(), edm::HandleBase::failedToGet(), MonitorElement::Fill(), edm::Event::getByLabel(), hcalClusterDeltaRRMS, hcalClusterEtaRMS, hcalClusterPhiRMS, reco::L2TauIsolationInfo::hcalClusterShape(), reco::L2TauIsolationInfo::hcalIsolEt(), hcalIsolEt, i, inverseMatch(), isoEtaEffDenom, isoEtaEffNum, isoEtEffDenom, isoEtEffNum, isoJetEt, isoJetEta, isoJetPhi, isoPhiEffDenom, isoPhiEffNum, edm::HandleBase::isValid(), j, metsig::jet, jetEt, jetEta, jetEtRes, jetPhi, l2Isolated_, l2preJets_, l2TauInfoAssoc_, m, match(), matchJet(), nEcalClusters, reco::L2TauIsolationInfo::nEcalHits(), nHcalClusters, reco::L2TauIsolationInfo::nHcalHits(), L1TEmulatorMonitor_cff::p, reco::LeafCandidate::p4(), reco::LeafCandidate::phi(), preJetEt, preJetEta, preJetPhi, reco::LeafCandidate::pt(), recoEtaEffDenom, recoEtaEffNum, recoEtEffDenom, recoEtEffNum, recoPhiEffDenom, recoPhiEffNum, seedEcalEt, reco::L2TauIsolationInfo::seedEcalHitEt(), seedHcalEt, reco::L2TauIsolationInfo::seedHcalHitEt(), python.multivaluedict::sort(), MCScenario_CRAFT1_22X::sorter(), and tmp.

164 {
168  reco::CaloJetCollection l2RegionalJets;
169 
170 
171 
172  //Merge the L2 Regional Collections!
173  reco::CaloJetCollection l2MergedJets;
174 
175  for(unsigned int j=0;j<l2preJets_.size();++j) {
176 
177  bool gotPreJets= iEvent.getByLabel(l2preJets_[j],l2Regional) &&l2Regional.isValid();
178 
179  if(gotPreJets)
180  if((!l2Regional.failedToGet())) {
181  for(unsigned int i=0;i<l2Regional->size();++i)
182  l2MergedJets.push_back(l2Regional->at(i));
183 
184  }
185  }
186 
187  //Sort
188  SorterByPt sorter;
189  std::sort(l2MergedJets.begin(),l2MergedJets.end(),sorter);
190 
191  //Remove Collinear Jets
192  reco::CaloJetCollection l2CleanJets;
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());
198  if(DR>0.1)
199  tmp.push_back(l2MergedJets.at(i));
200  }
201 
202  l2MergedJets.swap(tmp);
203  tmp.clear();
204  }
205 
206 
207  //Now fill the regional jet plots by ref if you do ref to
208  //avoid double counting!
209 
210  if(doRef_) {
211  for(unsigned int i=0;i<McInfo.size();++i) {
212  std::pair<bool,reco::CaloJet> m = inverseMatch(McInfo.at(i),l2CleanJets);
213  if(m.first) {
214  preJetEt->Fill(m.second.pt());
215  preJetEta->Fill(m.second.eta());
216  preJetPhi->Fill(m.second.phi());
217  recoEtEffDenom->Fill(McInfo.at(i).pt());
218  recoEtaEffDenom->Fill(McInfo.at(i).eta());
219  recoPhiEffDenom->Fill(McInfo.at(i).phi());
220  l2RegionalJets.push_back(m.second);
221  }
222  }
223  }
224  else {
225  for(unsigned int i=0;i<l2CleanJets.size();++i) {
226  reco::CaloJet jet = l2CleanJets.at(i);
227  preJetEt->Fill(jet.pt());
228  preJetEta->Fill(jet.eta());
229  preJetPhi->Fill(jet.phi());
230  recoEtEffDenom->Fill(jet.pt());
231  recoEtaEffDenom->Fill(jet.eta());
232  recoPhiEffDenom->Fill(jet.phi());
233  l2RegionalJets.push_back(jet);
234  }
235  }
236 
237 
238 
239 
240 
241  bool gotL2=iEvent.getByLabel(l2TauInfoAssoc_,l2TauInfoAssoc) && l2TauInfoAssoc.isValid();
242 
243 
244 
245  if(gotL2) {
246  //If the Collection exists do work
247  if(l2TauInfoAssoc->size()>0)
248  for(reco::L2TauInfoAssociation::const_iterator p = l2TauInfoAssoc->begin();p!=l2TauInfoAssoc->end();++p)
249  {
250  //Retrieve The L2TauIsolationInfo Class from the AssociationMap
251  const reco::L2TauIsolationInfo l2info = p->val;
252 
253  //Retrieve the Jet From the AssociationMap
254  const reco::Jet& jet =*(p->key);
255 
256  std::pair<bool,LV> m =match(jet,McInfo);
257 
258  if((doRef_&&m.first)||(!doRef_))
259  {
260  ecalIsolEt->Fill(l2info.ecalIsolEt());
261  hcalIsolEt->Fill(l2info.hcalIsolEt());
262  seedEcalEt->Fill(l2info.seedEcalHitEt());
263  seedHcalEt->Fill(l2info.seedHcalHitEt());
264 
265  nEcalClusters->Fill(l2info.nEcalHits());
269 
270  nHcalClusters->Fill(l2info.nHcalHits());
274 
275  jetEt->Fill(jet.et());
276  jetEta->Fill(jet.eta());
277  jetPhi->Fill(jet.phi());
278 
279  LV refLV;
280  if(doRef_)
281  refLV = m.second;
282  else
283  refLV = jet.p4();
284 
285  if(doRef_)
286  jetEtRes->Fill((jet.pt()-refLV.pt())/refLV.pt());
287 
288  if(matchJet(jet,l2RegionalJets))
289  {
290  recoEtEffNum->Fill(refLV.pt());
291  recoEtaEffNum->Fill(refLV.eta());
292  recoPhiEffNum->Fill(refLV.phi());
293  }
294 
295  isoEtEffDenom->Fill(refLV.pt());
296  isoEtaEffDenom->Fill(refLV.eta());
297  isoPhiEffDenom->Fill(refLV.phi());
298 
299 
300  bool gotIsoL2=iEvent.getByLabel(l2Isolated_,l2Isolated) &&l2Isolated.isValid();
301 
302 
303 
304 
305  if(gotIsoL2)
306  if(l2Isolated.isValid());
307  {
308  if(matchJet(jet,*l2Isolated))
309  {
310  isoJetEt->Fill(jet.et());
311  isoJetEta->Fill(jet.eta());
312  isoJetPhi->Fill(jet.phi());
313 
314  isoEtEffNum->Fill(refLV.pt());
315  isoEtaEffNum->Fill(refLV.eta());
316  isoPhiEffNum->Fill(refLV.phi());
317  }
318  }
319  }
320  }
321 
322  }
323 
324 }
MonitorElement * isoEtaEffDenom
MonitorElement * hcalClusterDeltaRRMS
int i
Definition: DBlmapReader.cc:9
Jets made from CaloTowers.
Definition: CaloJet.h:30
virtual double et() const
transverse energy
MonitorElement * isoEtaEffNum
Base class for all types of Jets.
Definition: Jet.h:21
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
void Fill(long long x)
MonitorElement * ecalClusterDeltaRRMS
MonitorElement * seedEcalEt
MonitorElement * isoJetEta
MonitorElement * isoJetEt
MonitorElement * preJetPhi
MonitorElement * isoJetPhi
int j
Definition: DBlmapReader.cc:9
MonitorElement * ecalClusterPhiRMS
bool isValid() const
Definition: HandleBase.h:76
MonitorElement * recoEtEffDenom
MonitorElement * recoEtaEffNum
bool getByLabel(InputTag const &tag, Handle< PROD > &result) const
Definition: Event.h:359
MonitorElement * recoPhiEffNum
bool failedToGet() const
Definition: HandleBase.h:80
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
MonitorElement * preJetEt
std::vector< std::vector< double > > tmp
Definition: MVATrainer.cc:100
MonitorElement * hcalClusterEtaRMS
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
MonitorElement * hcalClusterPhiRMS
std::vector< CaloJet > CaloJetCollection
collection of CaloJet objects
MonitorElement * nEcalClusters
std::pair< bool, reco::CaloJet > HLTTauDQMCaloPlotter::inverseMatch ( const LV jet,
const reco::CaloJetCollection jets 
)
private

Definition at line 357 of file HLTTauDQMCaloPlotter.cc.

References delta, metsig::jet, matchDeltaRMC_, and L1TEmulatorMonitor_cff::p.

Referenced by analyze().

358 {
359 
360  //Loop On the Collection and see if your tau jet is matched to one there
361 
362  //MATCH THE neartes energy jet in the delta R we want
363 
364  bool matched=false;
365  reco::CaloJet mjet;
366  double distance=100000;
367  if(jets.size()>0)
368  for(reco::CaloJetCollection::const_iterator it = jets.begin();it!=jets.end();++it)
369  if(ROOT::Math::VectorUtil::DeltaR(it->p4(),jet)<matchDeltaRMC_)
370  {
371  matched=true;
372  double delta=fabs(jet.pt()-it->pt());
373  if(delta<distance)
374  {
375  distance=delta;
376  mjet = *it;
377  }
378  }
379 
380  std::pair<bool,reco::CaloJet> p = std::make_pair(matched,mjet);
381  return p;
382 }
dbl * delta
Definition: mlp_gen.cc:36
Jets made from CaloTowers.
Definition: CaloJet.h:30
std::pair< bool, LV > HLTTauDQMCaloPlotter::match ( const reco::Jet jet,
const LVColl McInfo 
)
private

Definition at line 330 of file HLTTauDQMCaloPlotter.cc.

References delta, matchDeltaRMC_, L1TEmulatorMonitor_cff::p, and reco::LeafCandidate::p4().

Referenced by analyze().

331 {
332 
333  //Loop On the Collection and see if your tau jet is matched to one there
334  //Also find the nearest Matched MC Particle to your Jet (to be complete)
335 
336  bool matched=false;
337  LV mLV;
338 
339  if(McInfo.size()>0)
340  for(LVColl::const_iterator it = McInfo.begin();it!=McInfo.end();++it)
341  {
342  double delta = ROOT::Math::VectorUtil::DeltaR(jet.p4(),*it);
343  if(delta<matchDeltaRMC_)
344  {
345  matched=true;
346  mLV=*it;
347  }
348  }
349 
350 
351  std::pair<bool,LV> p = std::make_pair(matched,mLV);
352  return p;
353 }
dbl * delta
Definition: mlp_gen.cc:36
math::XYZTLorentzVectorD LV
virtual const LorentzVector & p4() const
four-momentum Lorentz vector
bool HLTTauDQMCaloPlotter::matchJet ( const reco::Jet jet,
const reco::CaloJetCollection McInfo 
)
private

Definition at line 386 of file HLTTauDQMCaloPlotter.cc.

References reco::LeafCandidate::p4().

Referenced by analyze().

387 {
388  //Loop On the Collection and see if your tau jet is matched to one there
389  //Also find the nearest Matched MC Particle to your Jet (to be complete)
390 
391  bool matched=false;
392 
393  if(McInfo.size()>0)
394  for(reco::CaloJetCollection::const_iterator it = McInfo.begin();it!=McInfo.end();++it)
395  {
396  // double delta = ROOT::Math::VectorUtil::DeltaR(jet.p4(),it->p4());
397  // if(delta<matchDeltaRMC_)
398  if(jet.p4()==it->p4())
399  {
400  matched=true;
401 
402  }
403  }
404  return matched;
405 }
virtual const LorentzVector & p4() const
four-momentum Lorentz vector

Member Data Documentation

bool HLTTauDQMCaloPlotter::doRef_
private

Definition at line 52 of file HLTTauDQMCaloPlotter.h.

Referenced by analyze().

MonitorElement* HLTTauDQMCaloPlotter::ecalClusterDeltaRRMS
private

Definition at line 92 of file HLTTauDQMCaloPlotter.h.

Referenced by analyze(), and HLTTauDQMCaloPlotter().

MonitorElement* HLTTauDQMCaloPlotter::ecalClusterEtaRMS
private

Definition at line 90 of file HLTTauDQMCaloPlotter.h.

Referenced by analyze(), and HLTTauDQMCaloPlotter().

MonitorElement* HLTTauDQMCaloPlotter::ecalClusterPhiRMS
private

Definition at line 91 of file HLTTauDQMCaloPlotter.h.

Referenced by analyze(), and HLTTauDQMCaloPlotter().

MonitorElement* HLTTauDQMCaloPlotter::ecalIsolEt
private

Definition at line 84 of file HLTTauDQMCaloPlotter.h.

Referenced by analyze(), and HLTTauDQMCaloPlotter().

double HLTTauDQMCaloPlotter::EtMax_
private

Definition at line 60 of file HLTTauDQMCaloPlotter.h.

Referenced by HLTTauDQMCaloPlotter().

MonitorElement* HLTTauDQMCaloPlotter::hcalClusterDeltaRRMS
private

Definition at line 97 of file HLTTauDQMCaloPlotter.h.

Referenced by analyze(), and HLTTauDQMCaloPlotter().

MonitorElement* HLTTauDQMCaloPlotter::hcalClusterEtaRMS
private

Definition at line 95 of file HLTTauDQMCaloPlotter.h.

Referenced by analyze(), and HLTTauDQMCaloPlotter().

MonitorElement* HLTTauDQMCaloPlotter::hcalClusterPhiRMS
private

Definition at line 96 of file HLTTauDQMCaloPlotter.h.

Referenced by analyze(), and HLTTauDQMCaloPlotter().

MonitorElement* HLTTauDQMCaloPlotter::hcalIsolEt
private

Definition at line 85 of file HLTTauDQMCaloPlotter.h.

Referenced by analyze(), and HLTTauDQMCaloPlotter().

MonitorElement* HLTTauDQMCaloPlotter::isoEtaEffDenom
private

Definition at line 112 of file HLTTauDQMCaloPlotter.h.

Referenced by analyze(), and HLTTauDQMCaloPlotter().

MonitorElement* HLTTauDQMCaloPlotter::isoEtaEffNum
private

Definition at line 111 of file HLTTauDQMCaloPlotter.h.

Referenced by analyze(), and HLTTauDQMCaloPlotter().

MonitorElement* HLTTauDQMCaloPlotter::isoEtEffDenom
private

Definition at line 110 of file HLTTauDQMCaloPlotter.h.

Referenced by analyze(), and HLTTauDQMCaloPlotter().

MonitorElement* HLTTauDQMCaloPlotter::isoEtEffNum
private

Definition at line 109 of file HLTTauDQMCaloPlotter.h.

Referenced by analyze(), and HLTTauDQMCaloPlotter().

MonitorElement* HLTTauDQMCaloPlotter::isoJetEt
private

Definition at line 77 of file HLTTauDQMCaloPlotter.h.

Referenced by analyze(), and HLTTauDQMCaloPlotter().

MonitorElement* HLTTauDQMCaloPlotter::isoJetEta
private

Definition at line 78 of file HLTTauDQMCaloPlotter.h.

Referenced by analyze(), and HLTTauDQMCaloPlotter().

MonitorElement* HLTTauDQMCaloPlotter::isoJetPhi
private

Definition at line 79 of file HLTTauDQMCaloPlotter.h.

Referenced by analyze(), and HLTTauDQMCaloPlotter().

MonitorElement* HLTTauDQMCaloPlotter::isoPhiEffDenom
private

Definition at line 114 of file HLTTauDQMCaloPlotter.h.

Referenced by analyze(), and HLTTauDQMCaloPlotter().

MonitorElement* HLTTauDQMCaloPlotter::isoPhiEffNum
private

Definition at line 113 of file HLTTauDQMCaloPlotter.h.

Referenced by analyze(), and HLTTauDQMCaloPlotter().

MonitorElement* HLTTauDQMCaloPlotter::jetEt
private

Definition at line 73 of file HLTTauDQMCaloPlotter.h.

Referenced by analyze(), and HLTTauDQMCaloPlotter().

MonitorElement* HLTTauDQMCaloPlotter::jetEta
private

Definition at line 74 of file HLTTauDQMCaloPlotter.h.

Referenced by analyze(), and HLTTauDQMCaloPlotter().

MonitorElement* HLTTauDQMCaloPlotter::jetEtRes
private

Definition at line 81 of file HLTTauDQMCaloPlotter.h.

Referenced by analyze(), and HLTTauDQMCaloPlotter().

MonitorElement* HLTTauDQMCaloPlotter::jetPhi
private

Definition at line 75 of file HLTTauDQMCaloPlotter.h.

Referenced by analyze(), and HLTTauDQMCaloPlotter().

edm::InputTag HLTTauDQMCaloPlotter::l2Isolated_
private

Definition at line 56 of file HLTTauDQMCaloPlotter.h.

Referenced by analyze().

std::vector<edm::InputTag> HLTTauDQMCaloPlotter::l2preJets_
private

Definition at line 49 of file HLTTauDQMCaloPlotter.h.

Referenced by analyze().

edm::InputTag HLTTauDQMCaloPlotter::l2TauInfoAssoc_
private

Definition at line 50 of file HLTTauDQMCaloPlotter.h.

Referenced by analyze().

double HLTTauDQMCaloPlotter::matchDeltaRMC_
private

Definition at line 54 of file HLTTauDQMCaloPlotter.h.

Referenced by inverseMatch(), and match().

edm::InputTag HLTTauDQMCaloPlotter::met_
private

Definition at line 51 of file HLTTauDQMCaloPlotter.h.

MonitorElement* HLTTauDQMCaloPlotter::nEcalClusters
private

Definition at line 93 of file HLTTauDQMCaloPlotter.h.

Referenced by analyze(), and HLTTauDQMCaloPlotter().

int HLTTauDQMCaloPlotter::NEtaBins_
private

Definition at line 62 of file HLTTauDQMCaloPlotter.h.

Referenced by HLTTauDQMCaloPlotter().

MonitorElement* HLTTauDQMCaloPlotter::nHcalClusters
private

Definition at line 98 of file HLTTauDQMCaloPlotter.h.

Referenced by analyze(), and HLTTauDQMCaloPlotter().

int HLTTauDQMCaloPlotter::NPhiBins_
private

Definition at line 63 of file HLTTauDQMCaloPlotter.h.

Referenced by HLTTauDQMCaloPlotter().

int HLTTauDQMCaloPlotter::NPtBins_
private

Definition at line 61 of file HLTTauDQMCaloPlotter.h.

Referenced by HLTTauDQMCaloPlotter().

MonitorElement* HLTTauDQMCaloPlotter::preJetEt
private

Definition at line 69 of file HLTTauDQMCaloPlotter.h.

Referenced by analyze(), and HLTTauDQMCaloPlotter().

MonitorElement* HLTTauDQMCaloPlotter::preJetEta
private

Definition at line 70 of file HLTTauDQMCaloPlotter.h.

Referenced by analyze(), and HLTTauDQMCaloPlotter().

MonitorElement* HLTTauDQMCaloPlotter::preJetPhi
private

Definition at line 71 of file HLTTauDQMCaloPlotter.h.

Referenced by analyze(), and HLTTauDQMCaloPlotter().

MonitorElement* HLTTauDQMCaloPlotter::recoEtaEffDenom
private

Definition at line 105 of file HLTTauDQMCaloPlotter.h.

Referenced by analyze(), and HLTTauDQMCaloPlotter().

MonitorElement* HLTTauDQMCaloPlotter::recoEtaEffNum
private

Definition at line 104 of file HLTTauDQMCaloPlotter.h.

Referenced by analyze(), and HLTTauDQMCaloPlotter().

MonitorElement* HLTTauDQMCaloPlotter::recoEtEffDenom
private

Definition at line 103 of file HLTTauDQMCaloPlotter.h.

Referenced by analyze(), and HLTTauDQMCaloPlotter().

MonitorElement* HLTTauDQMCaloPlotter::recoEtEffNum
private

Definition at line 102 of file HLTTauDQMCaloPlotter.h.

Referenced by analyze(), and HLTTauDQMCaloPlotter().

MonitorElement* HLTTauDQMCaloPlotter::recoPhiEffDenom
private

Definition at line 107 of file HLTTauDQMCaloPlotter.h.

Referenced by analyze(), and HLTTauDQMCaloPlotter().

MonitorElement* HLTTauDQMCaloPlotter::recoPhiEffNum
private

Definition at line 106 of file HLTTauDQMCaloPlotter.h.

Referenced by analyze(), and HLTTauDQMCaloPlotter().

MonitorElement* HLTTauDQMCaloPlotter::seedEcalEt
private

Definition at line 87 of file HLTTauDQMCaloPlotter.h.

Referenced by analyze(), and HLTTauDQMCaloPlotter().

MonitorElement* HLTTauDQMCaloPlotter::seedHcalEt
private

Definition at line 88 of file HLTTauDQMCaloPlotter.h.

Referenced by analyze(), and HLTTauDQMCaloPlotter().

DQMStore* HLTTauDQMCaloPlotter::store
private

Definition at line 66 of file HLTTauDQMCaloPlotter.h.

Referenced by HLTTauDQMCaloPlotter().

std::string HLTTauDQMCaloPlotter::triggerTag_
private

Definition at line 55 of file HLTTauDQMCaloPlotter.h.

Referenced by HLTTauDQMCaloPlotter().