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::stream::EDProducer< edm::GlobalCache< DQMEDAnalyzerGlobalCache >, edm::EndRunProducer, edm::EndLuminosityBlockProducer, edm::Accumulator >

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 &event, edm::EventSetup const &setup) final
 
void beginLuminosityBlock (edm::LuminosityBlock const &lumi, edm::EventSetup const &setup) final
 
void beginRun (edm::Run const &run, edm::EventSetup const &setup) final
 
void beginStream (edm::StreamID id) final
 
 DQMEDAnalyzer ()
 
void endLuminosityBlock (edm::LuminosityBlock const &lumi, edm::EventSetup const &setup) final
 
void endRun (edm::Run const &run, edm::EventSetup const &setup) final
 
virtual bool getCanSaveByLumi ()
 
- Public Member Functions inherited from edm::stream::EDProducer< edm::GlobalCache< DQMEDAnalyzerGlobalCache >, edm::EndRunProducer, edm::EndLuminosityBlockProducer, edm::Accumulator >
 EDProducer ()=default
 
 EDProducer (const EDProducer &)=delete
 
bool hasAbilityToProduceInBeginLumis () const final
 
bool hasAbilityToProduceInBeginProcessBlocks () const final
 
bool hasAbilityToProduceInBeginRuns () const final
 
bool hasAbilityToProduceInEndLumis () const final
 
bool hasAbilityToProduceInEndProcessBlocks () const final
 
bool hasAbilityToProduceInEndRuns () const final
 
const EDProduceroperator= (const EDProducer &)=delete
 

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 DQMEDAnalyzer
typedef dqm::reco::DQMStore DQMStore
 
typedef dqm::reco::MonitorElement MonitorElement
 
- Public Types inherited from edm::stream::EDProducer< edm::GlobalCache< DQMEDAnalyzerGlobalCache >, edm::EndRunProducer, edm::EndLuminosityBlockProducer, edm::Accumulator >
using CacheTypes = CacheContexts< T... >
 
using GlobalCache = typename CacheTypes::GlobalCache
 
using HasAbility = AbilityChecker< T... >
 
using InputProcessBlockCache = typename CacheTypes::InputProcessBlockCache
 
using LuminosityBlockCache = typename CacheTypes::LuminosityBlockCache
 
using LuminosityBlockContext = LuminosityBlockContextT< LuminosityBlockCache, RunCache, GlobalCache >
 
using LuminosityBlockSummaryCache = typename CacheTypes::LuminosityBlockSummaryCache
 
using RunCache = typename CacheTypes::RunCache
 
using RunContext = RunContextT< RunCache, GlobalCache >
 
using RunSummaryCache = typename CacheTypes::RunSummaryCache
 
- Static Public Member Functions inherited from DQMEDAnalyzer
static void globalEndJob (DQMEDAnalyzerGlobalCache const *)
 
static void globalEndLuminosityBlockProduce (edm::LuminosityBlock &lumi, edm::EventSetup const &setup, LuminosityBlockContext const *context)
 
static void globalEndRunProduce (edm::Run &run, edm::EventSetup const &setup, RunContext const *context)
 
static std::unique_ptr< DQMEDAnalyzerGlobalCacheinitializeGlobalCache (edm::ParameterSet const &)
 
- Protected Member Functions inherited from DQMEDAnalyzer
uint64_t meId () const
 
- Protected Attributes inherited from DQMEDAnalyzer
edm::EDPutTokenT< DQMTokenlumiToken_
 
edm::EDPutTokenT< DQMTokenrunToken_
 
unsigned int streamId_
 

Detailed Description

Definition at line 53 of file QcdUeDQM.h.

Member Typedef Documentation

◆ container

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

Definition at line 398 of file QcdUeDQM.h.

Constructor & Destructor Documentation

◆ QcdUeDQM()

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

Definition at line 51 of file QcdUeDQM.cc.

References reco::TrackBase::algoByName(), qcdUeDQM_cfi::algorithm, algorithm_, hltProcNames_, hltTrgNames_, isHltConfigSuccessful_, dqmiolumiharvest::j, quality, quality_, and reco::TrackBase::qualityByName().

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

◆ ~QcdUeDQM()

QcdUeDQM::~QcdUeDQM ( )
override

Definition at line 101 of file QcdUeDQM.cc.

101  {
102  // Destructor.
103 }

Member Function Documentation

◆ analyze()

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

Reimplemented from DQMEDAnalyzer.

Definition at line 635 of file QcdUeDQM.cc.

References pwdgSkimBPark_cfi::beamSpot, bsLabel_, caloJetLabel_, chargedJetLabel_, fill1D(), fillChargedJetSpectra(), fillHltBits(), fillpTMaxRelated(), fillUE_with_ChargedJets(), fillUE_with_MaxpTtrack(), fillVtxPlots(), hNevts_, iEvent, isHltConfigSuccessful_, selected_, jetUpdater_cfi::sort, trackLabel_, pwdgSkimBPark_cfi::tracks, trackSelection(), vtx1, and vtxLabel_.

635  {
637  return;
638 
639  // Analyze the given event.
640 
642  bool ValidBS_ = iEvent.getByToken(bsLabel_, beamSpot);
643  if (!ValidBS_)
644  return;
645 
647  bool ValidTrack_ = iEvent.getByToken(trackLabel_, tracks);
648  if (!ValidTrack_)
649  return;
650 
652  bool ValidTrackJet_ = iEvent.getByToken(chargedJetLabel_, trkJets);
653  if (!ValidTrackJet_)
654  return;
655 
657  bool ValidCaloJet_ = iEvent.getByToken(caloJetLabel_, calJets);
658  if (!ValidCaloJet_)
659  return;
660 
662  bool ValidVtxColl_ = iEvent.getByToken(vtxLabel_, vertexColl);
663  if (!ValidVtxColl_)
664  return;
665 
666  reco::TrackCollection tracks_sort = *tracks;
667  std::sort(tracks_sort.begin(), tracks_sort.end(), PtSorter());
668 
669  // get tracker geometry
670  /* ESHandle<TrackerGeometry> trackerHandle;
671  iSetup.get<TrackerDigiGeometryRecord>().get(trackerHandle);
672  tgeo_ = trackerHandle.product();
673  if (!tgeo_)return;
674  */
675  selected_.clear();
676  fillHltBits(iEvent, iSetup);
677  // select good tracks
678  if (fillVtxPlots(beamSpot.product(), vertexColl)) {
679  fill1D(hNevts_, 1);
680  for (reco::TrackCollection::const_iterator Trk = tracks_sort.begin(); Trk != tracks_sort.end(); ++Trk) {
681  if (trackSelection(*Trk, beamSpot.product(), vtx1, vertexColl->size()))
682  selected_.push_back(&*Trk);
683  }
684 
686  fillChargedJetSpectra(trkJets);
687  // fillCaloJetSpectra(calJets);
689  if (!trkJets->empty())
691  // if(calJets->size()>0)fillUE_with_CaloJets(selected_,calJets);
692  }
693 }
void fillpTMaxRelated(const std::vector< const reco::Track *> &track)
Definition: QcdUeDQM.cc:956
void fillHltBits(const edm::Event &iEvent, const edm::EventSetup &iSetup)
Definition: QcdUeDQM.cc:1250
bool trackSelection(const reco::Track &trk, const reco::BeamSpot *bs, const reco::Vertex &vtx, int sizevtx)
Definition: QcdUeDQM.cc:831
std::vector< Track > TrackCollection
collection of Tracks
Definition: TrackFwd.h:14
edm::EDGetTokenT< reco::TrackCollection > trackLabel_
Definition: QcdUeDQM.h:393
bool fillVtxPlots(const reco::BeamSpot *bs, const edm::Handle< reco::VertexCollection > vtxColl)
Definition: QcdUeDQM.cc:933
edm::EDGetTokenT< reco::CaloJetCollection > caloJetLabel_
Definition: QcdUeDQM.h:391
bool isHltConfigSuccessful_
Definition: QcdUeDQM.h:62
edm::EDGetTokenT< reco::TrackJetCollection > chargedJetLabel_
Definition: QcdUeDQM.h:392
int iEvent
Definition: GenABIO.cc:224
void fillUE_with_MaxpTtrack(const std::vector< const reco::Track *> &track)
Definition: QcdUeDQM.cc:1011
reco::Vertex vtx1
Definition: QcdUeDQM.h:400
edm::EDGetTokenT< reco::BeamSpot > bsLabel_
Definition: QcdUeDQM.h:395
edm::EDGetTokenT< reco::VertexCollection > vtxLabel_
Definition: QcdUeDQM.h:394
container selected_
Definition: QcdUeDQM.h:399
std::vector< MonitorElement * > hNevts_
Definition: QcdUeDQM.h:123
void fillUE_with_ChargedJets(const std::vector< const reco::Track *> &track, const edm::Handle< reco::TrackJetCollection > &trackJets)
Definition: QcdUeDQM.cc:1081
void fill1D(std::vector< TH1F *> &hs, double val, double w=1.)
Definition: QcdUeDQM.cc:753
void fillChargedJetSpectra(const edm::Handle< reco::TrackJetCollection > trackJets)
Definition: QcdUeDQM.cc:975

◆ book1D()

void QcdUeDQM::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 
)
private

Definition at line 695 of file QcdUeDQM.cc.

References dqm::implementation::IBooker::book1D(), MillePedeFileConverter_cfg::e, ctppsRandomDQMSource_cfi::folderName, hltTrgUsedNames_, mps_fire::i, Skims_PA_cff::name, dqm::implementation::NavigatorBase::setCurrentFolder(), AlCaHLTBitMon_QueryRunRegistry::string, runGCPTkAlMap::title, testProducerWithPsetDescEmpty_cfi::x1, and testProducerWithPsetDescEmpty_cfi::x2.

Referenced by bookHistograms().

703  {
704  // Book 1D histos.
705  for (size_t i = 0; i < hltTrgUsedNames_.size(); ++i) {
706  std::string folderName = "Physics/QcdUe/" + hltTrgUsedNames_.at(i);
707  iBooker.setCurrentFolder(folderName);
708  MonitorElement *e = iBooker.book1D(Form("%s_%s", name.c_str(), hltTrgUsedNames_.at(i).c_str()),
709  Form("%s: %s", hltTrgUsedNames_.at(i).c_str(), title.c_str()),
710  nx,
711  x1,
712  x2);
713  TH1 *h1 = e->getTH1();
714  if (sumw2) {
715  if (0 == h1->GetSumw2N()) { // protect against re-summing (would cause
716  // exception)
717  h1->Sumw2();
718  }
719  }
720  h1->SetStats(sbox);
721  mes.push_back(e);
722  }
723 }
std::vector< std::string > hltTrgUsedNames_
Definition: QcdUeDQM.h:115

◆ bookHistograms()

void QcdUeDQM::bookHistograms ( DQMStore::IBooker iBooker,
edm::Run const &  ,
edm::EventSetup const &   
)
overridevirtual

Implements DQMEDAnalyzer.

Definition at line 163 of file QcdUeDQM.cc.

References book1D(), dqm::implementation::IBooker::book2D(), bookProfile(), dqm::impl::MonitorElement::getTH1(), h, 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, PixelTestBeamValidation_cfi::Nx, dqm::impl::MonitorElement::setBinLabel(), dqm::implementation::NavigatorBase::setCurrentFolder(), testProducerWithPsetDescEmpty_cfi::x1, testProducerWithPsetDescEmpty_cfi::x2, testProducerWithPsetDescEmpty_cfi::y1, and testProducerWithPsetDescEmpty_cfi::y2.

