CMS 3D CMS Logo

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

#include <QcdUeDQM.h>

Inheritance diagram for QcdUeDQM:
DQMEDAnalyzer edm::one::EDProducer< edm::Accumulator, edm::EndLuminosityBlockProducer, edm::EndRunProducer, edm::one::WatchLuminosityBlocks, edm::one::WatchRuns > edm::one::EDProducerBase edm::ProducerBase edm::EDConsumerBase edm::ProductRegistryHelper

Public Member Functions

void analyze (const edm::Event &iEvent, const edm::EventSetup &iSetup) override
 
void bookHistograms (DQMStore::IBooker &, edm::Run const &, edm::EventSetup const &) override
 
void dqmBeginRun (const edm::Run &, const edm::EventSetup &) override
 
 QcdUeDQM (const edm::ParameterSet &parameters)
 
 ~QcdUeDQM () override
 
- Public Member Functions inherited from DQMEDAnalyzer
void accumulate (edm::Event const &ev, edm::EventSetup const &es) final
 
virtual void analyze (edm::Event const &, edm::EventSetup const &)
 
void beginLuminosityBlock (edm::LuminosityBlock const &lumi, edm::EventSetup const &setup) override
 
void beginRun (edm::Run const &run, edm::EventSetup const &setup) final
 
virtual void dqmBeginRun (edm::Run const &, edm::EventSetup const &)
 
 DQMEDAnalyzer ()
 
 DQMEDAnalyzer (DQMEDAnalyzer const &)=delete
 
 DQMEDAnalyzer (DQMEDAnalyzer &&)=delete
 
void endLuminosityBlock (edm::LuminosityBlock const &, edm::EventSetup const &) override
 
void endLuminosityBlockProduce (edm::LuminosityBlock &lumi, edm::EventSetup const &setup) final
 
void endRun (edm::Run const &run, edm::EventSetup const &setup) override
 
void endRunProduce (edm::Run &run, edm::EventSetup const &setup) override
 
 ~DQMEDAnalyzer () override=default
 
- Public Member Functions inherited from edm::one::EDProducer< edm::Accumulator, edm::EndLuminosityBlockProducer, edm::EndRunProducer, edm::one::WatchLuminosityBlocks, edm::one::WatchRuns >
 EDProducer ()=default
 
SerialTaskQueueglobalLuminosityBlocksQueue () final
 
SerialTaskQueueglobalRunsQueue () final
 
bool hasAbilityToProduceInLumis () const final
 
bool hasAbilityToProduceInRuns () const final
 
bool wantsGlobalLuminosityBlocks () const final
 
bool wantsGlobalRuns () const final
 
- Public Member Functions inherited from edm::one::EDProducerBase
 EDProducerBase ()
 
ModuleDescription const & moduleDescription () const
 
bool wantsStreamLuminosityBlocks () const
 
bool wantsStreamRuns () const
 
 ~EDProducerBase () override
 
- Public Member Functions inherited from edm::ProducerBase
void callWhenNewProductsRegistered (std::function< void(BranchDescription const &)> const &func)
 
std::vector< edm::ProductResolverIndex > const & indiciesForPutProducts (BranchType iBranchType) const
 
 ProducerBase ()
 
std::vector< edm::ProductResolverIndex > const & putTokenIndexToProductResolverIndex () const
 
void registerProducts (ProducerBase *, ProductRegistry *, ModuleDescription const &)
 
std::function< void(BranchDescription const &)> registrationCallback () const
 used by the fwk to register list of products More...
 
void resolvePutIndicies (BranchType iBranchType, ModuleToResolverIndicies const &iIndicies, std::string const &moduleLabel)
 
 ~ProducerBase () 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
 
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)
 
virtual ~EDConsumerBase () noexcept(false)
 

Private Types

typedef std::vector< const reco::Track * > container
 

Private Member Functions

void book1D (DQMStore::IBooker &, std::vector< MonitorElement * > &mes, const std::string &name, const std::string &title, int nx, double x1, double x2, bool sumw2=true, bool sbox=true)
 
void bookProfile (DQMStore::IBooker &, std::vector< MonitorElement * > &mes, const std::string &name, const std::string &title, int nx, double x1, double x2, double y1, double y2, bool sumw2=true, bool sbox=true)
 
void fill1D (std::vector< TH1F * > &hs, double val, double w=1.)
 
void fill1D (std::vector< MonitorElement * > &mes, double val, double w=1.)
 
void fill2D (std::vector< TH2F * > &hs, double valx, double valy, double w=1.)
 
void fill2D (std::vector< MonitorElement * > &mes, double valx, double valy, double w=1.)
 
void fill3D (std::vector< TH3F * > &hs, int gbin, double w=1.)
 
void fillChargedJetSpectra (const edm::Handle< reco::TrackJetCollection > trackJets)
 
void fillHltBits (const edm::Event &iEvent, const edm::EventSetup &iSetup)
 
void fillProfile (std::vector< TProfile * > &hs, double valx, double valy, double w=1.)
 
void fillProfile (std::vector< MonitorElement * > &mes, double valx, double valy, double w=1.)
 
void fillpTMaxRelated (const std::vector< const reco::Track * > &track)
 
void fillUE_with_ChargedJets (const std::vector< const reco::Track * > &track, const edm::Handle< reco::TrackJetCollection > &trackJets)
 
void fillUE_with_MaxpTtrack (const std::vector< const reco::Track * > &track)
 
bool fillVtxPlots (const reco::BeamSpot *bs, const edm::Handle< reco::VertexCollection > vtxColl)
 
template<typename TYPE >
void getProduct (const std::string name, edm::Handle< TYPE > &prod, const edm::Event &event) const
 
template<typename TYPE >
bool getProductSafe (const std::string name, edm::Handle< TYPE > &prod, const edm::Event &event) const
 
void setLabel1D (std::vector< MonitorElement * > &mes)
 
bool trackSelection (const reco::Track &trk, const reco::BeamSpot *bs, const reco::Vertex &vtx, int sizevtx)
 

Private Attributes

std::vector< reco::TrackBase::TrackAlgorithmalgorithm_
 
bool allowTriplets_
 
edm::EDGetTokenT< reco::BeamSpotbsLabel_
 
double bsPos_
 
bool bsuse_
 
edm::EDGetTokenT< reco::CaloJetCollectioncaloJetLabel_
 
edm::EDGetTokenT< reco::TrackJetCollectionchargedJetLabel_
 
double diffvtxbs_
 
MonitorElementh2TrigCorr_
 
std::vector< MonitorElement * > hBeamSpot_x_
 
std::vector< MonitorElement * > hBeamSpot_y_
 
std::vector< MonitorElement * > hBeamSpot_z_
 
std::vector< MonitorElement * > hChargedJetConstituent_
 
std::vector< MonitorElement * > hChargedJetMulti_
 
std::vector< MonitorElement * > hdNdEtadPhi_pTMax_Away500_
 
std::vector< MonitorElement * > hdNdEtadPhi_pTMax_Away900_
 
std::vector< MonitorElement * > hdNdEtadPhi_pTMax_Toward500_
 
std::vector< MonitorElement * > hdNdEtadPhi_pTMax_Toward900_
 
std::vector< MonitorElement * > hdNdEtadPhi_pTMax_Transverse500_
 
std::vector< MonitorElement * > hdNdEtadPhi_pTMax_Transverse900_
 
std::vector< MonitorElement * > hdNdEtadPhi_trackJet_Away500_
 
std::vector< MonitorElement * > hdNdEtadPhi_trackJet_Away900_
 
std::vector< MonitorElement * > hdNdEtadPhi_trackJet_Toward500_
 
std::vector< MonitorElement * > hdNdEtadPhi_trackJet_Toward900_
 
std::vector< MonitorElement * > hdNdEtadPhi_trackJet_Transverse500_
 
std::vector< MonitorElement * > hdNdEtadPhi_trackJet_Transverse900_
 
std::vector< MonitorElement * > hdPhi_chargedJet_tracks_
 
std::vector< MonitorElement * > hdPhi_maxpTTrack_tracks_
 
std::vector< MonitorElement * > hGoodTrkEta500_
 
std::vector< MonitorElement * > hGoodTrkEta900_
 
std::vector< MonitorElement * > hGoodTrkPhi500_
 
std::vector< MonitorElement * > hGoodTrkPhi900_
 
std::vector< MonitorElement * > hGoodTrkPt500_
 
std::vector< MonitorElement * > hGoodTrkPt900_
 
std::vector< MonitorElement * > hLeadingChargedJet_etaSpectrum_
 
std::vector< MonitorElement * > hLeadingChargedJet_phiSpectrum_
 
std::vector< MonitorElement * > hLeadingChargedJet_pTSpectrum_
 
std::vector< MonitorElement * > hLeadingTrack_etaSpectrum_
 
std::vector< MonitorElement * > hLeadingTrack_phiSpectrum_
 
std::vector< MonitorElement * > hLeadingTrack_pTSpectrum_
 
HLTConfigProvider hltConfig
 
std::vector< std::string > hltProcNames_
 
std::string hltResName_
 
std::vector< int > hltTrgBits_
 
std::vector< bool > hltTrgDeci_
 
std::vector< std::string > hltTrgNames_
 
std::vector< std::string > hltTrgUsedNames_
 
std::string hltUsedResName_
 
std::vector< MonitorElement * > hNevts_
 
std::vector< MonitorElement * > hNgoodTrk_
 
std::vector< MonitorElement * > hNtrackerLayer_
 
std::vector< MonitorElement * > hNtrackerPixelLayer_
 
std::vector< MonitorElement * > hNtrackerStripPixelLayer_
 
std::vector< MonitorElement * > hNvertices_
 
std::vector< MonitorElement * > hpTSumdEtadPhi_pTMax_Away500_
 
std::vector< MonitorElement * > hpTSumdEtadPhi_pTMax_Away900_
 
std::vector< MonitorElement * > hpTSumdEtadPhi_pTMax_Toward500_
 
std::vector< MonitorElement * > hpTSumdEtadPhi_pTMax_Toward900_
 
std::vector< MonitorElement * > hpTSumdEtadPhi_pTMax_Transverse500_
 
std::vector< MonitorElement * > hpTSumdEtadPhi_pTMax_Transverse900_
 
std::vector< MonitorElement * > hpTSumdEtadPhi_trackJet_Away500_
 
std::vector< MonitorElement * > hpTSumdEtadPhi_trackJet_Away900_
 
std::vector< MonitorElement * > hpTSumdEtadPhi_trackJet_Toward500_
 
std::vector< MonitorElement * > hpTSumdEtadPhi_trackJet_Toward900_
 
std::vector< MonitorElement * > hpTSumdEtadPhi_trackJet_Transverse500_
 
std::vector< MonitorElement * > hpTSumdEtadPhi_trackJet_Transverse900_
 
std::vector< MonitorElement * > hRatioDxySigmaDxyBS_
 
std::vector< MonitorElement * > hRatioDxySigmaDxyPV_
 
std::vector< MonitorElement * > hRatioDzSigmaDzBS_
 
std::vector< MonitorElement * > hRatioDzSigmaDzPV_
 
std::vector< MonitorElement * > hRatioPtErrorPt_
 
std::vector< MonitorElement * > hTrkChi2_
 
std::vector< MonitorElement * > hTrkEta_
 
std::vector< MonitorElement * > hTrkNdof_
 
std::vector< MonitorElement * > hTrkPhi_
 
std::vector< MonitorElement * > hTrkPt_
 
std::vector< MonitorElement * > hVertex_ndof_
 
std::vector< MonitorElement * > hVertex_rho_
 
std::vector< MonitorElement * > hVertex_x_
 
std::vector< MonitorElement * > hVertex_y_
 
std::vector< MonitorElement * > hVertex_z_
 
std::vector< MonitorElement * > hVertex_z_bs_
 
bool isHltConfigSuccessful_
 
double lip_
 
double maxChi2_
 
double maxRapidity_
 
int min3DHit_
 
int minHit_
 
double minRapidity_
 
double ptErr_pt_
 
double ptMin_
 
double pxlLayerMinCut_
 
std::vector< reco::TrackBase::TrackQualityquality_
 
MonitorElementrepSumMap_
 
MonitorElementrepSummary_
 
bool requirePIX1_
 
container selected_
 
const TrackerGeometrytgeo_
 
double tip_
 
edm::EDGetTokenT< reco::TrackCollectiontrackLabel_
 
int verbose_
 
reco::Vertex vtx1
 
edm::EDGetTokenT< reco::VertexCollectionvtxLabel_
 
double vtxntk_
 

Additional Inherited Members

- Public Types inherited from edm::one::EDProducerBase
typedef EDProducerBase ModuleType
 
- Public Types inherited from edm::ProducerBase
using ModuleToResolverIndicies = std::unordered_multimap< std::string, std::tuple< edm::TypeID const *, const char *, edm::ProductResolverIndex >>
 
typedef ProductRegistryHelper::TypeLabelList TypeLabelList
 
- Public Types inherited from edm::EDConsumerBase
typedef ProductLabels Labels
 
- Static Public Member Functions inherited from edm::one::EDProducerBase
static const std::string & baseType ()
 
static void fillDescriptions (ConfigurationDescriptions &descriptions)
 
static void prevalidate (ConfigurationDescriptions &descriptions)
 
- 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 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)
 
- Protected Attributes inherited from DQMEDAnalyzer
edm::EDPutTokenT< DQMTokenlumiToken_
 
edm::EDPutTokenT< DQMTokenrunToken_
 

Detailed Description

Definition at line 54 of file QcdUeDQM.h.

Member Typedef Documentation

typedef std::vector<const reco::Track *> QcdUeDQM::container
private

Definition at line 402 of file QcdUeDQM.h.

Constructor & Destructor Documentation

QcdUeDQM::QcdUeDQM ( const edm::ParameterSet parameters)

Definition at line 53 of file QcdUeDQM.cc.

References reco::TrackBase::algoByName(), electronCleaner_cfi::algorithm, algorithm_, edm::ParameterSet::exists(), edm::ParameterSet::getParameter(), edm::ParameterSet::getUntrackedParameter(), hltProcNames_, hltTrgNames_, isHltConfigSuccessful_, jets_cff::quality, quality_, and reco::TrackBase::qualityByName().

