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 | Static Private Member Functions | Private Attributes | Static Private Attributes
JPTJetAnalyzer Class Reference

JPT jet analyzer class definition. More...

#include <JPTJetAnalyzer.h>

Inheritance diagram for JPTJetAnalyzer:
JetAnalyzerBase

Classes

struct  HistogramConfig
 Helper class to hold the configuration for a histogram. More...
 
struct  TrackHistograms
 Helper class for grouping histograms belowing to a set of tracks. More...
 

Public Member Functions

void analyze (const edm::Event &event, const edm::EventSetup &eventSetup, const reco::JPTJet &jptJet, double &pt1, double &pt2, double &pt3, const int numPV)
 Do the analysis. More...
 
void analyze (const edm::Event &event, const edm::EventSetup &eventSetup, const reco::JPTJetCollection &jptJets, const int numPV)
 
void beginJob (DQMStore *dbe)
 Inizialize parameters for histo binning. More...
 
virtual void endJob ()
 Finish up a job. More...
 
 JPTJetAnalyzer (const edm::ParameterSet &config)
 Constructor. More...
 
virtual ~JPTJetAnalyzer ()
 Destructor. More...
 
- Public Member Functions inherited from JetAnalyzerBase
void analyze (const edm::Event &, const edm::EventSetup &, reco::CaloJet &caloJet)
 Get the analysis of the muon properties. More...
 
 JetAnalyzerBase ()
 Constructor. More...
 
virtual ~JetAnalyzerBase ()
 Destructor. More...
 

Private Member Functions

MonitorElementbook2DHistogram (const std::string &name, const std::string &title, const std::string &xAxisTitle, const std::string &yAxisTitle, DQMStore *dqm)
 
MonitorElementbookHistogram (const std::string &name, const std::string &title, const std::string &xAxisTitle, DQMStore *dqm)
 Book histograms and profiles. More...
 
void bookHistograms (DQMStore *dqm)
 Book all histograms. More...
 
MonitorElementbookProfile (const std::string &name, const std::string &title, const std::string &xAxisTitle, const std::string &yAxisTitle, DQMStore *dqm)
 
void bookTrackHistograms (TrackHistograms *histos, const std::string &tag, const std::string &titleTag, MonitorElement *trackDirectionJetDRHisto, MonitorElement *trackImpactPointJetDRHisto, DQMStore *dqm)
 Book the histograms for a track. More...
 
void fillHistogram (MonitorElement *histogram, const double value)
 Fill histogram or profile if it has been booked. More...
 
void fillHistogram (MonitorElement *histogram, const double valueX, const double valueY)
 
void fillSiStripHitSoN (const TrackingRecHit &hit)
 
void fillSiStripSoNForTracks (const reco::TrackRefVector &tracks)
 Fill the SoN hisotgram for hits on tracks. More...
 
void fillTrackHistograms (TrackHistograms &allTracksHistos, TrackHistograms &inCaloInVertexHistos, TrackHistograms &inCaloOutVertexHistos, TrackHistograms &outCaloInVertexHistos, const reco::TrackRefVector &inVertexInCalo, const reco::TrackRefVector &outVertexInCalo, const reco::TrackRefVector &inVertexOutCalo, const reco::Jet &rawJet)
 Fill all track histograms. More...
 
void fillTrackHistograms (TrackHistograms &histos, const reco::TrackRefVector &tracks, const reco::Jet &rawJet)
 
void getConfigForHistogram (const std::string &configName, const edm::ParameterSet &psetContainingConfigPSet, std::ostringstream *pDebugStream=NULL)
 Load the config for a hitogram. More...
 
void getConfigForTrackHistograms (const std::string &tag, const edm::ParameterSet &psetContainingConfigPSet, std::ostringstream *pDebugStream=NULL)
 Load the configs for histograms associated with a set of tracks. More...
 

Static Private Member Functions

static double findPtFractionInCone (const reco::TrackRefVector &inConeTracks, const reco::TrackRefVector &outOfConeTracks)
 Utility function to calculate the fraction of track Pt in cone. More...
 

Private Attributes

TrackHistograms allElectronHistograms_
 
TrackHistograms allMuonHistograms_
 
TrackHistograms allPionHistograms_
 
const double correctedPtMin_
 
DQMStoredqm_
 DQMStore. Used to write out to file. More...
 
std::string dqmStoreFileName_
 DQM store file name. More...
 
const double fHPDMax_
 
std::map< std::string,
HistogramConfig
histogramConfig_
 Histogram configuration (nBins etc) More...
 
const std::string histogramPath_
 Path of directory used to store histograms in DQMStore. More...
 
TrackHistograms inCaloInVertexElectronHistograms_
 
TrackHistograms inCaloInVertexMuonHistograms_
 
TrackHistograms inCaloInVertexPionHistograms_
 
TrackHistograms inCaloOutVertexElectronHistograms_
 
TrackHistograms inCaloOutVertexMuonHistograms_
 
TrackHistograms inCaloOutVertexPionHistograms_
 
MonitorElementInCaloTrackDirectionJetDRHisto_
 
MonitorElementInVertexTrackImpactPointJetDRHisto_
 
MonitorElementJetDeltaEta_
 
MonitorElementJetDeltaPhi_
 
MonitorElementJetE_
 
MonitorElementJetEt_
 
MonitorElementJetEta_
 
std::auto_ptr
< reco::helper::JetIDHelper
jetID_
 Helper object to calculate jet ID parameters. More...
 
MonitorElementJetP_
 
MonitorElementJetPhi_
 
MonitorElementJetPhiVsEta_
 
MonitorElementJetPt1_
 
MonitorElementJetPt2_
 
MonitorElementJetPt3_
 
MonitorElementJetPt_
 
MonitorElementJetPx_
 
MonitorElementJetPy_
 
MonitorElementJetPz_
 
const int n90HitsMin_
 Jet ID cuts. More...
 
MonitorElementNTracksPerJetHisto_
 
MonitorElementNTracksPerJetVsJetEtaHisto_
 
MonitorElementNTracksPerJetVsJetEtHisto_
 
TrackHistograms outCaloInVertexElectronHistograms_
 
TrackHistograms outCaloInVertexMuonHistograms_
 
TrackHistograms outCaloInVertexPionHistograms_
 
MonitorElementOutCaloTrackDirectionJetDRHisto_
 
MonitorElementOutVertexTrackImpactPointJetDRHisto_
 
const double resEMFMin_
 
std::auto_ptr
< jptJetAnalysis::StripSignalOverNoiseCalculator
sOverNCalculator_
 Helper object to calculate strip SoN for tracks. More...
 
std::auto_ptr
< jptJetAnalysis::TrackPropagatorToCalo
trackPropagator_
 Helper object to propagate tracks to the calo surface. More...
 
const bool verbose_
 Create verbose debug messages. More...
 
const bool writeDQMStore_
 Write DQM store to a file? More...
 

Static Private Attributes

static const char * messageLoggerCatregory = "JetPlusTrackDQM"
 String constant for message logger category. More...
 

Detailed Description

JPT jet analyzer class definition.

DQM monitoring source for JPT Jets

Date:
2012/09/24 09:39:53
Revision:
1.14
Author
N. Cripps - Imperial

Definition at line 47 of file JPTJetAnalyzer.h.

Constructor & Destructor Documentation

JPTJetAnalyzer::JPTJetAnalyzer ( const edm::ParameterSet config)

Constructor.

Definition at line 79 of file JPTJetAnalyzer.cc.

References dqmStoreFileName_, getConfigForHistogram(), getConfigForTrackHistograms(), edm::ParameterSet::getUntrackedParameter(), histogramPath_, LogTrace, messageLoggerCatregory, NULL, verbose_, and writeDQMStore_.