163  {
164  // Book histograms if needed.
165  iBooker.setCurrentFolder("Physics/QcdUe");
166 
167  if (true) {
168  const int Nx = hltTrgUsedNames_.size();
169  const double x1 = -0.5;
170  const double x2 = Nx - 0.5;
171  h2TrigCorr_ = iBooker.book2D("h2TriCorr", "Trigger bit x vs y;y&&!x;x&&y", Nx, x1, x2, Nx, x1, x2);
172  for (size_t i = 1; i <= hltTrgUsedNames_.size(); ++i) {
175  }
176  TH1 *h = h2TrigCorr_->getTH1();
177  if (h)
178  h->SetStats(false);
179  }
180  book1D(iBooker, hNevts_, "hNevts", "number of events", 2, 0, 2);
181  book1D(iBooker, hNtrackerLayer_, "hNtrackerLayer", "number of tracker layers;multiplicity", 20, -0.5, 19.5);
182  book1D(iBooker, hNtrackerPixelLayer_, "hNtrackerPixelLayer", "number of pixel layers;multiplicity", 10, -0.5, 9.5);
183  book1D(iBooker,
185  "hNtrackerStripPixelLayer",
186  "number of strip + pixel layers;multiplicity",
187  30,
188  -0.5,
189  39.5);
190  book1D(iBooker, hRatioPtErrorPt_, "hRatioPtErrorPt", "ratio of pT error and track pT", 25, 0., 5.);
191  book1D(iBooker, hTrkPt_, "hTrkPt", "pT of all tracks", 50, 0., 50.);
192  book1D(iBooker, hTrkEta_, "hTrkEta", "eta of all tracks", 40, -4., 4.);
193  book1D(iBooker, hTrkPhi_, "hTrkPhi", "phi of all tracks", 40, -4., 4.);
194  book1D(iBooker,
196  "hRatioDxySigmaDxyBS",
197  "ratio of transverse impact parameter and its significance wrt beam spot",
198  60,
199  -10.,
200  10);
201  book1D(iBooker,
203  "hRatioDxySigmaDxyPV",
204  "ratio of transverse impact parameter and its significance wrt PV",
205  60,
206  -10.,
207  10);
208  book1D(iBooker,
210  "hRatioDzSigmaDzBS",
211  "ratio of longitudinal impact parameter and its significance wrt beam "
212  "spot",
213  80,
214  -20.,
215  20);
216  book1D(iBooker,
218  "hRatioDzSigmaDzPV",
219  "ratio of longitudinal impact parameter and its significance wrt PV",
220  80,
221  -20.,
222  20);
223  book1D(iBooker, hTrkChi2_, "hTrkChi2", "track chi2", 30, 0., 30);
224  book1D(iBooker, hTrkNdof_, "hTrkNdof", "track NDOF", 100, 0, 100);
225 
226  book1D(iBooker, hNgoodTrk_, "hNgoodTrk", "number of good tracks", 50, -0.5, 49.5);
227 
228  book1D(iBooker, hGoodTrkPt500_, "hGoodTrkPt500", "pT of all good tracks with pT > 500 MeV", 50, 0., 50.);
229  book1D(iBooker, hGoodTrkEta500_, "hGoodTrkEta500", "eta of all good tracks pT > 500 MeV", 40, -4., 4.);
230  book1D(iBooker, hGoodTrkPhi500_, "hGoodTrkPhi500", "phi of all good tracks pT > 500 MeV", 40, -4., 4.);
231 
232  book1D(iBooker, hGoodTrkPt900_, "hGoodTrkPt900", "pT of all good tracks with pT > 900 MeV", 50, 0., 50.);
233  book1D(iBooker, hGoodTrkEta900_, "hGoodTrkEta900", "eta of all good tracks pT > 900 MeV", 40, -4., 4.);
234  book1D(iBooker, hGoodTrkPhi900_, "hGoodTrkPhi900", "phi of all good tracks pT > 900 MeV", 40, -4., 4.);
235 
236  book1D(iBooker, hNvertices_, "hNvertices", "number of vertices", 5, -0.5, 4.5);
237  book1D(iBooker, hVertex_z_, "hVertex_z", "z position of vertex; z[cm]", 200, -50, 50);
238  book1D(iBooker, hVertex_y_, "hVertex_y", "y position of vertex; y[cm]", 100, -5, 5);
239  book1D(iBooker, hVertex_x_, "hVertex_x", "x position of vertex; x[cm]", 100, -5, 5);
240  book1D(iBooker, hVertex_ndof_, "hVertex_ndof", "ndof of vertex", 100, 0, 100);
241  book1D(iBooker, hVertex_rho_, "hVertex_rho", "rho of vertex", 100, 0, 5);
242  book1D(iBooker, hVertex_z_bs_, "hVertex_z_bs", "z position of vertex from beamspot; z[cm]", 200, -50, 50);
243 
244  book1D(iBooker, hBeamSpot_z_, "hBeamSpot_z", "z position of beamspot; z[cm]", 100, -20, 20);
245  book1D(iBooker, hBeamSpot_y_, "hBeamSpot_y", "y position of beamspot; y[cm]", 50, -10, 10);
246  book1D(iBooker, hBeamSpot_x_, "hBeamSpot_x", "x position of beamspot; x[cm]", 50, -10, 10);
247 
248  if (true) {
249  const int Nx = 25;
250  const double x1 = 0.0;
251  const double x2 = 50.0;
252  book1D(iBooker,
254  "hLeadingTrack_pTSpectrum",
255  "pT spectrum of leading track;pT(GeV/c)",
256  Nx,
257  x1,
258  x2);
259  book1D(iBooker,
261  "hLeadingChargedJet_pTSpectrum",
262  "pT spectrum of leading track jet;pT(GeV/c)",
263  Nx,
264  x1,
265  x2);
266  }
267 
268  if (true) {
269  const int Nx = 24;
270  const double x1 = -4.;
271  const double x2 = 4.;
272  book1D(iBooker,
274  "hLeadingTrack_phiSpectrum",
275  "#phi spectrum of leading track;#phi",
276  Nx,
277  x1,
278  x2);
279  book1D(iBooker,
281  "hLeadingChargedJet_phiSpectrum",
282  "#phi spectrum of leading track jet;#phi",
283  Nx,
284  x1,
285  x2);
286  }
287 
288  if (true) {
289  const int Nx = 24;
290  const double x1 = -4.;
291  const double x2 = 4.;
292  book1D(iBooker,
294  "hLeadingTrack_etaSpectrum",
295  "#eta spectrum of leading track;#eta",
296  Nx,
297  x1,
298  x2);
299  book1D(iBooker,
301  "hLeadingChargedJet_etaSpectrum",
302  "#eta spectrum of leading track jet;#eta",
303  Nx,
304  x1,
305  x2);
306  }
307 
308  if (true) {
309  const int Nx = 75;
310  const double x1 = 0.0;
311  const double x2 = 75.0;
312  const double y1 = 0.;
313  const double y2 = 10.;
314  bookProfile(iBooker,
316  "hdNdEtadPhi_pTMax_Toward500",
317  "Average number of tracks (pT > 500 MeV) in toward region vs "
318  "leading track pT;pT(GeV/c);dN/d#eta d#phi",
319  Nx,
320  x1,
321  x2,
322  y1,
323  y2,
324  false,
325  false);
326  bookProfile(iBooker,
328  "hdNdEtadPhi_pTMax_Transverse500",
329  "Average number of tracks (pT > 500 MeV) in transverse region "
330  "vs leading track pT;pT(GeV/c);dN/d#eta d#phi",
331  Nx,
332  x1,
333  x2,
334  y1,
335  y2,
336  false,
337  false);
338  bookProfile(iBooker,
340  "hdNdEtadPhi_pTMax_Away500",
341  "Average number of tracks (pT > 500 MeV) in away region vs "
342  "leading track pT;pT(GeV/c);dN/d#eta d#phi",
343  Nx,
344  x1,
345  x2,
346  y1,
347  y2,
348  false,
349  false);
350  bookProfile(iBooker,
352  "hdNdEtadPhi_trackJet_Toward500",
353  "Average number of tracks (pT > 500 MeV) in toward region vs "
354  "leading track jet pT;pT(GeV/c);dN/d#eta d#phi",
355  Nx,
356  x1,
357  x2,
358  y1,
359  y2);
360  bookProfile(iBooker,
362  "hdNdEtadPhi_trackJet_Transverse500",
363  "Average number of tracks (pT > 500 MeV) in transverse region "
364  "vs leading track jet pT;pT(GeV/c);dN/d#eta d#phi",
365  Nx,
366  x1,
367  x2,
368  y1,
369  y2,
370  false,
371  false);
372  bookProfile(iBooker,
374  "hdNdEtadPhi_trackJet_Away500",
375  "Average number of tracks (pT > 500 MeV) in away region vs "
376  "leading track jet pT;pT(GeV/c);dN/d#eta d#phi",
377  Nx,
378  x1,
379  x2,
380  y1,
381  y2,
382  false,
383  false);
384 
385  bookProfile(iBooker,
387  "hpTSumdEtadPhi_pTMax_Toward500",
388  "Average number of tracks (pT > 500 MeV) in toward region vs "
389  "leading track pT;pT(GeV/c);dpTSum/d#eta d#phi",
390  Nx,
391  x1,
392  x2,
393  y1,
394  y2,
395  false,
396  false);
397  bookProfile(iBooker,
399  "hpTSumdEtadPhi_pTMax_Transverse500",
400  "Average number of tracks (pT > 500 MeV) in transverse region "
401  "vs leading track pT;pT(GeV/c);dpTSum/d#eta d#phi",
402  Nx,
403  x1,
404  x2,
405  y1,
406  y2,
407  false,
408  false);
409  bookProfile(iBooker,
411  "hpTSumdEtadPhi_pTMax_Away500",
412  "Average number of tracks (pT > 500 MeV) in away region vs "
413  "leading track pT;pT(GeV/c);dpTSum/d#eta d#phi",
414  Nx,
415  x1,
416  x2,
417  y1,
418  y2,
419  false,
420  false);
421  bookProfile(iBooker,
423  "hpTSumdEtadPhi_trackJet_Toward500",
424  "Average number of tracks (pT > 500 MeV) in toward region vs "
425  "leading track jet pT;pT(GeV/c);dpTSum/d#eta d#phi",
426  Nx,
427  x1,
428  x2,
429  y1,
430  y2,
431  false,
432  false);
433  bookProfile(iBooker,
435  "hpTSumdEtadPhi_trackJet_Transverse500",
436  "Average number of tracks (pT > 500 MeV) in transverse region "
437  "vs leading track jet pT;pT(GeV/c);dpTSum/d#eta d#phi",
438  Nx,
439  x1,
440  x2,
441  y1,
442  y2,
443  false,
444  false);
445  bookProfile(iBooker,
447  "hpTSumdEtadPhi_trackJet_Away500",
448  "Average number of tracks (pT > 500 MeV) in away region vs "
449  "leading track jet pT;pT(GeV/c);dpTSum/d#eta d#phi",
450  Nx,
451  x1,
452  x2,
453  y1,
454  y2,
455  false,
456  false);
457 
458  bookProfile(iBooker,
460  "hdNdEtadPhi_pTMax_Toward900",
461  "Average number of tracks (pT > 900 MeV) in toward region vs "
462  "leading track pT;pT(GeV/c);dN/d#eta d#phi",
463  Nx,
464  x1,
465  x2,
466  y1,
467  y2,
468  false,
469  false);
470  bookProfile(iBooker,
472  "hdNdEtadPhi_pTMax_Transverse900",
473  "Average number of tracks (pT > 900 MeV) in transverse region "
474  "vs leading track pT;pT(GeV/c);dN/d#eta d#phi",
475  Nx,
476  x1,
477  x2,
478  y1,
479  y2,
480  false,
481  false);
482  bookProfile(iBooker,
484  "hdNdEtadPhi_pTMax_Away900",
485  "Average number of tracks (pT > 900 MeV) in away region vs "
486  "leading track pT;pT(GeV/c);dN/d#eta d#phi",
487  Nx,
488  x1,
489  x2,
490  y1,
491  y2,
492  false,
493  false);
494  bookProfile(iBooker,
496  "hdNdEtadPhi_trackJet_Toward900",
497  "Average number of tracks (pT > 900 MeV) in toward region vs "
498  "leading track jet pT;pT(GeV/c);dN/d#eta d#phi",
499  Nx,
500  x1,
501  x2,
502  y1,
503  y2);
504  bookProfile(iBooker,
506  "hdNdEtadPhi_trackJet_Transverse900",
507  "Average number of tracks (pT > 900 MeV) in transverse region "
508  "vs leading track jet pT;pT(GeV/c);dN/d#eta d#phi",
509  Nx,
510  x1,
511  x2,
512  y1,
513  y2,
514  false,
515  false);
516  bookProfile(iBooker,
518  "hdNdEtadPhi_trackJet_Away900",
519  "Average number of tracks (pT > 900 MeV) in away region vs "
520  "leading track jet pT;pT(GeV/c);dN/d#eta d#phi",
521  Nx,
522  x1,
523  x2,
524  y1,
525  y2,
526  false,
527  false);
528 
529  bookProfile(iBooker,
531  "hpTSumdEtadPhi_pTMax_Toward900",
532  "Average number of tracks (pT > 900 MeV) in toward region vs "
533  "leading track pT;pT(GeV/c);dpTSum/d#eta d#phi",
534  Nx,
535  x1,
536  x2,
537  y1,
538  y2,
539  false,
540  false);
541  bookProfile(iBooker,
543  "hpTSumdEtadPhi_pTMax_Transverse900",
544  "Average number of tracks (pT > 900 MeV) in transverse region "
545  "vs leading track pT;pT(GeV/c);dpTSum/d#eta d#phi",
546  Nx,
547  x1,
548  x2,
549  y1,
550  y2,
551  false,
552  false);
553  bookProfile(iBooker,
555  "hpTSumdEtadPhi_pTMax_Away900",
556  "Average number of tracks (pT > 900 MeV) in away region vs "
557  "leading track pT;pT(GeV/c);dpTSum/d#eta d#phi",
558  Nx,
559  x1,
560  x2,
561  y1,
562  y2,
563  false,
564  false);
565  bookProfile(iBooker,
567  "hpTSumdEtadPhi_trackJet_Toward900",
568  "Average number of tracks (pT > 900 MeV) in toward region vs "
569  "leading track jet pT;pT(GeV/c);dpTSum/d#eta d#phi",
570  Nx,
571  x1,
572  x2,
573  y1,
574  y2,
575  false,
576  false);
577  bookProfile(iBooker,
579  "hpTSumdEtadPhi_trackJet_Transverse900",
580  "Average number of tracks (pT > 900 MeV) in transverse region "
581  "vs leading track jet pT;pT(GeV/c);dpTSum/d#eta d#phi",
582  Nx,
583  x1,
584  x2,
585  y1,
586  y2,
587  false,
588  false);
589  bookProfile(iBooker,
591  "hpTSumdEtadPhi_trackJet_Away900",
592  "Average number of tracks (pT > 900 MeV) in away region vs "
593  "leading track jet pT;pT(GeV/c);dpTSum/d#eta d#phi",
594  Nx,
595  x1,
596  x2,
597  y1,
598  y2,
599  false,
600  false);
601  }
602 
603  if (true) {
604  const int Nx = 20;
605  const double x1 = 0.0;
606  const double x2 = 20.0;
607 
608  book1D(iBooker, hChargedJetMulti_, "hChargedJetMulti", "Charged jet multiplicity;multiplicities", Nx, x1, x2);
609  }
610 
611  if (true) {
612  const int Nx = 60;
613  const double x1 = -180.0;
614  const double x2 = 180.0;
615 
616  book1D(iBooker,
618  "hdPhi_maxpTTrack_tracks",
619  "delta phi between leading tracks and other "
620  "tracks;#Delta#phi(leading track-track)",
621  Nx,
622  x1,
623  x2);
624  book1D(iBooker,
626  "hdPhi_chargedJet_tracks",
627  "delta phi between leading charged jet and "
628  "tracks;#Delta#phi(leading charged jet-track)",
629  Nx,
630  x1,
631  x2);
632  }
633 }
std::vector< MonitorElement * > hdNdEtadPhi_trackJet_Toward900_
Definition: QcdUeDQM.h:312
std::vector< MonitorElement * > hpTSumdEtadPhi_trackJet_Transverse900_
Definition: QcdUeDQM.h:363
virtual void setCurrentFolder(std::string const &fullpath)
Definition: DQMStore.cc:36
std::vector< MonitorElement * > hTrkNdof_
Definition: QcdUeDQM.h:143
std::vector< MonitorElement * > hGoodTrkPhi500_
Definition: QcdUeDQM.h:134
std::vector< MonitorElement * > hdNdEtadPhi_pTMax_Transverse500_
Definition: QcdUeDQM.h:207
std::vector< MonitorElement * > hpTSumdEtadPhi_pTMax_Away900_
Definition: QcdUeDQM.h:339
std::vector< MonitorElement * > hLeadingChargedJet_phiSpectrum_
Definition: QcdUeDQM.h:196
std::vector< MonitorElement * > hTrkChi2_
Definition: QcdUeDQM.h:142
std::vector< MonitorElement * > hVertex_z_bs_
Definition: QcdUeDQM.h:151
std::vector< MonitorElement * > hGoodTrkEta900_
Definition: QcdUeDQM.h:136
std::vector< MonitorElement * > hGoodTrkPt900_
Definition: QcdUeDQM.h:135
std::vector< MonitorElement * > hpTSumdEtadPhi_trackJet_Away500_
Definition: QcdUeDQM.h:279
std::vector< MonitorElement * > hpTSumdEtadPhi_trackJet_Away900_
Definition: QcdUeDQM.h:366
std::vector< std::string > hltTrgUsedNames_
Definition: QcdUeDQM.h:115
std::vector< MonitorElement * > hTrkEta_
Definition: QcdUeDQM.h:129
std::vector< MonitorElement * > hdNdEtadPhi_trackJet_Away500_
Definition: QcdUeDQM.h:235
std::vector< MonitorElement * > hpTSumdEtadPhi_pTMax_Transverse500_
Definition: QcdUeDQM.h:249
std::vector< MonitorElement * > hLeadingChargedJet_etaSpectrum_
Definition: QcdUeDQM.h:192
std::vector< MonitorElement * > hdNdEtadPhi_pTMax_Away900_
Definition: QcdUeDQM.h:301
std::vector< MonitorElement * > hLeadingTrack_etaSpectrum_
Definition: QcdUeDQM.h:159
std::vector< MonitorElement * > hLeadingChargedJet_pTSpectrum_
Definition: QcdUeDQM.h:168
std::vector< MonitorElement * > hGoodTrkPhi900_
Definition: QcdUeDQM.h:137
std::vector< MonitorElement * > hpTSumdEtadPhi_trackJet_Toward500_
Definition: QcdUeDQM.h:265
std::vector< MonitorElement * > hVertex_ndof_
Definition: QcdUeDQM.h:149
std::vector< MonitorElement * > hVertex_rho_
Definition: QcdUeDQM.h:150
std::vector< MonitorElement * > hNtrackerLayer_
Definition: QcdUeDQM.h:124
std::vector< MonitorElement * > hRatioDzSigmaDzBS_
Definition: QcdUeDQM.h:140
MonitorElement * h2TrigCorr_
Definition: QcdUeDQM.h:121
std::vector< MonitorElement * > hVertex_y_
Definition: QcdUeDQM.h:147
std::vector< MonitorElement * > hpTSumdEtadPhi_pTMax_Toward500_
Definition: QcdUeDQM.h:242
std::vector< MonitorElement * > hpTSumdEtadPhi_trackJet_Toward900_
Definition: QcdUeDQM.h:352
std::vector< MonitorElement * > hdNdEtadPhi_trackJet_Away900_
Definition: QcdUeDQM.h:322
std::vector< MonitorElement * > hVertex_x_
Definition: QcdUeDQM.h:148
std::vector< MonitorElement * > hLeadingTrack_phiSpectrum_
Definition: QcdUeDQM.h:161
std::vector< MonitorElement * > hChargedJetMulti_
Definition: QcdUeDQM.h:164
virtual 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 * > hpTSumdEtadPhi_pTMax_Toward900_
Definition: QcdUeDQM.h:329
std::vector< MonitorElement * > hdNdEtadPhi_trackJet_Transverse900_
Definition: QcdUeDQM.h:319
std::vector< MonitorElement * > hdNdEtadPhi_pTMax_Transverse900_
Definition: QcdUeDQM.h:294
std::vector< MonitorElement * > hGoodTrkPt500_
Definition: QcdUeDQM.h:132
std::vector< MonitorElement * > hdNdEtadPhi_pTMax_Toward500_
Definition: QcdUeDQM.h:201
std::vector< MonitorElement * > hTrkPhi_
Definition: QcdUeDQM.h:130
std::vector< MonitorElement * > hdNdEtadPhi_pTMax_Toward900_
Definition: QcdUeDQM.h:288
std::vector< MonitorElement * > hdPhi_maxpTTrack_tracks_
Definition: QcdUeDQM.h:183
std::vector< MonitorElement * > hdNdEtadPhi_trackJet_Toward500_
Definition: QcdUeDQM.h:225
std::vector< MonitorElement * > hNvertices_
Definition: QcdUeDQM.h:145
std::vector< MonitorElement * > hdNdEtadPhi_pTMax_Away500_
Definition: QcdUeDQM.h:214
std::vector< MonitorElement * > hpTSumdEtadPhi_trackJet_Transverse500_
Definition: QcdUeDQM.h:276
std::vector< MonitorElement * > hNgoodTrk_
Definition: QcdUeDQM.h:131
std::vector< MonitorElement * > hpTSumdEtadPhi_pTMax_Away500_
Definition: QcdUeDQM.h:252
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:725
std::vector< MonitorElement * > hBeamSpot_y_
Definition: QcdUeDQM.h:154
MonitorElement * book2D(TString const &name, TString const &title, int nchX, double lowX, double highX, int nchY, double lowY, double highY, FUNC onbooking=NOOP())
Definition: DQMStore.h:212
std::vector< MonitorElement * > hLeadingTrack_pTSpectrum_
Definition: QcdUeDQM.h:157
std::vector< MonitorElement * > hRatioDxySigmaDxyBS_
Definition: QcdUeDQM.h:138
std::vector< MonitorElement * > hRatioDxySigmaDxyPV_
Definition: QcdUeDQM.h:139
std::vector< MonitorElement * > hdPhi_chargedJet_tracks_
Definition: QcdUeDQM.h:188
std::vector< MonitorElement * > hNtrackerStripPixelLayer_
Definition: QcdUeDQM.h:126
std::vector< MonitorElement * > hNevts_
Definition: QcdUeDQM.h:123
std::vector< MonitorElement * > hBeamSpot_x_
Definition: QcdUeDQM.h:155
std::vector< MonitorElement * > hTrkPt_
Definition: QcdUeDQM.h:128
std::vector< MonitorElement * > hGoodTrkEta500_
Definition: QcdUeDQM.h:133
std::vector< MonitorElement * > hdNdEtadPhi_trackJet_Transverse500_
Definition: QcdUeDQM.h:232
std::vector< MonitorElement * > hVertex_z_
Definition: QcdUeDQM.h:146
The Signals That Services Can Subscribe To This is based on ActivityRegistry h
Helper function to determine trigger accepts.
Definition: Activities.doc:4
std::vector< MonitorElement * > hRatioDzSigmaDzPV_
Definition: QcdUeDQM.h:141
std::vector< MonitorElement * > hRatioPtErrorPt_
Definition: QcdUeDQM.h:127
std::vector< MonitorElement * > hNtrackerPixelLayer_
Definition: QcdUeDQM.h:125
std::vector< MonitorElement * > hBeamSpot_z_
Definition: QcdUeDQM.h:153
std::vector< MonitorElement * > hpTSumdEtadPhi_pTMax_Transverse900_
Definition: QcdUeDQM.h:336
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:695