54  : hltResName_(parameters.getUntrackedParameter<string>("hltTrgResults")),
55  verbose_(parameters.getUntrackedParameter<int>("verbose", 3)),
56  tgeo_(nullptr),
57  repSumMap_(nullptr),
58  repSummary_(nullptr),
59  h2TrigCorr_(nullptr),
60  ptMin_(parameters.getParameter<double>("ptMin")),
61  minRapidity_(parameters.getParameter<double>("minRapidity")),
62  maxRapidity_(parameters.getParameter<double>("maxRapidity")),
63  tip_(parameters.getParameter<double>("tip")),
64  lip_(parameters.getParameter<double>("lip")),
65  diffvtxbs_(parameters.getParameter<double>("diffvtxbs")),
66  ptErr_pt_(parameters.getParameter<double>("ptErr_pt")),
67  vtxntk_(parameters.getParameter<double>("vtxntk")),
68  minHit_(parameters.getParameter<int>("minHit")),
69  pxlLayerMinCut_(parameters.getParameter<double>("pxlLayerMinCut")),
70  requirePIX1_(parameters.getParameter<bool>("requirePIX1")),
71  min3DHit_(parameters.getParameter<int>("min3DHit")),
72  maxChi2_(parameters.getParameter<double>("maxChi2")),
73  bsuse_(parameters.getParameter<bool>("bsuse")),
74  allowTriplets_(parameters.getParameter<bool>("allowTriplets")),
75  bsPos_(parameters.getParameter<double>("bsPos")),
76  caloJetLabel_(consumes<reco::CaloJetCollection>(
77  parameters.getUntrackedParameter<edm::InputTag>("caloJetTag"))),
78  chargedJetLabel_(consumes<reco::TrackJetCollection>(
79  parameters.getUntrackedParameter<edm::InputTag>("chargedJetTag"))),
80  trackLabel_(consumes<reco::TrackCollection>(
81  parameters.getUntrackedParameter<edm::InputTag>("trackTag"))),
82  vtxLabel_(consumes<reco::VertexCollection>(
83  parameters.getUntrackedParameter<edm::InputTag>("vtxTag"))),
84  bsLabel_(consumes<reco::BeamSpot>(
85  parameters.getParameter<edm::InputTag>("beamSpotTag"))) {
86  // Constructor.
87  std::vector<std::string> quality =
88  parameters.getParameter<std::vector<std::string> >("quality");
89  for (unsigned int j = 0; j < quality.size(); j++)
90  quality_.push_back(reco::TrackBase::qualityByName(quality[j]));
91  std::vector<std::string> algorithm =
92  parameters.getParameter<std::vector<std::string> >("algorithm");
93  for (unsigned int j = 0; j < algorithm.size(); j++)
94  algorithm_.push_back(reco::TrackBase::algoByName(algorithm[j]));
95 
96  if (parameters.exists("hltTrgNames"))
97  hltTrgNames_ =
98  parameters.getUntrackedParameter<vector<string> >("hltTrgNames");
99 
100  if (parameters.exists("hltProcNames"))
101  hltProcNames_ =
102  parameters.getUntrackedParameter<vector<string> >("hltProcNames");
103  else {
104  // hltProcNames_.push_back("FU");
105  hltProcNames_.push_back("HLT");
106  }
107 
108  isHltConfigSuccessful_ = false; // init
109 }
bool bsuse_
Definition: QcdUeDQM.h:392
T getParameter(std::string const &) const
T getUntrackedParameter(std::string const &, T const &) const
int verbose_
Definition: QcdUeDQM.h:115
bool exists(std::string const &parameterName) const
checks if a parameter exists
edm::EDGetTokenT< reco::TrackCollection > trackLabel_
Definition: QcdUeDQM.h:397
edm::EDGetTokenT< reco::CaloJetCollection > caloJetLabel_
Definition: QcdUeDQM.h:395
double ptErr_pt_
Definition: QcdUeDQM.h:385
bool requirePIX1_
Definition: QcdUeDQM.h:389
bool isHltConfigSuccessful_
Definition: QcdUeDQM.h:64
std::vector< std::string > hltTrgNames_
Definition: QcdUeDQM.h:109
edm::EDGetTokenT< reco::TrackJetCollection > chargedJetLabel_
Definition: QcdUeDQM.h:396
MonitorElement * repSumMap_
Definition: QcdUeDQM.h:117
std::vector< std::string > hltProcNames_
Definition: QcdUeDQM.h:108
std::string hltResName_
Definition: QcdUeDQM.h:107
MonitorElement * h2TrigCorr_
Definition: QcdUeDQM.h:119
double bsPos_
Definition: QcdUeDQM.h:394
double maxChi2_
Definition: QcdUeDQM.h:391
double lip_
Definition: QcdUeDQM.h:383
std::vector< reco::TrackBase::TrackAlgorithm > algorithm_
Definition: QcdUeDQM.h:401
edm::EDGetTokenT< reco::BeamSpot > bsLabel_
Definition: QcdUeDQM.h:399
edm::EDGetTokenT< reco::VertexCollection > vtxLabel_
Definition: QcdUeDQM.h:398
static TrackQuality qualityByName(const std::string &name)
Definition: TrackBase.cc:125
bool allowTriplets_
Definition: QcdUeDQM.h:393
double ptMin_
Definition: QcdUeDQM.h:379
MonitorElement * repSummary_
Definition: QcdUeDQM.h:118
double diffvtxbs_
Definition: QcdUeDQM.h:384
double minRapidity_
Definition: QcdUeDQM.h:380
int min3DHit_
Definition: QcdUeDQM.h:390
double pxlLayerMinCut_
Definition: QcdUeDQM.h:388
static TrackAlgorithm algoByName(const std::string &name)
Definition: TrackBase.cc:137
std::vector< reco::TrackBase::TrackQuality > quality_
Definition: QcdUeDQM.h:400
double maxRapidity_
Definition: QcdUeDQM.h:381
const TrackerGeometry * tgeo_
Definition: QcdUeDQM.h:116
double vtxntk_
Definition: QcdUeDQM.h:386
int minHit_
Definition: QcdUeDQM.h:387
double tip_
Definition: QcdUeDQM.h:382
QcdUeDQM::~QcdUeDQM ( )
override

Definition at line 111 of file QcdUeDQM.cc.

111  {
112  // Destructor.
113 }

Member Function Documentation

void QcdUeDQM::analyze ( const edm::Event iEvent,
const edm::EventSetup iSetup 
)
override

Definition at line 444 of file QcdUeDQM.cc.

References ecalDrivenElectronSeedsParameters_cff::beamSpot, bsLabel_, caloJetLabel_, chargedJetLabel_, fill1D(), fillChargedJetSpectra(), fillHltBits(), fillpTMaxRelated(), fillUE_with_ChargedJets(), fillUE_with_MaxpTtrack(), fillVtxPlots(), edm::Event::getByToken(), hNevts_, isHltConfigSuccessful_, edm::Handle< T >::product(), selected_, trackLabel_, l1t::tracks, trackSelection(), vtx1, and vtxLabel_.

444  {
445  if (!isHltConfigSuccessful_) return;
446 
447  // Analyze the given event.
448 
450  bool ValidBS_ = iEvent.getByToken(bsLabel_, beamSpot);
451  if (!ValidBS_) return;
452 
454  bool ValidTrack_ = iEvent.getByToken(trackLabel_, tracks);
455  if (!ValidTrack_) return;
456 
458  bool ValidTrackJet_ = iEvent.getByToken(chargedJetLabel_, trkJets);
459  if (!ValidTrackJet_) return;
460 
462  bool ValidCaloJet_ = iEvent.getByToken(caloJetLabel_, calJets);
463  if (!ValidCaloJet_) return;
464 
466  bool ValidVtxColl_ = iEvent.getByToken(vtxLabel_, vertexColl);
467  if (!ValidVtxColl_) return;
468 
469  reco::TrackCollection tracks_sort = *tracks;
470  std::sort(tracks_sort.begin(), tracks_sort.end(), PtSorter());
471 
472  // get tracker geometry
473  /* ESHandle<TrackerGeometry> trackerHandle;
474  iSetup.get<TrackerDigiGeometryRecord>().get(trackerHandle);
475  tgeo_ = trackerHandle.product();
476  if (!tgeo_)return;
477  */
478  selected_.clear();
479  fillHltBits(iEvent, iSetup);
480  // select good tracks
481  if (fillVtxPlots(beamSpot.product(), vertexColl)) {
482  fill1D(hNevts_, 1);
483  for (reco::TrackCollection::const_iterator Trk = tracks_sort.begin();
484  Trk != tracks_sort.end(); ++Trk) {
485  if (trackSelection(*Trk, beamSpot.product(), vtx1, vertexColl->size()))
486  selected_.push_back(&*Trk);
487  }
488 
490  fillChargedJetSpectra(trkJets);
491  // fillCaloJetSpectra(calJets);
493  if (!trkJets->empty()) fillUE_with_ChargedJets(selected_, trkJets);
494  // if(calJets->size()>0)fillUE_with_CaloJets(selected_,calJets);
495  }
496 }
void fillHltBits(const edm::Event &iEvent, const edm::EventSetup &iSetup)
Definition: QcdUeDQM.cc:1074
void fill1D(std::vector< TH1F * > &hs, double val, double w=1.)
Definition: QcdUeDQM.cc:540
bool trackSelection(const reco::Track &trk, const reco::BeamSpot *bs, const reco::Vertex &vtx, int sizevtx)
Definition: QcdUeDQM.cc:616
bool getByToken(EDGetToken token, Handle< PROD > &result) const
Definition: Event.h:519
std::vector< Track > TrackCollection
collection of Tracks
Definition: TrackFwd.h:14
edm::EDGetTokenT< reco::TrackCollection > trackLabel_
Definition: QcdUeDQM.h:397
bool fillVtxPlots(const reco::BeamSpot *bs, const edm::Handle< reco::VertexCollection > vtxColl)
Definition: QcdUeDQM.cc:729
edm::EDGetTokenT< reco::CaloJetCollection > caloJetLabel_
Definition: QcdUeDQM.h:395
void fillUE_with_ChargedJets(const std::vector< const reco::Track * > &track, const edm::Handle< reco::TrackJetCollection > &trackJets)
Definition: QcdUeDQM.cc:892
bool isHltConfigSuccessful_
Definition: QcdUeDQM.h:64
void fillUE_with_MaxpTtrack(const std::vector< const reco::Track * > &track)
Definition: QcdUeDQM.cc:810
edm::EDGetTokenT< reco::TrackJetCollection > chargedJetLabel_
Definition: QcdUeDQM.h:396
reco::Vertex vtx1
Definition: QcdUeDQM.h:404
edm::EDGetTokenT< reco::BeamSpot > bsLabel_
Definition: QcdUeDQM.h:399
edm::EDGetTokenT< reco::VertexCollection > vtxLabel_
Definition: QcdUeDQM.h:398
T const * product() const
Definition: Handle.h:81
container selected_
Definition: QcdUeDQM.h:403
std::vector< MonitorElement * > hNevts_
Definition: QcdUeDQM.h:121
void fillChargedJetSpectra(const edm::Handle< reco::TrackJetCollection > trackJets)
Definition: QcdUeDQM.cc:773
void fillpTMaxRelated(const std::vector< const reco::Track * > &track)
Definition: QcdUeDQM.cc:754
void QcdUeDQM::book1D ( DQMStore::IBooker iBooker,
std::vector< MonitorElement * > &  mes,
const std::string &  name,
const std::string &  title,
int  nx,
double  x1,
double  x2,
bool  sumw2 = true,
bool  sbox = true 
)
private

Definition at line 498 of file QcdUeDQM.cc.

References DQMStore::IBooker::book1D(), MillePedeFileConverter_cfg::e, MonitorElement::getTH1(), hltTrgUsedNames_, mps_fire::i, DQMStore::IBooker::setCurrentFolder(), and AlCaHLTBitMon_QueryRunRegistry::string.

Referenced by bookHistograms().

501  {
502  // Book 1D histos.
503  for (size_t i = 0; i < hltTrgUsedNames_.size(); ++i) {
504  std::string folderName = "Physics/QcdUe/" + hltTrgUsedNames_.at(i);
505  iBooker.setCurrentFolder(folderName);
506  MonitorElement *e = iBooker.book1D(
507  Form("%s_%s", name.c_str(), hltTrgUsedNames_.at(i).c_str()),
508  Form("%s: %s", hltTrgUsedNames_.at(i).c_str(), title.c_str()), nx, x1,
509  x2);
510  TH1 *h1 = e->getTH1();
511  if (sumw2) {
512  if (0 == h1->GetSumw2N()) { // protect against re-summing (would cause
513  // exception)
514  h1->Sumw2();
515  }
516  }
517  h1->SetStats(sbox);
518  mes.push_back(e);
519  }
520 }
TH1 * getTH1() const
std::vector< std::string > hltTrgUsedNames_
Definition: QcdUeDQM.h:113
MonitorElement * book1D(Args &&...args)
Definition: DQMStore.h:118
void setCurrentFolder(const std::string &fullpath)
Definition: DQMStore.cc:279
void QcdUeDQM::bookHistograms ( DQMStore::IBooker iBooker,
edm::Run const &  ,
edm::EventSetup const &   
)
overridevirtual

Implements DQMEDAnalyzer.

Definition at line 171 of file QcdUeDQM.cc.

References book1D(), DQMStore::IBooker::book2D(), bookProfile(), MonitorElement::getTH1(), h2TrigCorr_, hBeamSpot_x_, hBeamSpot_y_, hBeamSpot_z_, hChargedJetMulti_, hdNdEtadPhi_pTMax_Away500_, hdNdEtadPhi_pTMax_Away900_, hdNdEtadPhi_pTMax_Toward500_, hdNdEtadPhi_pTMax_Toward900_, hdNdEtadPhi_pTMax_Transverse500_, hdNdEtadPhi_pTMax_Transverse900_, hdNdEtadPhi_trackJet_Away500_, hdNdEtadPhi_trackJet_Away900_, hdNdEtadPhi_trackJet_Toward500_, hdNdEtadPhi_trackJet_Toward900_, hdNdEtadPhi_trackJet_Transverse500_, hdNdEtadPhi_trackJet_Transverse900_, hdPhi_chargedJet_tracks_, hdPhi_maxpTTrack_tracks_, hGoodTrkEta500_, hGoodTrkEta900_, hGoodTrkPhi500_, hGoodTrkPhi900_, hGoodTrkPt500_, hGoodTrkPt900_, hLeadingChargedJet_etaSpectrum_, hLeadingChargedJet_phiSpectrum_, hLeadingChargedJet_pTSpectrum_, hLeadingTrack_etaSpectrum_, hLeadingTrack_phiSpectrum_, hLeadingTrack_pTSpectrum_, hltTrgUsedNames_, hNevts_, hNgoodTrk_, hNtrackerLayer_, hNtrackerPixelLayer_, hNtrackerStripPixelLayer_, hNvertices_, hpTSumdEtadPhi_pTMax_Away500_, hpTSumdEtadPhi_pTMax_Away900_, hpTSumdEtadPhi_pTMax_Toward500_, hpTSumdEtadPhi_pTMax_Toward900_, hpTSumdEtadPhi_pTMax_Transverse500_, hpTSumdEtadPhi_pTMax_Transverse900_, hpTSumdEtadPhi_trackJet_Away500_, hpTSumdEtadPhi_trackJet_Away900_, hpTSumdEtadPhi_trackJet_Toward500_, hpTSumdEtadPhi_trackJet_Toward900_, hpTSumdEtadPhi_trackJet_Transverse500_, hpTSumdEtadPhi_trackJet_Transverse900_, hRatioDxySigmaDxyBS_, hRatioDxySigmaDxyPV_, hRatioDzSigmaDzBS_, hRatioDzSigmaDzPV_, hRatioPtErrorPt_, hTrkChi2_, hTrkEta_, hTrkNdof_, hTrkPhi_, hTrkPt_, hVertex_ndof_, hVertex_rho_, hVertex_x_, hVertex_y_, hVertex_z_, hVertex_z_bs_, mps_fire::i, MonitorElement::setBinLabel(), DQMStore::IBooker::setCurrentFolder(), globals_cff::x1, and globals_cff::x2.