80  : histogramPath_(config.getParameter<std::string>("HistogramPath")),
81  verbose_(config.getUntrackedParameter<bool>("PrintDebugMessages",false)),
82  writeDQMStore_(config.getUntrackedParameter<bool>("WriteDQMStore")),
84  n90HitsMin_(config.getParameter<int>("n90HitsMin")),
85  fHPDMax_(config.getParameter<double>("fHPDMax")),
86  resEMFMin_(config.getParameter<double>("resEMFMin")),
87  correctedPtMin_(config.getParameter<double>("correctedPtThreshold")),
91 {
92  //print config to debug log
93  std::ostringstream debugStream;
94  if (verbose_) {
95  debugStream << "Configuration for JPTJetAnalyzer: " << std::endl
96  << "\tHistogramPath: " << histogramPath_ << std::endl
97  << "\tPrintDebugMessages? " << (verbose_ ? "yes" : "no") << std::endl;
98  }
99  if (writeDQMStore_) {
100  dqmStoreFileName_ = config.getUntrackedParameter<std::string>("DQMStoreFileName");
101  }
102 
103  //don't generate debug mesages if debug is disabled
104  std::ostringstream* pDebugStream = (verbose_ ? &debugStream : NULL);
105 
106  //get histogram configuration
107  getConfigForHistogram("E",config,pDebugStream);
108  getConfigForHistogram("Et",config,pDebugStream);
109  getConfigForHistogram("P",config,pDebugStream);
110  /* getConfigForHistogram("Mass",config,pDebugStream); */
111  getConfigForHistogram("Pt",config,pDebugStream);
112  getConfigForHistogram("Pt1",config,pDebugStream);
113  getConfigForHistogram("Pt2",config,pDebugStream);
114  getConfigForHistogram("Pt3",config,pDebugStream);
115  getConfigForHistogram("Px",config,pDebugStream);
116  getConfigForHistogram("Py",config,pDebugStream);
117  getConfigForHistogram("Pz",config,pDebugStream);
118  getConfigForHistogram("Eta",config,pDebugStream);
119  getConfigForHistogram("Phi",config,pDebugStream);
120  /* getConfigForHistogram("deltaEta",config,pDebugStream);
121  getConfigForHistogram("deltaPhi",config,pDebugStream); */
122  getConfigForHistogram("PhiVsEta",config,pDebugStream);
123  /* getConfigForHistogram("N90Hits",config,pDebugStream);
124  getConfigForHistogram("fHPD",config,pDebugStream);
125  getConfigForHistogram("ResEMF",config,pDebugStream);
126  getConfigForHistogram("fRBX",config,pDebugStream);
127  getConfigForHistogram("TrackSiStripHitStoN",config,pDebugStream); */
128  getConfigForHistogram("InCaloTrackDirectionJetDR",config,pDebugStream);
129  getConfigForHistogram("OutCaloTrackDirectionJetDR",config,pDebugStream);
130  getConfigForHistogram("InVertexTrackImpactPointJetDR",config,pDebugStream);
131  getConfigForHistogram("OutVertexTrackImpactPointJetDR",config,pDebugStream);
132  /* getConfigForHistogram("PtFractionInCone",config,pDebugStream);
133  getConfigForHistogram("PtFractionInConeVsJetRawEt",config,pDebugStream);
134  getConfigForHistogram("PtFractionInConeVsJetEta",config,pDebugStream); */
135  getConfigForHistogram("nTracks",config,pDebugStream);
136  getConfigForHistogram("nTracksVsJetEt",config,pDebugStream);
137  getConfigForHistogram("nTracksVsJetEta",config,pDebugStream);
138  /* getConfigForHistogram("CorrFactor",config,pDebugStream);
139  getConfigForHistogram("CorrFactorVsJetEt",config,pDebugStream);
140  getConfigForHistogram("CorrFactorVsJetEta",config,pDebugStream);
141  getConfigForHistogram("ZSPCorrFactor",config,pDebugStream);
142  getConfigForHistogram("ZSPCorrFactorVsJetEt",config,pDebugStream);
143  getConfigForHistogram("ZSPCorrFactorVsJetEta",config,pDebugStream);
144  getConfigForHistogram("JPTCorrFactor",config,pDebugStream);
145  getConfigForHistogram("JPTCorrFactorVsJetEt",config,pDebugStream);
146  getConfigForHistogram("JPTCorrFactorVsJetEta",config,pDebugStream); */
147  getConfigForTrackHistograms("AllPions",config,pDebugStream);
148  getConfigForTrackHistograms("InCaloInVertexPions",config,pDebugStream);
149  getConfigForTrackHistograms("InCaloOutVertexPions",config,pDebugStream);
150  getConfigForTrackHistograms("OutCaloInVertexPions",config,pDebugStream);
151  getConfigForTrackHistograms("AllMuons",config,pDebugStream);
152  getConfigForTrackHistograms("InCaloInVertexMuons",config,pDebugStream);
153  getConfigForTrackHistograms("InCaloOutVertexMuons",config,pDebugStream);
154  getConfigForTrackHistograms("OutCaloInVertexMuons",config,pDebugStream);
155  getConfigForTrackHistograms("AllElectrons",config,pDebugStream);
156  getConfigForTrackHistograms("InCaloInVertexElectrons",config,pDebugStream);
157  getConfigForTrackHistograms("InCaloOutVertexElectrons",config,pDebugStream);
158  getConfigForTrackHistograms("OutCaloInVertexElectrons",config,pDebugStream);
159 
160  if (verbose_) LogTrace(messageLoggerCatregory) << debugStream.str();
161 }
T getParameter(std::string const &) const
T getUntrackedParameter(std::string const &, T const &) const
std::auto_ptr< jptJetAnalysis::StripSignalOverNoiseCalculator > sOverNCalculator_
Helper object to calculate strip SoN for tracks.
#define NULL
Definition: scimark2.h:8
const bool verbose_
Create verbose debug messages.
std::auto_ptr< reco::helper::JetIDHelper > jetID_
Helper object to calculate jet ID parameters.
static const char * messageLoggerCatregory
String constant for message logger category.
void getConfigForHistogram(const std::string &configName, const edm::ParameterSet &psetContainingConfigPSet, std::ostringstream *pDebugStream=NULL)
Load the config for a hitogram.
std::auto_ptr< jptJetAnalysis::TrackPropagatorToCalo > trackPropagator_
Helper object to propagate tracks to the calo surface.
const double resEMFMin_
#define LogTrace(id)
const double fHPDMax_
const double correctedPtMin_
void getConfigForTrackHistograms(const std::string &tag, const edm::ParameterSet &psetContainingConfigPSet, std::ostringstream *pDebugStream=NULL)
Load the configs for histograms associated with a set of tracks.
std::string dqmStoreFileName_
DQM store file name.
const std::string histogramPath_
Path of directory used to store histograms in DQMStore.
const int n90HitsMin_
Jet ID cuts.
const bool writeDQMStore_
Write DQM store to a file?
JPTJetAnalyzer::~JPTJetAnalyzer ( )
virtual

Destructor.

Definition at line 163 of file JPTJetAnalyzer.cc.

164 {}

Member Function Documentation

void JPTJetAnalyzer::analyze ( const edm::Event event,
const edm::EventSetup eventSetup,
const reco::JPTJet jptJet,
double &  pt1,
double &  pt2,
double &  pt3,
const int  numPV 
)

Do the analysis.

Definition at line 192 of file JPTJetAnalyzer.cc.

References allElectronHistograms_, allMuonHistograms_, allPionHistograms_, reco::JPTJet::chargedMultiplicity(), correctedPtMin_, reco::LeafCandidate::energy(), reco::LeafCandidate::et(), reco::LeafCandidate::eta(), fHPDMax_, fillHistogram(), fillTrackHistograms(), reco::JPTJet::getCaloJetRef(), reco::JPTJet::getElecsInVertexInCalo(), reco::JPTJet::getElecsInVertexOutCalo(), reco::JPTJet::getElecsOutVertexInCalo(), reco::JPTJet::getMuonsInVertexInCalo(), reco::JPTJet::getMuonsInVertexOutCalo(), reco::JPTJet::getMuonsOutVertexInCalo(), reco::JPTJet::getPionsInVertexInCalo(), reco::JPTJet::getPionsInVertexOutCalo(), reco::JPTJet::getPionsOutVertexInCalo(), inCaloInVertexElectronHistograms_, inCaloInVertexMuonHistograms_, inCaloInVertexPionHistograms_, inCaloOutVertexElectronHistograms_, inCaloOutVertexMuonHistograms_, inCaloOutVertexPionHistograms_, JetE_, JetEt_, JetEta_, jetID_, JetP_, JetPhi_, JetPhiVsEta_, JetPt_, JetPx_, JetPy_, JetPz_, messageLoggerCatregory, n90HitsMin_, NTracksPerJetHisto_, NTracksPerJetVsJetEtaHisto_, NTracksPerJetVsJetEtHisto_, outCaloInVertexElectronHistograms_, outCaloInVertexMuonHistograms_, outCaloInVertexPionHistograms_, reco::LeafCandidate::p(), reco::LeafCandidate::phi(), reco::LeafCandidate::pt(), reco::LeafCandidate::px(), reco::LeafCandidate::py(), reco::LeafCandidate::pz(), resEMFMin_, sOverNCalculator_, and trackPropagator_.

Referenced by analyze().

