CMS 3D CMS Logo

List of all members | Public Member Functions | Private Member Functions | Private Attributes
JetValidation Class Reference

#include <JetValidation.h>

Inheritance diagram for JetValidation:
edm::EDAnalyzer edm::EDConsumerBase

Public Member Functions

 JetValidation (edm::ParameterSet const &cfg)
 
- Public Member Functions inherited from edm::EDAnalyzer
void callWhenNewProductsRegistered (std::function< void(BranchDescription const &)> const &func)
 
 EDAnalyzer ()
 
SerialTaskQueueglobalLuminosityBlocksQueue ()
 
SerialTaskQueueglobalRunsQueue ()
 
ModuleDescription const & moduleDescription () const
 
std::string workerType () const
 
 ~EDAnalyzer () override
 
- Public Member Functions inherited from edm::EDConsumerBase
std::vector< ConsumesInfoconsumesInfo () const
 
void convertCurrentProcessAlias (std::string const &processName)
 Convert "@currentProcess" in InputTag process names to the actual current process name. More...
 
 EDConsumerBase ()
 
 EDConsumerBase (EDConsumerBase const &)=delete
 
 EDConsumerBase (EDConsumerBase &&)=default
 
ESProxyIndex const * esGetTokenIndices (edm::Transition iTrans) const
 
ProductResolverIndexAndSkipBit indexFrom (EDGetToken, BranchType, TypeID const &) const
 
void itemsMayGet (BranchType, std::vector< ProductResolverIndexAndSkipBit > &) const
 
void itemsToGet (BranchType, std::vector< ProductResolverIndexAndSkipBit > &) const
 
std::vector< ProductResolverIndexAndSkipBit > const & itemsToGetFrom (BranchType iType) const
 
void labelsForToken (EDGetToken iToken, Labels &oLabels) const
 
void modulesWhoseProductsAreConsumed (std::vector< ModuleDescription const * > &modules, ProductRegistry const &preg, std::map< std::string, ModuleDescription const * > const &labelsToDesc, std::string const &processName) const
 
EDConsumerBase const & operator= (EDConsumerBase const &)=delete
 
EDConsumerBaseoperator= (EDConsumerBase &&)=default
 
bool registeredToConsume (ProductResolverIndex, bool, BranchType) const
 
bool registeredToConsumeMany (TypeID const &, BranchType) const
 
ProductResolverIndexAndSkipBit uncheckedIndexFrom (EDGetToken) const
 
void updateLookup (BranchType iBranchType, ProductResolverIndexHelper const &, bool iPrefetchMayGet)
 
void updateLookup (eventsetup::ESRecordsToProxyIndices const &)
 
virtual ~EDConsumerBase () noexcept(false)
 

Private Member Functions

void analyze (edm::Event const &e, edm::EventSetup const &iSetup) override
 
void beginJob () override
 
void endJob () override
 
void FillHist1D (const TString &histName, const Double_t &x)
 
void FillHist2D (const TString &histName, const Double_t &x, const Double_t &y)
 
void FillHistProfile (const TString &histName, const Double_t &x, const Double_t &y)
 

Private Attributes

std::string calAlgo
 
double dRmatch
 
std::string genAlgo
 
std::string histoFileName
 
std::string jetTracksAssociator
 
TFile * m_file
 
std::map< TString, TH1 * > m_HistNames1D
 
std::map< TString, TH2 * > m_HistNames2D
 
std::map< TString, TProfile * > m_HistNamesProfile
 
bool MCarlo
 
int Njets
 
double PtMin
 

Additional Inherited Members

- Public Types inherited from edm::EDAnalyzer
typedef EDAnalyzer ModuleType
 
- Public Types inherited from edm::EDConsumerBase
typedef ProductLabels Labels
 
- Static Public Member Functions inherited from edm::EDAnalyzer
static const std::string & baseType ()
 
static void fillDescriptions (ConfigurationDescriptions &descriptions)
 
static void prevalidate (ConfigurationDescriptions &)
 
static bool wantsGlobalLuminosityBlocks ()
 
static bool wantsGlobalRuns ()
 
static bool wantsStreamLuminosityBlocks ()
 
static bool wantsStreamRuns ()
 
- Protected Member Functions inherited from edm::EDConsumerBase
template<typename ProductType , BranchType B = InEvent>
EDGetTokenT< ProductType > consumes (edm::InputTag const &tag)
 