172  {
173  // Book histograms if needed.
174  iBooker.setCurrentFolder("Physics/QcdUe");
175 
176  if (true) {
177  const int Nx = hltTrgUsedNames_.size();
178  const double x1 = -0.5;
179  const double x2 = Nx - 0.5;
180  h2TrigCorr_ = iBooker.book2D("h2TriCorr", "Trigger bit x vs y;y&&!x;x&&y",
181  Nx, x1, x2, Nx, x1, x2);
182  for (size_t i = 1; i <= hltTrgUsedNames_.size(); ++i) {
185  }
186  TH1 *h = h2TrigCorr_->getTH1();
187  if (h) h->SetStats(false);
188  }
189  book1D(iBooker, hNevts_, "hNevts", "number of events", 2, 0, 2);
190  book1D(iBooker, hNtrackerLayer_, "hNtrackerLayer",
191  "number of tracker layers;multiplicity", 20, -0.5, 19.5);
192  book1D(iBooker, hNtrackerPixelLayer_, "hNtrackerPixelLayer",
193  "number of pixel layers;multiplicity", 10, -0.5, 9.5);
194  book1D(iBooker, hNtrackerStripPixelLayer_, "hNtrackerStripPixelLayer",
195  "number of strip + pixel layers;multiplicity", 30, -0.5, 39.5);
196  book1D(iBooker, hRatioPtErrorPt_, "hRatioPtErrorPt",
197  "ratio of pT error and track pT", 25, 0., 5.);
198  book1D(iBooker, hTrkPt_, "hTrkPt", "pT of all tracks", 50, 0., 50.);
199  book1D(iBooker, hTrkEta_, "hTrkEta", "eta of all tracks", 40, -4., 4.);
200  book1D(iBooker, hTrkPhi_, "hTrkPhi", "phi of all tracks", 40, -4., 4.);
201  book1D(
202  iBooker, hRatioDxySigmaDxyBS_, "hRatioDxySigmaDxyBS",
203  "ratio of transverse impact parameter and its significance wrt beam spot",
204  60, -10., 10);
205  book1D(iBooker, hRatioDxySigmaDxyPV_, "hRatioDxySigmaDxyPV",
206  "ratio of transverse impact parameter and its significance wrt PV", 60,
207  -10., 10);
208  book1D(iBooker, hRatioDzSigmaDzBS_, "hRatioDzSigmaDzBS",
209  "ratio of longitudinal impact parameter and its significance wrt beam "
210  "spot",
211  80, -20., 20);
212  book1D(iBooker, hRatioDzSigmaDzPV_, "hRatioDzSigmaDzPV",
213  "ratio of longitudinal impact parameter and its significance wrt PV",
214  80, -20., 20);
215  book1D(iBooker, hTrkChi2_, "hTrkChi2", "track chi2", 30, 0., 30);
216  book1D(iBooker, hTrkNdof_, "hTrkNdof", "track NDOF", 100, 0, 100);
217 
218  book1D(iBooker, hNgoodTrk_, "hNgoodTrk", "number of good tracks", 50, -0.5,
219  49.5);
220 
221  book1D(iBooker, hGoodTrkPt500_, "hGoodTrkPt500",
222  "pT of all good tracks with pT > 500 MeV", 50, 0., 50.);
223  book1D(iBooker, hGoodTrkEta500_, "hGoodTrkEta500",
224  "eta of all good tracks pT > 500 MeV", 40, -4., 4.);
225  book1D(iBooker, hGoodTrkPhi500_, "hGoodTrkPhi500",
226  "phi of all good tracks pT > 500 MeV", 40, -4., 4.);
227 
228  book1D(iBooker, hGoodTrkPt900_, "hGoodTrkPt900",
229  "pT of all good tracks with pT > 900 MeV", 50, 0., 50.);
230  book1D(iBooker, hGoodTrkEta900_, "hGoodTrkEta900",
231  "eta of all good tracks pT > 900 MeV", 40, -4., 4.);
232  book1D(iBooker, hGoodTrkPhi900_, "hGoodTrkPhi900",
233  "phi of all good tracks pT > 900 MeV", 40, -4., 4.);
234 
235  book1D(iBooker, hNvertices_, "hNvertices", "number of vertices", 5, -0.5,
236  4.5);
237  book1D(iBooker, hVertex_z_, "hVertex_z", "z position of vertex; z[cm]", 200,
238  -50, 50);
239  book1D(iBooker, hVertex_y_, "hVertex_y", "y position of vertex; y[cm]", 100,
240  -5, 5);
241  book1D(iBooker, hVertex_x_, "hVertex_x", "x position of vertex; x[cm]", 100,
242  -5, 5);
243  book1D(iBooker, hVertex_ndof_, "hVertex_ndof", "ndof of vertex", 100, 0, 100);
244  book1D(iBooker, hVertex_rho_, "hVertex_rho", "rho of vertex", 100, 0, 5);
245  book1D(iBooker, hVertex_z_bs_, "hVertex_z_bs",
246  "z position of vertex from beamspot; z[cm]", 200, -50, 50);
247 
248  book1D(iBooker, hBeamSpot_z_, "hBeamSpot_z", "z position of beamspot; z[cm]",
249  100, -20, 20);
250  book1D(iBooker, hBeamSpot_y_, "hBeamSpot_y", "y position of beamspot; y[cm]",
251  50, -10, 10);
252  book1D(iBooker, hBeamSpot_x_, "hBeamSpot_x", "x position of beamspot; x[cm]",
253  50, -10, 10);
254 
255  if (true) {
256  const int Nx = 25;
257  const double x1 = 0.0;
258  const double x2 = 50.0;
259  book1D(iBooker, hLeadingTrack_pTSpectrum_, "hLeadingTrack_pTSpectrum",
260  "pT spectrum of leading track;pT(GeV/c)", Nx, x1, x2);
262  "hLeadingChargedJet_pTSpectrum",
263  "pT spectrum of leading track jet;pT(GeV/c)", Nx, x1, x2);
264  }
265 
266  if (true) {
267  const int Nx = 24;
268  const double x1 = -4.;
269  const double x2 = 4.;
270  book1D(iBooker, hLeadingTrack_phiSpectrum_, "hLeadingTrack_phiSpectrum",
271  "#phi spectrum of leading track;#phi", Nx, x1, x2);
273  "hLeadingChargedJet_phiSpectrum",
274  "#phi spectrum of leading track jet;#phi", Nx, x1, x2);
275  }
276 
277  if (true) {
278  const int Nx = 24;
279  const double x1 = -4.;
280  const double x2 = 4.;
281  book1D(iBooker, hLeadingTrack_etaSpectrum_, "hLeadingTrack_etaSpectrum",
282  "#eta spectrum of leading track;#eta", Nx, x1, x2);
284  "hLeadingChargedJet_etaSpectrum",
285  "#eta spectrum of leading track jet;#eta", Nx, x1, x2);
286  }
287 
288  if (true) {
289  const int Nx = 75;
290  const double x1 = 0.0;
291  const double x2 = 75.0;
292  const double y1 = 0.;
293  const double y2 = 10.;
295  "hdNdEtadPhi_pTMax_Toward500",
296  "Average number of tracks (pT > 500 MeV) in toward region vs "
297  "leading track pT;pT(GeV/c);dN/d#eta d#phi",
298  Nx, x1, x2, y1, y2, false, false);
300  "hdNdEtadPhi_pTMax_Transverse500",
301  "Average number of tracks (pT > 500 MeV) in transverse region "
302  "vs leading track pT;pT(GeV/c);dN/d#eta d#phi",
303  Nx, x1, x2, y1, y2, false, false);
305  "hdNdEtadPhi_pTMax_Away500",
306  "Average number of tracks (pT > 500 MeV) in away region vs "
307  "leading track pT;pT(GeV/c);dN/d#eta d#phi",
308  Nx, x1, x2, y1, y2, false, false);
310  "hdNdEtadPhi_trackJet_Toward500",
311  "Average number of tracks (pT > 500 MeV) in toward region vs "
312  "leading track jet pT;pT(GeV/c);dN/d#eta d#phi",
313  Nx, x1, x2, y1, y2);
315  "hdNdEtadPhi_trackJet_Transverse500",
316  "Average number of tracks (pT > 500 MeV) in transverse region "
317  "vs leading track jet pT;pT(GeV/c);dN/d#eta d#phi",
318  Nx, x1, x2, y1, y2, false, false);
320  "hdNdEtadPhi_trackJet_Away500",
321  "Average number of tracks (pT > 500 MeV) in away region vs "
322  "leading track jet pT;pT(GeV/c);dN/d#eta d#phi",
323  Nx, x1, x2, y1, y2, false, false);
324 
326  "hpTSumdEtadPhi_pTMax_Toward500",
327  "Average number of tracks (pT > 500 MeV) in toward region vs "
328  "leading track pT;pT(GeV/c);dpTSum/d#eta d#phi",
329  Nx, x1, x2, y1, y2, false, false);
331  "hpTSumdEtadPhi_pTMax_Transverse500",
332  "Average number of tracks (pT > 500 MeV) in transverse region "
333  "vs leading track pT;pT(GeV/c);dpTSum/d#eta d#phi",
334  Nx, x1, x2, y1, y2, false, false);
336  "hpTSumdEtadPhi_pTMax_Away500",
337  "Average number of tracks (pT > 500 MeV) in away region vs "
338  "leading track pT;pT(GeV/c);dpTSum/d#eta d#phi",
339  Nx, x1, x2, y1, y2, false, false);
341  "hpTSumdEtadPhi_trackJet_Toward500",
342  "Average number of tracks (pT > 500 MeV) in toward region vs "
343  "leading track jet pT;pT(GeV/c);dpTSum/d#eta d#phi",
344  Nx, x1, x2, y1, y2, false, false);
346  "hpTSumdEtadPhi_trackJet_Transverse500",
347  "Average number of tracks (pT > 500 MeV) in transverse region "
348  "vs leading track jet pT;pT(GeV/c);dpTSum/d#eta d#phi",
349  Nx, x1, x2, y1, y2, false, false);
351  "hpTSumdEtadPhi_trackJet_Away500",
352  "Average number of tracks (pT > 500 MeV) in away region vs "
353  "leading track jet pT;pT(GeV/c);dpTSum/d#eta d#phi",
354  Nx, x1, x2, y1, y2, false, false);
355 
357  "hdNdEtadPhi_pTMax_Toward900",
358  "Average number of tracks (pT > 900 MeV) in toward region vs "
359  "leading track pT;pT(GeV/c);dN/d#eta d#phi",
360  Nx, x1, x2, y1, y2, false, false);
362  "hdNdEtadPhi_pTMax_Transverse900",
363  "Average number of tracks (pT > 900 MeV) in transverse region "
364  "vs leading track pT;pT(GeV/c);dN/d#eta d#phi",
365  Nx, x1, x2, y1, y2, false, false);
367  "hdNdEtadPhi_pTMax_Away900",
368  "Average number of tracks (pT > 900 MeV) in away region vs "
369  "leading track pT;pT(GeV/c);dN/d#eta d#phi",
370  Nx, x1, x2, y1, y2, false, false);
372  "hdNdEtadPhi_trackJet_Toward900",
373  "Average number of tracks (pT > 900 MeV) in toward region vs "
374  "leading track jet pT;pT(GeV/c);dN/d#eta d#phi",
375  Nx, x1, x2, y1, y2);
377  "hdNdEtadPhi_trackJet_Transverse900",
378  "Average number of tracks (pT > 900 MeV) in transverse region "
379  "vs leading track jet pT;pT(GeV/c);dN/d#eta d#phi",
380  Nx, x1, x2, y1, y2, false, false);
382  "hdNdEtadPhi_trackJet_Away900",
383  "Average number of tracks (pT > 900 MeV) in away region vs "
384  "leading track jet pT;pT(GeV/c);dN/d#eta d#phi",
385  Nx, x1, x2, y1, y2, false, false);
386 
388  "hpTSumdEtadPhi_pTMax_Toward900",
389  "Average number of tracks (pT > 900 MeV) in toward region vs "
390  "leading track pT;pT(GeV/c);dpTSum/d#eta d#phi",
391  Nx, x1, x2, y1, y2, false, false);
393  "hpTSumdEtadPhi_pTMax_Transverse900",
394  "Average number of tracks (pT > 900 MeV) in transverse region "
395  "vs leading track pT;pT(GeV/c);dpTSum/d#eta d#phi",
396  Nx, x1, x2, y1, y2, false, false);
398  "hpTSumdEtadPhi_pTMax_Away900",
399  "Average number of tracks (pT > 900 MeV) in away region vs "
400  "leading track pT;pT(GeV/c);dpTSum/d#eta d#phi",
401  Nx, x1, x2, y1, y2, false, false);
403  "hpTSumdEtadPhi_trackJet_Toward900",
404  "Average number of tracks (pT > 900 MeV) in toward region vs "
405  "leading track jet pT;pT(GeV/c);dpTSum/d#eta d#phi",
406  Nx, x1, x2, y1, y2, false, false);
408  "hpTSumdEtadPhi_trackJet_Transverse900",
409  "Average number of tracks (pT > 900 MeV) in transverse region "
410  "vs leading track jet pT;pT(GeV/c);dpTSum/d#eta d#phi",
411  Nx, x1, x2, y1, y2, false, false);
413  "hpTSumdEtadPhi_trackJet_Away900",
414  "Average number of tracks (pT > 900 MeV) in away region vs "
415  "leading track jet pT;pT(GeV/c);dpTSum/d#eta d#phi",
416  Nx, x1, x2, y1, y2, false, false);
417  }
418 
419  if (true) {
420  const int Nx = 20;
421  const double x1 = 0.0;
422  const double x2 = 20.0;
423 
424  book1D(iBooker, hChargedJetMulti_, "hChargedJetMulti",
425  "Charged jet multiplicity;multiplicities", Nx, x1, x2);
426  }
427 
428  if (true) {
429  const int Nx = 60;
430  const double x1 = -180.0;
431  const double x2 = 180.0;
432 
433  book1D(iBooker, hdPhi_maxpTTrack_tracks_, "hdPhi_maxpTTrack_tracks",
434  "delta phi between leading tracks and other "
435  "tracks;#Delta#phi(leading track-track)",
436  Nx, x1, x2);
437  book1D(iBooker, hdPhi_chargedJet_tracks_, "hdPhi_chargedJet_tracks",
438  "delta phi between leading charged jet and "
439  "tracks;#Delta#phi(leading charged jet-track)",
440  Nx, x1, x2);
441  }
442 }
std::vector< MonitorElement * > hdNdEtadPhi_trackJet_Toward900_
Definition: QcdUeDQM.h:313
std::vector< MonitorElement * > hpTSumdEtadPhi_trackJet_Transverse900_
Definition: QcdUeDQM.h:367
std::vector< MonitorElement * > hTrkNdof_
Definition: QcdUeDQM.h:141
std::vector< MonitorElement * > hGoodTrkPhi500_
Definition: QcdUeDQM.h:132
std::vector< MonitorElement * > hdNdEtadPhi_pTMax_Transverse500_
Definition: QcdUeDQM.h:205
std::vector< MonitorElement * > hpTSumdEtadPhi_pTMax_Away900_
Definition: QcdUeDQM.h:342
std::vector< MonitorElement * > hLeadingChargedJet_phiSpectrum_
Definition: QcdUeDQM.h:194
std::vector< MonitorElement * > hTrkChi2_
Definition: QcdUeDQM.h:140
std::vector< MonitorElement * > hVertex_z_bs_
Definition: QcdUeDQM.h:149
std::vector< MonitorElement * > hGoodTrkEta900_
Definition: QcdUeDQM.h:134
std::vector< MonitorElement * > hGoodTrkPt900_
Definition: QcdUeDQM.h:133
std::vector< MonitorElement * > hpTSumdEtadPhi_trackJet_Away500_
Definition: QcdUeDQM.h:280
std::vector< MonitorElement * > hpTSumdEtadPhi_trackJet_Away900_
Definition: QcdUeDQM.h:370
TH1 * getTH1() const
void bookProfile(DQMStore::IBooker &, std::vector< MonitorElement * > &mes, const std::string &name, const std::string &title, int nx, double x1, double x2, double y1, double y2, bool sumw2=true, bool sbox=true)
Definition: QcdUeDQM.cc:522
std::vector< std::string > hltTrgUsedNames_
Definition: QcdUeDQM.h:113
void setBinLabel(int bin, const std::string &label, int axis=1)
set bin label for x, y or z axis (axis=1, 2, 3 respectively)
std::vector< MonitorElement * > hTrkEta_
Definition: QcdUeDQM.h:127
std::vector< MonitorElement * > hdNdEtadPhi_trackJet_Away500_
Definition: QcdUeDQM.h:234
std::vector< MonitorElement * > hpTSumdEtadPhi_pTMax_Transverse500_
Definition: QcdUeDQM.h:249
std::vector< MonitorElement * > hLeadingChargedJet_etaSpectrum_
Definition: QcdUeDQM.h:190
std::vector< MonitorElement * > hdNdEtadPhi_pTMax_Away900_
Definition: QcdUeDQM.h:302
std::vector< MonitorElement * > hLeadingTrack_etaSpectrum_
Definition: QcdUeDQM.h:157
std::vector< MonitorElement * > hLeadingChargedJet_pTSpectrum_
Definition: QcdUeDQM.h:166
std::vector< MonitorElement * > hGoodTrkPhi900_
Definition: QcdUeDQM.h:135
std::vector< MonitorElement * > hpTSumdEtadPhi_trackJet_Toward500_
Definition: QcdUeDQM.h:265
std::vector< MonitorElement * > hVertex_ndof_
Definition: QcdUeDQM.h:147
std::vector< MonitorElement * > hVertex_rho_
Definition: QcdUeDQM.h:148
std::vector< MonitorElement * > hNtrackerLayer_
Definition: QcdUeDQM.h:122
std::vector< MonitorElement * > hRatioDzSigmaDzBS_
Definition: QcdUeDQM.h:138
MonitorElement * h2TrigCorr_
Definition: QcdUeDQM.h:119
std::vector< MonitorElement * > hVertex_y_
Definition: QcdUeDQM.h:145
std::vector< MonitorElement * > hpTSumdEtadPhi_pTMax_Toward500_
Definition: QcdUeDQM.h:241
std::vector< MonitorElement * > hpTSumdEtadPhi_trackJet_Toward900_
Definition: QcdUeDQM.h:355
std::vector< MonitorElement * > hdNdEtadPhi_trackJet_Away900_
Definition: QcdUeDQM.h:324
std::vector< MonitorElement * > hVertex_x_
Definition: QcdUeDQM.h:146
std::vector< MonitorElement * > hLeadingTrack_phiSpectrum_
Definition: QcdUeDQM.h:159
std::vector< MonitorElement * > hChargedJetMulti_
Definition: QcdUeDQM.h:162
std::vector< MonitorElement * > hpTSumdEtadPhi_pTMax_Toward900_
Definition: QcdUeDQM.h:331
std::vector< MonitorElement * > hdNdEtadPhi_trackJet_Transverse900_
Definition: QcdUeDQM.h:321
std::vector< MonitorElement * > hdNdEtadPhi_pTMax_Transverse900_
Definition: QcdUeDQM.h:295
std::vector< MonitorElement * > hGoodTrkPt500_
Definition: QcdUeDQM.h:130
std::vector< MonitorElement * > hdNdEtadPhi_pTMax_Toward500_
Definition: QcdUeDQM.h:199
std::vector< MonitorElement * > hTrkPhi_
Definition: QcdUeDQM.h:128
std::vector< MonitorElement * > hdNdEtadPhi_pTMax_Toward900_
Definition: QcdUeDQM.h:289
std::vector< MonitorElement * > hdPhi_maxpTTrack_tracks_
Definition: QcdUeDQM.h:181
std::vector< MonitorElement * > hdNdEtadPhi_trackJet_Toward500_
Definition: QcdUeDQM.h:223
std::vector< MonitorElement * > hNvertices_
Definition: QcdUeDQM.h:143
std::vector< MonitorElement * > hdNdEtadPhi_pTMax_Away500_
Definition: QcdUeDQM.h:212
std::vector< MonitorElement * > hpTSumdEtadPhi_trackJet_Transverse500_
Definition: QcdUeDQM.h:277
std::vector< MonitorElement * > hNgoodTrk_
Definition: QcdUeDQM.h:129
void setCurrentFolder(const std::string &fullpath)
Definition: DQMStore.cc:279
std::vector< MonitorElement * > hpTSumdEtadPhi_pTMax_Away500_
Definition: QcdUeDQM.h:252
MonitorElement * book2D(Args &&...args)
Definition: DQMStore.h:136
std::vector< MonitorElement * > hBeamSpot_y_
Definition: QcdUeDQM.h:152
std::vector< MonitorElement * > hLeadingTrack_pTSpectrum_
Definition: QcdUeDQM.h:155
std::vector< MonitorElement * > hRatioDxySigmaDxyBS_
Definition: QcdUeDQM.h:136
std::vector< MonitorElement * > hRatioDxySigmaDxyPV_
Definition: QcdUeDQM.h:137
std::vector< MonitorElement * > hdPhi_chargedJet_tracks_
Definition: QcdUeDQM.h:186
std::vector< MonitorElement * > hNtrackerStripPixelLayer_
Definition: QcdUeDQM.h:124
std::vector< MonitorElement * > hNevts_
Definition: QcdUeDQM.h:121
std::vector< MonitorElement * > hBeamSpot_x_
Definition: QcdUeDQM.h:153
void book1D(DQMStore::IBooker &, std::vector< MonitorElement * > &mes, const std::string &name, const std::string &title, int nx, double x1, double x2, bool sumw2=true, bool sbox=true)
Definition: QcdUeDQM.cc:498
std::vector< MonitorElement * > hTrkPt_
Definition: QcdUeDQM.h:126
std::vector< MonitorElement * > hGoodTrkEta500_
Definition: QcdUeDQM.h:131
std::vector< MonitorElement * > hdNdEtadPhi_trackJet_Transverse500_
Definition: QcdUeDQM.h:231
std::vector< MonitorElement * > hVertex_z_
Definition: QcdUeDQM.h:144
std::vector< MonitorElement * > hRatioDzSigmaDzPV_
Definition: QcdUeDQM.h:139
std::vector< MonitorElement * > hRatioPtErrorPt_
Definition: QcdUeDQM.h:125
std::vector< MonitorElement * > hNtrackerPixelLayer_
Definition: QcdUeDQM.h:123
std::vector< MonitorElement * > hBeamSpot_z_
Definition: QcdUeDQM.h:151
std::vector< MonitorElement * > hpTSumdEtadPhi_pTMax_Transverse900_
Definition: QcdUeDQM.h:339
void QcdUeDQM::bookProfile ( DQMStore::IBooker iBooker,
std::vector< MonitorElement * > &  mes,
const std::string &  name,
const std::string &  title,
int  nx,
double  x1,
double  x2,
double  y1,
double  y2,
bool  sumw2 = true,
bool  sbox = true 
)
private