◆ bookProfile()

void QcdUeDQM::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 
)
private

Definition at line 725 of file QcdUeDQM.cc.

References dqm::implementation::IBooker::bookProfile(), MillePedeFileConverter_cfg::e, ctppsRandomDQMSource_cfi::folderName, hltTrgUsedNames_, mps_fire::i, Skims_PA_cff::name, dqm::implementation::NavigatorBase::setCurrentFolder(), AlCaHLTBitMon_QueryRunRegistry::string, runGCPTkAlMap::title, testProducerWithPsetDescEmpty_cfi::x1, testProducerWithPsetDescEmpty_cfi::x2, testProducerWithPsetDescEmpty_cfi::y1, and testProducerWithPsetDescEmpty_cfi::y2.

Referenced by bookHistograms().

735  {
736  // Book Profile histos.
737 
738  for (size_t i = 0; i < hltTrgUsedNames_.size(); ++i) {
739  std::string folderName = "Physics/QcdUe/" + hltTrgUsedNames_.at(i);
740  iBooker.setCurrentFolder(folderName);
741  MonitorElement *e = iBooker.bookProfile(Form("%s_%s", name.c_str(), hltTrgUsedNames_.at(i).c_str()),
742  Form("%s: %s", hltTrgUsedNames_.at(i).c_str(), title.c_str()),
743  nx,
744  x1,
745  x2,
746  y1,
747  y2,
748  " ");
749  mes.push_back(e);
750  }
751 }
std::vector< std::string > hltTrgUsedNames_
Definition: QcdUeDQM.h:115