EDGetToken consumes (const TypeToGet &id, edm::InputTag const &tag)
 
template<BranchType B>
EDGetToken consumes (TypeToGet const &id, edm::InputTag const &tag)
 
ConsumesCollector consumesCollector ()
 Use a ConsumesCollector to gather consumes information from helper functions. More...
 
template<typename ProductType , BranchType B = InEvent>
void consumesMany ()
 
void consumesMany (const TypeToGet &id)
 
template<BranchType B>
void consumesMany (const TypeToGet &id)
 
template<typename ESProduct , typename ESRecord , Transition Tr = Transition::Event>
auto esConsumes ()
 
template<typename ESProduct , typename ESRecord , Transition Tr = Transition::Event>
auto esConsumes (ESInputTag const &tag)
 
template<typename ProductType , BranchType B = InEvent>
EDGetTokenT< ProductType > mayConsume (edm::InputTag const &tag)
 
EDGetToken mayConsume (const TypeToGet &id, edm::InputTag const &tag)
 
template<BranchType B>
EDGetToken mayConsume (const TypeToGet &id, edm::InputTag const &tag)
 

Detailed Description

Definition at line 17 of file JetValidation.h.

Constructor & Destructor Documentation

JetValidation::JetValidation ( edm::ParameterSet const &  cfg)

Definition at line 24 of file JetValidation.cc.

References CaloRecoTauDiscriminationAgainstMuon_cfi::dRmatch, edm::ParameterSet::getParameter(), mix_2012_lumiLevel_15_20_50ns_PoissonOOTPU_cfi::histoFileName, ECF_cff::Njets, and HIPixelMedianVertex_cfi::PtMin.

25 {
26  dRmatch = cfg.getParameter<double> ("dRmatch");
27  PtMin = cfg.getParameter<double> ("PtMin");
28  Njets = cfg.getParameter<int> ("Njets");
29  MCarlo = cfg.getParameter<bool> ("MCarlo");
30  genAlgo = cfg.getParameter<string> ("genAlgo");
31  calAlgo = cfg.getParameter<string> ("calAlgo");
32  jetTracksAssociator = cfg.getParameter<string> ("jetTracksAssociator");
33  histoFileName = cfg.getParameter<string> ("histoFileName");
34 }
std::string histoFileName
Definition: JetValidation.h:38
std::string jetTracksAssociator
Definition: JetValidation.h:41
std::string calAlgo
Definition: JetValidation.h:40
std::string genAlgo
Definition: JetValidation.h:39

Member Function Documentation

void JetValidation::analyze ( edm::Event const &  e,
edm::EventSetup const &  iSetup 
)
overrideprivatevirtual

Implements edm::EDAnalyzer.

Definition at line 81 of file JetValidation.cc.

References gather_cfg::cout, boostedElectronIsolation_cff::deltaR, MillePedeFileConverter_cfg::e, reco::CaloJet::emEnergyInEB(), reco::CaloJet::emEnergyInEE(), reco::CaloJet::emEnergyInHF(), reco::LeafCandidate::energy(), PVValHelper::eta, reco::LeafCandidate::eta(), edm::EventID::event(), edm::Event::getByLabel(), reco::CaloJet::hadEnergyInHB(), reco::CaloJet::hadEnergyInHE(), reco::CaloJet::hadEnergyInHF(), reco::CaloJet::hadEnergyInHO(), edm::EventBase::id(), impactParameterTagInfos_cfi::jetTracks, ResonanceBuilder::mass, ECF_cff::Njets, nTracks(), EnergyCorrector::pt, reco::LeafCandidate::pt(), HIPixelMedianVertex_cfi::PtMin, edm::EventID::run(), reco::JetTracksAssociation::tracksNumber(), and reco::JetTracksAssociation::tracksP4().