Definition at line 522 of file QcdUeDQM.cc.

References DQMStore::IBooker::bookProfile(), MillePedeFileConverter_cfg::e, hltTrgUsedNames_, mps_fire::i, DQMStore::IBooker::setCurrentFolder(), and AlCaHLTBitMon_QueryRunRegistry::string.

Referenced by bookHistograms().

526  {
527  // Book Profile histos.
528 
529  for (size_t i = 0; i < hltTrgUsedNames_.size(); ++i) {
530  std::string folderName = "Physics/QcdUe/" + hltTrgUsedNames_.at(i);
531  iBooker.setCurrentFolder(folderName);
532  MonitorElement *e = iBooker.bookProfile(
533  Form("%s_%s", name.c_str(), hltTrgUsedNames_.at(i).c_str()),
534  Form("%s: %s", hltTrgUsedNames_.at(i).c_str(), title.c_str()), nx, x1,
535  x2, y1, y2, " ");
536  mes.push_back(e);
537  }
538 }
MonitorElement * bookProfile(Args &&...args)
Definition: DQMStore.h:160
std::vector< std::string > hltTrgUsedNames_
Definition: QcdUeDQM.h:113
void setCurrentFolder(const std::string &fullpath)
Definition: DQMStore.cc:279
void QcdUeDQM::dqmBeginRun ( const edm::Run run,
const edm::EventSetup iSetup 
)
override

Definition at line 115 of file QcdUeDQM.cc.

References gather_cfg::cout, CP, runEdmFileComparison::found, hltConfig, hltProcNames_, hltResName_, hltTrgBits_, hltTrgDeci_, hltTrgNames_, hltTrgUsedNames_, hltUsedResName_, mps_fire::i, HLTConfigProvider::init(), isHltConfigSuccessful_, HLTConfigProvider::size(), and HLTConfigProvider::triggerName().

115  {
116  // indicating change of HLT cfg at run boundries
117  // for HLTConfigProvider::init()
118  bool isHltCfgChange = false;
119  isHltConfigSuccessful_ = false; // init
120 
121  string teststr;
122  for (size_t i = 0; i < hltProcNames_.size(); ++i) {
123  if (i > 0) teststr += ", ";
124  teststr += hltProcNames_.at(i);
125  if (hltConfig.init(run, iSetup, hltProcNames_.at(i), isHltCfgChange)) {
126  isHltConfigSuccessful_ = true;
128  if (hltResName_.find(':') == string::npos)
129  hltUsedResName_ += "::";
130  else
131  hltUsedResName_ += ":";
133  break;
134  }
135  }
136 
137  if (!isHltConfigSuccessful_) return;
138 
139  // setup "Any" bit
140  hltTrgBits_.clear();
141  hltTrgBits_.push_back(-1);
142  hltTrgDeci_.clear();
143  hltTrgDeci_.push_back(true);
144  hltTrgUsedNames_.clear();
145  hltTrgUsedNames_.push_back("Any");
146 
147  // figure out relation of trigger name to trigger bit and store used trigger
148  // names/bits
149  for (size_t i = 0; i < hltTrgNames_.size(); ++i) {
150  const string &n1(hltTrgNames_.at(i));
151  // unsigned int hlt_prescale = hltConfig.prescaleValue(iSetup, n1);
152  // cout<<"trigger=="<<n1<<"presc=="<<hlt_prescale<<endl;
153  bool found = false;
154  for (size_t j = 0; j < hltConfig.size(); ++j) {
155  const string &n2(hltConfig.triggerName(j));
156  if (n2 == n1) {
157  hltTrgBits_.push_back(j);
158  hltTrgUsedNames_.push_back(n1);
159  hltTrgDeci_.push_back(false);
160  found = true;
161  break;
162  }
163  }
164  if (!found) {
165  CP(2) cout << "Could not find trigger bit" << endl;
166  }
167  }
169 }
unsigned int size() const
number of trigger paths in trigger table
const std::string & triggerName(unsigned int triggerIndex) const
std::string hltUsedResName_
Definition: QcdUeDQM.h:114
std::vector< std::string > hltTrgUsedNames_
Definition: QcdUeDQM.h:113
void find(edm::Handle< EcalRecHitCollection > &hits, DetId thisDet, std::vector< EcalRecHitCollection::const_iterator > &hit, bool debug=false)
Definition: FindCaloHit.cc:20
bool isHltConfigSuccessful_
Definition: QcdUeDQM.h:64
std::vector< std::string > hltTrgNames_
Definition: QcdUeDQM.h:109
std::vector< std::string > hltProcNames_
Definition: QcdUeDQM.h:108
std::string hltResName_
Definition: QcdUeDQM.h:107
std::vector< int > hltTrgBits_
Definition: QcdUeDQM.h:111
HLTConfigProvider hltConfig
Definition: QcdUeDQM.h:105
bool init(const edm::Run &iRun, const edm::EventSetup &iSetup, const std::string &processName, bool &changed)
d&#39;tor
#define CP(level)
Definition: QcdUeDQM.cc:44
std::vector< bool > hltTrgDeci_
Definition: QcdUeDQM.h:112
void QcdUeDQM::fill1D ( std::vector< TH1F * > &  hs,
double  val,
double  w = 1. 
)
private

Definition at line 540 of file QcdUeDQM.cc.

References hltTrgDeci_, and mps_fire::i.

Referenced by analyze(), fillChargedJetSpectra(), fillpTMaxRelated(), fillUE_with_ChargedJets(), fillUE_with_MaxpTtrack(), fillVtxPlots(), and trackSelection().

540  {
541  // Loop over histograms and fill if trigger has fired.
542 
543  for (size_t i = 0; i < hs.size(); ++i) {
544  if (!hltTrgDeci_.at(i)) continue;
545  hs.at(i)->Fill(val, w);
546  }
547 }
const double w
Definition: UKUtility.cc:23
std::vector< bool > hltTrgDeci_
Definition: QcdUeDQM.h:112
void QcdUeDQM::fill1D ( std::vector< MonitorElement * > &  mes,
double  val,
double  w = 1. 
)
private

Definition at line 550 of file QcdUeDQM.cc.

References hltTrgDeci_, and mps_fire::i.

