CMS 3D CMS Logo

List of all members | Classes | Public Member Functions | Public Attributes
CTPPSCommonDQMSource::ArmPlots Struct Reference

plots related to one arm More...

Classes

struct  TimingRPPlots
 
struct  TrackingRPPlots
 

Public Member Functions

 ArmPlots ()
 
 ArmPlots (DQMStore::IBooker &ibooker, int _id, bool makeProtonRecoPlots)
 

Public Attributes

MonitorElementh_numRPWithTrack_bot = nullptr
 
MonitorElementh_numRPWithTrack_hor = nullptr
 
MonitorElementh_numRPWithTrack_top = nullptr
 
MonitorElementh_proton_t = nullptr
 
MonitorElementh_proton_time = nullptr
 
MonitorElementh_proton_xi = nullptr
 
MonitorElementh_trackCorr = nullptr
 
MonitorElementh_trackCorr_overlap = nullptr
 
int id
 
std::map< unsigned int, TimingRPPlotstimingRPPlots
 
std::map< unsigned int, TrackingRPPlotstrackingRPPlots
 

Detailed Description

plots related to one arm

Definition at line 77 of file CTPPSCommonDQMSource.cc.

Constructor & Destructor Documentation

◆ ArmPlots() [1/2]

CTPPSCommonDQMSource::ArmPlots::ArmPlots ( )
inline

Definition at line 97 of file CTPPSCommonDQMSource.cc.

◆ ArmPlots() [2/2]

CTPPSCommonDQMSource::ArmPlots::ArmPlots ( DQMStore::IBooker ibooker,
int  _id,
bool  makeProtonRecoPlots 
)

Definition at line 199 of file CTPPSCommonDQMSource.cc.