199 {
200  //update the track propagator and strip noise calculator
201  trackPropagator_->update(eventSetup);
202  sOverNCalculator_->update(eventSetup);
203 
204  //make corrected jets
205  /* */
206  // const double factorZSP = jptJet.getZSPCor();
207  const reco::Jet& rawJet = *jptJet.getCaloJetRef();
208  /* */
209  // const double factorZSPJPT = jptJet.energy()/rawJet.energy();
210 
211  //check jet is correctable by JPT
212  if ( fabs(rawJet.eta()) > 2.1) return;
213 
214  //get consitiuents of jet
215  const reco::TrackRefVector& pionsInVertexInCalo = jptJet.getPionsInVertexInCalo();
216  const reco::TrackRefVector& pionsInVertexOutCalo = jptJet.getPionsInVertexOutCalo();
217  const reco::TrackRefVector& pionsOutVertexInCalo = jptJet.getPionsOutVertexInCalo();
218  const reco::TrackRefVector& muonsInVertexInCalo = jptJet.getMuonsInVertexInCalo();
219  const reco::TrackRefVector& muonsInVertexOutCalo = jptJet.getMuonsInVertexOutCalo();
220  const reco::TrackRefVector& muonsOutVertexInCalo = jptJet.getMuonsOutVertexInCalo();
221  const reco::TrackRefVector& electronsInVertexInCalo = jptJet.getElecsInVertexInCalo();
222  const reco::TrackRefVector& electronsInVertexOutCalo = jptJet.getElecsInVertexOutCalo();
223  const reco::TrackRefVector& electronsOutVertexInCalo = jptJet.getElecsOutVertexInCalo();
224 
225  //check pt against highest values
226  const double pt = jptJet.pt();
227  if (pt > pt1) {
228  pt3 = pt2;
229  pt2 = pt1;
230  pt1 = pt;
231  } else if (pt > pt2) {
232  pt3 = pt2;
233  pt2 = pt;
234  } else if (pt > pt3) {
235  pt3 = pt;
236  }
237 
238  //fill histograms
239  try {
240  const reco::CaloJet& rawCaloJet = dynamic_cast<const reco::CaloJet&>(rawJet);
241  jetID_->calculate(event,rawCaloJet);
242  } catch (const std::bad_cast&) {
243  edm::LogError(messageLoggerCatregory) << "Failed to cast raw jet to CaloJet. JPT Jet does not appear to have been built from a CaloJet. "
244  << "Histograms not filled. ";
245  return;
246  }
247  const bool idPassed = ( (jetID_->n90Hits() >= n90HitsMin_) && (jetID_->fHPD() < fHPDMax_) && (jetID_->restrictedEMF() >= resEMFMin_) );
248  /* fillHistogram(JetN90Hits_,jetID_->n90Hits());
249  fillHistogram(JetfHPD_,jetID_->fHPD());
250  fillHistogram(JetResEMF_,jetID_->restrictedEMF());
251  fillHistogram(JetfRBX_,jetID_->fRBX()); */
252  if (idPassed) {
253  // const double deltaEta = jptJet.eta() - rawJet.eta();
254  // const double deltaPhi = jptJet.phi() - rawJet.phi();
255  if (jptJet.pt() > correctedPtMin_) {
256  fillHistogram(JetE_,jptJet.energy());
257  fillHistogram(JetEt_,jptJet.et());
258  fillHistogram(JetP_,jptJet.p());
259  /* fillHistogram(JetMass_,jptJet.mass()); */
260  fillHistogram(JetPt_,jptJet.pt());
261  fillHistogram(JetPx_,jptJet.px());
262  fillHistogram(JetPy_,jptJet.py());
263  fillHistogram(JetPz_,jptJet.pz());
264 
265  fillHistogram(JetEta_,jptJet.eta());
266  fillHistogram(JetPhi_,jptJet.phi());
267  /* fillHistogram(JetDeltaEta_,deltaEta);
268  fillHistogram(JetDeltaPhi_,deltaPhi); */
269  fillHistogram(JetPhiVsEta_,jptJet.phi(),jptJet.eta());
270 
271 
272  const uint16_t totalTracks = jptJet.chargedMultiplicity();
273  fillHistogram(NTracksPerJetHisto_,totalTracks);
274  fillHistogram(NTracksPerJetVsJetEtHisto_,rawJet.et(),totalTracks);
275  fillHistogram(NTracksPerJetVsJetEtaHisto_,rawJet.eta(),totalTracks);
276  /* fillHistogram(CorrFactorHisto_,factorZSPJPT);
277  fillHistogram(CorrFactorVsJetEtHisto_,rawJet.et(),factorZSPJPT);
278  fillHistogram(CorrFactorVsJetEtaHisto_,rawJet.eta(),factorZSPJPT);
279  fillHistogram(ZSPCorrFactorHisto_,factorZSP);
280  fillHistogram(ZSPCorrFactorVsJetEtHisto_,rawJet.et(),factorZSP);
281  fillHistogram(ZSPCorrFactorVsJetEtaHisto_,rawJet.eta(),factorZSP); */
282  /* const double factorJPT = factorZSPJPT / factorZSP; */
283  /* fillHistogram(JPTCorrFactorHisto_,factorJPT);
284  fillHistogram(JPTCorrFactorVsJetEtHisto_,rawJet.et(),factorJPT);
285  fillHistogram(JPTCorrFactorVsJetEtaHisto_,rawJet.eta(),factorJPT); */
286  // const double ptFractionInCone = findPtFractionInCone(pionsInVertexInCalo,pionsInVertexOutCalo);
287  /* fillHistogram(PtFractionInConeHisto_,ptFractionInCone);
288  fillHistogram(PtFractionInConeVsJetRawEtHisto_,rawJet.et(),ptFractionInCone);
289  fillHistogram(PtFractionInConeVsJetEtaHisto_,rawJet.eta(),ptFractionInCone); */
290  //fill track level histograms
292  pionsInVertexInCalo,pionsOutVertexInCalo,pionsInVertexOutCalo,rawJet);
294  muonsInVertexInCalo,muonsOutVertexInCalo,muonsInVertexOutCalo,rawJet);
296  electronsInVertexInCalo,electronsOutVertexInCalo,electronsInVertexOutCalo,rawJet);
297  }
298  }
299 }
MonitorElement * JetPt_
MonitorElement * NTracksPerJetHisto_
virtual double p() const
magnitude of momentum vector
const reco::TrackRefVector & getElecsOutVertexInCalo() const
Definition: JPTJet.h:124
Jets made from CaloTowers.
Definition: CaloJet.h:30
const reco::TrackRefVector & getPionsInVertexOutCalo() const
Definition: JPTJet.h:117
MonitorElement * NTracksPerJetVsJetEtHisto_
virtual double et() const
transverse energy
void fillTrackHistograms(TrackHistograms &allTracksHistos, TrackHistograms &inCaloInVertexHistos, TrackHistograms &inCaloOutVertexHistos, TrackHistograms &outCaloInVertexHistos, const reco::TrackRefVector &inVertexInCalo, const reco::TrackRefVector &outVertexInCalo, const reco::TrackRefVector &inVertexOutCalo, const reco::Jet &rawJet)
Fill all track histograms.
TrackHistograms inCaloInVertexPionHistograms_
Base class for all types of Jets.
Definition: Jet.h:21
TrackHistograms allElectronHistograms_
std::auto_ptr< jptJetAnalysis::StripSignalOverNoiseCalculator > sOverNCalculator_
Helper object to calculate strip SoN for tracks.
MonitorElement * JetEta_
TrackHistograms inCaloOutVertexMuonHistograms_
TrackHistograms outCaloInVertexMuonHistograms_
std::auto_ptr< reco::helper::JetIDHelper > jetID_
Helper object to calculate jet ID parameters.
const edm::RefToBase< reco::Jet > & getCaloJetRef() const
Definition: JPTJet.h:130
TrackHistograms inCaloInVertexMuonHistograms_
virtual double eta() const
momentum pseudorapidity
TrackHistograms inCaloOutVertexElectronHistograms_
static const char * messageLoggerCatregory
String constant for message logger category.
virtual double energy() const
energy
MonitorElement * JetPz_
void fillHistogram(MonitorElement *histogram, const double value)
Fill histogram or profile if it has been booked.
std::auto_ptr< jptJetAnalysis::TrackPropagatorToCalo > trackPropagator_
Helper object to propagate tracks to the calo surface.
MonitorElement * JetPhi_
const double resEMFMin_
MonitorElement * JetP_
MonitorElement * JetEt_
TrackHistograms outCaloInVertexPionHistograms_
MonitorElement * JetE_
MonitorElement * JetPhiVsEta_
TrackHistograms outCaloInVertexElectronHistograms_
const double fHPDMax_
const reco::TrackRefVector & getPionsInVertexInCalo() const
Tracks.
Definition: JPTJet.h:116
virtual double px() const
x coordinate of momentum vector
virtual double pt() const
transverse momentum
TrackHistograms allMuonHistograms_
const double correctedPtMin_
TrackHistograms inCaloInVertexElectronHistograms_
const reco::TrackRefVector & getElecsInVertexOutCalo() const
Definition: JPTJet.h:123
MonitorElement * NTracksPerJetVsJetEtaHisto_
virtual double pz() const
z coordinate of momentum vector
const reco::TrackRefVector & getMuonsInVertexOutCalo() const
Definition: JPTJet.h:120
TrackHistograms allPionHistograms_
const reco::TrackRefVector & getPionsOutVertexInCalo() const
Definition: JPTJet.h:118
int chargedMultiplicity() const
chargedMultiplicity
Definition: JPTJet.h:108
MonitorElement * JetPy_
TrackHistograms inCaloOutVertexPionHistograms_
const reco::TrackRefVector & getElecsInVertexInCalo() const
Definition: JPTJet.h:122
MonitorElement * JetPx_
const int n90HitsMin_
Jet ID cuts.
virtual double phi() const
momentum azimuthal angle
const reco::TrackRefVector & getMuonsInVertexInCalo() const
Definition: JPTJet.h:119
virtual double py() const
y coordinate of momentum vector
const reco::TrackRefVector & getMuonsOutVertexInCalo() const
Definition: JPTJet.h:121
void JPTJetAnalyzer::analyze ( const edm::Event event,
const edm::EventSetup eventSetup,
const reco::JPTJetCollection jptJets,
const int  numPV 
)

Definition at line 175 of file JPTJetAnalyzer.cc.

References analyze(), fillHistogram(), JetPt1_, JetPt2_, and JetPt3_.

179 {
180  double pt1 = 0;
181  double pt2 = 0;
182  double pt3 = 0;
183 
184  for (reco::JPTJetCollection::const_iterator iJet = jptJets.begin(); iJet != jptJets.end(); ++iJet) {
185  analyze(event, eventSetup, *iJet, pt1, pt2, pt3, numPV);
186  }
187  if (pt1) fillHistogram(JetPt1_,pt1);
188  if (pt2) fillHistogram(JetPt2_,pt2);
189  if (pt3) fillHistogram(JetPt3_,pt3);
190 }
MonitorElement * JetPt1_
void analyze(const edm::Event &event, const edm::EventSetup &eventSetup, const reco::JPTJet &jptJet, double &pt1, double &pt2, double &pt3, const int numPV)
Do the analysis.
void fillHistogram(MonitorElement *histogram, const double value)
Fill histogram or profile if it has been booked.
MonitorElement * JetPt3_
MonitorElement * JetPt2_
void JPTJetAnalyzer::beginJob ( DQMStore dbe)
virtual

Inizialize parameters for histo binning.

Implements JetAnalyzerBase.

Definition at line 166 of file JPTJetAnalyzer.cc.