551  {
552  // Loop over histograms and fill if trigger has fired.
553 
554  for (size_t i = 0; i < mes.size(); ++i) {
555  if (!hltTrgDeci_.at(i)) continue;
556  mes.at(i)->Fill(val, w);
557  }
558 }
const double w
Definition: UKUtility.cc:23
std::vector< bool > hltTrgDeci_
Definition: QcdUeDQM.h:112
void QcdUeDQM::fill2D ( std::vector< TH2F * > &  hs,
double  valx,
double  valy,
double  w = 1. 
)
private

Definition at line 572 of file QcdUeDQM.cc.

References hltTrgDeci_, and mps_fire::i.

573  {
574  // Loop over histograms and fill if trigger has fired.
575 
576  for (size_t i = 0; i < hs.size(); ++i) {
577  if (!hltTrgDeci_.at(i)) continue;
578  hs.at(i)->Fill(valx, valy, w);
579  }
580 }
const double w
Definition: UKUtility.cc:23
std::vector< bool > hltTrgDeci_
Definition: QcdUeDQM.h:112
void QcdUeDQM::fill2D ( std::vector< MonitorElement * > &  mes,
double  valx,
double  valy,
double  w = 1. 
)
private

Definition at line 583 of file QcdUeDQM.cc.

References hltTrgDeci_, and mps_fire::i.

584  {
585  // Loop over histograms and fill if trigger has fired.
586 
587  for (size_t i = 0; i < mes.size(); ++i) {
588  if (!hltTrgDeci_.at(i)) continue;
589  mes.at(i)->Fill(valx, valy, w);
590  }
591 }
const double w
Definition: UKUtility.cc:23
std::vector< bool > hltTrgDeci_
Definition: QcdUeDQM.h:112
void QcdUeDQM::fill3D ( std::vector< TH3F * > &  hs,
int  gbin,
double  w = 1. 
)
private
void QcdUeDQM::fillChargedJetSpectra ( const edm::Handle< reco::TrackJetCollection trackJets)
private

Definition at line 773 of file QcdUeDQM.cc.

References f, fill1D(), hChargedJetMulti_, hLeadingChargedJet_etaSpectrum_, hLeadingChargedJet_phiSpectrum_, and hLeadingChargedJet_pTSpectrum_.

Referenced by analyze().

774  {
775  fill1D(hChargedJetMulti_, trackJets->size());
776  for (reco::TrackJetCollection::const_iterator f = trackJets->begin();
777  f != trackJets->end(); f++) {
778  if (f != trackJets->begin()) continue;
782  }
783 }
void fill1D(std::vector< TH1F * > &hs, double val, double w=1.)
Definition: QcdUeDQM.cc:540
std::vector< MonitorElement * > hLeadingChargedJet_phiSpectrum_
Definition: QcdUeDQM.h:194
std::vector< MonitorElement * > hLeadingChargedJet_etaSpectrum_
Definition: QcdUeDQM.h:190
std::vector< MonitorElement * > hLeadingChargedJet_pTSpectrum_
Definition: QcdUeDQM.h:166
double f[11][100]
std::vector< MonitorElement * > hChargedJetMulti_
Definition: QcdUeDQM.h:162
void QcdUeDQM::fillHltBits ( const edm::Event iEvent,
const edm::EventSetup iSetup 
)
private

Definition at line 1074 of file QcdUeDQM.cc.

References edm::HLTGlobalStatus::accept(), MonitorElement::Fill(), getProduct(), h2TrigCorr_, hltTrgBits_, hltTrgDeci_, hltUsedResName_, mps_fire::i, and findQualityFiles::size.

Referenced by analyze().

1074  {
1075  // Fill HLT trigger bits.
1076 
1077  Handle<TriggerResults> triggerResultsHLT;
1078  getProduct(hltUsedResName_, triggerResultsHLT, iEvent);
1079 
1080  /* const unsigned int ntrigs(triggerResultsHLT.product()->size());
1081  if( ntrigs != 0 ) {
1082  const edm::TriggerNames & triggerNames =
1083  iEvent.triggerNames(*triggerResultsHLT);
1084  for (unsigned int j=0; j!=ntrigs; j++) {
1085  // if(triggerResultsHLT->accept(j)){
1086  // unsigned int hlt_prescale = hltConfig_.prescaleValue(iEvent, iSetup,
1087  triggerName);
1088  cout<<"trigger fired"<<triggerNames.triggerName(j)<<endl;
1089  for(unsigned int itrigName = 0; itrigName < hltTrgNames_.size();
1090  itrigName++ ) {
1091  unsigned int hlt_prescale = hltConfig.prescaleValue(iEvent, iSetup,
1092  hltTrgNames_[itrigName]);
1093 
1094  if(triggerNames.triggerIndex(hltTrgNames_[itrigName]) >= (unsigned
1095  int)ntrigs ) continue;
1096  // if(
1097  triggerResultsHLT->accept(triggerNames.triggerIndex(hltTrgNames_[itrigName]))
1098  )cout<<hltTrgNames_[itrigName]<<endl;
1099 
1100  }
1101  }
1102  }
1103  // }
1104  */
1105  for (size_t i = 0; i < hltTrgBits_.size(); ++i) {
1106  if (hltTrgBits_.at(i) < 0) continue; // ignore unknown trigger
1107  size_t tbit = hltTrgBits_.at(i);
1108  if (tbit < triggerResultsHLT->size()) {
1109  hltTrgDeci_[i] = triggerResultsHLT->accept(tbit);
1110  }
1111  }
1112  // fill correlation histogram
1113  for (size_t i = 0; i < hltTrgBits_.size(); ++i) {
1114  if (hltTrgDeci_.at(i)) h2TrigCorr_->Fill(i, i);
1115  for (size_t j = i + 1; j < hltTrgBits_.size(); ++j) {
1116  if (hltTrgDeci_.at(i) && hltTrgDeci_.at(j)) h2TrigCorr_->Fill(i, j);
1117  if (hltTrgDeci_.at(i) && !hltTrgDeci_.at(j)) h2TrigCorr_->Fill(j, i);
1118  }
1119  }
1120 }
size
Write out results.
void getProduct(const std::string name, edm::Handle< TYPE > &prod, const edm::Event &event) const
Definition: QcdUeDQM.h:409
std::string hltUsedResName_
Definition: QcdUeDQM.h:114
bool accept() const
Has at least one path accepted the event?
void Fill(long long x)
MonitorElement * h2TrigCorr_
Definition: QcdUeDQM.h:119
std::vector< int > hltTrgBits_
Definition: QcdUeDQM.h:111
std::vector< bool > hltTrgDeci_
Definition: QcdUeDQM.h:112
void QcdUeDQM::fillProfile ( std::vector< TProfile * > &  hs,
double  valx,
double  valy,
double  w = 1. 
)
private

Definition at line 593 of file QcdUeDQM.cc.

References hltTrgDeci_, and mps_fire::i.

Referenced by fillUE_with_ChargedJets(), and fillUE_with_MaxpTtrack().

594  {
595  // Loop over histograms and fill if trigger has fired.
596 
597  for (size_t i = 0; i < hs.size(); ++i) {
598  if (!hltTrgDeci_.at(i)) continue;
599  hs.at(i)->Fill(valx, valy, w);
600  }
601 }
const double w
Definition: UKUtility.cc:23
std::vector< bool > hltTrgDeci_
Definition: QcdUeDQM.h:112
void QcdUeDQM::fillProfile ( std::vector< MonitorElement * > &  mes,
double  valx,
double  valy,
double  w = 1. 
)
private

Definition at line 604 of file QcdUeDQM.cc.

References hltTrgDeci_, mps_fire::i, w, and y.

605  {
606  // Loop over histograms and fill if trigger has fired.
607 
608  for (size_t i = 0; i < mes.size(); ++i) {
609  if (!hltTrgDeci_.at(i)) continue;
610  const double y = valy * w;
611  mes.at(i)->Fill(valx, y);
612  }
613 }
const double w
Definition: UKUtility.cc:23
std::vector< bool > hltTrgDeci_
Definition: QcdUeDQM.h:112
void QcdUeDQM::fillpTMaxRelated ( const std::vector< const reco::Track * > &  track)
private

Definition at line 754 of file QcdUeDQM.cc.

References PVValHelper::eta, fill1D(), hGoodTrkEta500_, hGoodTrkEta900_, hGoodTrkPhi500_, hGoodTrkPhi900_, hGoodTrkPt500_, hGoodTrkPt900_, hLeadingTrack_etaSpectrum_, hLeadingTrack_phiSpectrum_, hLeadingTrack_pTSpectrum_, hNgoodTrk_, mps_fire::i, phi, and EnergyCorrector::pt.

Referenced by analyze().

754  {
755  fill1D(hNgoodTrk_, track.size());
756  if (!track.empty()) {
760  }
761  for (size_t i = 0; i < track.size(); i++) {
765  if (track[i]->pt() > 0.9) {
769  }
770  }
771 }
void fill1D(std::vector< TH1F * > &hs, double val, double w=1.)
Definition: QcdUeDQM.cc:540
std::vector< MonitorElement * > hGoodTrkPhi500_
Definition: QcdUeDQM.h:132
std::vector< MonitorElement * > hGoodTrkEta900_
Definition: QcdUeDQM.h:134
std::vector< MonitorElement * > hGoodTrkPt900_
Definition: QcdUeDQM.h:133
std::vector< MonitorElement * > hLeadingTrack_etaSpectrum_
Definition: QcdUeDQM.h:157
std::vector< MonitorElement * > hGoodTrkPhi900_
Definition: QcdUeDQM.h:135
std::vector< MonitorElement * > hLeadingTrack_phiSpectrum_
Definition: QcdUeDQM.h:159
std::vector< MonitorElement * > hGoodTrkPt500_
Definition: QcdUeDQM.h:130
std::vector< MonitorElement * > hNgoodTrk_
Definition: QcdUeDQM.h:129
std::vector< MonitorElement * > hLeadingTrack_pTSpectrum_
Definition: QcdUeDQM.h:155
std::vector< MonitorElement * > hGoodTrkEta500_
Definition: QcdUeDQM.h:131
void QcdUeDQM::fillUE_with_ChargedJets ( const std::vector< const reco::Track * > &  track,
const edm::Handle< reco::TrackJetCollection > &  trackJets 
)
private

Definition at line 892 of file QcdUeDQM.cc.

References hiPixelPairStep_cff::deltaPhi, fill1D(), fillProfile(), hdNdEtadPhi_trackJet_Away500_, hdNdEtadPhi_trackJet_Away900_, hdNdEtadPhi_trackJet_Toward500_, hdNdEtadPhi_trackJet_Toward900_, hdNdEtadPhi_trackJet_Transverse500_, hdNdEtadPhi_trackJet_Transverse900_, hdPhi_chargedJet_tracks_, hpTSumdEtadPhi_trackJet_Away500_, hpTSumdEtadPhi_trackJet_Away900_, hpTSumdEtadPhi_trackJet_Toward500_, hpTSumdEtadPhi_trackJet_Toward900_, hpTSumdEtadPhi_trackJet_Transverse500_, hpTSumdEtadPhi_trackJet_Transverse900_, mps_fire::i, reco::btau::jetPhi, phi, PI, EnergyCorrector::pt, and w.

Referenced by analyze().

894  {
895  double w = 0.119;
896  double nTrk500_TransReg = 0;
897  double nTrk500_AwayReg = 0;
898  double nTrk500_TowardReg = 0;
899 
900  double pTSum500_TransReg = 0;
901  double pTSum500_AwayReg = 0;
902  double pTSum500_TowardReg = 0;
903 
904  double nTrk900_TransReg = 0;
905  double nTrk900_AwayReg = 0;
906  double nTrk900_TowardReg = 0;
907 
908  double pTSum900_TransReg = 0;
909  double pTSum900_AwayReg = 0;
910  double pTSum900_TowardReg = 0;
911 
912  if (!(trackJets->empty()) && (trackJets->begin())->pt() > 1.) {
913  double jetPhi = (trackJets->begin())->phi();
914  for (size_t i = 0; i < track.size(); i++) {
915  double dphi = (180. / PI) * (deltaPhi(jetPhi, track[i]->phi()));
917  if (fabs(dphi) > 60. && fabs(dphi) < 120.) {
918  pTSum500_TransReg = pTSum500_TransReg + track[i]->pt();
919  nTrk500_TransReg++;
920  if (track[i]->pt() > 0.9) {
921  pTSum900_TransReg = pTSum900_TransReg + track[i]->pt();
922  nTrk900_TransReg++;
923  }
924  }
925 
926  if (fabs(dphi) > 120. && fabs(dphi) < 180.) {
927  pTSum500_AwayReg = pTSum500_AwayReg + track[i]->pt();
928  nTrk500_AwayReg++;
929  if (track[i]->pt() > 0.9) {
930  pTSum900_AwayReg = pTSum900_AwayReg + track[i]->pt();
931  nTrk900_AwayReg++;
932  }
933  }
934  if (fabs(dphi) < 60.) {
935  pTSum500_TowardReg = pTSum500_TowardReg + track[i]->pt();
936  nTrk500_TowardReg++;
937  if (track[i]->pt() > 0.9) {
938  pTSum900_TowardReg = pTSum900_TowardReg + track[i]->pt();
939  nTrk900_TowardReg++;
940  }
941  }
942  } // tracks loop
943 
944  } // leading track jet
945 
946  fillProfile(hdNdEtadPhi_trackJet_Toward500_, (trackJets->begin())->pt(),
947  nTrk500_TowardReg, w);
948  fillProfile(hdNdEtadPhi_trackJet_Transverse500_, (trackJets->begin())->pt(),
949  nTrk500_TransReg, w);
950  fillProfile(hdNdEtadPhi_trackJet_Away500_, (trackJets->begin())->pt(),
951  nTrk500_AwayReg, w);
952 
953  fillProfile(hpTSumdEtadPhi_trackJet_Toward500_, (trackJets->begin())->pt(),
954  pTSum500_TowardReg, w);
956  (trackJets->begin())->pt(), pTSum500_TransReg, w);
957  fillProfile(hpTSumdEtadPhi_trackJet_Away500_, (trackJets->begin())->pt(),
958  pTSum500_AwayReg, w);
959 
960  fillProfile(hdNdEtadPhi_trackJet_Toward900_, (trackJets->begin())->pt(),
961  nTrk900_TowardReg, w);
962  fillProfile(hdNdEtadPhi_trackJet_Transverse900_, (trackJets->begin())->pt(),
963  nTrk900_TransReg, w);
964  fillProfile(hdNdEtadPhi_trackJet_Away900_, (trackJets->begin())->pt(),
965  nTrk900_AwayReg, w);
966 
967  fillProfile(hpTSumdEtadPhi_trackJet_Toward900_, (trackJets->begin())->pt(),
968  pTSum900_TowardReg, w);
970  (trackJets->begin())->pt(), pTSum900_TransReg, w);
971  fillProfile(hpTSumdEtadPhi_trackJet_Away900_, (trackJets->begin())->pt(),
972  pTSum900_AwayReg, w);
973 }
std::vector< MonitorElement * > hdNdEtadPhi_trackJet_Toward900_
Definition: QcdUeDQM.h:313
std::vector< MonitorElement * > hpTSumdEtadPhi_trackJet_Transverse900_
Definition: QcdUeDQM.h:367
const double w
Definition: UKUtility.cc:23
void fill1D(std::vector< TH1F * > &hs, double val, double w=1.)
Definition: QcdUeDQM.cc:540
std::vector< MonitorElement * > hpTSumdEtadPhi_trackJet_Away500_
Definition: QcdUeDQM.h:280
std::vector< MonitorElement * > hpTSumdEtadPhi_trackJet_Away900_
Definition: QcdUeDQM.h:370
std::vector< MonitorElement * > hdNdEtadPhi_trackJet_Away500_
Definition: QcdUeDQM.h:234
void fillProfile(std::vector< TProfile * > &hs, double valx, double valy, double w=1.)
Definition: QcdUeDQM.cc:593
std::vector< MonitorElement * > hpTSumdEtadPhi_trackJet_Toward500_
Definition: QcdUeDQM.h:265
std::vector< MonitorElement * > hpTSumdEtadPhi_trackJet_Toward900_
Definition: QcdUeDQM.h:355
std::vector< MonitorElement * > hdNdEtadPhi_trackJet_Away900_
Definition: QcdUeDQM.h:324
#define PI
Definition: QcdUeDQM.h:36
std::vector< MonitorElement * > hdNdEtadPhi_trackJet_Transverse900_
Definition: QcdUeDQM.h:321
std::vector< MonitorElement * > hdNdEtadPhi_trackJet_Toward500_
Definition: QcdUeDQM.h:223
std::vector< MonitorElement * > hpTSumdEtadPhi_trackJet_Transverse500_
Definition: QcdUeDQM.h:277
std::vector< MonitorElement * > hdPhi_chargedJet_tracks_
Definition: QcdUeDQM.h:186
std::vector< MonitorElement * > hdNdEtadPhi_trackJet_Transverse500_
Definition: QcdUeDQM.h:231
void QcdUeDQM::fillUE_with_MaxpTtrack ( const std::vector< const reco::Track * > &  track)
private