82 {
83  math::XYZTLorentzVector p4jet[2];
84  int jetInd,jetCounter,nTracks;
85  double dRmin,dR,e,eta,emEB,emEE,emHF,hadHB,hadHE,hadHO,hadHF,pt,phi,pthat,chf;
88  Handle<double> genEventScale;
90  CaloJetCollection::const_iterator i_caljet;
91  GenJetCollection::const_iterator i_genjet;
92  evt.getByLabel(calAlgo,caljets);
93  evt.getByLabel(jetTracksAssociator,jetTracks);
94  jetInd = 0;
95  jetCounter = 0;
96  if (caljets->empty())
97  cout<<"WARNING: NO calo jets in event "<<evt.id().event()<<", Run "<<evt.id().run()<<" !!!!"<<endl;
98  for(i_caljet = caljets->begin(); i_caljet != caljets->end() && jetInd<Njets; ++i_caljet)
99  {
100  e = i_caljet->energy();
101  pt = i_caljet->pt();
102  phi = i_caljet->phi();
103  eta = i_caljet->eta();
104  emEB = i_caljet->emEnergyInEB();
105  emEE = i_caljet->emEnergyInEE();
106  emHF = i_caljet->emEnergyInHF();
107  hadHB = i_caljet->hadEnergyInHB();
108  hadHE = i_caljet->hadEnergyInHE();
109  hadHO = i_caljet->hadEnergyInHO();
110  hadHF = i_caljet->hadEnergyInHF();
111  nTracks = JetTracksAssociation::tracksNumber(*jetTracks,*i_caljet);
112  chf = (JetTracksAssociation::tracksP4(*jetTracks,*i_caljet)).pt()/pt;
113  if (jetInd<2)
114  p4jet[jetInd] = i_caljet->p4();
115  if (pt>PtMin)
116  {
117  FillHist1D("ptCalo",pt);
118  FillHist1D("etaCalo",eta);
119  FillHist1D("phiCalo",phi);
120  FillHist1D("emEnergyFraction",i_caljet->emEnergyFraction());
121  FillHist1D("nTracks",nTracks);
122  FillHist1D("chargeFraction",chf);
123  FillHist1D("emEnergyInEB",emEB);
124  FillHist1D("emEnergyInEE",emEE);
125  FillHist1D("emEnergyInHF",emHF);
126  FillHist1D("hadEnergyInHB",hadHB);
127  FillHist1D("hadEnergyInHE",hadHE);
128  FillHist1D("hadEnergyInHF",hadHF);
129  FillHist1D("hadEnergyInHO",hadHO);
130  FillHistProfile("EBfractionVsEta",eta,emEB/e);
131  FillHistProfile("EEfractionVsEta",eta,emEE/e);
132  FillHistProfile("HBfractionVsEta",eta,hadHB/e);
133  FillHistProfile("HOfractionVsEta",eta,hadHO/e);
134  FillHistProfile("HEfractionVsEta",eta,hadHE/e);
135  FillHistProfile("HFfractionVsEta",eta,(hadHF+emHF)/e);
136  FillHistProfile("CaloEnergyVsEta",eta,e);
137  FillHistProfile("emEnergyVsEta",eta,emEB+emEE+emHF);
138  FillHistProfile("hadEnergyVsEta",eta,hadHB+hadHO+hadHE+hadHF);
139  jetCounter++;
140  }
141  jetInd++;
142  }
143  FillHist1D("CaloJetMulti",jetCounter);
144  if (jetInd>1)
145  FillHist1D("m2jCalo",(p4jet[0]+p4jet[1]).mass());
146  if (MCarlo)
147  {
148  evt.getByLabel(genAlgo,genjets);
149  evt.getByLabel("genEventScale",genEventScale);
150  pthat = *genEventScale;
151  FillHist1D("ptHat",pthat);
152  CaloJet MatchedJet;
153  jetInd = 0;
154  if (genjets->empty())
155  cout<<"WARNING: NO gen jets in event "<<evt.id().event()<<", Run "<<evt.id().run()<<" !!!!"<<endl;
156  for(i_genjet = genjets->begin(); i_genjet != genjets->end() && jetInd<Njets; ++i_genjet)
157  {
158  if (jetInd<2)
159  p4jet[jetInd] = i_genjet->p4();
160  FillHist1D("ptGen",i_genjet->pt());
161  FillHist1D("etaGen",i_genjet->eta());
162  FillHist1D("phiGen",i_genjet->phi());
163  FillHistProfile("GenEnergyVsEta",i_genjet->eta(),i_genjet->energy());
164  dRmin=1000.0;
165  for(i_caljet = caljets->begin(); i_caljet != caljets->end(); ++i_caljet)
166  {
167  dR = deltaR(i_caljet->eta(),i_caljet->phi(),i_genjet->eta(),i_genjet->phi());
168  if (dR<dRmin)
169  {
170  dRmin = dR;
171  MatchedJet = *i_caljet;
172  }
173  }
174  FillHist1D("dR",dRmin);
175  e = MatchedJet.energy();
176  pt = MatchedJet.pt();
177  eta = MatchedJet.eta();
178  emEB = MatchedJet.emEnergyInEB();
179  emEE = MatchedJet.emEnergyInEE();
180  emHF = MatchedJet.emEnergyInHF();
181  hadHB = MatchedJet.hadEnergyInHB();
182  hadHE = MatchedJet.hadEnergyInHE();
183  hadHO = MatchedJet.hadEnergyInHO();
184  hadHF = MatchedJet.hadEnergyInHF();
185  if (dRmin<dRmatch && pt>PtMin)
186  {
187  FillHistProfile("CaloErespVsEta",eta,e/i_genjet->energy());
188  FillHistProfile("emErespVsEta",eta,(emEB+emEE+emHF)/i_genjet->energy());
189  FillHistProfile("hadErespVsEta",eta,(hadHB+hadHO+hadHE+hadHF)/i_genjet->energy());
190  if (fabs(i_genjet->eta())<1.)
191  FillHistProfile("respVsPtBarrel",i_genjet->pt(),pt/i_genjet->pt());
192  }
193  jetInd++;
194  }
195  FillHist1D("GenJetMulti",jetInd);
196  if (jetInd>1)
197  FillHist1D("m2jGen",(p4jet[0]+p4jet[1]).mass());
198  }
199 }
float hadEnergyInHE() const
Definition: CaloJet.h:108
float emEnergyInEE() const
Definition: CaloJet.h:114
const unsigned int nTracks(const reco::Vertex &sv)
double eta() const final
momentum pseudorapidity
Jets made from CaloTowers.
Definition: CaloJet.h:29
float emEnergyInHF() const
Definition: CaloJet.h:116
double pt() const final
transverse momentum
void FillHist1D(const TString &histName, const Double_t &x)
void FillHistProfile(const TString &histName, const Double_t &x, const Double_t &y)
float hadEnergyInHO() const
Definition: CaloJet.h:106
XYZTLorentzVectorD XYZTLorentzVector
Lorentz vector with cylindrical internal representation using pseudorapidity.
Definition: LorentzVector.h:29
float emEnergyInEB() const
Definition: CaloJet.h:112
double energy() const final
energy
std::string jetTracksAssociator
Definition: JetValidation.h:41
LorentzVector tracksP4(const Container &, const reco::JetBaseRef)
Get LorentzVector as sum of all tracks associated with jet.
std::string calAlgo
Definition: JetValidation.h:40
std::string genAlgo
Definition: JetValidation.h:39
float hadEnergyInHB() const
Definition: CaloJet.h:104
int tracksNumber(const Container &, const reco::JetBaseRef)
Get number of tracks associated with jet.
float hadEnergyInHF() const
Definition: CaloJet.h:110
void JetValidation::beginJob ( void  )
overrideprivatevirtual