◆ dqmBeginRun()

void QcdUeDQM::dqmBeginRun ( const edm::Run run,
const edm::EventSetup iSetup 
)
overridevirtual

Reimplemented from DQMEDAnalyzer.

Definition at line 105 of file QcdUeDQM.cc.

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

105  {
106  // indicating change of HLT cfg at run boundries
107  // for HLTConfigProvider::init()
108  bool isHltCfgChange = false;
109  isHltConfigSuccessful_ = false; // init
110 
111  string teststr;
112  for (size_t i = 0; i < hltProcNames_.size(); ++i) {
113  if (i > 0)
114  teststr += ", ";
115  teststr += hltProcNames_.at(i);
116  if (hltConfig.init(run, iSetup, hltProcNames_.at(i), isHltCfgChange)) {
117  isHltConfigSuccessful_ = true;
119  if (hltResName_.find(':') == string::npos)
120  hltUsedResName_ += "::";
121  else
122  hltUsedResName_ += ":";
124  break;
125  }
126  }
127 
129  return;
130 
131  // setup "Any" bit
132  hltTrgBits_.clear();
133  hltTrgBits_.push_back(-1);
134  hltTrgDeci_.clear();
135  hltTrgDeci_.push_back(true);
136  hltTrgUsedNames_.clear();
137  hltTrgUsedNames_.push_back("Any");
138 
139  // figure out relation of trigger name to trigger bit and store used trigger
140  // names/bits
141  for (size_t i = 0; i < hltTrgNames_.size(); ++i) {
142  const string &n1(hltTrgNames_.at(i));
143  // unsigned int hlt_prescale = hltConfig.prescaleValue(iSetup, n1);
144  // cout<<"trigger=="<<n1<<"presc=="<<hlt_prescale<<endl;
145  bool found = false;
146  for (size_t j = 0; j < hltConfig.size(); ++j) {
147  const string &n2(hltConfig.triggerName(j));
148  if (n2 == n1) {
149  hltTrgBits_.push_back(j);
150  hltTrgUsedNames_.push_back(n1);
151  hltTrgDeci_.push_back(false);
152  found = true;
153  break;
154  }
155  }
156  if (!found) {
157  CP(2) cout << "Could not find trigger bit" << endl;
158  }
159  }
161 }
const std::string & triggerName(unsigned int triggerIndex) const
std::string hltUsedResName_
Definition: QcdUeDQM.h:116
std::vector< std::string > hltTrgUsedNames_
Definition: QcdUeDQM.h:115
void find(edm::Handle< EcalRecHitCollection > &hits, DetId thisDet, std::vector< EcalRecHitCollection::const_iterator > &hit, bool debug=false)
Definition: FindCaloHit.cc:19
bool isHltConfigSuccessful_
Definition: QcdUeDQM.h:62
std::vector< std::string > hltTrgNames_
Definition: QcdUeDQM.h:111
std::vector< std::string > hltProcNames_
Definition: QcdUeDQM.h:110
unsigned int size() const
number of trigger paths in trigger table
std::string hltResName_
Definition: QcdUeDQM.h:109
std::vector< int > hltTrgBits_
Definition: QcdUeDQM.h:113
HLTConfigProvider hltConfig
Definition: QcdUeDQM.h:107
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:42
std::vector< bool > hltTrgDeci_
Definition: QcdUeDQM.h:114

◆ fill1D() [1/2]

void QcdUeDQM::fill1D ( std::vector< TH1F *> &  hs,
double  val,
double  w = 1. 
)
private

Definition at line 753 of file QcdUeDQM.cc.

References hltTrgDeci_, mps_fire::i, heppy_batch::val, and w().

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

753  {
754  // Loop over histograms and fill if trigger has fired.
755 
756  for (size_t i = 0; i < hs.size(); ++i) {
757  if (!hltTrgDeci_.at(i))
758  continue;
759  hs.at(i)->Fill(val, w);
760  }
761 }
T w() const
std::vector< bool > hltTrgDeci_
Definition: QcdUeDQM.h:114

◆ fill1D() [2/2]

void QcdUeDQM::fill1D ( std::vector< MonitorElement *> &  mes,
double  val,
double  w = 1. 
)
private

◆ fill2D() [1/2]

void QcdUeDQM::fill2D ( std::vector< TH2F *> &  hs,
double  valx,
double  valy,
double  w = 1. 
)
private

Definition at line 787 of file QcdUeDQM.cc.

References hltTrgDeci_, mps_fire::i, and w().

787  {
788  // Loop over histograms and fill if trigger has fired.
789 
790  for (size_t i = 0; i < hs.size(); ++i) {
791  if (!hltTrgDeci_.at(i))
792  continue;
793  hs.at(i)->Fill(valx, valy, w);
794  }
795 }
T w() const
std::vector< bool > hltTrgDeci_
Definition: QcdUeDQM.h:114

◆ fill2D() [2/2]

void QcdUeDQM::fill2D ( std::vector< MonitorElement *> &  mes,
double  valx,
double  valy,
double  w = 1. 
)
private

◆ fill3D()

void QcdUeDQM::fill3D ( std::vector< TH3F *> &  hs,
int  gbin,
double  w = 1. 
)
private

◆ fillChargedJetSpectra()

void QcdUeDQM::fillChargedJetSpectra ( const edm::Handle< reco::TrackJetCollection trackJets)
private

Definition at line 975 of file QcdUeDQM.cc.

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

Referenced by analyze().

975  {
976  fill1D(hChargedJetMulti_, trackJets->size());
977  for (reco::TrackJetCollection::const_iterator f = trackJets->begin(); f != trackJets->end(); f++) {
978  if (f != trackJets->begin())
979  continue;
983  }
984 }
std::vector< MonitorElement * > hLeadingChargedJet_phiSpectrum_
Definition: QcdUeDQM.h:196
std::vector< MonitorElement * > hLeadingChargedJet_etaSpectrum_
Definition: QcdUeDQM.h:192
std::vector< MonitorElement * > hLeadingChargedJet_pTSpectrum_
Definition: QcdUeDQM.h:168
double f[11][100]
std::vector< MonitorElement * > hChargedJetMulti_
Definition: QcdUeDQM.h:164
void fill1D(std::vector< TH1F *> &hs, double val, double w=1.)
Definition: QcdUeDQM.cc:753

◆ fillHltBits()

void QcdUeDQM::fillHltBits ( const edm::Event iEvent,
const edm::EventSetup iSetup 
)
private

Definition at line 1250 of file QcdUeDQM.cc.

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

Referenced by analyze().

1250  {
1251  // Fill HLT trigger bits.
1252 
1253  Handle<TriggerResults> triggerResultsHLT;
1254  getProduct(hltUsedResName_, triggerResultsHLT, iEvent);
1255 
1256  /* const unsigned int ntrigs(triggerResultsHLT.product()->size());
1257  if( ntrigs != 0 ) {
1258  const edm::TriggerNames & triggerNames =
1259  iEvent.triggerNames(*triggerResultsHLT);
1260  for (unsigned int j=0; j!=ntrigs; j++) {
1261  // if(triggerResultsHLT->accept(j)){
1262  // unsigned int hlt_prescale = hltConfig_.prescaleValue(iEvent, iSetup,
1263  triggerName);
1264  cout<<"trigger fired"<<triggerNames.triggerName(j)<<endl;
1265  for(unsigned int itrigName = 0; itrigName < hltTrgNames_.size();
1266  itrigName++ ) {
1267  unsigned int hlt_prescale = hltConfig.prescaleValue(iEvent, iSetup,
1268  hltTrgNames_[itrigName]);
1269 
1270  if(triggerNames.triggerIndex(hltTrgNames_[itrigName]) >= (unsigned
1271  int)ntrigs ) continue;
1272  // if(
1273  triggerResultsHLT->accept(triggerNames.triggerIndex(hltTrgNames_[itrigName]))
1274  )cout<<hltTrgNames_[itrigName]<<endl;
1275 
1276  }
1277  }
1278  }
1279  // }
1280  */
1281  for (size_t i = 0; i < hltTrgBits_.size(); ++i) {
1282  if (hltTrgBits_.at(i) < 0)
1283  continue; // ignore unknown trigger
1284  size_t tbit = hltTrgBits_.at(i);
1285  if (tbit < triggerResultsHLT->size()) {
1286  hltTrgDeci_[i] = triggerResultsHLT->accept(tbit);
1287  }
1288  }
1289  // fill correlation histogram
1290  for (size_t i = 0; i < hltTrgBits_.size(); ++i) {
1291  if (hltTrgDeci_.at(i))
1292  h2TrigCorr_->Fill(i, i);
1293  for (size_t j = i + 1; j < hltTrgBits_.size(); ++j) {
1294  if (hltTrgDeci_.at(i) && hltTrgDeci_.at(j))
1295  h2TrigCorr_->Fill(i, j);
1296  if (hltTrgDeci_.at(i) && !hltTrgDeci_.at(j))
1297  h2TrigCorr_->Fill(j, i);
1298  }
1299  }
1300 }
size
Write out results.
bool accept() const
Has at least one path accepted the event?
std::string hltUsedResName_
Definition: QcdUeDQM.h:116
void Fill(long long x)
int iEvent
Definition: GenABIO.cc:224
void getProduct(const std::string name, edm::Handle< TYPE > &prod, const edm::Event &event) const
Definition: QcdUeDQM.h:405
MonitorElement * h2TrigCorr_
Definition: QcdUeDQM.h:121
std::vector< int > hltTrgBits_
Definition: QcdUeDQM.h:113
std::vector< bool > hltTrgDeci_
Definition: QcdUeDQM.h:114