Definition at line 810 of file QcdUeDQM.cc.

References hiPixelPairStep_cff::deltaPhi, fill1D(), fillProfile(), hdNdEtadPhi_pTMax_Away500_, hdNdEtadPhi_pTMax_Away900_, hdNdEtadPhi_pTMax_Toward500_, hdNdEtadPhi_pTMax_Toward900_, hdNdEtadPhi_pTMax_Transverse500_, hdNdEtadPhi_pTMax_Transverse900_, hdPhi_maxpTTrack_tracks_, hpTSumdEtadPhi_pTMax_Away500_, hpTSumdEtadPhi_pTMax_Away900_, hpTSumdEtadPhi_pTMax_Toward500_, hpTSumdEtadPhi_pTMax_Toward900_, hpTSumdEtadPhi_pTMax_Transverse500_, hpTSumdEtadPhi_pTMax_Transverse900_, mps_fire::i, phi, PI, EnergyCorrector::pt, and w.

Referenced by analyze().

811  {
812  double w = 0.119;
813  // double w = 1.;
814  double nTrk500_TransReg = 0;
815  double nTrk500_AwayReg = 0;
816  double nTrk500_TowardReg = 0;
817 
818  double pTSum500_TransReg = 0;
819  double pTSum500_AwayReg = 0;
820  double pTSum500_TowardReg = 0;
821 
822  double nTrk900_TransReg = 0;
823  double nTrk900_AwayReg = 0;
824  double nTrk900_TowardReg = 0;
825 
826  double pTSum900_TransReg = 0;
827  double pTSum900_AwayReg = 0;
828  double pTSum900_TowardReg = 0;
829  if (!track.empty()) {
830  if (track[0]->pt() > 1.) {
831  for (size_t i = 1; i < track.size(); i++) {
832  double dphi =
833  (180. / PI) * (deltaPhi(track[0]->phi(), track[i]->phi()));
835  if (fabs(dphi) > 60. && fabs(dphi) < 120.) {
836  pTSum500_TransReg = pTSum500_TransReg + track[i]->pt();
837  nTrk500_TransReg++;
838  if (track[i]->pt() > 0.9) {
839  pTSum900_TransReg = pTSum900_TransReg + track[i]->pt();
840  nTrk900_TransReg++;
841  }
842  }
843 
844  if (fabs(dphi) > 120. && fabs(dphi) < 180.) {
845  pTSum500_AwayReg = pTSum500_AwayReg + track[i]->pt();
846  nTrk500_AwayReg++;
847  if (track[i]->pt() > 0.9) {
848  pTSum900_AwayReg = pTSum900_AwayReg + track[i]->pt();
849  nTrk900_AwayReg++;
850  }
851  }
852 
853  if (fabs(dphi) < 60.) {
854  pTSum500_TowardReg = pTSum500_TowardReg + track[i]->pt();
855  nTrk500_TowardReg++;
856  if (track[i]->pt() > 0.9) {
857  pTSum900_TowardReg = pTSum900_TowardReg + track[i]->pt();
858  nTrk900_TowardReg++;
859  }
860  }
861  } // track loop
862  } // leading track
863  // non empty collection
864  fillProfile(hdNdEtadPhi_pTMax_Toward500_, track[0]->pt(), nTrk500_TowardReg,
865  w);
867  nTrk500_TransReg, w);
868  fillProfile(hdNdEtadPhi_pTMax_Away500_, track[0]->pt(), nTrk500_AwayReg, w);
869 
871  pTSum500_TowardReg, w);
873  pTSum500_TransReg, w);
874  fillProfile(hpTSumdEtadPhi_pTMax_Away500_, track[0]->pt(), pTSum500_AwayReg,
875  w);
876 
877  fillProfile(hdNdEtadPhi_pTMax_Toward900_, track[0]->pt(), nTrk900_TowardReg,
878  w);
880  nTrk900_TransReg, w);
881  fillProfile(hdNdEtadPhi_pTMax_Away900_, track[0]->pt(), nTrk900_AwayReg, w);
882 
884  pTSum900_TowardReg, w);
886  pTSum900_TransReg, w);
887  fillProfile(hpTSumdEtadPhi_pTMax_Away900_, track[0]->pt(), pTSum900_AwayReg,
888  w);
889  }
890 }
const double w
Definition: UKUtility.cc:23
void fill1D(std::vector< TH1F * > &hs, double val, double w=1.)
Definition: QcdUeDQM.cc:540
std::vector< MonitorElement * > hdNdEtadPhi_pTMax_Transverse500_
Definition: QcdUeDQM.h:205
std::vector< MonitorElement * > hpTSumdEtadPhi_pTMax_Away900_
Definition: QcdUeDQM.h:342
std::vector< MonitorElement * > hpTSumdEtadPhi_pTMax_Transverse500_
Definition: QcdUeDQM.h:249
void fillProfile(std::vector< TProfile * > &hs, double valx, double valy, double w=1.)
Definition: QcdUeDQM.cc:593
std::vector< MonitorElement * > hdNdEtadPhi_pTMax_Away900_
Definition: QcdUeDQM.h:302
std::vector< MonitorElement * > hpTSumdEtadPhi_pTMax_Toward500_
Definition: QcdUeDQM.h:241
std::vector< MonitorElement * > hpTSumdEtadPhi_pTMax_Toward900_
Definition: QcdUeDQM.h:331
#define PI
Definition: QcdUeDQM.h:36
std::vector< MonitorElement * > hdNdEtadPhi_pTMax_Transverse900_
Definition: QcdUeDQM.h:295
std::vector< MonitorElement * > hdNdEtadPhi_pTMax_Toward500_
Definition: QcdUeDQM.h:199
std::vector< MonitorElement * > hdNdEtadPhi_pTMax_Toward900_
Definition: QcdUeDQM.h:289
std::vector< MonitorElement * > hdPhi_maxpTTrack_tracks_
Definition: QcdUeDQM.h:181
std::vector< MonitorElement * > hdNdEtadPhi_pTMax_Away500_
Definition: QcdUeDQM.h:212
std::vector< MonitorElement * > hpTSumdEtadPhi_pTMax_Away500_
Definition: QcdUeDQM.h:252
std::vector< MonitorElement * > hpTSumdEtadPhi_pTMax_Transverse900_
Definition: QcdUeDQM.h:339
bool QcdUeDQM::fillVtxPlots ( const reco::BeamSpot bs,
const edm::Handle< reco::VertexCollection vtxColl 
)
private

Definition at line 729 of file QcdUeDQM.cc.

References diffvtxbs_, fill1D(), hNvertices_, hVertex_ndof_, hVertex_rho_, hVertex_x_, hVertex_y_, hVertex_z_, hVertex_z_bs_, edm::Handle< T >::product(), vtx1, and reco::BeamSpot::z0().

Referenced by analyze().

730  {
731  const reco::VertexCollection theVertices = *(vtxColl.product());
732  bool goodVtx = false;
733  fill1D(hNvertices_, theVertices.size());
734  for (reco::VertexCollection::const_iterator vertexIt = theVertices.begin();
735  vertexIt != theVertices.end(); ++vertexIt) {
736  fill1D(hVertex_z_, vertexIt->z());
737  fill1D(hVertex_y_, vertexIt->y());
738  fill1D(hVertex_x_, vertexIt->x());
739  fill1D(hVertex_ndof_, vertexIt->ndof());
740  fill1D(hVertex_rho_, vertexIt->position().rho());
741  fill1D(hVertex_z_bs_, (vertexIt->z() - bs->z0()));
742 
743  if (fabs(vertexIt->z() - bs->z0()) < diffvtxbs_ && vertexIt->ndof() >= 4 &&
744  vertexIt->position().rho() <= 2.0) {
745  goodVtx = true;
746  vtx1 = (*vertexIt);
747 
748  break;
749  }
750  } // Loop over vertcies
751  return goodVtx;
752 }
double z0() const
z coordinate
Definition: BeamSpot.h:68
void fill1D(std::vector< TH1F * > &hs, double val, double w=1.)
Definition: QcdUeDQM.cc:540
std::vector< MonitorElement * > hVertex_z_bs_
Definition: QcdUeDQM.h:149
std::vector< Vertex > VertexCollection
collection of Vertex objects
Definition: VertexFwd.h:9
std::vector< MonitorElement * > hVertex_ndof_
Definition: QcdUeDQM.h:147
std::vector< MonitorElement * > hVertex_rho_
Definition: QcdUeDQM.h:148
std::vector< MonitorElement * > hVertex_y_
Definition: QcdUeDQM.h:145
reco::Vertex vtx1
Definition: QcdUeDQM.h:404
std::vector< MonitorElement * > hVertex_x_
Definition: QcdUeDQM.h:146
std::vector< MonitorElement * > hNvertices_
Definition: QcdUeDQM.h:143
T const * product() const
Definition: Handle.h:81
double diffvtxbs_
Definition: QcdUeDQM.h:384
std::vector< MonitorElement * > hVertex_z_
Definition: QcdUeDQM.h:144
template<typename TYPE >
void QcdUeDQM::getProduct ( const std::string  name,
edm::Handle< TYPE > &  prod,
const edm::Event event 
) const
inlineprivate

Definition at line 409 of file QcdUeDQM.h.

References edm::errors::Configuration, and edm::HandleBase::isValid().

Referenced by fillHltBits().

411  {
412  // Try to access data collection from EDM file. We check if we really get just
413  // one
414  // product with the given name. If not we throw an exception.
415 
416  event.getByLabel(edm::InputTag(name), prod);
417  if (!prod.isValid())
418  throw edm::Exception(edm::errors::Configuration, "QcdUeDQM::GetProduct()\n")
419  << "Collection with label " << name << " is not valid" << std::endl;
420 }
bool isValid() const
Definition: HandleBase.h:74
template<typename TYPE >
bool QcdUeDQM::getProductSafe ( const std::string  name,
edm::Handle< TYPE > &  prod,
const edm::Event event 
) const
inlineprivate

Definition at line 424 of file QcdUeDQM.h.

References edm::HandleBase::isValid().

426  {
427  // Try to safely access data collection from EDM file. We check if we really
428  // get just one
429  // product with the given name. If not, we return false.
430 
431  if (name.empty()) return false;
432 
433  try {
434  event.getByLabel(edm::InputTag(name), prod);
435  if (!prod.isValid()) return false;
436  } catch (...) {
437  return false;
438  }
439  return true;
440 }
bool isValid() const
Definition: HandleBase.h:74
void QcdUeDQM::setLabel1D ( std::vector< MonitorElement * > &  mes)
private

Definition at line 561 of file QcdUeDQM.cc.

References TkAlMuonSelectors_cfi::cut, hltTrgDeci_, and mps_fire::i.

561  {
562  // Loop over histograms and fill if trigger has fired.
563  string cut[5] = {"Nevt", "vtx!=bmspt", "Zvtx<10cm", "pT>1GeV",
564  "trackFromVtx"};
565  for (size_t i = 0; i < mes.size(); ++i) {
566  if (!hltTrgDeci_.at(i)) continue;
567  for (size_t j = 1; j < 6; j++) mes.at(i)->setBinLabel(j, cut[j - 1], 1);
568  }
569 }
std::vector< bool > hltTrgDeci_
Definition: QcdUeDQM.h:112
bool QcdUeDQM::trackSelection ( const reco::Track trk,
const reco::BeamSpot bs,
const reco::Vertex vtx,
int  sizevtx 
)
private

Definition at line 616 of file QcdUeDQM.cc.

References reco::TrackBase::algo(), algorithm_, allowTriplets_, bsuse_, reco::TrackBase::dxy(), reco::TrackBase::dxyError(), reco::TrackBase::dz(), reco::TrackBase::dzError(), reco::TrackBase::eta(), fill1D(), spr::find(), reco::HitPattern::getHitPattern(), reco::HitPattern::getLayer(), hBeamSpot_x_, hBeamSpot_y_, hBeamSpot_z_, reco::TrackBase::hitPattern(), hNtrackerLayer_, hNtrackerPixelLayer_, hNtrackerStripPixelLayer_, hRatioDxySigmaDxyBS_, hRatioDxySigmaDxyPV_, hRatioDzSigmaDzBS_, hRatioDzSigmaDzPV_, hRatioPtErrorPt_, hTrkChi2_, hTrkEta_, hTrkNdof_, hTrkPhi_, hTrkPt_, mps_fire::i, lip_, maxChi2_, maxRapidity_, min3DHit_, minHit_, minRapidity_, reco::TrackBase::ndof(), reco::TrackBase::normalizedChi2(), reco::HitPattern::numberOfAllHits(), reco::HitPattern::numberOfValidStripLayersWithMonoAndStereo(), AlCaHLTBitMon_ParallelJobs::p, reco::TrackBase::phi(), reco::HitPattern::pixelHitFilter(), reco::HitPattern::pixelLayersWithMeasurement(), reco::BeamSpot::position(), reco::Vertex::position(), reco::TrackBase::pt(), ptErr_pt_, reco::TrackBase::ptError(), ptMin_, pxlLayerMinCut_, reco::TrackBase::quality(), quality_, requirePIX1_, tip_, reco::HitPattern::TRACK_HITS, reco::HitPattern::trackerLayersWithMeasurement(), reco::HitPattern::validHitFilter(), reco::BeamSpot::x0(), reco::BeamSpot::y0(), and reco::BeamSpot::z0().