References bookHistograms(), dqm_, histogramPath_, and DQMStore::setCurrentFolder().

167 {
168  dqm_ = dqmStore;
169  //book histograms
170  dqmStore->setCurrentFolder(histogramPath_);
171  bookHistograms(dqmStore);
172 }
DQMStore * dqm_
DQMStore. Used to write out to file.
void bookHistograms(DQMStore *dqm)
Book all histograms.
const std::string histogramPath_
Path of directory used to store histograms in DQMStore.
void setCurrentFolder(const std::string &fullpath)
Definition: DQMStore.cc:429
MonitorElement * JPTJetAnalyzer::book2DHistogram ( const std::string &  name,
const std::string &  title,
const std::string &  xAxisTitle,
const std::string &  yAxisTitle,
DQMStore dqm 
)
private

Definition at line 380 of file JPTJetAnalyzer.cc.

References DQMStore::book2D(), JPTJetAnalyzer::HistogramConfig::enabled, interpolateCardsSimple::histo, histogramConfig_, JPTJetAnalyzer::HistogramConfig::max, JPTJetAnalyzer::HistogramConfig::maxY, messageLoggerCatregory, JPTJetAnalyzer::HistogramConfig::min, JPTJetAnalyzer::HistogramConfig::minY, JPTJetAnalyzer::HistogramConfig::nBins, JPTJetAnalyzer::HistogramConfig::nBinsY, NULL, and MonitorElement::setAxisTitle().

Referenced by bookHistograms().

382 {
383  std::map<std::string,HistogramConfig>::const_iterator configIterator = histogramConfig_.find(name);
384  if (configIterator == histogramConfig_.end()) {
385  edm::LogWarning(messageLoggerCatregory) << "Trying to book histogram with name " << name << " when no config was not retrieved from ParameterSet";
386  return NULL;
387  }
388  const HistogramConfig& histoConfig = (*configIterator).second;
389  if (histoConfig.enabled) {
390  MonitorElement* histo = dqm->book2D(name,title,histoConfig.nBins,histoConfig.min,histoConfig.max,histoConfig.nBinsY,histoConfig.minY,histoConfig.maxY);
391  histo->setAxisTitle(xAxisTitle,1);
392  histo->setAxisTitle(yAxisTitle,2);
393  return histo;
394  } else {
395  return NULL;
396  }
397 }
#define NULL
Definition: scimark2.h:8
static const char * messageLoggerCatregory
String constant for message logger category.
std::map< std::string, HistogramConfig > histogramConfig_
Histogram configuration (nBins etc)
MonitorElement * book2D(const char *name, const char *title, int nchX, double lowX, double highX, int nchY, double lowY, double highY)
Book 2D histogram.
Definition: DQMStore.cc:845
void setAxisTitle(const std::string &title, int axis=1)
set x-, y- or z-axis title (axis=1, 2, 3 respectively)
MonitorElement * JPTJetAnalyzer::bookHistogram ( const std::string &  name,
const std::string &  title,
const std::string &  xAxisTitle,
DQMStore dqm 
)
private

Book histograms and profiles.

Definition at line 363 of file JPTJetAnalyzer.cc.

References DQMStore::book1D(), JPTJetAnalyzer::HistogramConfig::enabled, interpolateCardsSimple::histo, histogramConfig_, JPTJetAnalyzer::HistogramConfig::max, messageLoggerCatregory, JPTJetAnalyzer::HistogramConfig::min, JPTJetAnalyzer::HistogramConfig::nBins, NULL, and MonitorElement::setAxisTitle().

Referenced by bookHistograms(), and bookTrackHistograms().

364 {
365  std::map<std::string,HistogramConfig>::const_iterator configIterator = histogramConfig_.find(name);
366  if (configIterator == histogramConfig_.end()) {
367  edm::LogWarning(messageLoggerCatregory) << "Trying to book histogram with name " << name << " when no config was not retrieved from ParameterSet";
368  return NULL;
369  }
370  const HistogramConfig& histoConfig = (*configIterator).second;
371  if (histoConfig.enabled) {
372  MonitorElement* histo = dqm->book1D(name,title,histoConfig.nBins,histoConfig.min,histoConfig.max);
373  histo->setAxisTitle(xAxisTitle,1);
374  return histo;
375  } else {
376  return NULL;
377  }
378 }
MonitorElement * book1D(const char *name, const char *title, int nchX, double lowX, double highX)
Book 1D histogram.
Definition: DQMStore.cc:717
#define NULL
Definition: scimark2.h:8
static const char * messageLoggerCatregory
String constant for message logger category.
std::map< std::string, HistogramConfig > histogramConfig_
Histogram configuration (nBins etc)
void setAxisTitle(const std::string &title, int axis=1)
set x-, y- or z-axis title (axis=1, 2, 3 respectively)
void JPTJetAnalyzer::bookHistograms ( DQMStore dqm)
private

Book all histograms.

Definition at line 419 of file JPTJetAnalyzer.cc.

References allElectronHistograms_, allMuonHistograms_, allPionHistograms_, book2DHistogram(), bookHistogram(), bookProfile(), bookTrackHistograms(), inCaloInVertexElectronHistograms_, inCaloInVertexMuonHistograms_, inCaloInVertexPionHistograms_, inCaloOutVertexElectronHistograms_, inCaloOutVertexMuonHistograms_, inCaloOutVertexPionHistograms_, InCaloTrackDirectionJetDRHisto_, InVertexTrackImpactPointJetDRHisto_, JetE_, JetEt_, JetEta_, JetP_, JetPhi_, JetPhiVsEta_, JetPt1_, JetPt2_, JetPt3_, JetPt_, JetPx_, JetPy_, JetPz_, NTracksPerJetHisto_, NTracksPerJetVsJetEtaHisto_, NTracksPerJetVsJetEtHisto_, NULL, outCaloInVertexElectronHistograms_, outCaloInVertexMuonHistograms_, outCaloInVertexPionHistograms_, OutCaloTrackDirectionJetDRHisto_, and OutVertexTrackImpactPointJetDRHisto_.

Referenced by beginJob().