◆ fillProfile() [1/2]

void QcdUeDQM::fillProfile ( std::vector< TProfile *> &  hs,
double  valx,
double  valy,
double  w = 1. 
)
private

Definition at line 808 of file QcdUeDQM.cc.

References hltTrgDeci_, mps_fire::i, and w().

Referenced by fillUE_with_ChargedJets(), and fillUE_with_MaxpTtrack().

808  {
809  // Loop over histograms and fill if trigger has fired.
810 
811  for (size_t i = 0; i < hs.size(); ++i) {
812  if (!hltTrgDeci_.at(i))
813  continue;
814  hs.at(i)->Fill(valx, valy, w);
815  }
816 }
T w() const
std::vector< bool > hltTrgDeci_
Definition: QcdUeDQM.h:114

◆ fillProfile() [2/2]

void QcdUeDQM::fillProfile ( std::vector< MonitorElement *> &  mes,
double  valx,
double  valy,
double  w = 1. 
)
private

◆ fillpTMaxRelated()

void QcdUeDQM::fillpTMaxRelated ( const std::vector< const reco::Track *> &  track)
private

Definition at line 956 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, DiDispStaMuonMonitor_cfi::pt, and HLT_2023v12_cff::track.

Referenced by analyze().

956  {
957  fill1D(hNgoodTrk_, track.size());
958  if (!track.empty()) {
962  }
963  for (size_t i = 0; i < track.size(); i++) {
967  if (track[i]->pt() > 0.9) {
971  }
972  }
973 }
std::vector< MonitorElement * > hGoodTrkPhi500_
Definition: QcdUeDQM.h:134
std::vector< MonitorElement * > hGoodTrkEta900_
Definition: QcdUeDQM.h:136
std::vector< MonitorElement * > hGoodTrkPt900_
Definition: QcdUeDQM.h:135
std::vector< MonitorElement * > hLeadingTrack_etaSpectrum_
Definition: QcdUeDQM.h:159
std::vector< MonitorElement * > hGoodTrkPhi900_
Definition: QcdUeDQM.h:137
std::vector< MonitorElement * > hLeadingTrack_phiSpectrum_
Definition: QcdUeDQM.h:161
std::vector< MonitorElement * > hGoodTrkPt500_
Definition: QcdUeDQM.h:132
std::vector< MonitorElement * > hNgoodTrk_
Definition: QcdUeDQM.h:131
std::vector< MonitorElement * > hLeadingTrack_pTSpectrum_
Definition: QcdUeDQM.h:157
void fill1D(std::vector< TH1F *> &hs, double val, double w=1.)
Definition: QcdUeDQM.cc:753
std::vector< MonitorElement * > hGoodTrkEta500_
Definition: QcdUeDQM.h:133

◆ fillUE_with_ChargedJets()

void QcdUeDQM::fillUE_with_ChargedJets ( const std::vector< const reco::Track *> &  track,
const edm::Handle< reco::TrackJetCollection > &  trackJets 
)
private

Definition at line 1081 of file QcdUeDQM.cc.

References SiPixelRawToDigiRegional_cfi::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, DiDispStaMuonMonitor_cfi::pt, HLT_2023v12_cff::track, and w().

Referenced by analyze().

1082  {
1083  double w = 0.119;
1084  double nTrk500_TransReg = 0;
1085  double nTrk500_AwayReg = 0;
1086  double nTrk500_TowardReg = 0;
1087 
1088  double pTSum500_TransReg = 0;
1089  double pTSum500_AwayReg = 0;
1090  double pTSum500_TowardReg = 0;
1091 
1092  double nTrk900_TransReg = 0;
1093  double nTrk900_AwayReg = 0;
1094  double nTrk900_TowardReg = 0;
1095 
1096  double pTSum900_TransReg = 0;
1097  double pTSum900_AwayReg = 0;
1098  double pTSum900_TowardReg = 0;
1099 
1100  if (!(trackJets->empty()) && (trackJets->begin())->pt() > 1.) {
1101  double jetPhi = (trackJets->begin())->phi();
1102  for (size_t i = 0; i < track.size(); i++) {
1103  double dphi = (180. / PI) * (deltaPhi(jetPhi, track[i]->phi()));
1105  if (fabs(dphi) > 60. && fabs(dphi) < 120.) {
1106  pTSum500_TransReg = pTSum500_TransReg + track[i]->pt();
1107  nTrk500_TransReg++;
1108  if (track[i]->pt() > 0.9) {
1109  pTSum900_TransReg = pTSum900_TransReg + track[i]->pt();
1110  nTrk900_TransReg++;
1111  }
1112  }
1113 
1114  if (fabs(dphi) > 120. && fabs(dphi) < 180.) {
1115  pTSum500_AwayReg = pTSum500_AwayReg + track[i]->pt();
1116  nTrk500_AwayReg++;
1117  if (track[i]->pt() > 0.9) {
1118  pTSum900_AwayReg = pTSum900_AwayReg + track[i]->pt();
1119  nTrk900_AwayReg++;
1120  }
1121  }
1122  if (fabs(dphi) < 60.) {
1123  pTSum500_TowardReg = pTSum500_TowardReg + track[i]->pt();
1124  nTrk500_TowardReg++;
1125  if (track[i]->pt() > 0.9) {
1126  pTSum900_TowardReg = pTSum900_TowardReg + track[i]->pt();
1127  nTrk900_TowardReg++;
1128  }
1129  }
1130  } // tracks loop
1131 
1132  } // leading track jet
1133 
1134  fillProfile(hdNdEtadPhi_trackJet_Toward500_, (trackJets->begin())->pt(), nTrk500_TowardReg, w);
1135  fillProfile(hdNdEtadPhi_trackJet_Transverse500_, (trackJets->begin())->pt(), nTrk500_TransReg, w);
1136  fillProfile(hdNdEtadPhi_trackJet_Away500_, (trackJets->begin())->pt(), nTrk500_AwayReg, w);
1137 
1138  fillProfile(hpTSumdEtadPhi_trackJet_Toward500_, (trackJets->begin())->pt(), pTSum500_TowardReg, w);
1139  fillProfile(hpTSumdEtadPhi_trackJet_Transverse500_, (trackJets->begin())->pt(), pTSum500_TransReg, w);
1140  fillProfile(hpTSumdEtadPhi_trackJet_Away500_, (trackJets->begin())->pt(), pTSum500_AwayReg, w);
1141 
1142  fillProfile(hdNdEtadPhi_trackJet_Toward900_, (trackJets->begin())->pt(), nTrk900_TowardReg, w);
1143  fillProfile(hdNdEtadPhi_trackJet_Transverse900_, (trackJets->begin())->pt(), nTrk900_TransReg, w);
1144  fillProfile(hdNdEtadPhi_trackJet_Away900_, (trackJets->begin())->pt(), nTrk900_AwayReg, w);
1145 
1146  fillProfile(hpTSumdEtadPhi_trackJet_Toward900_, (trackJets->begin())->pt(), pTSum900_TowardReg, w);
1147  fillProfile(hpTSumdEtadPhi_trackJet_Transverse900_, (trackJets->begin())->pt(), pTSum900_TransReg, w);
1148  fillProfile(hpTSumdEtadPhi_trackJet_Away900_, (trackJets->begin())->pt(), pTSum900_AwayReg, w);
1149 }
std::vector< MonitorElement * > hdNdEtadPhi_trackJet_Toward900_
Definition: QcdUeDQM.h:312
std::vector< MonitorElement * > hpTSumdEtadPhi_trackJet_Transverse900_
Definition: QcdUeDQM.h:363
T w() const
std::vector< MonitorElement * > hpTSumdEtadPhi_trackJet_Away500_
Definition: QcdUeDQM.h:279
std::vector< MonitorElement * > hpTSumdEtadPhi_trackJet_Away900_
Definition: QcdUeDQM.h:366
std::vector< MonitorElement * > hdNdEtadPhi_trackJet_Away500_
Definition: QcdUeDQM.h:235
std::vector< MonitorElement * > hpTSumdEtadPhi_trackJet_Toward500_
Definition: QcdUeDQM.h:265
std::vector< MonitorElement * > hpTSumdEtadPhi_trackJet_Toward900_
Definition: QcdUeDQM.h:352
std::vector< MonitorElement * > hdNdEtadPhi_trackJet_Away900_
Definition: QcdUeDQM.h:322
void fillProfile(std::vector< TProfile *> &hs, double valx, double valy, double w=1.)
Definition: QcdUeDQM.cc:808
#define PI
Definition: QcdUeDQM.h:37
std::vector< MonitorElement * > hdNdEtadPhi_trackJet_Transverse900_
Definition: QcdUeDQM.h:319
std::vector< MonitorElement * > hdNdEtadPhi_trackJet_Toward500_
Definition: QcdUeDQM.h:225
std::vector< MonitorElement * > hpTSumdEtadPhi_trackJet_Transverse500_
Definition: QcdUeDQM.h:276
std::vector< MonitorElement * > hdPhi_chargedJet_tracks_
Definition: QcdUeDQM.h:188
void fill1D(std::vector< TH1F *> &hs, double val, double w=1.)
Definition: QcdUeDQM.cc:753
std::vector< MonitorElement * > hdNdEtadPhi_trackJet_Transverse500_
Definition: QcdUeDQM.h:232

◆ fillUE_with_MaxpTtrack()

void QcdUeDQM::fillUE_with_MaxpTtrack ( const std::vector< const reco::Track *> &  track)
private

Definition at line 1011 of file QcdUeDQM.cc.

References SiPixelRawToDigiRegional_cfi::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, DiDispStaMuonMonitor_cfi::pt, HLT_2023v12_cff::track, and w().

Referenced by analyze().