Referenced by analyze().

617  {
618  bool goodTrk = false;
619 
620  if (sizevtx != 1) return false; // selection events with only a vertex
621 
622  // Fill basic information of all the tracks
625 
629 
630  fill1D(hRatioPtErrorPt_, (trk.ptError() / trk.pt()));
631  fill1D(hTrkPt_, trk.pt());
632  fill1D(hTrkEta_, trk.eta());
633  fill1D(hTrkPhi_, trk.phi());
634  fill1D(hRatioDxySigmaDxyBS_, (trk.dxy(bs->position()) / trk.dxyError()));
635  fill1D(hRatioDxySigmaDxyPV_, (trk.dxy(vtx.position()) / trk.dxyError()));
636  fill1D(hRatioDzSigmaDzBS_, (trk.dz(bs->position()) / trk.dzError()));
637  fill1D(hRatioDzSigmaDzPV_, (trk.dz(vtx.position()) / trk.dzError()));
639  fill1D(hTrkNdof_, trk.ndof());
640 
641  fill1D(hBeamSpot_x_, bs->x0());
642  fill1D(hBeamSpot_y_, bs->y0());
643  fill1D(hBeamSpot_z_, bs->z0());
644 
645  // number of layers
646  bool layerMinCutbool =
650 
651  // number of pixel layers
652  bool pxlLayerMinCutbool =
654 
655  // cut on the hits in pixel layers
656  bool hasPIX1 = false;
657  if (requirePIX1_) {
658  const reco::HitPattern &p = trk.hitPattern();
659  for (int i = 0; i < p.numberOfAllHits(reco::HitPattern::TRACK_HITS); i++) {
663  reco::HitPattern::getLayer(hit) == 1) {
664  hasPIX1 = true;
665  break;
666  }
667  }
668  } else {
669  hasPIX1 = true;
670  }
671 
672  // cut on the pT error
673  bool ptErrorbool =
674  (trk.ptError() / trk.pt() < ptErr_pt_ ||
677 
678  // quality cut
679  bool quality_ok = true;
680  if (!quality_.empty()) {
681  quality_ok = false;
682  for (unsigned int i = 0; i < quality_.size(); ++i) {
683  if (trk.quality(quality_[i])) {
684  quality_ok = true;
685  break;
686  }
687  }
688  }
689  //-----
690  bool algo_ok = true;
691  if (!algorithm_.empty()) {
692  if (std::find(algorithm_.begin(), algorithm_.end(), trk.algo()) ==
693  algorithm_.end())
694  algo_ok = false;
695  }
696 
697  if (bsuse_ == 1) {
698  if (hasPIX1 && pxlLayerMinCutbool && layerMinCutbool &&
701  min3DHit_ &&
702  ptErrorbool && fabs(trk.pt()) >= ptMin_ && trk.eta() >= minRapidity_ &&
703  trk.eta() <= maxRapidity_ &&
704  fabs(trk.dxy(bs->position()) / trk.dxyError()) < tip_ &&
705  fabs(trk.dz(bs->position()) / trk.dzError()) < lip_ &&
706  trk.normalizedChi2() <= maxChi2_ && quality_ok && algo_ok) {
707  goodTrk = true;
708  }
709  }
710 
711  if (bsuse_ == 0) {
712  if (hasPIX1 && pxlLayerMinCutbool && layerMinCutbool &&
715  min3DHit_ &&
716  ptErrorbool && fabs(trk.pt()) >= ptMin_ && trk.eta() >= minRapidity_ &&
717  trk.eta() <= maxRapidity_ &&
718  fabs(trk.dxy(vtx.position()) / trk.dxyError()) < tip_ &&
719  fabs(trk.dz(vtx.position()) / trk.dzError()) < lip_ &&
720  trk.normalizedChi2() <= maxChi2_ && quality_ok && algo_ok) {
721  goodTrk = true;
722  }
723  }
724 
725  return goodTrk;
726 }
bool bsuse_
Definition: QcdUeDQM.h:392
double z0() const
z coordinate
Definition: BeamSpot.h:68
static uint32_t getLayer(uint16_t pattern)
Definition: HitPattern.h:700
static bool pixelHitFilter(uint16_t pattern)
Definition: HitPattern.h:564
void fill1D(std::vector< TH1F * > &hs, double val, double w=1.)
Definition: QcdUeDQM.cc:540
double normalizedChi2() const
chi-squared divided by n.d.o.f. (or chi-squared * 1e6 if n.d.o.f. is zero)
Definition: TrackBase.h:561
std::vector< MonitorElement * > hTrkNdof_
Definition: QcdUeDQM.h:141
double dxyError() const
error on dxy
Definition: TrackBase.h:796
std::vector< MonitorElement * > hTrkChi2_
Definition: QcdUeDQM.h:140
double phi() const
azimuthal angle of momentum vector
Definition: TrackBase.h:645
std::vector< MonitorElement * > hTrkEta_
Definition: QcdUeDQM.h:127
double ptErr_pt_
Definition: QcdUeDQM.h:385
int pixelLayersWithMeasurement() const
Definition: HitPattern.cc:499
void find(edm::Handle< EcalRecHitCollection > &hits, DetId thisDet, std::vector< EcalRecHitCollection::const_iterator > &hit, bool debug=false)
Definition: FindCaloHit.cc:20
bool requirePIX1_
Definition: QcdUeDQM.h:389
int trackerLayersWithMeasurement() const
Definition: HitPattern.cc:518
const Point & position() const
position
Definition: Vertex.h:109
static bool validHitFilter(uint16_t pattern)
Definition: HitPattern.h:787
TrackAlgorithm algo() const
Definition: TrackBase.h:497
double eta() const
pseudorapidity of momentum vector
Definition: TrackBase.h:651
int numberOfValidStripLayersWithMonoAndStereo(uint16_t stripdet, uint16_t layer) const
Definition: HitPattern.cc:341
std::vector< MonitorElement * > hNtrackerLayer_
Definition: QcdUeDQM.h:122
std::vector< MonitorElement * > hRatioDzSigmaDzBS_
Definition: QcdUeDQM.h:138
double ndof() const
number of degrees of freedom of the fit
Definition: TrackBase.h:555
double pt() const
track transverse momentum
Definition: TrackBase.h:621
double maxChi2_
Definition: QcdUeDQM.h:391
double ptError() const
error on Pt (set to 1000 TeV if charge==0 for safety)
Definition: TrackBase.h:763
int numberOfAllHits(HitCategory category) const
Definition: HitPattern.h:807
double lip_
Definition: QcdUeDQM.h:383
std::vector< reco::TrackBase::TrackAlgorithm > algorithm_
Definition: QcdUeDQM.h:401
std::vector< MonitorElement * > hTrkPhi_
Definition: QcdUeDQM.h:128
double dz() const
dz parameter (= dsz/cos(lambda)). This is the track z0 w.r.t (0,0,0) only if the refPoint is close to...
Definition: TrackBase.h:609
double dzError() const
error on dz
Definition: TrackBase.h:814
bool allowTriplets_
Definition: QcdUeDQM.h:393
double ptMin_
Definition: QcdUeDQM.h:379
const HitPattern & hitPattern() const
Access the hit pattern, indicating in which Tracker layers the track has hits.
Definition: TrackBase.h:446
std::vector< MonitorElement * > hBeamSpot_y_
Definition: QcdUeDQM.h:152
double minRapidity_
Definition: QcdUeDQM.h:380
int min3DHit_
Definition: QcdUeDQM.h:390
std::vector< MonitorElement * > hRatioDxySigmaDxyBS_
Definition: QcdUeDQM.h:136
bool quality(const TrackQuality) const
Track quality.
Definition: TrackBase.h:510
std::vector< MonitorElement * > hRatioDxySigmaDxyPV_
Definition: QcdUeDQM.h:137
std::vector< MonitorElement * > hNtrackerStripPixelLayer_
Definition: QcdUeDQM.h:124
double pxlLayerMinCut_
Definition: QcdUeDQM.h:388
std::vector< MonitorElement * > hBeamSpot_x_
Definition: QcdUeDQM.h:153
double y0() const
y coordinate
Definition: BeamSpot.h:66
const Point & position() const
position
Definition: BeamSpot.h:62
std::vector< MonitorElement * > hTrkPt_
Definition: QcdUeDQM.h:126
std::vector< reco::TrackBase::TrackQuality > quality_
Definition: QcdUeDQM.h:400
double maxRapidity_
Definition: QcdUeDQM.h:381
uint16_t getHitPattern(HitCategory category, int position) const
Definition: HitPattern.h:515
std::vector< MonitorElement * > hRatioDzSigmaDzPV_
Definition: QcdUeDQM.h:139
double dxy() const
dxy parameter. (This is the transverse impact parameter w.r.t. to (0,0,0) ONLY if refPoint is close t...
Definition: TrackBase.h:591
int minHit_
Definition: QcdUeDQM.h:387
std::vector< MonitorElement * > hRatioPtErrorPt_
Definition: QcdUeDQM.h:125
std::vector< MonitorElement * > hNtrackerPixelLayer_
Definition: QcdUeDQM.h:123
std::vector< MonitorElement * > hBeamSpot_z_
Definition: QcdUeDQM.h:151
double tip_
Definition: QcdUeDQM.h:382
double x0() const
x coordinate
Definition: BeamSpot.h:64

Member Data Documentation

std::vector<reco::TrackBase::TrackAlgorithm> QcdUeDQM::algorithm_
private

Definition at line 401 of file QcdUeDQM.h.

Referenced by QcdUeDQM(), and trackSelection().

bool QcdUeDQM::allowTriplets_
private

Definition at line 393 of file QcdUeDQM.h.

Referenced by trackSelection().

edm::EDGetTokenT<reco::BeamSpot> QcdUeDQM::bsLabel_
private

Definition at line 399 of file QcdUeDQM.h.

Referenced by analyze().

double QcdUeDQM::bsPos_
private

Definition at line 394 of file QcdUeDQM.h.

bool QcdUeDQM::bsuse_
private

Definition at line 392 of file QcdUeDQM.h.

Referenced by trackSelection().

edm::EDGetTokenT<reco::CaloJetCollection> QcdUeDQM::caloJetLabel_
private

Definition at line 395 of file QcdUeDQM.h.

Referenced by analyze().

edm::EDGetTokenT<reco::TrackJetCollection> QcdUeDQM::chargedJetLabel_
private

Definition at line 396 of file QcdUeDQM.h.

Referenced by analyze().

double QcdUeDQM::diffvtxbs_
private

Definition at line 384 of file QcdUeDQM.h.

Referenced by fillVtxPlots().

MonitorElement* QcdUeDQM::h2TrigCorr_
private

Definition at line 119 of file QcdUeDQM.h.

Referenced by bookHistograms(), and fillHltBits().

std::vector<MonitorElement *> QcdUeDQM::hBeamSpot_x_
private

Definition at line 153 of file QcdUeDQM.h.

Referenced by bookHistograms(), and trackSelection().

std::vector<MonitorElement *> QcdUeDQM::hBeamSpot_y_
private

Definition at line 152 of file QcdUeDQM.h.

Referenced by bookHistograms(), and trackSelection().

std::vector<MonitorElement *> QcdUeDQM::hBeamSpot_z_
private

Definition at line 151 of file QcdUeDQM.h.

Referenced by bookHistograms(), and trackSelection().

std::vector<MonitorElement *> QcdUeDQM::hChargedJetConstituent_
private

Definition at line 163 of file QcdUeDQM.h.

std::vector<MonitorElement *> QcdUeDQM::hChargedJetMulti_
private

Definition at line 162 of file QcdUeDQM.h.

Referenced by bookHistograms(), and fillChargedJetSpectra().

std::vector<MonitorElement *> QcdUeDQM::hdNdEtadPhi_pTMax_Away500_
private

Definition at line 212 of file QcdUeDQM.h.

Referenced by bookHistograms(), and fillUE_with_MaxpTtrack().

std::vector<MonitorElement *> QcdUeDQM::hdNdEtadPhi_pTMax_Away900_
private

Definition at line 302 of file QcdUeDQM.h.

Referenced by bookHistograms(), and fillUE_with_MaxpTtrack().

std::vector<MonitorElement *> QcdUeDQM::hdNdEtadPhi_pTMax_Toward500_
private

Definition at line 199 of file QcdUeDQM.h.

Referenced by bookHistograms(), and fillUE_with_MaxpTtrack().

std::vector<MonitorElement *> QcdUeDQM::hdNdEtadPhi_pTMax_Toward900_
private

Definition at line 289 of file QcdUeDQM.h.

Referenced by bookHistograms(), and fillUE_with_MaxpTtrack().

std::vector<MonitorElement *> QcdUeDQM::hdNdEtadPhi_pTMax_Transverse500_
private

Definition at line 205 of file QcdUeDQM.h.

Referenced by bookHistograms(), and fillUE_with_MaxpTtrack().

std::vector<MonitorElement *> QcdUeDQM::hdNdEtadPhi_pTMax_Transverse900_
private

Definition at line 295 of file QcdUeDQM.h.

Referenced by bookHistograms(), and fillUE_with_MaxpTtrack().

std::vector<MonitorElement *> QcdUeDQM::hdNdEtadPhi_trackJet_Away500_
private

Definition at line 234 of file QcdUeDQM.h.

Referenced by bookHistograms(), and fillUE_with_ChargedJets().

std::vector<MonitorElement *> QcdUeDQM::hdNdEtadPhi_trackJet_Away900_
private

Definition at line 324 of file QcdUeDQM.h.

Referenced by bookHistograms(), and fillUE_with_ChargedJets().

std::vector<MonitorElement *> QcdUeDQM::hdNdEtadPhi_trackJet_Toward500_
private

Definition at line 223 of file QcdUeDQM.h.

Referenced by bookHistograms(), and fillUE_with_ChargedJets().

std::vector<MonitorElement *> QcdUeDQM::hdNdEtadPhi_trackJet_Toward900_
private

Definition at line 313 of file QcdUeDQM.h.

Referenced by bookHistograms(), and fillUE_with_ChargedJets().

std::vector<MonitorElement *> QcdUeDQM::hdNdEtadPhi_trackJet_Transverse500_
private

Definition at line 231 of file QcdUeDQM.h.

Referenced by bookHistograms(), and fillUE_with_ChargedJets().

std::vector<MonitorElement *> QcdUeDQM::hdNdEtadPhi_trackJet_Transverse900_
private

Definition at line 321 of file QcdUeDQM.h.

Referenced by bookHistograms(), and fillUE_with_ChargedJets().

std::vector<MonitorElement *> QcdUeDQM::hdPhi_chargedJet_tracks_
private

Definition at line 186 of file QcdUeDQM.h.

Referenced by bookHistograms(), and fillUE_with_ChargedJets().

std::vector<MonitorElement *> QcdUeDQM::hdPhi_maxpTTrack_tracks_
private

Definition at line 181 of file QcdUeDQM.h.

Referenced by bookHistograms(), and fillUE_with_MaxpTtrack().

std::vector<MonitorElement *> QcdUeDQM::hGoodTrkEta500_
private

Definition at line 131 of file QcdUeDQM.h.

Referenced by bookHistograms(), and fillpTMaxRelated().

std::vector<MonitorElement *> QcdUeDQM::hGoodTrkEta900_
private

Definition at line 134 of file QcdUeDQM.h.

Referenced by bookHistograms(), and fillpTMaxRelated().

std::vector<MonitorElement *> QcdUeDQM::hGoodTrkPhi500_
private

Definition at line 132 of file QcdUeDQM.h.

Referenced by bookHistograms(), and fillpTMaxRelated().

std::vector<MonitorElement *> QcdUeDQM::hGoodTrkPhi900_
private

Definition at line 135 of file QcdUeDQM.h.

Referenced by bookHistograms(), and fillpTMaxRelated().

std::vector<MonitorElement *> QcdUeDQM::hGoodTrkPt500_
private

Definition at line 130 of file QcdUeDQM.h.

Referenced by bookHistograms(), and fillpTMaxRelated().

std::vector<MonitorElement *> QcdUeDQM::hGoodTrkPt900_
private

Definition at line 133 of file QcdUeDQM.h.

Referenced by bookHistograms(), and fillpTMaxRelated().

std::vector<MonitorElement *> QcdUeDQM::hLeadingChargedJet_etaSpectrum_
private

Definition at line 190 of file QcdUeDQM.h.

Referenced by bookHistograms(), and fillChargedJetSpectra().

std::vector<MonitorElement *> QcdUeDQM::hLeadingChargedJet_phiSpectrum_
private

Definition at line 194 of file QcdUeDQM.h.

Referenced by bookHistograms(), and fillChargedJetSpectra().

std::vector<MonitorElement *> QcdUeDQM::hLeadingChargedJet_pTSpectrum_
private

Definition at line 166 of file QcdUeDQM.h.

Referenced by bookHistograms(), and fillChargedJetSpectra().

std::vector<MonitorElement *> QcdUeDQM::hLeadingTrack_etaSpectrum_
private

Definition at line 157 of file QcdUeDQM.h.

Referenced by bookHistograms(), and fillpTMaxRelated().

std::vector<MonitorElement *> QcdUeDQM::hLeadingTrack_phiSpectrum_
private

Definition at line 159 of file QcdUeDQM.h.

Referenced by bookHistograms(), and fillpTMaxRelated().

std::vector<MonitorElement *> QcdUeDQM::hLeadingTrack_pTSpectrum_
private

Definition at line 155 of file QcdUeDQM.h.

Referenced by bookHistograms(), and fillpTMaxRelated().

HLTConfigProvider QcdUeDQM::hltConfig
private

Definition at line 105 of file QcdUeDQM.h.

Referenced by dqmBeginRun().

std::vector<std::string> QcdUeDQM::hltProcNames_
private

Definition at line 108 of file QcdUeDQM.h.

Referenced by dqmBeginRun(), and QcdUeDQM().

std::string QcdUeDQM::hltResName_
private

Definition at line 107 of file QcdUeDQM.h.

Referenced by dqmBeginRun().

std::vector<int> QcdUeDQM::hltTrgBits_
private

Definition at line 111 of file QcdUeDQM.h.

Referenced by dqmBeginRun(), and fillHltBits().

std::vector<bool> QcdUeDQM::hltTrgDeci_
private

Definition at line 112 of file QcdUeDQM.h.

Referenced by dqmBeginRun(), fill1D(), fill2D(), fillHltBits(), fillProfile(), and setLabel1D().

std::vector<std::string> QcdUeDQM::hltTrgNames_
private

Definition at line 109 of file QcdUeDQM.h.

Referenced by dqmBeginRun(), and QcdUeDQM().

std::vector<std::string> QcdUeDQM::hltTrgUsedNames_
private

Definition at line 113 of file QcdUeDQM.h.

Referenced by book1D(), bookHistograms(), bookProfile(), and dqmBeginRun().

std::string QcdUeDQM::hltUsedResName_
private

Definition at line 114 of file QcdUeDQM.h.

Referenced by dqmBeginRun(), and fillHltBits().

std::vector<MonitorElement *> QcdUeDQM::hNevts_
private

Definition at line 121 of file QcdUeDQM.h.

Referenced by analyze(), and bookHistograms().

std::vector<MonitorElement *> QcdUeDQM::hNgoodTrk_
private

Definition at line 129 of file QcdUeDQM.h.

Referenced by bookHistograms(), and fillpTMaxRelated().

std::vector<MonitorElement *> QcdUeDQM::hNtrackerLayer_
private

Definition at line 122 of file QcdUeDQM.h.

Referenced by bookHistograms(), and trackSelection().

std::vector<MonitorElement *> QcdUeDQM::hNtrackerPixelLayer_
private

Definition at line 123 of file QcdUeDQM.h.

Referenced by bookHistograms(), and trackSelection().

std::vector<MonitorElement *> QcdUeDQM::hNtrackerStripPixelLayer_
private

Definition at line 124 of file QcdUeDQM.h.

Referenced by bookHistograms(), and trackSelection().

std::vector<MonitorElement *> QcdUeDQM::hNvertices_
private

Definition at line 143 of file QcdUeDQM.h.

Referenced by bookHistograms(), and fillVtxPlots().

std::vector<MonitorElement *> QcdUeDQM::hpTSumdEtadPhi_pTMax_Away500_
private

Definition at line 252 of file QcdUeDQM.h.

Referenced by bookHistograms(), and fillUE_with_MaxpTtrack().

std::vector<MonitorElement *> QcdUeDQM::hpTSumdEtadPhi_pTMax_Away900_
private

Definition at line 342 of file QcdUeDQM.h.

Referenced by bookHistograms(), and fillUE_with_MaxpTtrack().

std::vector<MonitorElement *> QcdUeDQM::hpTSumdEtadPhi_pTMax_Toward500_
private

Definition at line 241 of file QcdUeDQM.h.

Referenced by bookHistograms(), and fillUE_with_MaxpTtrack().

std::vector<MonitorElement *> QcdUeDQM::hpTSumdEtadPhi_pTMax_Toward900_
private

Definition at line 331 of file QcdUeDQM.h.

Referenced by bookHistograms(), and fillUE_with_MaxpTtrack().

std::vector<MonitorElement *> QcdUeDQM::hpTSumdEtadPhi_pTMax_Transverse500_
private

Definition at line 249 of file QcdUeDQM.h.

Referenced by bookHistograms(), and fillUE_with_MaxpTtrack().

std::vector<MonitorElement *> QcdUeDQM::hpTSumdEtadPhi_pTMax_Transverse900_
private

Definition at line 339 of file QcdUeDQM.h.

Referenced by bookHistograms(), and fillUE_with_MaxpTtrack().

std::vector<MonitorElement *> QcdUeDQM::hpTSumdEtadPhi_trackJet_Away500_
private

Definition at line 280 of file QcdUeDQM.h.

Referenced by bookHistograms(), and fillUE_with_ChargedJets().

std::vector<MonitorElement *> QcdUeDQM::hpTSumdEtadPhi_trackJet_Away900_
private

Definition at line 370 of file QcdUeDQM.h.

Referenced by bookHistograms(), and fillUE_with_ChargedJets().

std::vector<MonitorElement *> QcdUeDQM::hpTSumdEtadPhi_trackJet_Toward500_
private

Definition at line 265 of file QcdUeDQM.h.

Referenced by bookHistograms(), and fillUE_with_ChargedJets().

std::vector<MonitorElement *> QcdUeDQM::hpTSumdEtadPhi_trackJet_Toward900_
private

Definition at line 355 of file QcdUeDQM.h.

Referenced by bookHistograms(), and fillUE_with_ChargedJets().

std::vector<MonitorElement *> QcdUeDQM::hpTSumdEtadPhi_trackJet_Transverse500_
private

Definition at line 277 of file QcdUeDQM.h.

Referenced by bookHistograms(), and fillUE_with_ChargedJets().

std::vector<MonitorElement *> QcdUeDQM::hpTSumdEtadPhi_trackJet_Transverse900_
private

Definition at line 367 of file QcdUeDQM.h.

Referenced by bookHistograms(), and fillUE_with_ChargedJets().

std::vector<MonitorElement *> QcdUeDQM::hRatioDxySigmaDxyBS_
private

Definition at line 136 of file QcdUeDQM.h.

Referenced by bookHistograms(), and trackSelection().

std::vector<MonitorElement *> QcdUeDQM::hRatioDxySigmaDxyPV_
private

Definition at line 137 of file QcdUeDQM.h.

Referenced by bookHistograms(), and trackSelection().

std::vector<MonitorElement *> QcdUeDQM::hRatioDzSigmaDzBS_
private

Definition at line 138 of file QcdUeDQM.h.

Referenced by bookHistograms(), and trackSelection().

std::vector<MonitorElement *> QcdUeDQM::hRatioDzSigmaDzPV_
private

Definition at line 139 of file QcdUeDQM.h.

Referenced by bookHistograms(), and trackSelection().

std::vector<MonitorElement *> QcdUeDQM::hRatioPtErrorPt_
private

Definition at line 125 of file QcdUeDQM.h.

Referenced by bookHistograms(), and trackSelection().

std::vector<MonitorElement *> QcdUeDQM::hTrkChi2_
private

Definition at line 140 of file QcdUeDQM.h.

Referenced by bookHistograms(), and trackSelection().

std::vector<MonitorElement *> QcdUeDQM::hTrkEta_
private

Definition at line 127 of file QcdUeDQM.h.

Referenced by bookHistograms(), and trackSelection().

std::vector<MonitorElement *> QcdUeDQM::hTrkNdof_
private

Definition at line 141 of file QcdUeDQM.h.

Referenced by bookHistograms(), and trackSelection().

std::vector<MonitorElement *> QcdUeDQM::hTrkPhi_
private

Definition at line 128 of file QcdUeDQM.h.

Referenced by bookHistograms(), and trackSelection().

std::vector<MonitorElement *> QcdUeDQM::hTrkPt_
private

Definition at line 126 of file QcdUeDQM.h.

Referenced by bookHistograms(), and trackSelection().

std::vector<MonitorElement *> QcdUeDQM::hVertex_ndof_
private

Definition at line 147 of file QcdUeDQM.h.

Referenced by bookHistograms(), and fillVtxPlots().

std::vector<MonitorElement *> QcdUeDQM::hVertex_rho_
private

Definition at line 148 of file QcdUeDQM.h.

Referenced by bookHistograms(), and fillVtxPlots().

std::vector<MonitorElement *> QcdUeDQM::hVertex_x_
private

Definition at line 146 of file QcdUeDQM.h.

Referenced by bookHistograms(), and fillVtxPlots().

std::vector<MonitorElement *> QcdUeDQM::hVertex_y_
private

Definition at line 145 of file QcdUeDQM.h.

Referenced by bookHistograms(), and fillVtxPlots().

std::vector<MonitorElement *> QcdUeDQM::hVertex_z_
private

Definition at line 144 of file QcdUeDQM.h.

Referenced by bookHistograms(), and fillVtxPlots().

std::vector<MonitorElement *> QcdUeDQM::hVertex_z_bs_
private

Definition at line 149 of file QcdUeDQM.h.

Referenced by bookHistograms(), and fillVtxPlots().

bool QcdUeDQM::isHltConfigSuccessful_
private

Definition at line 64 of file QcdUeDQM.h.

Referenced by analyze(), dqmBeginRun(), and QcdUeDQM().

double QcdUeDQM::lip_
private

Definition at line 383 of file QcdUeDQM.h.

Referenced by trackSelection().

double QcdUeDQM::maxChi2_
private

Definition at line 391 of file QcdUeDQM.h.

Referenced by trackSelection().

double QcdUeDQM::maxRapidity_
private

Definition at line 381 of file QcdUeDQM.h.

Referenced by trackSelection().

int QcdUeDQM::min3DHit_
private

Definition at line 390 of file QcdUeDQM.h.

Referenced by trackSelection().

int QcdUeDQM::minHit_
private

Definition at line 387 of file QcdUeDQM.h.

Referenced by trackSelection().

double QcdUeDQM::minRapidity_
private

Definition at line 380 of file QcdUeDQM.h.

Referenced by trackSelection().

double QcdUeDQM::ptErr_pt_
private

Definition at line 385 of file QcdUeDQM.h.

Referenced by trackSelection().

double QcdUeDQM::ptMin_
private

Definition at line 379 of file QcdUeDQM.h.

Referenced by trackSelection().

double QcdUeDQM::pxlLayerMinCut_
private

Definition at line 388 of file QcdUeDQM.h.

Referenced by trackSelection().

std::vector<reco::TrackBase::TrackQuality> QcdUeDQM::quality_
private

Definition at line 400 of file QcdUeDQM.h.

Referenced by QcdUeDQM(), and trackSelection().

MonitorElement* QcdUeDQM::repSumMap_
private

Definition at line 117 of file QcdUeDQM.h.

MonitorElement* QcdUeDQM::repSummary_
private

Definition at line 118 of file QcdUeDQM.h.

bool QcdUeDQM::requirePIX1_
private

Definition at line 389 of file QcdUeDQM.h.

Referenced by trackSelection().

container QcdUeDQM::selected_
private

Definition at line 403 of file QcdUeDQM.h.

Referenced by analyze().

const TrackerGeometry* QcdUeDQM::tgeo_
private

Definition at line 116 of file QcdUeDQM.h.

double QcdUeDQM::tip_
private

Definition at line 382 of file QcdUeDQM.h.

Referenced by trackSelection().

edm::EDGetTokenT<reco::TrackCollection> QcdUeDQM::trackLabel_
private

Definition at line 397 of file QcdUeDQM.h.

Referenced by analyze().

int QcdUeDQM::verbose_
private

Definition at line 115 of file QcdUeDQM.h.

reco::Vertex QcdUeDQM::vtx1
private

Definition at line 404 of file QcdUeDQM.h.

Referenced by analyze(), and fillVtxPlots().

edm::EDGetTokenT<reco::VertexCollection> QcdUeDQM::vtxLabel_
private

Definition at line 398 of file QcdUeDQM.h.

Referenced by analyze().

double QcdUeDQM::vtxntk_
private

Definition at line 386 of file QcdUeDQM.h.