420 {
421  JetE_ = bookHistogram("E","Corrected Jet Energy","E /GeV",dqm);
422  JetEt_ = bookHistogram("Et","Corrected Jet E_{T}","E_{T} /GeV",dqm);
423  JetP_ = bookHistogram("P","Corrected Jet Momentum","p /GeV/c",dqm);
424  /* JetMass_ = bookHistogram("Mass","Jet mass","Mass /GeV/c^{2}",dqm); */
425  JetPt_ = bookHistogram("Pt","Jet p_{T}","p_{T} /GeV/c",dqm);
426  JetPt1_ = bookHistogram("Pt1","1st Jet p_{T}","p_{T} /GeV/c",dqm);
427  JetPt2_ = bookHistogram("Pt2","2nd Jet p_{T}","p_{T} /GeV/c",dqm);
428  JetPt3_ = bookHistogram("Pt3","3rd Jet p_{T}","p_{T} /GeV/c",dqm);
429  JetPx_ = bookHistogram("Px","Jet p_{X}","p_{X} /GeV/c",dqm);
430  JetPy_ = bookHistogram("Py","Jet p_{Y}","p_{Y} /GeV/c",dqm);
431  JetPz_ = bookHistogram("Pz","Jet p_{Z}","p_{Z} /GeV/c",dqm);
432  JetEta_ = bookHistogram("Eta","Jet #eta","#eta",dqm);
433  JetPhi_ = bookHistogram("Phi","Jet #phi","#phi",dqm);
434  /* JetDeltaEta_ = bookHistogram("deltaEta","Change in #eta","#Delta #eta",dqm);
435  JetDeltaPhi_ = bookHistogram("deltaPhi","Change in #phi","#Delta #phi",dqm); */
436  JetPhiVsEta_ = book2DHistogram("PhiVsEta","Corrected jet #phi vs #eta","jet #phi","jet #eta",dqm);
437  /* JetN90Hits_ = bookHistogram("N90Hits","Jet N90Hits","N90 Hits",dqm);
438  JetfHPD_ = bookHistogram("fHPD","Jet fHPD","fHPD",dqm);
439  JetResEMF_ = bookHistogram("ResEMF","Jet restricted EM fraction","restricted EMF",dqm);
440  JetfRBX_ = bookHistogram("fRBX","Jet fRBX","fRBX",dqm);
441 
442 
443  TrackSiStripHitStoNHisto_ = bookHistogram("TrackSiStripHitStoN","Signal to noise of track SiStrip hits","S/N",dqm); */
444  InCaloTrackDirectionJetDRHisto_ = bookHistogram("InCaloTrackDirectionJetDR",
445  "#Delta R between track direrction at vertex and jet axis (track in cone at calo)","#Delta R",dqm);
446  OutCaloTrackDirectionJetDRHisto_ = bookHistogram("OutCaloTrackDirectionJetDR",
447  "#Delta R between track direrction at vertex and jet axis (track out of cone at calo)","#Delta R",dqm);
448  InVertexTrackImpactPointJetDRHisto_ = bookHistogram("InVertexTrackImpactPointJetDR",
449  "#Delta R between track impact point on calo and jet axis (track in cone at vertex)","#Delta R",dqm);
450  OutVertexTrackImpactPointJetDRHisto_ = bookHistogram("OutVertexTrackImpactPointJetDR",
451  "#Delta R between track impact point on calo and jet axis (track out of cone at vertex)","#Delta R",dqm);
452 
453  NTracksPerJetHisto_ = bookHistogram("nTracks","Number of tracks for correction per jet","n tracks",dqm);
454  NTracksPerJetVsJetEtHisto_ = bookProfile("nTracksVsJetEt","Number of tracks for correction per jet vs jet raw E_{T}","Jet raw E_{T} /GeV","n Tracks",dqm);
455  NTracksPerJetVsJetEtaHisto_ = bookProfile("nTracksVsJetEta","Number of tracks for correction per jet vs jet #eta","Jet #eta","n Tracks",dqm);
456 
457  /* PtFractionInConeHisto_ = bookHistogram("PtFractionInCone","#frac{p_{T}^{in-cone}}{p_{T}^{in-cone}+p_{T}^{out-of-cone}}",
458  "#frac{p_{T}^{in-cone}}{p_{T}^{in-cone}+p_{T}^{out-of-cone}}",dqm);
459  PtFractionInConeVsJetRawEtHisto_ = bookProfile("PtFractionInConeVsJetRawEt","#frac{p_{T}^{in-cone}}{p_{T}^{in-cone}+p_{T}^{out-of-cone}} vs jet raw E_{T}",
460  "Jet raw E_{T} / GeV","#frac{p_{T}^{in-cone}}{p_{T}^{in-cone}+p_{T}^{out-of-cone}}",dqm);
461  PtFractionInConeVsJetEtaHisto_ = bookProfile("PtFractionInConeVsJetEta","#frac{p_{T}^{in-cone}}{p_{T}^{in-cone}+p_{T}^{out-of-cone}} vs jet #eta",
462  "Jet #eta","#frac{p_{T}^{in-cone}}{p_{T}^{in-cone}+p_{T}^{out-of-cone}}",dqm);
463 
464  CorrFactorHisto_ = bookHistogram("CorrFactor","Correction factor","Correction factor",dqm);
465  CorrFactorVsJetEtHisto_ = bookProfile("CorrFactorVsJetEt","Correction factor vs jet raw E_{T}","Jet raw E_{T}","#frac{E_{T}^{corr}}{E_{T}^{raw}}",dqm);
466  CorrFactorVsJetEtaHisto_ = bookProfile("CorrFactorVsJetEta","Correction factor vs jet #eta","Jet #eta","#frac{E_{T}^{corr}}{E_{T}^{raw}}",dqm);
467  ZSPCorrFactorHisto_ = bookHistogram("ZSPCorrFactor","Correction factor from ZSP step","Correction factor",dqm);
468  ZSPCorrFactorVsJetEtHisto_ = bookProfile("ZSPCorrFactorVsJetEt","Correction factor from ZSP step vs jet raw E_{T}",
469  "Jet raw E_{T}","#frac{E_{T}^{corr}}{E_{T}^{raw}}",dqm);
470  ZSPCorrFactorVsJetEtaHisto_ = bookProfile("ZSPCorrFactorVsJetEta","Correction factor from ZSP step vs jet #eta",
471  "Jet #eta","#frac{E_{T}^{corr}}{E_{T}^{raw}}",dqm);
472  JPTCorrFactorHisto_ = bookHistogram("JPTCorrFactor","Correction factor from JPT step","Correction factor",dqm);
473  JPTCorrFactorVsJetEtHisto_ = bookProfile("JPTCorrFactorVsJetEt","Correction factor from JPT step vs jet raw E_{T}",
474  "Jet raw E_{T}","#frac{E_{T}^{corr}}{E_{T}^{raw}}",dqm);
475  JPTCorrFactorVsJetEtaHisto_ = bookProfile("JPTCorrFactorVsJetEta","Correction factor from JPT step vs jet #eta",
476  "Jet #eta","#frac{E_{T}^{corr}}{E_{T}^{raw}}",dqm); */
477 
478 
479 
480  bookTrackHistograms(&allPionHistograms_,"AllPions","pion",NULL,NULL,dqm);
481  bookTrackHistograms(&inCaloInVertexPionHistograms_,"InCaloInVertexPions","pions in cone at calo and vertex",
483  bookTrackHistograms(&inCaloOutVertexPionHistograms_,"InCaloOutVertexPions","pions in cone at calo but out at vertex",
485  bookTrackHistograms(&outCaloInVertexPionHistograms_,"OutCaloInVertexPions","pions out of cone at calo but in at vertex",
487 
488  bookTrackHistograms(&allMuonHistograms_,"AllMuons","muon",NULL,NULL,dqm);
489  bookTrackHistograms(&inCaloInVertexMuonHistograms_,"InCaloInVertexMuons","muons in cone at calo and vertex",
491  bookTrackHistograms(&inCaloOutVertexMuonHistograms_,"InCaloOutVertexMuons","muons in cone at calo but out at vertex",
493  bookTrackHistograms(&outCaloInVertexMuonHistograms_,"OutCaloInVertexMuons","muons out of cone at calo but in at vertex",
495 
496  bookTrackHistograms(&allElectronHistograms_,"AllElectrons","electron",NULL,NULL,dqm);
497  bookTrackHistograms(&inCaloInVertexElectronHistograms_,"InCaloInVertexElectrons","electrons in cone at calo and vertex",
499  bookTrackHistograms(&inCaloOutVertexElectronHistograms_,"InCaloOutVertexElectrons","electrons in cone at calo but out at vertex",
501  bookTrackHistograms(&outCaloInVertexElectronHistograms_,"OutCaloInVertexElectrons","electrons out of cone at calo but in at vertex",
503 }
MonitorElement * JetPt_
MonitorElement * NTracksPerJetHisto_
MonitorElement * JetPt1_
MonitorElement * NTracksPerJetVsJetEtHisto_
TrackHistograms inCaloInVertexPionHistograms_
TrackHistograms allElectronHistograms_
MonitorElement * JetEta_
TrackHistograms inCaloOutVertexMuonHistograms_
#define NULL
Definition: scimark2.h:8
TrackHistograms outCaloInVertexMuonHistograms_
MonitorElement * InVertexTrackImpactPointJetDRHisto_
TrackHistograms inCaloInVertexMuonHistograms_
MonitorElement * InCaloTrackDirectionJetDRHisto_
void bookTrackHistograms(TrackHistograms *histos, const std::string &tag, const std::string &titleTag, MonitorElement *trackDirectionJetDRHisto, MonitorElement *trackImpactPointJetDRHisto, DQMStore *dqm)
Book the histograms for a track.
TrackHistograms inCaloOutVertexElectronHistograms_
MonitorElement * bookProfile(const std::string &name, const std::string &title, const std::string &xAxisTitle, const std::string &yAxisTitle, DQMStore *dqm)
MonitorElement * book2DHistogram(const std::string &name, const std::string &title, const std::string &xAxisTitle, const std::string &yAxisTitle, DQMStore *dqm)
MonitorElement * JetPz_
MonitorElement * OutCaloTrackDirectionJetDRHisto_
MonitorElement * JetPhi_
MonitorElement * JetP_
MonitorElement * JetEt_
TrackHistograms outCaloInVertexPionHistograms_
MonitorElement * JetE_
MonitorElement * JetPt3_
MonitorElement * JetPhiVsEta_
TrackHistograms outCaloInVertexElectronHistograms_
TrackHistograms allMuonHistograms_
TrackHistograms inCaloInVertexElectronHistograms_
MonitorElement * NTracksPerJetVsJetEtaHisto_
TrackHistograms allPionHistograms_
MonitorElement * JetPy_
TrackHistograms inCaloOutVertexPionHistograms_
MonitorElement * bookHistogram(const std::string &name, const std::string &title, const std::string &xAxisTitle, DQMStore *dqm)
Book histograms and profiles.
MonitorElement * JetPt2_
MonitorElement * JetPx_
MonitorElement * OutVertexTrackImpactPointJetDRHisto_
MonitorElement * JPTJetAnalyzer::bookProfile ( const std::string &  name,
const std::string &  title,
const std::string &  xAxisTitle,
const std::string &  yAxisTitle,
DQMStore dqm 
)
private

Definition at line 399 of file JPTJetAnalyzer.cc.

References DQMStore::bookProfile(), JPTJetAnalyzer::HistogramConfig::enabled, interpolateCardsSimple::histo, histogramConfig_, JPTJetAnalyzer::HistogramConfig::max, messageLoggerCatregory, JPTJetAnalyzer::HistogramConfig::min, JPTJetAnalyzer::HistogramConfig::nBins, NULL, and MonitorElement::setAxisTitle().

Referenced by bookHistograms(), and bookTrackHistograms().

401 {
402  std::map<std::string,HistogramConfig>::const_iterator configIterator = histogramConfig_.find(name);
403  if (configIterator == histogramConfig_.end()) {
404  edm::LogWarning(messageLoggerCatregory) << "Trying to book histogram with name " << name << " when no config was not retrieved from ParameterSet";
405  return NULL;
406  }
407  const HistogramConfig& histoConfig = (*configIterator).second;
408  if (histoConfig.enabled) {
409  TProfile* underlyingRootObject = new TProfile(name.c_str(),title.c_str(),histoConfig.nBins,histoConfig.min,histoConfig.max);
410  MonitorElement* histo = dqm->bookProfile(name,underlyingRootObject);
411  histo->setAxisTitle(xAxisTitle,1);
412  histo->setAxisTitle(yAxisTitle,2);
413  return histo;
414  } else {
415  return NULL;
416  }
417 }
#define NULL
Definition: scimark2.h:8
static const char * messageLoggerCatregory
String constant for message logger category.
MonitorElement * bookProfile(const char *name, const char *title, int nchX, double lowX, double highX, int nchY, double lowY, double highY, const char *option="s")
Definition: DQMStore.cc:1031
std::map< std::string, HistogramConfig > histogramConfig_
Histogram configuration (nBins etc)
void setAxisTitle(const std::string &title, int axis=1)
set x-, y- or z-axis title (axis=1, 2, 3 respectively)
void JPTJetAnalyzer::bookTrackHistograms ( TrackHistograms histos,
const std::string &  tag,
const std::string &  titleTag,
MonitorElement trackDirectionJetDRHisto,
MonitorElement trackImpactPointJetDRHisto,
DQMStore dqm 
)
private

Book the histograms for a track.

Definition at line 505 of file JPTJetAnalyzer.cc.

References bookHistogram(), bookProfile(), JPTJetAnalyzer::TrackHistograms::etaHisto, JPTJetAnalyzer::TrackHistograms::nTracksHisto, JPTJetAnalyzer::TrackHistograms::phiHisto, JPTJetAnalyzer::TrackHistograms::ptHisto, JPTJetAnalyzer::TrackHistograms::ptVsEtaHisto, JPTJetAnalyzer::TrackHistograms::trackDirectionJetDRHisto, and JPTJetAnalyzer::TrackHistograms::trackImpactPointJetDRHisto.

Referenced by bookHistograms().

507 {
508  histos->nTracksHisto = bookHistogram("n"+tag+"TracksPerJet","Number of "+titleTag+" tracks per jet","n Tracks",dqm);
509  histos->ptHisto = bookHistogram(tag+"TrackPt",titleTag+" p_{T}","p_{T} /GeV/c",dqm);
510  histos->phiHisto = bookHistogram(tag+"TrackPhi",titleTag+" track #phi","#phi",dqm);
511  histos->etaHisto = bookHistogram(tag+"TrackEta",titleTag+" track #eta","#eta",dqm);
512  /* histos->nHitsHisto = bookHistogram(tag+"TrackNHits",titleTag+" track N hits","N hits",dqm);
513  histos->nLayersHisto = bookHistogram(tag+"TrackNLayers",titleTag+" track N layers with hits","N layers",dqm); */
514  histos->ptVsEtaHisto = bookProfile(tag+"TrackPtVsEta",titleTag+" track p_{T} vs #eta","#eta","p_{T} /GeV/c",dqm);
515  /* histos->dzHisto = bookHistogram(tag+"TrackDz",titleTag+" track dz","dz /cm",dqm);
516  histos->dxyHisto = bookHistogram(tag+"TrackDxy",titleTag+" track dxy","dxy /cm",dqm); */
517  histos->trackDirectionJetDRHisto = trackDirectionJetDRHisto;
518  histos->trackImpactPointJetDRHisto = trackImpactPointJetDRHisto;
519 }
MonitorElement * bookProfile(const std::string &name, const std::string &title, const std::string &xAxisTitle, const std::string &yAxisTitle, DQMStore *dqm)
MonitorElement * bookHistogram(const std::string &name, const std::string &title, const std::string &xAxisTitle, DQMStore *dqm)
Book histograms and profiles.
void JPTJetAnalyzer::endJob ( void  )
virtual

Finish up a job.

Definition at line 301 of file JPTJetAnalyzer.cc.

References dqm_, dqmStoreFileName_, DQMStore::save(), and writeDQMStore_.

302 {
304 }
DQMStore * dqm_
DQMStore. Used to write out to file.
void save(const std::string &filename, const std::string &path="", const std::string &pattern="", const std::string &rewrite="", SaveReferenceTag ref=SaveWithReference, int minStatus=dqm::qstatus::STATUS_OK, const std::string &fileupdate="RECREATE")
Definition: DQMStore.cc:2113
std::string dqmStoreFileName_
DQM store file name.
const bool writeDQMStore_
Write DQM store to a file?
void JPTJetAnalyzer::fillHistogram ( MonitorElement histogram,
const double  value 
)
inlineprivate

Fill histogram or profile if it has been booked.

Definition at line 192 of file JPTJetAnalyzer.h.

References MonitorElement::Fill().

Referenced by analyze(), and fillTrackHistograms().

193 {
194  if (histogram) histogram->Fill(value);
195 }
void Fill(long long x)
void JPTJetAnalyzer::fillHistogram ( MonitorElement histogram,
const double  valueX,
const double  valueY 
)
inlineprivate

Definition at line 197 of file JPTJetAnalyzer.h.

References MonitorElement::Fill().

198 {
199  if (histogram) histogram->Fill(valueX,valueY);
200 }
void Fill(long long x)
void JPTJetAnalyzer::fillSiStripHitSoN ( const TrackingRecHit hit)
private

Definition at line 581 of file JPTJetAnalyzer.cc.

References TrackingRecHit::geographicalId(), SiStripDetId::TEC, SiStripDetId::TIB, SiStripDetId::TID, SiStripDetId::TOB, and DetId::Tracker.

Referenced by fillSiStripSoNForTracks().

582 {
583  //check it is an SiStrip hit
584  DetId detId(hit.geographicalId());
585  if (!( (detId.det() == DetId::Tracker) &&
586  ( (detId.subdetId() == SiStripDetId::TIB) ||
587  (detId.subdetId() == SiStripDetId::TID) ||
588  (detId.subdetId() == SiStripDetId::TOB) ||
589  (detId.subdetId() == SiStripDetId::TEC)
590  )
591  )) return;
592 
593 
594  // J.Piedra, 2012/09/24
595  //try to determine the type of the hit
596  // const TrackingRecHit* pHit = &hit;
597  // const SiStripRecHit2D* pRecHit2D = dynamic_cast<const SiStripRecHit2D*>(pHit);
598  // const SiStripMatchedRecHit2D* pMatchedRecHit2D = dynamic_cast<const SiStripMatchedRecHit2D*>(pHit);
599  // const ProjectedSiStripRecHit2D* pProjctedRecHit2D = dynamic_cast<const ProjectedSiStripRecHit2D*>(pHit);
600  // const InvalidTrackingRecHit* pInvalidHit = dynamic_cast<const InvalidTrackingRecHit*>(pHit);
601 
602  // //fill signal to noise for appropriate hit
603  // if (pMatchedRecHit2D) {
604  // fillSiStripHitSoNForSingleHit(pMatchedRecHit2D->monoHit());
605  // fillSiStripHitSoNForSingleHit(pMatchedRecHit2D->stereoHit());
606  // } else if (pProjctedRecHit2D) {
607  // fillSiStripHitSoNForSingleHit(pProjctedRecHit2D->originalHit());
608  // } else if (pRecHit2D) {
609  // fillSiStripHitSoNForSingleHit(*pRecHit2D);
610  // } else if (pInvalidHit) {
611  // return;
612  // } else {
613  // edm::LogInfo(messageLoggerCatregory) << "Hit on det ID " << hit.geographicalId().rawId() << " cannot be converted to a strip hit";
614  // }
615 }
Definition: DetId.h:20
DetId geographicalId() const
void JPTJetAnalyzer::fillSiStripSoNForTracks ( const reco::TrackRefVector tracks)
private

Fill the SoN hisotgram for hits on tracks.

Definition at line 570 of file JPTJetAnalyzer.cc.

References edm::RefVector< C, T, F >::begin(), edm::RefVector< C, T, F >::end(), and fillSiStripHitSoN().

Referenced by fillTrackHistograms().

571 {
572  const reco::TrackRefVector::const_iterator tracksEnd = tracks.end();
573  for (reco::TrackRefVector::const_iterator iTrack = tracks.begin(); iTrack != tracksEnd; ++iTrack) {
574  const trackingRecHit_iterator trackRecHitsEnd = (*iTrack)->recHitsEnd();
575  for (trackingRecHit_iterator iHit = (*iTrack)->recHitsBegin(); iHit != trackRecHitsEnd; ++iHit) {
576  fillSiStripHitSoN(**iHit);
577  }
578  }
579 }
const_iterator end() const
Termination of iteration.
Definition: RefVector.h:249
const_iterator begin() const
Initialize an iterator over the RefVector.
Definition: RefVector.h:244
void fillSiStripHitSoN(const TrackingRecHit &hit)
void JPTJetAnalyzer::fillTrackHistograms ( TrackHistograms allTracksHistos,
TrackHistograms inCaloInVertexHistos,
TrackHistograms inCaloOutVertexHistos,
TrackHistograms outCaloInVertexHistos,
const reco::TrackRefVector inVertexInCalo,
const reco::TrackRefVector outVertexInCalo,
const reco::TrackRefVector inVertexOutCalo,
const reco::Jet rawJet 
)
private

Fill all track histograms.

Definition at line 521 of file JPTJetAnalyzer.cc.

References fillHistogram(), fillSiStripSoNForTracks(), JPTJetAnalyzer::TrackHistograms::nTracksHisto, and edm::RefVector< C, T, F >::size().

Referenced by analyze().

527 {
528  fillTrackHistograms(allTracksHistos,inVertexInCalo,rawJet);
529  fillTrackHistograms(allTracksHistos,outVertexInCalo,rawJet);
530  fillTrackHistograms(allTracksHistos,inVertexOutCalo,rawJet);
531  fillHistogram(allTracksHistos.nTracksHisto,inVertexInCalo.size()+outVertexInCalo.size()+inVertexOutCalo.size());
532  fillSiStripSoNForTracks(inVertexInCalo);
533  fillSiStripSoNForTracks(outVertexInCalo);
534  fillSiStripSoNForTracks(inVertexOutCalo);
535  fillTrackHistograms(inCaloInVertexHistos,inVertexInCalo,rawJet);
536  fillHistogram(inCaloInVertexHistos.nTracksHisto,inVertexInCalo.size());
537  fillTrackHistograms(inCaloOutVertexHistos,outVertexInCalo,rawJet);
538  fillHistogram(inCaloOutVertexHistos.nTracksHisto,outVertexInCalo.size());
539  fillTrackHistograms(outCaloInVertexHistos,inVertexOutCalo,rawJet);
540  fillHistogram(outCaloInVertexHistos.nTracksHisto,inVertexOutCalo.size());
541 }
void fillTrackHistograms(TrackHistograms &allTracksHistos, TrackHistograms &inCaloInVertexHistos, TrackHistograms &inCaloOutVertexHistos, TrackHistograms &outCaloInVertexHistos, const reco::TrackRefVector &inVertexInCalo, const reco::TrackRefVector &outVertexInCalo, const reco::TrackRefVector &inVertexOutCalo, const reco::Jet &rawJet)
Fill all track histograms.
void fillHistogram(MonitorElement *histogram, const double value)
Fill histogram or profile if it has been booked.
size_type size() const
Size of the RefVector.
Definition: RefVector.h:89
void fillSiStripSoNForTracks(const reco::TrackRefVector &tracks)
Fill the SoN hisotgram for hits on tracks.
void JPTJetAnalyzer::fillTrackHistograms ( TrackHistograms histos,
const reco::TrackRefVector tracks,
const reco::Jet rawJet 
)
private

Definition at line 543 of file JPTJetAnalyzer.cc.

References edm::RefVector< C, T, F >::begin(), deltaR(), edm::RefVector< C, T, F >::end(), reco::TrackBase::eta(), eta(), JPTJetAnalyzer::TrackHistograms::etaHisto, fillHistogram(), phi, reco::TrackBase::phi(), JPTJetAnalyzer::TrackHistograms::phiHisto, reco::TrackBase::pt(), JPTJetAnalyzer::TrackHistograms::ptHisto, JPTJetAnalyzer::TrackHistograms::ptVsEtaHisto, JPTJetAnalyzer::TrackHistograms::trackDirectionJetDRHisto, JPTJetAnalyzer::TrackHistograms::trackImpactPointJetDRHisto, and trackPropagator_.

544 {
545  const reco::TrackRefVector::const_iterator tracksEnd = tracks.end();
546  for (reco::TrackRefVector::const_iterator iTrack = tracks.begin(); iTrack != tracksEnd; ++iTrack) {
547  const reco::Track& track = **iTrack;
548  const double pt = track.pt();
549  const double phi = track.phi();
550  const double eta = track.eta();
551  // const unsigned int nHits = track.found();
552  // const unsigned int nLayers = track.hitPattern().trackerLayersWithMeasurement();
553  // const double dz = track.dz();
554  // const double dxy = track.dxy();
555  fillHistogram(histos.ptHisto,pt);
556  fillHistogram(histos.phiHisto,phi);
557  fillHistogram(histos.etaHisto,eta);
558  /* fillHistogram(histos.nHitsHisto,nHits);
559  fillHistogram(histos.nLayersHisto,nLayers); */
560  fillHistogram(histos.ptVsEtaHisto,eta,pt);
561  /* fillHistogram(histos.dzHisto,dz);
562  fillHistogram(histos.dxyHisto,dxy); */
563  const double trackDirectionJetDR = deltaR(rawJet,track);
564  fillHistogram(histos.trackDirectionJetDRHisto,trackDirectionJetDR);
565  const double impactPointJetDR = deltaR(rawJet,trackPropagator_->impactPoint(track));
566  fillHistogram(histos.trackImpactPointJetDRHisto,impactPointJetDR);
567  }
568 }
double phi() const
azimuthal angle of momentum vector
Definition: TrackBase.h:139
T eta() const
const_iterator end() const
Termination of iteration.
Definition: RefVector.h:249
const_iterator begin() const
Initialize an iterator over the RefVector.
Definition: RefVector.h:244
double eta() const
pseudorapidity of momentum vector
Definition: TrackBase.h:141
double pt() const
track transverse momentum
Definition: TrackBase.h:131
void fillHistogram(MonitorElement *histogram, const double value)
Fill histogram or profile if it has been booked.
std::auto_ptr< jptJetAnalysis::TrackPropagatorToCalo > trackPropagator_
Helper object to propagate tracks to the calo surface.
double deltaR(double eta1, double eta2, double phi1, double phi2)
Definition: TreeUtility.cc:17
Definition: DDAxes.h:10
double JPTJetAnalyzer::findPtFractionInCone ( const reco::TrackRefVector inConeTracks,
const reco::TrackRefVector outOfConeTracks 
)
staticprivate

Utility function to calculate the fraction of track Pt in cone.

Definition at line 640 of file JPTJetAnalyzer.cc.

References edm::RefVector< C, T, F >::begin(), and edm::RefVector< C, T, F >::end().

641 {
642  double totalPt = 0;
643  double inConePt = 0;
644  const reco::TrackRefVector::const_iterator inConeTracksEnd = inConeTracks.end();
645  for (reco::TrackRefVector::const_iterator iInConeTrack = inConeTracks.begin(); iInConeTrack != inConeTracksEnd; ++iInConeTrack) {
646  const double pt = (*iInConeTrack)->pt();
647  totalPt += pt;
648  inConePt += pt;
649  }
650  const reco::TrackRefVector::const_iterator outOfConeTracksEnd = outOfConeTracks.end();
651  for (reco::TrackRefVector::const_iterator iOutOfConeTrack = outOfConeTracks.begin(); iOutOfConeTrack != outOfConeTracksEnd; ++iOutOfConeTrack) {
652  const double pt = (*iOutOfConeTrack)->pt();
653  totalPt += pt;
654  }
655  if (totalPt) return inConePt/totalPt;
656  //return 0 if there are no tracks at all
657  else return 0;
658 }
const_iterator end() const
Termination of iteration.
Definition: RefVector.h:249
const_iterator begin() const
Initialize an iterator over the RefVector.
Definition: RefVector.h:244
void JPTJetAnalyzer::getConfigForHistogram ( const std::string &  configName,
const edm::ParameterSet psetContainingConfigPSet,
std::ostringstream *  pDebugStream = NULL 
)
private

Load the config for a hitogram.

Definition at line 306 of file JPTJetAnalyzer.cc.

References edm::ParameterSet::exists(), edm::ParameterSet::getParameter(), histogramConfig_, max(), cmsRun_displayProdMFGeom_cfg::maxY, messageLoggerCatregory, min, and cmsRun_displayProdMFGeom_cfg::minY.

Referenced by getConfigForTrackHistograms(), and JPTJetAnalyzer().

308 {
309  const std::string psetName = configName+std::string("HistogramConfig");
310  if (!psetContainingConfigPSet.exists(psetName)) {
311  edm::LogWarning(messageLoggerCatregory) << "Histogram " << configName << " config not found" << std::endl;
312  histogramConfig_[configName] = HistogramConfig();
313  } else {
314  if (pDebugStream) {
315  (*pDebugStream) << "Histogram " << configName << " config found and loaded" << std::endl;
316  }
317  const edm::ParameterSet& pset = psetContainingConfigPSet.getParameter<edm::ParameterSet>(psetName);
318  const bool enabled = (pset.exists("Enabled") ? pset.getParameter<bool>("Enabled") : true);
319  if (!enabled) {
320  histogramConfig_[configName] = HistogramConfig();
321  if (pDebugStream) {
322  (*pDebugStream) << "\tHistogram: " << configName << " Disabled" << std::endl;
323  }
324  } else {
325  const unsigned int nBins = (pset.exists("NBins") ? pset.getParameter<unsigned int>("NBins") : 0);
326  const double min = (pset.exists("Min") ? pset.getParameter<double>("Min") : 0);
327  const double max = (pset.exists("Max") ? pset.getParameter<double>("Max") : 0);
328  const unsigned int nBinsY = (pset.exists("NBinsY") ? pset.getParameter<unsigned int>("NBinsY") : 0);
329  const double minY = (pset.exists("MinY") ? pset.getParameter<double>("MinY") : 0);
330  const double maxY = (pset.exists("MaxY") ? pset.getParameter<double>("MaxY") : 0);
331  if (nBins) {
332  if (pDebugStream) {
333  (*pDebugStream) << "\tHistogram: " << configName << "\tEnabled"
334  << "\tNBins: " << nBins << "\tMin: " << min << "\tMax: " << max;
335  if (nBinsY) (*pDebugStream) << "\tNBinsY: " << nBinsY << "\tMinY: " << minY << "\tMaxY: " << maxY;
336  (*pDebugStream) << std::endl;
337  }
338  if (nBinsY) {
339  histogramConfig_[configName] = HistogramConfig(nBins,min,max,nBinsY,minY,maxY);
340  } else {
341  histogramConfig_[configName] = HistogramConfig(nBins,min,max);
342  }
343  }
344  }
345  }
346 }
T getParameter(std::string const &) const
bool exists(std::string const &parameterName) const
checks if a parameter exists
#define min(a, b)
Definition: mlp_lapack.h:161
static const char * messageLoggerCatregory
String constant for message logger category.
const T & max(const T &a, const T &b)
std::map< std::string, HistogramConfig > histogramConfig_
Histogram configuration (nBins etc)
void JPTJetAnalyzer::getConfigForTrackHistograms ( const std::string &  tag,
const edm::ParameterSet psetContainingConfigPSet,
std::ostringstream *  pDebugStream = NULL 
)
private

Load the configs for histograms associated with a set of tracks.

Definition at line 348 of file JPTJetAnalyzer.cc.

References getConfigForHistogram().

Referenced by JPTJetAnalyzer().

350 {
351  getConfigForHistogram("n"+tag+"TracksPerJet",psetContainingConfigPSet,pDebugStream);
352  getConfigForHistogram(tag+"TrackPt",psetContainingConfigPSet,pDebugStream);
353  getConfigForHistogram(tag+"TrackPhi",psetContainingConfigPSet,pDebugStream);
354  getConfigForHistogram(tag+"TrackEta",psetContainingConfigPSet,pDebugStream);
355  /* getConfigForHistogram(tag+"TrackNHits",psetContainingConfigPSet,pDebugStream);
356  getConfigForHistogram(tag+"TrackNLayers",psetContainingConfigPSet,pDebugStream);
357  getConfigForHistogram(tag+"TrackNLayers",psetContainingConfigPSet,pDebugStream); */
358  getConfigForHistogram(tag+"TrackPtVsEta",psetContainingConfigPSet,pDebugStream);
359  /* getConfigForHistogram(tag+"TrackDz",psetContainingConfigPSet,pDebugStream);
360  getConfigForHistogram(tag+"TrackDxy",psetContainingConfigPSet,pDebugStream); */
361 }
void getConfigForHistogram(const std::string &configName, const edm::ParameterSet &psetContainingConfigPSet, std::ostringstream *pDebugStream=NULL)
Load the config for a hitogram.

Member Data Documentation

TrackHistograms JPTJetAnalyzer::allElectronHistograms_
private

Definition at line 185 of file JPTJetAnalyzer.h.

Referenced by analyze(), and bookHistograms().

TrackHistograms JPTJetAnalyzer::allMuonHistograms_
private

Definition at line 184 of file JPTJetAnalyzer.h.

Referenced by analyze(), and bookHistograms().

TrackHistograms JPTJetAnalyzer::allPionHistograms_
private

Definition at line 183 of file JPTJetAnalyzer.h.

Referenced by analyze(), and bookHistograms().

const double JPTJetAnalyzer::correctedPtMin_
private

Definition at line 158 of file JPTJetAnalyzer.h.

Referenced by analyze().

DQMStore* JPTJetAnalyzer::dqm_
private

DQMStore. Used to write out to file.

Definition at line 189 of file JPTJetAnalyzer.h.

Referenced by beginJob(), and endJob().

std::string JPTJetAnalyzer::dqmStoreFileName_
private

DQM store file name.

Definition at line 152 of file JPTJetAnalyzer.h.

Referenced by endJob(), and JPTJetAnalyzer().

const double JPTJetAnalyzer::fHPDMax_
private

Definition at line 156 of file JPTJetAnalyzer.h.

Referenced by analyze().

std::map<std::string,HistogramConfig> JPTJetAnalyzer::histogramConfig_
private

Histogram configuration (nBins etc)

Definition at line 147 of file JPTJetAnalyzer.h.

Referenced by book2DHistogram(), bookHistogram(), bookProfile(), and getConfigForHistogram().

const std::string JPTJetAnalyzer::histogramPath_
private

Path of directory used to store histograms in DQMStore.

Definition at line 143 of file JPTJetAnalyzer.h.

Referenced by beginJob(), and JPTJetAnalyzer().

TrackHistograms JPTJetAnalyzer::inCaloInVertexElectronHistograms_
private

Definition at line 185 of file JPTJetAnalyzer.h.

Referenced by analyze(), and bookHistograms().

TrackHistograms JPTJetAnalyzer::inCaloInVertexMuonHistograms_
private

Definition at line 184 of file JPTJetAnalyzer.h.

Referenced by analyze(), and bookHistograms().

TrackHistograms JPTJetAnalyzer::inCaloInVertexPionHistograms_
private

Definition at line 183 of file JPTJetAnalyzer.h.

Referenced by analyze(), and bookHistograms().

TrackHistograms JPTJetAnalyzer::inCaloOutVertexElectronHistograms_
private

Definition at line 185 of file JPTJetAnalyzer.h.

Referenced by analyze(), and bookHistograms().

TrackHistograms JPTJetAnalyzer::inCaloOutVertexMuonHistograms_
private

Definition at line 184 of file JPTJetAnalyzer.h.

Referenced by analyze(), and bookHistograms().

TrackHistograms JPTJetAnalyzer::inCaloOutVertexPionHistograms_
private

Definition at line 183 of file JPTJetAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* JPTJetAnalyzer::InCaloTrackDirectionJetDRHisto_
private

Definition at line 176 of file JPTJetAnalyzer.h.

Referenced by bookHistograms().

MonitorElement* JPTJetAnalyzer::InVertexTrackImpactPointJetDRHisto_
private

Definition at line 177 of file JPTJetAnalyzer.h.

Referenced by bookHistograms().

MonitorElement * JPTJetAnalyzer::JetDeltaEta_
private

Definition at line 172 of file JPTJetAnalyzer.h.

MonitorElement * JPTJetAnalyzer::JetDeltaPhi_
private

Definition at line 172 of file JPTJetAnalyzer.h.

MonitorElement* JPTJetAnalyzer::JetE_
private

Definition at line 168 of file JPTJetAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement * JPTJetAnalyzer::JetEt_
private

Definition at line 168 of file JPTJetAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* JPTJetAnalyzer::JetEta_
private

Definition at line 172 of file JPTJetAnalyzer.h.

Referenced by analyze(), and bookHistograms().

std::auto_ptr<reco::helper::JetIDHelper> JPTJetAnalyzer::jetID_
private

Helper object to calculate jet ID parameters.

Definition at line 165 of file JPTJetAnalyzer.h.

Referenced by analyze().

MonitorElement * JPTJetAnalyzer::JetP_
private

Definition at line 168 of file JPTJetAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement * JPTJetAnalyzer::JetPhi_
private

Definition at line 172 of file JPTJetAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement * JPTJetAnalyzer::JetPhiVsEta_
private

Definition at line 172 of file JPTJetAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* JPTJetAnalyzer::JetPt1_
private

Definition at line 170 of file JPTJetAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement * JPTJetAnalyzer::JetPt2_
private

Definition at line 170 of file JPTJetAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement * JPTJetAnalyzer::JetPt3_
private

Definition at line 170 of file JPTJetAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement * JPTJetAnalyzer::JetPt_
private

Definition at line 168 of file JPTJetAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* JPTJetAnalyzer::JetPx_
private

Definition at line 171 of file JPTJetAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement * JPTJetAnalyzer::JetPy_
private

Definition at line 171 of file JPTJetAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement * JPTJetAnalyzer::JetPz_
private

Definition at line 171 of file JPTJetAnalyzer.h.

Referenced by analyze(), and bookHistograms().

const char * JPTJetAnalyzer::messageLoggerCatregory = "JetPlusTrackDQM"
staticprivate

String constant for message logger category.

Definition at line 139 of file JPTJetAnalyzer.h.

Referenced by analyze(), book2DHistogram(), bookHistogram(), bookProfile(), getConfigForHistogram(), and JPTJetAnalyzer().

const int JPTJetAnalyzer::n90HitsMin_
private

Jet ID cuts.

Definition at line 155 of file JPTJetAnalyzer.h.

Referenced by analyze().

MonitorElement* JPTJetAnalyzer::NTracksPerJetHisto_
private

Definition at line 178 of file JPTJetAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement * JPTJetAnalyzer::NTracksPerJetVsJetEtaHisto_
private

Definition at line 178 of file JPTJetAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement * JPTJetAnalyzer::NTracksPerJetVsJetEtHisto_
private

Definition at line 178 of file JPTJetAnalyzer.h.

Referenced by analyze(), and bookHistograms().

TrackHistograms JPTJetAnalyzer::outCaloInVertexElectronHistograms_
private

Definition at line 185 of file JPTJetAnalyzer.h.

Referenced by analyze(), and bookHistograms().

TrackHistograms JPTJetAnalyzer::outCaloInVertexMuonHistograms_
private

Definition at line 184 of file JPTJetAnalyzer.h.

Referenced by analyze(), and bookHistograms().

TrackHistograms JPTJetAnalyzer::outCaloInVertexPionHistograms_
private

Definition at line 183 of file JPTJetAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement * JPTJetAnalyzer::OutCaloTrackDirectionJetDRHisto_
private

Definition at line 176 of file JPTJetAnalyzer.h.

Referenced by bookHistograms().

MonitorElement * JPTJetAnalyzer::OutVertexTrackImpactPointJetDRHisto_
private

Definition at line 177 of file JPTJetAnalyzer.h.

Referenced by bookHistograms().

const double JPTJetAnalyzer::resEMFMin_
private

Definition at line 157 of file JPTJetAnalyzer.h.

Referenced by analyze().

std::auto_ptr<jptJetAnalysis::StripSignalOverNoiseCalculator> JPTJetAnalyzer::sOverNCalculator_
private

Helper object to calculate strip SoN for tracks.

Definition at line 163 of file JPTJetAnalyzer.h.

Referenced by analyze().

std::auto_ptr<jptJetAnalysis::TrackPropagatorToCalo> JPTJetAnalyzer::trackPropagator_
private

Helper object to propagate tracks to the calo surface.

Definition at line 161 of file JPTJetAnalyzer.h.

Referenced by analyze(), and fillTrackHistograms().

const bool JPTJetAnalyzer::verbose_
private

Create verbose debug messages.

Definition at line 145 of file JPTJetAnalyzer.h.

Referenced by JPTJetAnalyzer().

const bool JPTJetAnalyzer::writeDQMStore_
private

Write DQM store to a file?

Definition at line 150 of file JPTJetAnalyzer.h.

Referenced by endJob(), and JPTJetAnalyzer().