200  : id(_id) {
201  string name;
203 
204  ibooker.setCurrentFolder("CTPPS/common/sector " + name);
205 
206  string title = "ctpps_common_sector_" + name;
207 
209  ibooker.book1D("number of top RPs with tracks", title + ";number of top RPs with tracks", 5, -0.5, 4.5);
211  ibooker.book1D("number of hor RPs with tracks", title + ";number of hor RPs with tracks", 5, -0.5, 4.5);
213  ibooker.book1D("number of bot RPs with tracks", title + ";number of bot RPs with tracks", 5, -0.5, 4.5);
214 
215  h_trackCorr = ibooker.book2D("track correlation", title, 7, -0.5, 6.5, 7, -0.5, 6.5);
216  TH2F *h_trackCorr_h = h_trackCorr->getTH2F();
217  TAxis *xa = h_trackCorr_h->GetXaxis(), *ya = h_trackCorr_h->GetYaxis();
218  xa->SetBinLabel(1, "210, far, hor");
219  ya->SetBinLabel(1, "210, far, hor");
220  xa->SetBinLabel(2, "210, far, top");
221  ya->SetBinLabel(2, "210, far, top");
222  xa->SetBinLabel(3, "210, far, bot");
223  ya->SetBinLabel(3, "210, far, bot");
224  xa->SetBinLabel(4, "220, cyl");
225  ya->SetBinLabel(4, "220, cyl");
226  xa->SetBinLabel(5, "220, far, hor");
227  ya->SetBinLabel(5, "220, far, hor");
228  xa->SetBinLabel(6, "220, far, top");
229  ya->SetBinLabel(6, "220, far, top");
230  xa->SetBinLabel(7, "220, far, bot");
231  ya->SetBinLabel(7, "220, far, bot");
232 
233  h_trackCorr_overlap = ibooker.book2D("track correlation hor-vert overlaps", title, 7, -0.5, 6.5, 7, -0.5, 6.5);
234  h_trackCorr_h = h_trackCorr_overlap->getTH2F();
235  xa = h_trackCorr_h->GetXaxis();
236  ya = h_trackCorr_h->GetYaxis();
237  xa->SetBinLabel(1, "210, far, hor");
238  ya->SetBinLabel(1, "210, far, hor");
239  xa->SetBinLabel(2, "210, far, top");
240  ya->SetBinLabel(2, "210, far, top");
241  xa->SetBinLabel(3, "210, far, bot");
242  ya->SetBinLabel(3, "210, far, bot");
243  xa->SetBinLabel(4, "220, cyl");
244  ya->SetBinLabel(4, "220, cyl");
245  xa->SetBinLabel(5, "220, far, hor");
246  ya->SetBinLabel(5, "220, far, hor");
247  xa->SetBinLabel(6, "220, far, top");
248  ya->SetBinLabel(6, "220, far, top");
249  xa->SetBinLabel(7, "220, far, bot");
250  ya->SetBinLabel(7, "220, far, bot");
251 
252  if (makeProtonRecoPlots) {
253  h_proton_xi = ibooker.book1D("proton xi", title + ";xi", 100, 0., 0.3);
254  h_proton_t = ibooker.book1D("proton t", title + ";|t| GeV^{2}", 100, 0., 5.);
255  h_proton_time = ibooker.book1D("proton time", title + ";time (ns)", 100, -1., 1.);
256  }
257 
258  for (const unsigned int rpDecId : {2, 3, 16, 23}) {
259  unsigned int st = rpDecId / 10, rp = rpDecId % 10, rpFullDecId = id * 100 + rpDecId;
261  string stName, rpName;
262  rpId.stationName(stName, CTPPSDetId::nShort);
263  rpId.rpName(rpName, CTPPSDetId::nShort);
264  rpName = stName + "_" + rpName;
265 
266  if (rp == 6) {
267  timingRPPlots[rpFullDecId] = {
268  ibooker.book1D(rpName + " - track x histogram", title + "/" + rpName + ";track x (mm)", 200, 0., 40.),
269  ibooker.book1D(
270  rpName + " - track time histogram", title + "/" + rpName + ";track time (ns)", 100, -25., +50.)};
271  } else {
272  trackingRPPlots[rpFullDecId] = {
273  ibooker.book1D(rpName + " - track x histogram", title + "/" + rpName + ";track x (mm)", 200, 0., 40.),
274  ibooker.book1D(rpName + " - track y histogram", title + "/" + rpName + ";track y (mm)", 200, -20., +20.)};
275  }
276  }

References CTPPSDetId::armName(), dqm::impl::MonitorElement::getTH2F(), h_numRPWithTrack_bot, h_numRPWithTrack_hor, h_numRPWithTrack_top, h_proton_t, h_proton_time, h_proton_xi, h_trackCorr, h_trackCorr_overlap, ctppsCommonDQMSource_cfi::makeProtonRecoPlots, Skims_PA_cff::name, CTPPSDetId::nShort, year_2016_postTS2_cff::rpId, CTPPSDetId::sdTrackingStrip, timingRPPlots, overlapproblemtsosanalyzer_cfi::title, and trackingRPPlots.

Member Data Documentation

◆ h_numRPWithTrack_bot

MonitorElement * CTPPSCommonDQMSource::ArmPlots::h_numRPWithTrack_bot = nullptr

Definition at line 80 of file CTPPSCommonDQMSource.cc.

Referenced by ArmPlots().

◆ h_numRPWithTrack_hor

MonitorElement * CTPPSCommonDQMSource::ArmPlots::h_numRPWithTrack_hor = nullptr

Definition at line 80 of file CTPPSCommonDQMSource.cc.

Referenced by ArmPlots().

◆ h_numRPWithTrack_top

MonitorElement* CTPPSCommonDQMSource::ArmPlots::h_numRPWithTrack_top = nullptr

Definition at line 80 of file CTPPSCommonDQMSource.cc.

Referenced by ArmPlots().

◆ h_proton_t

MonitorElement * CTPPSCommonDQMSource::ArmPlots::h_proton_t = nullptr

Definition at line 83 of file CTPPSCommonDQMSource.cc.

Referenced by ArmPlots().

◆ h_proton_time

MonitorElement * CTPPSCommonDQMSource::ArmPlots::h_proton_time = nullptr

Definition at line 83 of file CTPPSCommonDQMSource.cc.

Referenced by ArmPlots().

◆ h_proton_xi

MonitorElement* CTPPSCommonDQMSource::ArmPlots::h_proton_xi = nullptr

Definition at line 83 of file CTPPSCommonDQMSource.cc.

Referenced by ArmPlots().

◆ h_trackCorr

MonitorElement* CTPPSCommonDQMSource::ArmPlots::h_trackCorr = nullptr

Definition at line 81 of file CTPPSCommonDQMSource.cc.

Referenced by ArmPlots().

◆ h_trackCorr_overlap

MonitorElement * CTPPSCommonDQMSource::ArmPlots::h_trackCorr_overlap = nullptr

Definition at line 81 of file CTPPSCommonDQMSource.cc.

Referenced by ArmPlots().

◆ id

int CTPPSCommonDQMSource::ArmPlots::id

Definition at line 78 of file CTPPSCommonDQMSource.cc.

◆ timingRPPlots

std::map<unsigned int, TimingRPPlots> CTPPSCommonDQMSource::ArmPlots::timingRPPlots

Definition at line 95 of file CTPPSCommonDQMSource.cc.

Referenced by ArmPlots().

◆ trackingRPPlots

std::map<unsigned int, TrackingRPPlots> CTPPSCommonDQMSource::ArmPlots::trackingRPPlots

Definition at line 89 of file CTPPSCommonDQMSource.cc.

Referenced by ArmPlots().

ctppsCommonDQMSource_cfi.makeProtonRecoPlots
makeProtonRecoPlots
Definition: ctppsCommonDQMSource_cfi.py:10
CTPPSCommonDQMSource::ArmPlots::h_proton_xi
MonitorElement * h_proton_xi
Definition: CTPPSCommonDQMSource.cc:83
CTPPSCommonDQMSource::ArmPlots::h_proton_time
MonitorElement * h_proton_time
Definition: CTPPSCommonDQMSource.cc:83
CTPPSCommonDQMSource::ArmPlots::trackingRPPlots
std::map< unsigned int, TrackingRPPlots > trackingRPPlots
Definition: CTPPSCommonDQMSource.cc:89
CTPPSDetId::nShort
Definition: CTPPSDetId.h:87
year_2016_postTS2_cff.rpId
rpId
Definition: year_2016_postTS2_cff.py:23
CTPPSDetId::sdTrackingStrip
Definition: CTPPSDetId.h:44
dqm::impl::MonitorElement::getTH2F
virtual TH2F * getTH2F()
Definition: MonitorElement.cc:992
CTPPSCommonDQMSource::ArmPlots::h_trackCorr_overlap
MonitorElement * h_trackCorr_overlap
Definition: CTPPSCommonDQMSource.cc:81
CTPPSCommonDQMSource::ArmPlots::h_numRPWithTrack_bot
MonitorElement * h_numRPWithTrack_bot
Definition: CTPPSCommonDQMSource.cc:80
CTPPSCommonDQMSource::ArmPlots::h_proton_t
MonitorElement * h_proton_t
Definition: CTPPSCommonDQMSource.cc:83
CTPPSDetId
Base class for CTPPS detector IDs.
Definition: CTPPSDetId.h:31
CTPPSCommonDQMSource::ArmPlots::h_trackCorr
MonitorElement * h_trackCorr
Definition: CTPPSCommonDQMSource.cc:81
CTPPSCommonDQMSource::ArmPlots::h_numRPWithTrack_hor
MonitorElement * h_numRPWithTrack_hor
Definition: CTPPSCommonDQMSource.cc:80
overlapproblemtsosanalyzer_cfi.title
title
Definition: overlapproblemtsosanalyzer_cfi.py:7
Skims_PA_cff.name
name
Definition: Skims_PA_cff.py:17
CTPPSCommonDQMSource::ArmPlots::id
int id
Definition: CTPPSCommonDQMSource.cc:78
CTPPSCommonDQMSource::ArmPlots::timingRPPlots
std::map< unsigned int, TimingRPPlots > timingRPPlots
Definition: CTPPSCommonDQMSource.cc:95
CTPPSDetId::armName
void armName(std::string &name, NameFlag flag=nFull) const
Definition: CTPPSDetId.h:96
CTPPSCommonDQMSource::ArmPlots::h_numRPWithTrack_top
MonitorElement * h_numRPWithTrack_top
Definition: CTPPSCommonDQMSource.cc:80