Reimplemented from edm::EDAnalyzer.

Definition at line 36 of file JetValidation.cc.

References mix_2012_lumiLevel_15_20_50ns_PoissonOOTPU_cfi::histoFileName, and M_PI.

37 {
38  m_file = new TFile(histoFileName.c_str(),"RECREATE");
39 
40  m_HistNames1D["CaloJetMulti"] = new TH1F("CaloJetMulti","Multiplicity of CaloJets",100,0,100);
41  m_HistNames1D["ptCalo"] = new TH1F("ptCalo","p_{T} of CaloJets",7000,0,7000);
42  m_HistNames1D["etaCalo"] = new TH1F("etaCalo","#eta of CaloJets",100,-5.0,5.0);
43  m_HistNames1D["phiCalo"] = new TH1F("phiCalo","#phi of CaloJets",72,-M_PI, M_PI);
44  m_HistNames1D["m2jCalo"] = new TH1F("m2jCalo","Dijet Mass of leading CaloJets",7000,0,14000);
45  m_HistNames1D["nTracks"] = new TH1F("nTracks","Number of tracks associated with a jet",100,0,100);
46  m_HistNames1D["chargeFraction"] = new TH1F("chargeFraction","Fraction of charged tracks pt",500,0,5);
47  m_HistNames1D["emEnergyFraction"] = new TH1F("emEnergyFraction","Jets EM Fraction",110,0,1.1);
48  m_HistNames1D["emEnergyInEB"] = new TH1F("emEnergyInEB","Jets emEnergyInEB",7000,0,14000);
49  m_HistNames1D["emEnergyInEE"] = new TH1F("emEnergyInEE","Jets emEnergyInEE",7000,0,14000);
50  m_HistNames1D["emEnergyInHF"] = new TH1F("emEnergyInHF","Jets emEnergyInHF",7000,0,14000);
51  m_HistNames1D["hadEnergyInHB"] = new TH1F("hadEnergyInHB","Jets hadEnergyInHB",7000,0,14000);
52  m_HistNames1D["hadEnergyInHE"] = new TH1F("hadEnergyInHE","Jets hadEnergyInHE",7000,0,14000);
53  m_HistNames1D["hadEnergyInHF"] = new TH1F("hadEnergyInHF","Jets hadEnergyInHF",7000,0,14000);
54  m_HistNames1D["hadEnergyInHO"] = new TH1F("hadEnergyInHO","Jets hadEnergyInHO",7000,0,14000);
55  m_HistNamesProfile["EBfractionVsEta"] = new TProfile("EBfractionVsEta","Jets EBfraction vs #eta",100,-5.0,5.0);
56  m_HistNamesProfile["EEfractionVsEta"] = new TProfile("EEfractionVsEta","Jets EEfraction vs #eta",100,-5.0,5.0);
57  m_HistNamesProfile["HBfractionVsEta"] = new TProfile("HBfractionVsEta","Jets HBfraction vs #eta",100,-5.0,5.0);
58  m_HistNamesProfile["HOfractionVsEta"] = new TProfile("HOfractionVsEta","Jets HOfraction vs #eta",100,-5.0,5.0);
59  m_HistNamesProfile["HEfractionVsEta"] = new TProfile("HEfractionVsEta","Jets HEfraction vs #eta",100,-5.0,5.0);
60  m_HistNamesProfile["HFfractionVsEta"] = new TProfile("HFfractionVsEta","Jets HFfraction vs #eta",100,-5.0,5.0);
61  m_HistNamesProfile["CaloEnergyVsEta"] = new TProfile("CaloEnergyVsEta","CaloJets Energy Vs. Eta",100,-5.0,5.0);
62  m_HistNamesProfile["emEnergyVsEta"] = new TProfile("emEnergyVsEta","Jets EM Energy Vs. Eta",100,-5.0,5.0);
63  m_HistNamesProfile["hadEnergyVsEta"] = new TProfile("hadEnergyVsEta","Jets HAD Energy Vs. Eta",100,-5.0,5.0);
64  if (MCarlo)
65  {
66  m_HistNames1D["GenJetMulti"] = new TH1F("GenJetMulti","Multiplicity of GenJets",100,0,100);
67  m_HistNames1D["ptHat"] = new TH1F("ptHat","p_{T}hat",7000,0,7000);
68  m_HistNames1D["ptGen"] = new TH1F("ptGen","p_{T} of GenJets",7000,0,7000);
69  m_HistNames1D["etaGen"] = new TH1F("etaGen","#eta of GenJets",100,-5.0,5.0);
70  m_HistNames1D["phiGen"] = new TH1F("phiGen","#phi of GenJets",72,-M_PI, M_PI);
71  m_HistNames1D["m2jGen"] = new TH1F("m2jGen","Dijet Mass of leading GenJets",7000,0,14000);
72  m_HistNames1D["dR"] = new TH1F("dR","GenJets dR with matched CaloJet",200,0,1);
73  m_HistNamesProfile["GenEnergyVsEta"] = new TProfile("GenEnergyVsEta","GenJets Energy Vs. Eta",100,-5.0,5.0);
74  m_HistNamesProfile["respVsPtBarrel"] = new TProfile("respVsPtBarrel","CaloJet Response of GenJets in Barrel",7000,0,7000);
75  m_HistNamesProfile["CaloErespVsEta"] = new TProfile("CaloErespVsEta","Jets Energy Response Vs. Eta",100,-5.0,5.0);
76  m_HistNamesProfile["emErespVsEta"] = new TProfile("emErespVsEta","Jets EM Energy Response Vs. Eta",100,-5.0,5.0);
77  m_HistNamesProfile["hadErespVsEta"] = new TProfile("hadErespVsEta","Jets HAD Energy Response Vs. Eta",100,-5.0,5.0);
78  }
79 }
std::map< TString, TH1 * > m_HistNames1D
Definition: JetValidation.h:29
std::map< TString, TProfile * > m_HistNamesProfile
Definition: JetValidation.h:31
#define M_PI
std::string histoFileName
Definition: JetValidation.h:38
TFile * m_file
Definition: JetValidation.h:32
void JetValidation::endJob ( void  )
overrideprivatevirtual