1011  {
1012  double w = 0.119;
1013  // double w = 1.;
1014  double nTrk500_TransReg = 0;
1015  double nTrk500_AwayReg = 0;
1016  double nTrk500_TowardReg = 0;
1017 
1018  double pTSum500_TransReg = 0;
1019  double pTSum500_AwayReg = 0;
1020  double pTSum500_TowardReg = 0;
1021 
1022  double nTrk900_TransReg = 0;
1023  double nTrk900_AwayReg = 0;
1024  double nTrk900_TowardReg = 0;
1025 
1026  double pTSum900_TransReg = 0;
1027  double pTSum900_AwayReg = 0;
1028  double pTSum900_TowardReg = 0;
1029  if (!track.empty()) {
1030  if (track[0]->pt() > 1.) {
1031  for (size_t i = 1; i < track.size(); i++) {
1032  double dphi = (180. / PI) * (deltaPhi(track[0]->phi(), track[i]->phi()));
1034  if (fabs(dphi) > 60. && fabs(dphi) < 120.) {
1035  pTSum500_TransReg = pTSum500_TransReg + track[i]->pt();
1036  nTrk500_TransReg++;
1037  if (track[i]->pt() > 0.9) {
1038  pTSum900_TransReg = pTSum900_TransReg + track[i]->pt();
1039  nTrk900_TransReg++;
1040  }
1041  }
1042 
1043  if (fabs(dphi) > 120. && fabs(dphi) < 180.) {
1044  pTSum500_AwayReg = pTSum500_AwayReg + track[i]->pt();
1045  nTrk500_AwayReg++;
1046  if (track[i]->pt() > 0.9) {
1047  pTSum900_AwayReg = pTSum900_AwayReg + track[i]->pt();
1048  nTrk900_AwayReg++;
1049  }
1050  }
1051 
1052  if (fabs(dphi) < 60.) {
1053  pTSum500_TowardReg = pTSum500_TowardReg + track[i]->pt();
1054  nTrk500_TowardReg++;
1055  if (track[i]->pt() > 0.9) {
1056  pTSum900_TowardReg = pTSum900_TowardReg + track[i]->pt();
1057  nTrk900_TowardReg++;
1058  }
1059  }
1060  } // track loop
1061  } // leading track
1062  // non empty collection
1063  fillProfile(hdNdEtadPhi_pTMax_Toward500_, track[0]->pt(), nTrk500_TowardReg, w);
1064  fillProfile(hdNdEtadPhi_pTMax_Transverse500_, track[0]->pt(), nTrk500_TransReg, w);
1065  fillProfile(hdNdEtadPhi_pTMax_Away500_, track[0]->pt(), nTrk500_AwayReg, w);
1066 
1067  fillProfile(hpTSumdEtadPhi_pTMax_Toward500_, track[0]->pt(), pTSum500_TowardReg, w);
1068  fillProfile(hpTSumdEtadPhi_pTMax_Transverse500_, track[0]->pt(), pTSum500_TransReg, w);
1069  fillProfile(hpTSumdEtadPhi_pTMax_Away500_, track[0]->pt(), pTSum500_AwayReg, w);
1070 
1071  fillProfile(hdNdEtadPhi_pTMax_Toward900_, track[0]->pt(), nTrk900_TowardReg, w);
1072  fillProfile(hdNdEtadPhi_pTMax_Transverse900_, track[0]->pt(), nTrk900_TransReg, w);
1073  fillProfile(hdNdEtadPhi_pTMax_Away900_, track[0]->pt(), nTrk900_AwayReg, w);
1074 
1075  fillProfile(hpTSumdEtadPhi_pTMax_Toward900_, track[0]->pt(), pTSum900_TowardReg, w);
1076  fillProfile(hpTSumdEtadPhi_pTMax_Transverse900_, track[0]->pt(), pTSum900_TransReg, w);
1077  fillProfile(hpTSumdEtadPhi_pTMax_Away900_, track[0]->pt(), pTSum900_AwayReg, w);
1078  }
1079 }
std::vector< MonitorElement * > hdNdEtadPhi_pTMax_Transverse500_
Definition: QcdUeDQM.h:207
T w() const
std::vector< MonitorElement * > hpTSumdEtadPhi_pTMax_Away900_
Definition: QcdUeDQM.h:339
std::vector< MonitorElement * > hpTSumdEtadPhi_pTMax_Transverse500_
Definition: QcdUeDQM.h:249
std::vector< MonitorElement * > hdNdEtadPhi_pTMax_Away900_
Definition: QcdUeDQM.h:301
std::vector< MonitorElement * > hpTSumdEtadPhi_pTMax_Toward500_
Definition: QcdUeDQM.h:242
void fillProfile(std::vector< TProfile *> &hs, double valx, double valy, double w=1.)
Definition: QcdUeDQM.cc:808
std::vector< MonitorElement * > hpTSumdEtadPhi_pTMax_Toward900_
Definition: QcdUeDQM.h:329
#define PI
Definition: QcdUeDQM.h:37
std::vector< MonitorElement * > hdNdEtadPhi_pTMax_Transverse900_
Definition: QcdUeDQM.h:294
std::vector< MonitorElement * > hdNdEtadPhi_pTMax_Toward500_
Definition: QcdUeDQM.h:201
std::vector< MonitorElement * > hdNdEtadPhi_pTMax_Toward900_
Definition: QcdUeDQM.h:288
std::vector< MonitorElement * > hdPhi_maxpTTrack_tracks_
Definition: QcdUeDQM.h:183
std::vector< MonitorElement * > hdNdEtadPhi_pTMax_Away500_
Definition: QcdUeDQM.h:214
std::vector< MonitorElement * > hpTSumdEtadPhi_pTMax_Away500_
Definition: QcdUeDQM.h:252
void fill1D(std::vector< TH1F *> &hs, double val, double w=1.)
Definition: QcdUeDQM.cc:753
std::vector< MonitorElement * > hpTSumdEtadPhi_pTMax_Transverse900_
Definition: QcdUeDQM.h:336

◆ fillVtxPlots()

bool QcdUeDQM::fillVtxPlots ( const reco::BeamSpot bs,
const edm::Handle< reco::VertexCollection vtxColl 
)
private

Definition at line 933 of file QcdUeDQM.cc.

References cms::cuda::bs, diffvtxbs_, fill1D(), hNvertices_, hVertex_ndof_, hVertex_rho_, hVertex_x_, hVertex_y_, hVertex_z_, hVertex_z_bs_, edm::Handle< T >::product(), and vtx1.

Referenced by analyze().

933  {
934  const reco::VertexCollection theVertices = *(vtxColl.product());
935  bool goodVtx = false;
936  fill1D(hNvertices_, theVertices.size());
937  for (reco::VertexCollection::const_iterator vertexIt = theVertices.begin(); vertexIt != theVertices.end();
938  ++vertexIt) {
939  fill1D(hVertex_z_, vertexIt->z());
940  fill1D(hVertex_y_, vertexIt->y());
941  fill1D(hVertex_x_, vertexIt->x());
942  fill1D(hVertex_ndof_, vertexIt->ndof());
943  fill1D(hVertex_rho_, vertexIt->position().rho());
944  fill1D(hVertex_z_bs_, (vertexIt->z() - bs->z0()));
945 
946  if (fabs(vertexIt->z() - bs->z0()) < diffvtxbs_ && vertexIt->ndof() >= 4 && vertexIt->position().rho() <= 2.0) {
947  goodVtx = true;
948  vtx1 = (*vertexIt);
949 
950  break;
951  }
952  } // Loop over vertcies
953  return goodVtx;
954 }
std::vector< MonitorElement * > hVertex_z_bs_
Definition: QcdUeDQM.h:151
T const * product() const
Definition: Handle.h:70
std::vector< Vertex > VertexCollection
collection of Vertex objects
Definition: VertexFwd.h:9
std::vector< MonitorElement * > hVertex_ndof_
Definition: QcdUeDQM.h:149
std::vector< MonitorElement * > hVertex_rho_
Definition: QcdUeDQM.h:150
std::vector< MonitorElement * > hVertex_y_
Definition: QcdUeDQM.h:147
reco::Vertex vtx1
Definition: QcdUeDQM.h:400
std::vector< MonitorElement * > hVertex_x_
Definition: QcdUeDQM.h:148
std::vector< MonitorElement * > hNvertices_
Definition: QcdUeDQM.h:145
double diffvtxbs_
Definition: QcdUeDQM.h:380
void fill1D(std::vector< TH1F *> &hs, double val, double w=1.)
Definition: QcdUeDQM.cc:753
std::vector< MonitorElement * > hVertex_z_
Definition: QcdUeDQM.h:146

◆ getProduct()

template<typename TYPE >
void QcdUeDQM::getProduct ( const std::string  name,
edm::Handle< TYPE > &  prod,
const edm::Event event 
) const
inlineprivate

Definition at line 405 of file QcdUeDQM.h.

References edm::errors::Configuration, Skims_PA_cff::name, and dumpMFGeometry_cfg::prod.

Referenced by fillHltBits().

405  {
406  // Try to access data collection from EDM file. We check if we really get just
407  // one
408  // product with the given name. If not we throw an exception.
409 
410  event.getByLabel(edm::InputTag(name), prod);
411  if (!prod.isValid())
412  throw edm::Exception(edm::errors::Configuration, "QcdUeDQM::GetProduct()\n")
413  << "Collection with label " << name << " is not valid" << std::endl;
414 }

◆ getProductSafe()

template<typename TYPE >
bool QcdUeDQM::getProductSafe ( const std::string  name,
edm::Handle< TYPE > &  prod,
const edm::Event event 
) const
inlineprivate

Definition at line 418 of file QcdUeDQM.h.

References Skims_PA_cff::name, and dumpMFGeometry_cfg::prod.

418  {
419  // Try to safely access data collection from EDM file. We check if we really
420  // get just one
421  // product with the given name. If not, we return false.
422 
423  if (name.empty())
424  return false;
425 
426  try {
427  event.getByLabel(edm::InputTag(name), prod);
428  if (!prod.isValid())
429  return false;
430  } catch (...) {
431  return false;
432  }
433  return true;
434 }

◆ setLabel1D()

void QcdUeDQM::setLabel1D ( std::vector< MonitorElement *> &  mes)
private

Definition at line 775 of file QcdUeDQM.cc.

References DMR_cfg::cut, hltTrgDeci_, mps_fire::i, and dqmiolumiharvest::j.

775  {
776  // Loop over histograms and fill if trigger has fired.
777  string cut[5] = {"Nevt", "vtx!=bmspt", "Zvtx<10cm", "pT>1GeV", "trackFromVtx"};
778  for (size_t i = 0; i < mes.size(); ++i) {
779  if (!hltTrgDeci_.at(i))
780  continue;
781  for (size_t j = 1; j < 6; j++)
782  mes.at(i)->setBinLabel(j, cut[j - 1], 1);
783  }
784 }
std::vector< bool > hltTrgDeci_
Definition: QcdUeDQM.h:114

◆ trackSelection()

bool QcdUeDQM::trackSelection ( const reco::Track trk,
const reco::BeamSpot bs,
const reco::Vertex vtx,
int  sizevtx 
)
private

Definition at line 831 of file QcdUeDQM.cc.

References reco::TrackBase::algo(), algorithm_, allowTriplets_, cms::cuda::bs, bsuse_, reco::TrackBase::dxy(), reco::TrackBase::dxyError(), reco::TrackBase::dz(), reco::TrackBase::dzError(), reco::TrackBase::eta(), fill1D(), spr::find(), 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::numberOfValidStripLayersWithMonoAndStereo(), AlCaHLTBitMon_ParallelJobs::p, reco::TrackBase::phi(), reco::HitPattern::pixelHitFilter(), reco::HitPattern::pixelLayersWithMeasurement(), 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(), and extraflags_cff::vtx.

Referenced by analyze().