Reimplemented from edm::EDAnalyzer.

Definition at line 201 of file JetValidation.cc.

202 {
204  if (m_file !=nullptr)
205  {
206  m_file->cd();
207  for (std::map<TString, TH1*>::iterator hid = m_HistNames1D.begin(); hid != m_HistNames1D.end(); hid++)
208  hid->second->Write();
209  for (std::map<TString, TH2*>::iterator hid = m_HistNames2D.begin(); hid != m_HistNames2D.end(); hid++)
210  hid->second->Write();
211  for (std::map<TString, TProfile*>::iterator hid = m_HistNamesProfile.begin(); hid != m_HistNamesProfile.end(); hid++)
212  hid->second->Write();
213  delete m_file;
214  m_file = nullptr;
215  }
216 }
std::map< TString, TH2 * > m_HistNames2D
Definition: JetValidation.h:30
std::map< TString, TH1 * > m_HistNames1D
Definition: JetValidation.h:29
std::map< TString, TProfile * > m_HistNamesProfile
Definition: JetValidation.h:31
TFile * m_file
Definition: JetValidation.h:32
void JetValidation::FillHist1D ( const TString &  histName,
const Double_t &  x 
)
private

Definition at line 218 of file JetValidation.cc.

References gather_cfg::cout.

219 {
220  std::map<TString, TH1*>::iterator hid=m_HistNames1D.find(histName);
221  if (hid==m_HistNames1D.end())
222  std::cout << "%fillHist -- Could not find histogram with name: " << histName << std::endl;
223  else
224  hid->second->Fill(value);
225 }
std::map< TString, TH1 * > m_HistNames1D
Definition: JetValidation.h:29
Definition: value.py:1
void JetValidation::FillHist2D ( const TString &  histName,
const Double_t &  x,
const Double_t &  y 
)
private

Definition at line 227 of file JetValidation.cc.

References gather_cfg::cout.

228 {
229  std::map<TString, TH2*>::iterator hid=m_HistNames2D.find(histName);
230  if (hid==m_HistNames2D.end())
231  std::cout << "%fillHist -- Could not find histogram with name: " << histName << std::endl;
232  else
233  hid->second->Fill(valuex,valuey);
234 }
std::map< TString, TH2 * > m_HistNames2D
Definition: JetValidation.h:30
void JetValidation::FillHistProfile ( const TString &  histName,
const Double_t &  x,
const Double_t &  y 
)
private

Definition at line 236 of file JetValidation.cc.

References gather_cfg::cout, and DEFINE_FWK_MODULE.

237 {
238  std::map<TString, TProfile*>::iterator hid=m_HistNamesProfile.find(histName);
239  if (hid==m_HistNamesProfile.end())
240  std::cout << "%fillHist -- Could not find histogram with name: " << histName << std::endl;
241  else
242  hid->second->Fill(valuex,valuey);
243 }
std::map< TString, TProfile * > m_HistNamesProfile
Definition: JetValidation.h:31

Member Data Documentation

std::string JetValidation::calAlgo
private

Definition at line 40 of file JetValidation.h.

double JetValidation::dRmatch
private

Definition at line 35 of file JetValidation.h.

std::string JetValidation::genAlgo
private

Definition at line 39 of file JetValidation.h.

std::string JetValidation::histoFileName
private

Definition at line 38 of file JetValidation.h.

std::string JetValidation::jetTracksAssociator
private

Definition at line 41 of file JetValidation.h.

TFile* JetValidation::m_file
private

Definition at line 32 of file JetValidation.h.

std::map<TString, TH1*> JetValidation::m_HistNames1D
private

Definition at line 29 of file JetValidation.h.

std::map<TString, TH2*> JetValidation::m_HistNames2D
private

Definition at line 30 of file JetValidation.h.

std::map<TString, TProfile*> JetValidation::m_HistNamesProfile
private

Definition at line 31 of file JetValidation.h.

bool JetValidation::MCarlo
private

Definition at line 37 of file JetValidation.h.

int JetValidation::Njets
private

Definition at line 36 of file JetValidation.h.

double JetValidation::PtMin
private

Definition at line 34 of file JetValidation.h.