831  {
832  bool goodTrk = false;
833 
834  if (sizevtx != 1)
835  return false; // selection events with only a vertex
836 
837  // Fill basic information of all the tracks
840 
841  fill1D(
844 
845  fill1D(hRatioPtErrorPt_, (trk.ptError() / trk.pt()));
846  fill1D(hTrkPt_, trk.pt());
847  fill1D(hTrkEta_, trk.eta());
848  fill1D(hTrkPhi_, trk.phi());
849  fill1D(hRatioDxySigmaDxyBS_, (trk.dxy(bs->position()) / trk.dxyError()));
850  fill1D(hRatioDxySigmaDxyPV_, (trk.dxy(vtx.position()) / trk.dxyError()));
851  fill1D(hRatioDzSigmaDzBS_, (trk.dz(bs->position()) / trk.dzError()));
852  fill1D(hRatioDzSigmaDzPV_, (trk.dz(vtx.position()) / trk.dzError()));
854  fill1D(hTrkNdof_, trk.ndof());
855 
856  fill1D(hBeamSpot_x_, bs->x0());
857  fill1D(hBeamSpot_y_, bs->y0());
858  fill1D(hBeamSpot_z_, bs->z0());
859 
860  // number of layers
861  bool layerMinCutbool = (trk.hitPattern().trackerLayersWithMeasurement() >= minHit_ ||
864 
865  // number of pixel layers
866  bool pxlLayerMinCutbool = (trk.hitPattern().pixelLayersWithMeasurement() >= pxlLayerMinCut_);
867 
868  // cut on the hits in pixel layers
869  bool hasPIX1 = false;
870  if (requirePIX1_) {
871  const reco::HitPattern &p = trk.hitPattern();
872  for (int i = 0; i < p.numberOfAllHits(reco::HitPattern::TRACK_HITS); i++) {
873  uint32_t hit = p.getHitPattern(reco::HitPattern::TRACK_HITS, i);
876  hasPIX1 = true;
877  break;
878  }
879  }
880  } else {
881  hasPIX1 = true;
882  }
883 
884  // cut on the pT error
885  bool ptErrorbool =
886  (trk.ptError() / trk.pt() < ptErr_pt_ || (trk.hitPattern().trackerLayersWithMeasurement() == 3 &&
888 
889  // quality cut
890  bool quality_ok = true;
891  if (!quality_.empty()) {
892  quality_ok = false;
893  for (unsigned int i = 0; i < quality_.size(); ++i) {
894  if (trk.quality(quality_[i])) {
895  quality_ok = true;
896  break;
897  }
898  }
899  }
900  //-----
901  bool algo_ok = true;
902  if (!algorithm_.empty()) {
903  if (std::find(algorithm_.begin(), algorithm_.end(), trk.algo()) == algorithm_.end())
904  algo_ok = false;
905  }
906 
907  if (bsuse_ == 1) {
908  if (hasPIX1 && pxlLayerMinCutbool && layerMinCutbool &&
911  ptErrorbool && fabs(trk.pt()) >= ptMin_ && trk.eta() >= minRapidity_ && trk.eta() <= maxRapidity_ &&
912  fabs(trk.dxy(bs->position()) / trk.dxyError()) < tip_ && fabs(trk.dz(bs->position()) / trk.dzError()) < lip_ &&
913  trk.normalizedChi2() <= maxChi2_ && quality_ok && algo_ok) {
914  goodTrk = true;
915  }
916  }
917 
918  if (bsuse_ == 0) {
919  if (hasPIX1 && pxlLayerMinCutbool && layerMinCutbool &&
922  ptErrorbool && fabs(trk.pt()) >= ptMin_ && trk.eta() >= minRapidity_ && trk.eta() <= maxRapidity_ &&
923  fabs(trk.dxy(vtx.position()) / trk.dxyError()) < tip_ && fabs(trk.dz(vtx.position()) / trk.dzError()) < lip_ &&
924  trk.normalizedChi2() <= maxChi2_ && quality_ok && algo_ok) {
925  goodTrk = true;
926  }
927  }
928 
929  return goodTrk;
930 }
bool quality(const TrackQuality) const
Track quality.
Definition: TrackBase.h:552
bool bsuse_
Definition: QcdUeDQM.h:388
static uint32_t getLayer(uint16_t pattern)
Definition: HitPattern.h:721
static bool pixelHitFilter(uint16_t pattern)
Definition: HitPattern.h:581
double ptError() const
error on Pt (set to 1000 TeV if charge==0 for safety)
Definition: TrackBase.h:754
std::vector< MonitorElement * > hTrkNdof_
Definition: QcdUeDQM.h:143
std::vector< MonitorElement * > hTrkChi2_
Definition: QcdUeDQM.h:142
int trackerLayersWithMeasurement() const
Definition: HitPattern.cc:534
std::vector< MonitorElement * > hTrkEta_
Definition: QcdUeDQM.h:129
double ptErr_pt_
Definition: QcdUeDQM.h:381
void find(edm::Handle< EcalRecHitCollection > &hits, DetId thisDet, std::vector< EcalRecHitCollection::const_iterator > &hit, bool debug=false)
Definition: FindCaloHit.cc:19
bool requirePIX1_
Definition: QcdUeDQM.h:385
static bool validHitFilter(uint16_t pattern)
Definition: HitPattern.h:796
double pt() const
track transverse momentum
Definition: TrackBase.h:637
double ndof() const
number of degrees of freedom of the fit
Definition: TrackBase.h:590
int numberOfValidStripLayersWithMonoAndStereo(uint16_t stripdet, uint16_t layer) const
Definition: HitPattern.cc:369
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:622
std::vector< MonitorElement * > hNtrackerLayer_
Definition: QcdUeDQM.h:124
std::vector< MonitorElement * > hRatioDzSigmaDzBS_
Definition: QcdUeDQM.h:140
double dxyError() const
error on dxy
Definition: TrackBase.h:769
double dzError() const
error on dz
Definition: TrackBase.h:778
double maxChi2_
Definition: QcdUeDQM.h:387
double lip_
Definition: QcdUeDQM.h:379
double phi() const
azimuthal angle of momentum vector
Definition: TrackBase.h:649
std::vector< reco::TrackBase::TrackAlgorithm > algorithm_
Definition: QcdUeDQM.h:397
std::vector< MonitorElement * > hTrkPhi_
Definition: QcdUeDQM.h:130
double eta() const
pseudorapidity of momentum vector
Definition: TrackBase.h:652
TrackAlgorithm algo() const
Definition: TrackBase.h:547
bool allowTriplets_
Definition: QcdUeDQM.h:389
double ptMin_
Definition: QcdUeDQM.h:375
const HitPattern & hitPattern() const
Access the hit pattern, indicating in which Tracker layers the track has hits.
Definition: TrackBase.h:504
std::vector< MonitorElement * > hBeamSpot_y_
Definition: QcdUeDQM.h:154
double minRapidity_
Definition: QcdUeDQM.h:376
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:593
int min3DHit_
Definition: QcdUeDQM.h:386
std::vector< MonitorElement * > hRatioDxySigmaDxyBS_
Definition: QcdUeDQM.h:138
std::vector< MonitorElement * > hRatioDxySigmaDxyPV_
Definition: QcdUeDQM.h:139
std::vector< MonitorElement * > hNtrackerStripPixelLayer_
Definition: QcdUeDQM.h:126
double pxlLayerMinCut_
Definition: QcdUeDQM.h:384
std::vector< MonitorElement * > hBeamSpot_x_
Definition: QcdUeDQM.h:155
void fill1D(std::vector< TH1F *> &hs, double val, double w=1.)
Definition: QcdUeDQM.cc:753
std::vector< MonitorElement * > hTrkPt_
Definition: QcdUeDQM.h:128
int pixelLayersWithMeasurement() const
Definition: HitPattern.cc:513
std::vector< reco::TrackBase::TrackQuality > quality_
Definition: QcdUeDQM.h:396
double maxRapidity_
Definition: QcdUeDQM.h:377
std::vector< MonitorElement * > hRatioDzSigmaDzPV_
Definition: QcdUeDQM.h:141
int minHit_
Definition: QcdUeDQM.h:383
std::vector< MonitorElement * > hRatioPtErrorPt_
Definition: QcdUeDQM.h:127
std::vector< MonitorElement * > hNtrackerPixelLayer_
Definition: QcdUeDQM.h:125
std::vector< MonitorElement * > hBeamSpot_z_
Definition: QcdUeDQM.h:153
double tip_
Definition: QcdUeDQM.h:378
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:608

Member Data Documentation

◆ algorithm_

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

Definition at line 397 of file QcdUeDQM.h.

Referenced by QcdUeDQM(), and trackSelection().

◆ allowTriplets_

bool QcdUeDQM::allowTriplets_
private

Definition at line 389 of file QcdUeDQM.h.

Referenced by trackSelection().

◆ bsLabel_

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

Definition at line 395 of file QcdUeDQM.h.

Referenced by analyze().

◆ bsPos_

double QcdUeDQM::bsPos_
private

Definition at line 390 of file QcdUeDQM.h.

◆ bsuse_

bool QcdUeDQM::bsuse_
private

Definition at line 388 of file QcdUeDQM.h.

Referenced by trackSelection().

◆ caloJetLabel_

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

Definition at line 391 of file QcdUeDQM.h.

Referenced by analyze().

◆ chargedJetLabel_

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

Definition at line 392 of file QcdUeDQM.h.

Referenced by analyze().

◆ diffvtxbs_

double QcdUeDQM::diffvtxbs_
private

Definition at line 380 of file QcdUeDQM.h.

Referenced by fillVtxPlots().

◆ h2TrigCorr_

MonitorElement* QcdUeDQM::h2TrigCorr_
private

Definition at line 121 of file QcdUeDQM.h.

Referenced by bookHistograms(), and fillHltBits().

◆ hBeamSpot_x_

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

Definition at line 155 of file QcdUeDQM.h.

Referenced by bookHistograms(), and trackSelection().

◆ hBeamSpot_y_

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

Definition at line 154 of file QcdUeDQM.h.

Referenced by bookHistograms(), and trackSelection().

◆ hBeamSpot_z_

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

Definition at line 153 of file QcdUeDQM.h.

Referenced by bookHistograms(), and trackSelection().

◆ hChargedJetConstituent_

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

Definition at line 165 of file QcdUeDQM.h.

◆ hChargedJetMulti_

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

Definition at line 164 of file QcdUeDQM.h.

Referenced by bookHistograms(), and fillChargedJetSpectra().

◆ hdNdEtadPhi_pTMax_Away500_

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

Definition at line 214 of file QcdUeDQM.h.

Referenced by bookHistograms(), and fillUE_with_MaxpTtrack().

◆ hdNdEtadPhi_pTMax_Away900_

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

Definition at line 301 of file QcdUeDQM.h.

Referenced by bookHistograms(), and fillUE_with_MaxpTtrack().

◆ hdNdEtadPhi_pTMax_Toward500_

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

Definition at line 201 of file QcdUeDQM.h.

Referenced by bookHistograms(), and fillUE_with_MaxpTtrack().

◆ hdNdEtadPhi_pTMax_Toward900_

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

Definition at line 288 of file QcdUeDQM.h.

Referenced by bookHistograms(), and fillUE_with_MaxpTtrack().

◆ hdNdEtadPhi_pTMax_Transverse500_

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

Definition at line 207 of file QcdUeDQM.h.

Referenced by bookHistograms(), and fillUE_with_MaxpTtrack().

◆ hdNdEtadPhi_pTMax_Transverse900_

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

Definition at line 294 of file QcdUeDQM.h.

Referenced by bookHistograms(), and fillUE_with_MaxpTtrack().

◆ hdNdEtadPhi_trackJet_Away500_

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

Definition at line 235 of file QcdUeDQM.h.

Referenced by bookHistograms(), and fillUE_with_ChargedJets().

◆ hdNdEtadPhi_trackJet_Away900_

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

Definition at line 322 of file QcdUeDQM.h.

Referenced by bookHistograms(), and fillUE_with_ChargedJets().

◆ hdNdEtadPhi_trackJet_Toward500_

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

Definition at line 225 of file QcdUeDQM.h.

Referenced by bookHistograms(), and fillUE_with_ChargedJets().

◆ hdNdEtadPhi_trackJet_Toward900_

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

Definition at line 312 of file QcdUeDQM.h.

Referenced by bookHistograms(), and fillUE_with_ChargedJets().

◆ hdNdEtadPhi_trackJet_Transverse500_

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

Definition at line 232 of file QcdUeDQM.h.

Referenced by bookHistograms(), and fillUE_with_ChargedJets().

◆ hdNdEtadPhi_trackJet_Transverse900_

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

Definition at line 319 of file QcdUeDQM.h.

Referenced by bookHistograms(), and fillUE_with_ChargedJets().

◆ hdPhi_chargedJet_tracks_

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

Definition at line 188 of file QcdUeDQM.h.

Referenced by bookHistograms(), and fillUE_with_ChargedJets().

◆ hdPhi_maxpTTrack_tracks_

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

Definition at line 183 of file QcdUeDQM.h.

Referenced by bookHistograms(), and fillUE_with_MaxpTtrack().

◆ hGoodTrkEta500_

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

Definition at line 133 of file QcdUeDQM.h.

Referenced by bookHistograms(), and fillpTMaxRelated().

◆ hGoodTrkEta900_

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

Definition at line 136 of file QcdUeDQM.h.

Referenced by bookHistograms(), and fillpTMaxRelated().

◆ hGoodTrkPhi500_

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

Definition at line 134 of file QcdUeDQM.h.

Referenced by bookHistograms(), and fillpTMaxRelated().

◆ hGoodTrkPhi900_

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

Definition at line 137 of file QcdUeDQM.h.

Referenced by bookHistograms(), and fillpTMaxRelated().

◆ hGoodTrkPt500_

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

Definition at line 132 of file QcdUeDQM.h.

Referenced by bookHistograms(), and fillpTMaxRelated().

◆ hGoodTrkPt900_

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

Definition at line 135 of file QcdUeDQM.h.

Referenced by bookHistograms(), and fillpTMaxRelated().

◆ hLeadingChargedJet_etaSpectrum_

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

Definition at line 192 of file QcdUeDQM.h.

Referenced by bookHistograms(), and fillChargedJetSpectra().

◆ hLeadingChargedJet_phiSpectrum_

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

Definition at line 196 of file QcdUeDQM.h.

Referenced by bookHistograms(), and fillChargedJetSpectra().

◆ hLeadingChargedJet_pTSpectrum_

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

Definition at line 168 of file QcdUeDQM.h.

Referenced by bookHistograms(), and fillChargedJetSpectra().

◆ hLeadingTrack_etaSpectrum_

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

Definition at line 159 of file QcdUeDQM.h.

Referenced by bookHistograms(), and fillpTMaxRelated().

◆ hLeadingTrack_phiSpectrum_

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

Definition at line 161 of file QcdUeDQM.h.

Referenced by bookHistograms(), and fillpTMaxRelated().

◆ hLeadingTrack_pTSpectrum_

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

Definition at line 157 of file QcdUeDQM.h.

Referenced by bookHistograms(), and fillpTMaxRelated().

◆ hltConfig

HLTConfigProvider QcdUeDQM::hltConfig
private

Definition at line 107 of file QcdUeDQM.h.

Referenced by dqmBeginRun().

◆ hltProcNames_

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

Definition at line 110 of file QcdUeDQM.h.

Referenced by dqmBeginRun(), and QcdUeDQM().

◆ hltResName_

std::string QcdUeDQM::hltResName_
private

Definition at line 109 of file QcdUeDQM.h.

Referenced by dqmBeginRun().

◆ hltTrgBits_

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

Definition at line 113 of file QcdUeDQM.h.

Referenced by dqmBeginRun(), and fillHltBits().

◆ hltTrgDeci_

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

Definition at line 114 of file QcdUeDQM.h.

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

◆ hltTrgNames_

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

Definition at line 111 of file QcdUeDQM.h.

Referenced by dqmBeginRun(), and QcdUeDQM().

◆ hltTrgUsedNames_

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

Definition at line 115 of file QcdUeDQM.h.

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

◆ hltUsedResName_

std::string QcdUeDQM::hltUsedResName_
private

Definition at line 116 of file QcdUeDQM.h.

Referenced by dqmBeginRun(), and fillHltBits().

◆ hNevts_

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

Definition at line 123 of file QcdUeDQM.h.

Referenced by analyze(), and bookHistograms().

◆ hNgoodTrk_

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

Definition at line 131 of file QcdUeDQM.h.

Referenced by bookHistograms(), and fillpTMaxRelated().

◆ hNtrackerLayer_

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

Definition at line 124 of file QcdUeDQM.h.

Referenced by bookHistograms(), and trackSelection().

◆ hNtrackerPixelLayer_

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

Definition at line 125 of file QcdUeDQM.h.

Referenced by bookHistograms(), and trackSelection().

◆ hNtrackerStripPixelLayer_

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

Definition at line 126 of file QcdUeDQM.h.

Referenced by bookHistograms(), and trackSelection().

◆ hNvertices_

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

Definition at line 145 of file QcdUeDQM.h.

Referenced by bookHistograms(), and fillVtxPlots().

◆ hpTSumdEtadPhi_pTMax_Away500_

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

Definition at line 252 of file QcdUeDQM.h.

Referenced by bookHistograms(), and fillUE_with_MaxpTtrack().

◆ hpTSumdEtadPhi_pTMax_Away900_

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

Definition at line 339 of file QcdUeDQM.h.

Referenced by bookHistograms(), and fillUE_with_MaxpTtrack().

◆ hpTSumdEtadPhi_pTMax_Toward500_

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

Definition at line 242 of file QcdUeDQM.h.

Referenced by bookHistograms(), and fillUE_with_MaxpTtrack().

◆ hpTSumdEtadPhi_pTMax_Toward900_

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

Definition at line 329 of file QcdUeDQM.h.

Referenced by bookHistograms(), and fillUE_with_MaxpTtrack().

◆ hpTSumdEtadPhi_pTMax_Transverse500_

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

Definition at line 249 of file QcdUeDQM.h.

Referenced by bookHistograms(), and fillUE_with_MaxpTtrack().

◆ hpTSumdEtadPhi_pTMax_Transverse900_

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

Definition at line 336 of file QcdUeDQM.h.

Referenced by bookHistograms(), and fillUE_with_MaxpTtrack().

◆ hpTSumdEtadPhi_trackJet_Away500_

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

Definition at line 279 of file QcdUeDQM.h.

Referenced by bookHistograms(), and fillUE_with_ChargedJets().

◆ hpTSumdEtadPhi_trackJet_Away900_

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

Definition at line 366 of file QcdUeDQM.h.

Referenced by bookHistograms(), and fillUE_with_ChargedJets().

◆ hpTSumdEtadPhi_trackJet_Toward500_

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

Definition at line 265 of file QcdUeDQM.h.

Referenced by bookHistograms(), and fillUE_with_ChargedJets().

◆ hpTSumdEtadPhi_trackJet_Toward900_

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

Definition at line 352 of file QcdUeDQM.h.

Referenced by bookHistograms(), and fillUE_with_ChargedJets().

◆ hpTSumdEtadPhi_trackJet_Transverse500_

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

Definition at line 276 of file QcdUeDQM.h.

Referenced by bookHistograms(), and fillUE_with_ChargedJets().

◆ hpTSumdEtadPhi_trackJet_Transverse900_

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

Definition at line 363 of file QcdUeDQM.h.

Referenced by bookHistograms(), and fillUE_with_ChargedJets().

◆ hRatioDxySigmaDxyBS_

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

Definition at line 138 of file QcdUeDQM.h.

Referenced by bookHistograms(), and trackSelection().

◆ hRatioDxySigmaDxyPV_

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

Definition at line 139 of file QcdUeDQM.h.

Referenced by bookHistograms(), and trackSelection().

◆ hRatioDzSigmaDzBS_

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

Definition at line 140 of file QcdUeDQM.h.

Referenced by bookHistograms(), and trackSelection().

◆ hRatioDzSigmaDzPV_

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

Definition at line 141 of file QcdUeDQM.h.

Referenced by bookHistograms(), and trackSelection().

◆ hRatioPtErrorPt_

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

Definition at line 127 of file QcdUeDQM.h.

Referenced by bookHistograms(), and trackSelection().

◆ hTrkChi2_

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

Definition at line 142 of file QcdUeDQM.h.

Referenced by bookHistograms(), and trackSelection().

◆ hTrkEta_

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

Definition at line 129 of file QcdUeDQM.h.

Referenced by bookHistograms(), and trackSelection().

◆ hTrkNdof_

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

Definition at line 143 of file QcdUeDQM.h.

Referenced by bookHistograms(), and trackSelection().

◆ hTrkPhi_

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

Definition at line 130 of file QcdUeDQM.h.

Referenced by bookHistograms(), and trackSelection().

◆ hTrkPt_

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

Definition at line 128 of file QcdUeDQM.h.

Referenced by bookHistograms(), and trackSelection().

◆ hVertex_ndof_

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

Definition at line 149 of file QcdUeDQM.h.

Referenced by bookHistograms(), and fillVtxPlots().

◆ hVertex_rho_

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

Definition at line 150 of file QcdUeDQM.h.

Referenced by bookHistograms(), and fillVtxPlots().

◆ hVertex_x_

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

Definition at line 148 of file QcdUeDQM.h.

Referenced by bookHistograms(), and fillVtxPlots().

◆ hVertex_y_

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

Definition at line 147 of file QcdUeDQM.h.

Referenced by bookHistograms(), and fillVtxPlots().

◆ hVertex_z_

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

Definition at line 146 of file QcdUeDQM.h.

Referenced by bookHistograms(), and fillVtxPlots().

◆ hVertex_z_bs_

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

Definition at line 151 of file QcdUeDQM.h.

Referenced by bookHistograms(), and fillVtxPlots().

◆ isHltConfigSuccessful_

bool QcdUeDQM::isHltConfigSuccessful_
private

Definition at line 62 of file QcdUeDQM.h.

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

◆ lip_

double QcdUeDQM::lip_
private

Definition at line 379 of file QcdUeDQM.h.

Referenced by trackSelection().

◆ maxChi2_

double QcdUeDQM::maxChi2_
private

Definition at line 387 of file QcdUeDQM.h.

Referenced by trackSelection().

◆ maxRapidity_

double QcdUeDQM::maxRapidity_
private

Definition at line 377 of file QcdUeDQM.h.

Referenced by trackSelection().

◆ min3DHit_

int QcdUeDQM::min3DHit_
private

Definition at line 386 of file QcdUeDQM.h.

Referenced by trackSelection().

◆ minHit_

int QcdUeDQM::minHit_
private

Definition at line 383 of file QcdUeDQM.h.

Referenced by trackSelection().

◆ minRapidity_

double QcdUeDQM::minRapidity_
private

Definition at line 376 of file QcdUeDQM.h.

Referenced by trackSelection().

◆ ptErr_pt_

double QcdUeDQM::ptErr_pt_
private

Definition at line 381 of file QcdUeDQM.h.

Referenced by trackSelection().

◆ ptMin_

double QcdUeDQM::ptMin_
private

Definition at line 375 of file QcdUeDQM.h.

Referenced by trackSelection().

◆ pxlLayerMinCut_

double QcdUeDQM::pxlLayerMinCut_
private

Definition at line 384 of file QcdUeDQM.h.

Referenced by trackSelection().

◆ quality_

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

Definition at line 396 of file QcdUeDQM.h.

Referenced by QcdUeDQM(), and trackSelection().

◆ repSumMap_

MonitorElement* QcdUeDQM::repSumMap_
private

Definition at line 119 of file QcdUeDQM.h.

◆ repSummary_

MonitorElement* QcdUeDQM::repSummary_
private

Definition at line 120 of file QcdUeDQM.h.

◆ requirePIX1_

bool QcdUeDQM::requirePIX1_
private

Definition at line 385 of file QcdUeDQM.h.

Referenced by trackSelection().

◆ selected_

container QcdUeDQM::selected_
private

Definition at line 399 of file QcdUeDQM.h.

Referenced by analyze().

◆ tgeo_

const TrackerGeometry* QcdUeDQM::tgeo_
private

Definition at line 118 of file QcdUeDQM.h.

◆ tip_

double QcdUeDQM::tip_
private

Definition at line 378 of file QcdUeDQM.h.

Referenced by trackSelection().

◆ trackLabel_

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

Definition at line 393 of file QcdUeDQM.h.

Referenced by analyze().

◆ verbose_

int QcdUeDQM::verbose_
private

Definition at line 117 of file QcdUeDQM.h.

◆ vtx1

reco::Vertex QcdUeDQM::vtx1
private

Definition at line 400 of file QcdUeDQM.h.

Referenced by analyze(), and fillVtxPlots().

◆ vtxLabel_

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

Definition at line 394 of file QcdUeDQM.h.

Referenced by analyze().

◆ vtxntk_

double QcdUeDQM::vtxntk_
private

Definition at line 382 of file QcdUeDQM.h.