CMS 3D CMS Logo

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

#include <SiPixelRecHitModule.h>

Public Member Functions

void book (const edm::ParameterSet &iConfig, DQMStore::IBooker &iBooker, const edm::EventSetup &iSetup, int type=0, bool twoD=true, bool reducedSet=false, bool isUpgrade=false)
 Book histograms. More...
 
void fill (const float &rechit_x, const float &rechit_y, const int &sizeX, const int &sizeY, const float &lerr_x, const float &lerr_y, bool modon=true, bool ladon=false, bool layon=false, bool phion=false, bool bladeon=false, bool diskon=false, bool ringon=false, bool twoD=true, bool reducedSet=false)
 Fill histograms. More...
 
void nfill (const int &nrec, bool modon=true, bool ladon=false, bool layon=false, bool phion=false, bool bladeon=false, bool diskon=false, bool ringon=false)
 
 SiPixelRecHitModule ()
 Default constructor. More...
 
 SiPixelRecHitModule (const uint32_t &id)
 Constructor with raw DetId. More...
 
 ~SiPixelRecHitModule ()
 Destructor. More...
 

Private Attributes

uint32_t id_
 
MonitorElementmeClustX_
 
MonitorElementmeClustXBlade_
 
MonitorElementmeClustXDisk_
 
MonitorElementmeClustXLad_
 
MonitorElementmeClustXLay_
 
MonitorElementmeClustXPhi_
 
MonitorElementmeClustXRing_
 
MonitorElementmeClustY_
 
MonitorElementmeClustYBlade_
 
MonitorElementmeClustYDisk_
 
MonitorElementmeClustYLad_
 
MonitorElementmeClustYLay_
 
MonitorElementmeClustYPhi_
 
MonitorElementmeClustYRing_
 
MonitorElementmeErrorX_
 
MonitorElementmeErrorXBlade_
 
MonitorElementmeErrorXDisk_
 
MonitorElementmeErrorXLad_
 
MonitorElementmeErrorXLay_
 
MonitorElementmeErrorXPhi_
 
MonitorElementmeErrorXRing_
 
MonitorElementmeErrorY_
 
MonitorElementmeErrorYBlade_
 
MonitorElementmeErrorYDisk_
 
MonitorElementmeErrorYLad_
 
MonitorElementmeErrorYLay_
 
MonitorElementmeErrorYPhi_
 
MonitorElementmeErrorYRing_
 
MonitorElementmenRecHits_
 
MonitorElementmenRecHitsBlade_
 
MonitorElementmenRecHitsDisk_
 
MonitorElementmenRecHitsLad_
 
MonitorElementmenRecHitsLay_
 
MonitorElementmenRecHitsPhi_
 
MonitorElementmenRecHitsRing_
 
MonitorElementmeXYPos_
 
MonitorElementmeXYPos_px_
 
MonitorElementmeXYPos_py_
 
MonitorElementmeXYPosLad_
 
MonitorElementmeXYPosLad_px_
 
MonitorElementmeXYPosLad_py_
 
MonitorElementmeXYPosLay_
 
MonitorElementmeXYPosLay_px_
 
MonitorElementmeXYPosLay_py_
 
MonitorElementmeXYPosPhi_
 
MonitorElementmeXYPosPhi_px_
 
MonitorElementmeXYPosPhi_py_
 
MonitorElementmeXYPosRing_
 
MonitorElementmeXYPosRing_px_
 
MonitorElementmeXYPosRing_py_
 

Detailed Description

Definition at line 35 of file SiPixelRecHitModule.h.

Constructor & Destructor Documentation

SiPixelRecHitModule::SiPixelRecHitModule ( )

Default constructor.

Framework.

Definition at line 36 of file SiPixelRecHitModule.cc.

36 : id_(0) { }
SiPixelRecHitModule::SiPixelRecHitModule ( const uint32_t &  id)

Constructor with raw DetId.

Definition at line 38 of file SiPixelRecHitModule.cc.

38  :
39  id_(id)
40 {
41 }
SiPixelRecHitModule::~SiPixelRecHitModule ( )

Destructor.

Definition at line 46 of file SiPixelRecHitModule.cc.

46 {}

Member Function Documentation

void SiPixelRecHitModule::book ( const edm::ParameterSet iConfig,
DQMStore::IBooker iBooker,
const edm::EventSetup iSetup,
int  type = 0,
bool  twoD = true,
bool  reducedSet = false,
bool  isUpgrade = false 
)

Book histograms.

Definition at line 50 of file SiPixelRecHitModule.cc.

References Reference_intrackfit_cff::barrel, PixelEndcapName::bladeName(), DQMStore::IBooker::book1D(), DQMStore::IBooker::book2D(), PixelEndcapName::diskName(), makeMuonMisalignmentScenario::endcap, edm::EventSetup::get(), edm::ParameterSet::getParameter(), id_, PixelBarrelName::isHalfModule(), edm::InputTag::label(), PixelBarrelName::ladderName(), PixelBarrelName::layerName(), meClustX_, meClustXBlade_, meClustXDisk_, meClustXLad_, meClustXLay_, meClustXPhi_, meClustXRing_, meClustY_, meClustYBlade_, meClustYDisk_, meClustYLad_, meClustYLay_, meClustYPhi_, meClustYRing_, meErrorX_, meErrorXBlade_, meErrorXDisk_, meErrorXLad_, meErrorXLay_, meErrorXPhi_, meErrorXRing_, meErrorY_, meErrorYBlade_, meErrorYDisk_, meErrorYLad_, meErrorYLay_, meErrorYPhi_, meErrorYRing_, menRecHitsBlade_, menRecHitsDisk_, menRecHitsLad_, menRecHitsLay_, menRecHitsPhi_, menRecHitsRing_, meXYPos_, meXYPos_px_, meXYPos_py_, meXYPosLad_, meXYPosLad_px_, meXYPosLad_py_, meXYPosLay_, meXYPosLay_px_, meXYPosLay_py_, meXYPosPhi_, meXYPosPhi_px_, meXYPosPhi_py_, meXYPosRing_, meXYPosRing_px_, meXYPosRing_py_, PixelBarrelName::moduleName(), PixelEndcapName::pannelName(), PixelSubdetector::PixelBarrel, PixelSubdetector::PixelEndcap, PixelEndcapName::plaquetteName(), edm::ESHandle< T >::product(), MonitorElement::setAxisTitle(), SiPixelHistogramId::setHistoId(), TrackRefitter_38T_cff::src, AlCaHLTBitMon_QueryRunRegistry::string, and DetId::subdetId().

51  {
52 
53 
55  iSetup.get<TrackerTopologyRcd>().get(tTopoHandle);
56  const TrackerTopology *pTT = tTopoHandle.product();
57 
58  bool barrel = DetId(id_).subdetId() == static_cast<int>(PixelSubdetector::PixelBarrel);
59  bool endcap = DetId(id_).subdetId() == static_cast<int>(PixelSubdetector::PixelEndcap);
60  bool isHalfModule = false;
61 
62 
63  if(barrel){
64  //if (!isUpgrade) {
65  isHalfModule = PixelBarrelName(DetId(id_), pTT, isUpgrade).isHalfModule();
66  //} else if (isUpgrade) {
67  // isHalfModule = PixelBarrelNameUpgrade(DetId(id_)).isHalfModule();
68  //}
69  }
70 
71  std::string hid;
72  // Get collection name and instantiate Histo Id builder
73  edm::InputTag src = iConfig.getParameter<edm::InputTag>( "src" );
74  // Get DQM interface
75 
76 
77  if(type==0){
78  SiPixelHistogramId* theHistogramId = new SiPixelHistogramId( src.label() );
79  if(!reducedSet)
80  {
81  if(twoD){
82  // XYPosition
83  hid = theHistogramId->setHistoId("xypos",id_);
84  meXYPos_ = iBooker.book2D(hid,"XY Position",100,-1.,1,100,-4,4);
85  meXYPos_->setAxisTitle("X Position",1);
86  meXYPos_->setAxisTitle("Y Position",2);
87  }
88  else{
89  // projections of XYPosition
90  hid = theHistogramId->setHistoId("xypos",id_);
91  meXYPos_px_ = iBooker.book1D(hid+"_px","X Position",100,-1.,1);
92  meXYPos_px_->setAxisTitle("X Position",1);
93  meXYPos_py_ = iBooker.book1D(hid+"_py","Y Position",100,-4,4);
94  meXYPos_py_->setAxisTitle("Y Position",1);
95  }
96  }
97  hid = theHistogramId->setHistoId("ClustX",id_);
98  meClustX_ = iBooker.book1D(hid, "RecHit X size", 10, 0., 10.);
99  meClustX_->setAxisTitle("RecHit size X dimension", 1);
100  hid = theHistogramId->setHistoId("ClustY",id_);
101  meClustY_ = iBooker.book1D(hid, "RecHit Y size", 15, 0., 15.);
102  meClustY_->setAxisTitle("RecHit size Y dimension", 1);
103 
104  hid = theHistogramId->setHistoId("ErrorX",id_);
105  meErrorX_ = iBooker.book1D(hid, "RecHit error X", 100,0.,0.02);
106  meErrorX_->setAxisTitle("RecHit error X", 1);
107  hid = theHistogramId->setHistoId("ErrorY",id_);
108  meErrorY_ = iBooker.book1D(hid, "RecHit error Y", 100,0.,0.02);
109  meErrorY_->setAxisTitle("RecHit error Y", 1);
110 
111  //Removed to save offline memory
112  //hid = theHistogramId->setHistoId("nRecHits",id_);
113  //menRecHits_ = iBooker.book1D(hid, "# of rechits in this module", 8, 0, 8);
114  //menRecHits_->setAxisTitle("number of rechits",1);
115  delete theHistogramId;
116  }
117 
118  if(type==1 && barrel){
119  uint32_t DBladder;
120  //if (!isUpgrade) { DBladder = PixelBarrelName(DetId(id_)).ladderName(); }
121  //else { DBladder = PixelBarrelNameUpgrade(DetId(id_)).ladderName(); }
122  DBladder = PixelBarrelName(DetId(id_), pTT, isUpgrade).ladderName();
123  char sladder[80]; sprintf(sladder,"Ladder_%02i",DBladder);
124  hid = src.label() + "_" + sladder;
125  if(isHalfModule) hid += "H";
126  else hid += "F";
127  if(!reducedSet)
128  {
129  if(twoD){
130  meXYPosLad_ = iBooker.book2D("xypos_" + hid,"XY Position",100,-1.,1,100,-4,4);
131  meXYPosLad_->setAxisTitle("X Position",1);
132  meXYPosLad_->setAxisTitle("Y Position",2);
133  }
134  else{
135  // projections of XYPosition
136  meXYPosLad_px_ = iBooker.book1D("xypos_"+hid+"_px","X Position",100,-1.,1);
137  meXYPosLad_px_->setAxisTitle("X Position",1);
138  meXYPosLad_py_ = iBooker.book1D("xypos_"+hid+"_py","Y Position",100,-4,4);
139  meXYPosLad_py_->setAxisTitle("Y Position",1);
140  }
141  }
142  meClustXLad_ = iBooker.book1D("ClustX_" +hid, "RecHit X size", 10, 0., 10.);
143  meClustXLad_->setAxisTitle("RecHit size X dimension", 1);
144  meClustYLad_ = iBooker.book1D("ClustY_" +hid,"RecHit Y size", 15, 0.,15.);
145  meClustYLad_->setAxisTitle("RecHit size Y dimension", 1);
146  meErrorXLad_ = iBooker.book1D("ErrorX_"+hid, "RecHit error X", 100,0.,0.02);
147  meErrorXLad_->setAxisTitle("RecHit error X", 1);
148  meErrorYLad_ = iBooker.book1D("ErrorY_"+hid, "RecHit error Y", 100,0.,0.02);
149  meErrorYLad_->setAxisTitle("RecHit error Y", 1);
150  menRecHitsLad_ = iBooker.book1D("nRecHits_"+hid, "# of rechits in this module", 8, 0, 8);
151  menRecHitsLad_->setAxisTitle("number of rechits",1);
152 
153  }
154 
155  if(type==2 && barrel){
156 
157  uint32_t DBlayer;
158  //if (!isUpgrade) { DBlayer = PixelBarrelName(DetId(id_)).layerName(); }
159  //else { DBlayer = PixelBarrelNameUpgrade(DetId(id_)).layerName(); }
160  DBlayer = PixelBarrelName(DetId(id_), pTT, isUpgrade).layerName();
161  char slayer[80]; sprintf(slayer,"Layer_%i",DBlayer);
162  hid = src.label() + "_" + slayer;
163 
164  if(!reducedSet)
165  {
166  if(twoD){
167  meXYPosLay_ = iBooker.book2D("xypos_" + hid,"XY Position",100,-1.,1,100,-4,4);
168  meXYPosLay_->setAxisTitle("X Position",1);
169  meXYPosLay_->setAxisTitle("Y Position",2);
170  }
171  else{
172  // projections of XYPosition
173  meXYPosLay_px_ = iBooker.book1D("xypos_"+hid+"_px","X Position",100,-1.,1);
174  meXYPosLay_px_->setAxisTitle("X Position",1);
175  meXYPosLay_py_ = iBooker.book1D("xypos_"+hid+"_py","Y Position",100,-4,4);
176  meXYPosLay_py_->setAxisTitle("Y Position",1);
177  }
178  }
179 
180  meClustXLay_ = iBooker.book1D("ClustX_" +hid, "RecHit X size", 10, 0., 10.);
181  meClustXLay_->setAxisTitle("RecHit size X dimension", 1);
182  meClustYLay_ = iBooker.book1D("ClustY_" +hid,"RecHit Y size", 15, 0.,15.);
183  meClustYLay_->setAxisTitle("RecHit size Y dimension", 1);
184  meErrorXLay_ = iBooker.book1D("ErrorX_"+hid, "RecHit error X", 100,0.,0.02);
185  meErrorXLay_->setAxisTitle("RecHit error X", 1);
186  meErrorYLay_ = iBooker.book1D("ErrorY_"+hid, "RecHit error Y", 100,0.,0.02);
187  meErrorYLay_->setAxisTitle("RecHit error Y", 1);
188  menRecHitsLay_ = iBooker.book1D("nRecHits_"+hid, "# of rechits in this module", 8, 0, 8);
189  menRecHitsLay_->setAxisTitle("number of rechits",1);
190 
191  }
192 
193  if(type==3 && barrel){
194  uint32_t DBmodule;
195  //if (!isUpgrade) { DBmodule = PixelBarrelName(DetId(id_)).moduleName(); }
196  //else { DBmodule = PixelBarrelNameUpgrade(DetId(id_)).moduleName(); }
197  DBmodule = PixelBarrelName(DetId(id_), pTT, isUpgrade).moduleName();
198  char smodule[80]; sprintf(smodule,"Ring_%i",DBmodule);
199  hid = src.label() + "_" + smodule;
200 
201  if(!reducedSet)
202  {
203  if(twoD){
204  meXYPosPhi_ = iBooker.book2D("xypos_" + hid,"XY Position",100,-1.,1,100,-4,4);
205  meXYPosPhi_->setAxisTitle("X Position",1);
206  meXYPosPhi_->setAxisTitle("Y Position",2);
207  }
208  else{
209  // projections of XYPosition
210  meXYPosPhi_px_ = iBooker.book1D("xypos_"+hid+"_px","X Position",100,-1.,1);
211  meXYPosPhi_px_->setAxisTitle("X Position",1);
212  meXYPosPhi_py_ = iBooker.book1D("xypos_"+hid+"_py","Y Position",100,-4,4);
213  meXYPosPhi_py_->setAxisTitle("Y Position",1);
214  }
215  }
216  meClustXPhi_ = iBooker.book1D("ClustX_" +hid, "RecHit X size", 10, 0., 10.);
217  meClustXPhi_->setAxisTitle("RecHit size X dimension", 1);
218  meClustYPhi_ = iBooker.book1D("ClustY_" +hid,"RecHit Y size", 15, 0.,15.);
219  meClustYPhi_->setAxisTitle("RecHit size Y dimension", 1);
220  meErrorXPhi_ = iBooker.book1D("ErrorX_"+hid, "RecHit error X", 100,0.,0.02);
221  meErrorXPhi_->setAxisTitle("RecHit error X", 1);
222  meErrorYPhi_ = iBooker.book1D("ErrorY_"+hid, "RecHit error Y", 100,0.,0.02);
223  meErrorYPhi_->setAxisTitle("RecHit error Y", 1);
224  menRecHitsPhi_ = iBooker.book1D("nRecHits_"+hid, "# of rechits in this module", 8, 0, 8);
225  menRecHitsPhi_->setAxisTitle("number of rechits",1);
226 
227  }
228 
229  if(type==4 && endcap){
230  uint32_t blade;
231  //if (!isUpgrade) { blade= PixelEndcapName(DetId(id_)).bladeName(); }
232  //else { blade= PixelEndcapNameUpgrade(DetId(id_)).bladeName(); }
233  blade= PixelEndcapName(DetId(id_), pTT, isUpgrade).bladeName();
234 
235  char sblade[80]; sprintf(sblade, "Blade_%02i",blade);
236  hid = src.label() + "_" + sblade;
237 // meXYPosBlade_ = iBooker.book2D("xypos_" + hid,"XY Position",100,-1.,1,100,-4,4);
238 // meXYPosBlade_->setAxisTitle("X Position",1);
239 // meXYPosBlade_->setAxisTitle("Y Position",2);
240 
241  meClustXBlade_ = iBooker.book1D("ClustX_" +hid, "RecHit X size", 10, 0., 10.);
242  meClustXBlade_->setAxisTitle("RecHit size X dimension", 1);
243  meClustYBlade_ = iBooker.book1D("ClustY_" +hid,"RecHit Y size", 15, 0.,15.);
244  meClustYBlade_->setAxisTitle("RecHit size Y dimension", 1);
245  meErrorXBlade_ = iBooker.book1D("ErrorX_"+hid, "RecHit error X", 100,0.,0.02);
246  meErrorXBlade_->setAxisTitle("RecHit error X", 1);
247  meErrorYBlade_ = iBooker.book1D("ErrorY_"+hid, "RecHit error Y", 100,0.,0.02);
248  meErrorYBlade_->setAxisTitle("RecHit error Y", 1);
249  menRecHitsBlade_ = iBooker.book1D("nRecHits_"+hid, "# of rechits in this module", 8, 0, 8);
250  menRecHitsBlade_->setAxisTitle("number of rechits",1);
251 
252  }
253  if(type==5 && endcap){
254  uint32_t disk;
255  //if (!isUpgrade) { disk = PixelEndcapName(DetId(id_)).diskName(); }
256  //else { disk = PixelEndcapNameUpgrade(DetId(id_)).diskName(); }
257  disk = PixelEndcapName(DetId(id_), pTT, isUpgrade).diskName();
258 
259  char sdisk[80]; sprintf(sdisk, "Disk_%i",disk);
260  hid = src.label() + "_" + sdisk;
261 // meXYPosDisk_ = iBooker.book2D("xypos_" + hid,"XY Position",100,-1.,1,100,-4,4);
262 // meXYPosDisk_->setAxisTitle("X Position",1);
263 // meXYPosDisk_->setAxisTitle("Y Position",2);
264 
265  meClustXDisk_ = iBooker.book1D("ClustX_" +hid, "RecHit X size", 10, 0., 10.);
266  meClustXDisk_->setAxisTitle("RecHit size X dimension", 1);
267  meClustYDisk_ = iBooker.book1D("ClustY_" +hid,"RecHit Y size", 15, 0.,15.);
268  meClustYDisk_->setAxisTitle("RecHit size Y dimension", 1);
269  meErrorXDisk_ = iBooker.book1D("ErrorX_"+hid, "RecHit error X", 100,0.,0.02);
270  meErrorXDisk_->setAxisTitle("RecHit error X", 1);
271  meErrorYDisk_ = iBooker.book1D("ErrorY_"+hid, "RecHit error Y", 100,0.,0.02);
272  meErrorYDisk_->setAxisTitle("RecHit error Y", 1);
273  menRecHitsDisk_ = iBooker.book1D("nRecHits_"+hid, "# of rechits in this module", 8, 0, 8);
274  menRecHitsDisk_->setAxisTitle("number of rechits",1);
275 
276  }
277 
278  if(type==6 && endcap){
279  uint32_t panel;
280  uint32_t module;
281  /*if (!isUpgrade) {
282  panel= PixelEndcapName(DetId(id_)).pannelName();
283  module= PixelEndcapName(DetId(id_)).plaquetteName();
284  } else {
285  panel= PixelEndcapNameUpgrade(DetId(id_)).pannelName();
286  module= PixelEndcapNameUpgrade(DetId(id_)).plaquetteName();
287  }*/
288  panel= PixelEndcapName(DetId(id_), pTT, isUpgrade).pannelName();
289  module= PixelEndcapName(DetId(id_), pTT, isUpgrade).plaquetteName();
290 
291  char slab[80]; sprintf(slab, "Panel_%i_Ring_%i",panel, module);
292  hid = src.label() + "_" + slab;
293 
294  if(!reducedSet)
295  {
296  if(twoD){
297  meXYPosRing_ = iBooker.book2D("xypos_" + hid,"XY Position",100,-1.,1,100,-4,4);
298  meXYPosRing_->setAxisTitle("X Position",1);
299  meXYPosRing_->setAxisTitle("Y Position",2);
300  }
301  else{
302  // projections of XYPosition
303  meXYPosRing_px_ = iBooker.book1D("xypos_"+hid+"_px","X Position",100,-1.,1);
304  meXYPosRing_px_->setAxisTitle("X Position",1);
305  meXYPosRing_py_ = iBooker.book1D("xypos_"+hid+"_py","Y Position",100,-4,4);
306  meXYPosRing_py_->setAxisTitle("Y Position",1);
307  }
308  }
309  meClustXRing_ = iBooker.book1D("ClustX_" +hid, "RecHit X size", 10, 0., 10.);
310  meClustXRing_->setAxisTitle("RecHit size X dimension", 1);
311  meClustYRing_ = iBooker.book1D("ClustY_" +hid,"RecHit Y size", 15, 0.,15.);
312  meClustYRing_->setAxisTitle("RecHit size Y dimension", 1);
313  meErrorXRing_ = iBooker.book1D("ErrorX_"+hid, "RecHit error X", 100,0.,0.02);
314  meErrorXRing_->setAxisTitle("RecHit error X", 1);
315  meErrorYRing_ = iBooker.book1D("ErrorY_"+hid, "RecHit error Y", 100,0.,0.02);
316  meErrorYRing_->setAxisTitle("RecHit error Y", 1);
317  menRecHitsRing_ = iBooker.book1D("nRecHits_"+hid, "# of rechits in this module", 8, 0, 8);
318  menRecHitsRing_->setAxisTitle("number of rechits",1);
319 
320  }
321 
322 }
int plaquetteName() const
plaquetteId (in pannel)
MonitorElement * menRecHitsLay_
type
Definition: HCALResponse.h:21
T getParameter(std::string const &) const
MonitorElement * meXYPosPhi_px_
MonitorElement * meClustYRing_
MonitorElement * meClustXLay_
MonitorElement * meXYPosPhi_
MonitorElement * meXYPosPhi_py_
MonitorElement * meErrorXDisk_
MonitorElement * meClustYPhi_
int moduleName() const
module id (index in z)
MonitorElement * meXYPosLay_py_
MonitorElement * meClustXDisk_
MonitorElement * meClustYDisk_
MonitorElement * meErrorY_
MonitorElement * meErrorYRing_
MonitorElement * meClustXLad_
MonitorElement * meErrorYPhi_
MonitorElement * meXYPosRing_px_
MonitorElement * meXYPosLay_
MonitorElement * meErrorXLad_
MonitorElement * meClustX_
MonitorElement * meClustXBlade_
MonitorElement * meClustXPhi_
MonitorElement * meXYPosLad_px_
int bladeName() const
blade id
MonitorElement * meErrorXBlade_
bool isHalfModule() const
full or half module
MonitorElement * meXYPosRing_
MonitorElement * meErrorYLad_
MonitorElement * menRecHitsRing_
constexpr int subdetId() const
get the contents of the subdetector field (not cast into any detector&#39;s numbering enum) ...
Definition: DetId.h:41
MonitorElement * book1D(Args &&...args)
Definition: DQMStore.h:118
MonitorElement * meXYPosLay_px_
MonitorElement * meClustXRing_
MonitorElement * meXYPos_py_
MonitorElement * meErrorYLay_
MonitorElement * meXYPos_
std::string setHistoId(std::string variable, uint32_t &rawId)
Set Histogram Id.
Definition: DetId.h:18
int ladderName() const
ladder id (index in phi)
MonitorElement * book2D(Args &&...args)
Definition: DQMStore.h:136
MonitorElement * meXYPosLad_
int layerName() const
layer id
MonitorElement * meErrorYDisk_
MonitorElement * menRecHitsDisk_
std::string const & label() const
Definition: InputTag.h:36
MonitorElement * meErrorX_
MonitorElement * menRecHitsPhi_
int pannelName() const
pannel id
T get() const
Definition: EventSetup.h:63
MonitorElement * menRecHitsLad_
MonitorElement * meClustYLad_
MonitorElement * meClustY_
MonitorElement * meXYPosRing_py_
int diskName() const
disk id
void setAxisTitle(const std::string &title, int axis=1)
set x-, y- or z-axis title (axis=1, 2, 3 respectively)
T const * product() const
Definition: ESHandle.h:86
Definition: vlib.h:208
MonitorElement * meXYPosLad_py_
MonitorElement * meErrorXLay_
MonitorElement * menRecHitsBlade_
MonitorElement * meClustYBlade_
MonitorElement * meClustYLay_
MonitorElement * meXYPos_px_
MonitorElement * meErrorXRing_
MonitorElement * meErrorYBlade_
MonitorElement * meErrorXPhi_
void SiPixelRecHitModule::fill ( const float &  rechit_x,
const float &  rechit_y,
const int &  sizeX,
const int &  sizeY,
const float &  lerr_x,
const float &  lerr_y,
bool  modon = true,
bool  ladon = false,
bool  layon = false,
bool  phion = false,
bool  bladeon = false,
bool  diskon = false,
bool  ringon = false,
bool  twoD = true,
bool  reducedSet = false 
)

Fill histograms.

Definition at line 326 of file SiPixelRecHitModule.cc.

References Reference_intrackfit_cff::barrel, makeMuonMisalignmentScenario::endcap, MonitorElement::Fill(), id_, meClustX_, meClustXBlade_, meClustXDisk_, meClustXLad_, meClustXLay_, meClustXPhi_, meClustXRing_, meClustY_, meClustYBlade_, meClustYDisk_, meClustYLad_, meClustYLay_, meClustYPhi_, meClustYRing_, meErrorX_, meErrorXBlade_, meErrorXDisk_, meErrorXLad_, meErrorXLay_, meErrorXPhi_, meErrorXRing_, meErrorY_, meErrorYBlade_, meErrorYDisk_, meErrorYLad_, meErrorYLay_, meErrorYPhi_, meErrorYRing_, meXYPos_, meXYPos_px_, meXYPos_py_, meXYPosLad_, meXYPosLad_px_, meXYPosLad_py_, meXYPosLay_, meXYPosLay_px_, meXYPosLay_py_, meXYPosPhi_, meXYPosPhi_px_, meXYPosPhi_py_, meXYPosRing_, meXYPosRing_px_, meXYPosRing_py_, PixelSubdetector::PixelBarrel, PixelSubdetector::PixelEndcap, and DetId::subdetId().

331  {
332 
333  bool barrel = DetId(id_).subdetId() == static_cast<int>(PixelSubdetector::PixelBarrel);
334  bool endcap = DetId(id_).subdetId() == static_cast<int>(PixelSubdetector::PixelEndcap);
335 
336  //std::cout << rechit_x << " " << rechit_y << " " << sizeX << " " << sizeY << std::endl;
337  if(modon){
338  meClustX_->Fill(sizeX);
339  meClustY_->Fill(sizeY);
340  meErrorX_->Fill(lerr_x);
341  meErrorY_->Fill(lerr_y);
342  if(!reducedSet)
343  {
344  if(twoD) meXYPos_->Fill(rechit_x, rechit_y);
345  else {
346  meXYPos_px_->Fill(rechit_x);
347  meXYPos_py_->Fill(rechit_y);
348  }
349  }
350  }
351  //std::cout<<"number of detector units="<<numberOfDetUnits<<std::endl;
352 
353  if(ladon && barrel){
356  meErrorXLad_->Fill(lerr_x);
357  meErrorYLad_->Fill(lerr_y);
358  if(!reducedSet)
359  {
360  if(twoD) meXYPosLad_->Fill(rechit_x, rechit_y);
361  else{
362  meXYPosLad_px_->Fill(rechit_x);
363  meXYPosLad_py_->Fill(rechit_y);
364  }
365  }
366  }
367 
368  if(layon && barrel){
371  meErrorXLay_->Fill(lerr_x);
372  meErrorYLay_->Fill(lerr_y);
373  if(!reducedSet)
374  {
375  if(twoD) meXYPosLay_->Fill(rechit_x, rechit_y);
376  else{
377  meXYPosLay_px_->Fill(rechit_x);
378  meXYPosLay_py_->Fill(rechit_y);
379  }
380  }
381  }
382 
383  if(phion && barrel){
386  meErrorXPhi_->Fill(lerr_x);
387  meErrorYPhi_->Fill(lerr_y);
388  if(!reducedSet)
389  {
390  if(twoD) meXYPosPhi_->Fill(rechit_x, rechit_y);
391  else{
392  meXYPosPhi_px_->Fill(rechit_x);
393  meXYPosPhi_py_->Fill(rechit_y);
394  }
395  }
396  }
397 
398  if(bladeon && endcap){
399  //meXYPosBlade_->Fill(rechit_x, rechit_y);
402  meErrorXBlade_->Fill(lerr_x);
403  meErrorYBlade_->Fill(lerr_y);
404  }
405 
406  if(diskon && endcap){
407  //meXYPosDisk_->Fill(rechit_x, rechit_y);
410  meErrorXDisk_->Fill(lerr_x);
411  meErrorYDisk_->Fill(lerr_y);
412  }
413 
414  if(ringon && endcap){
417  meErrorXRing_->Fill(lerr_x);
418  meErrorYRing_->Fill(lerr_y);
419  if(!reducedSet)
420  {
421  if(twoD) meXYPosRing_->Fill(rechit_x, rechit_y);
422  else{
423  meXYPosRing_px_->Fill(rechit_x);
424  meXYPosRing_py_->Fill(rechit_y);
425  }
426  }
427  }
428 }
MonitorElement * meXYPosPhi_px_
MonitorElement * meClustYRing_
MonitorElement * meClustXLay_
MonitorElement * meXYPosPhi_
MonitorElement * meXYPosPhi_py_
MonitorElement * meErrorXDisk_
MonitorElement * meClustYPhi_
MonitorElement * meXYPosLay_py_
MonitorElement * meClustXDisk_
MonitorElement * meClustYDisk_
MonitorElement * meErrorY_
MonitorElement * meErrorYRing_
MonitorElement * meClustXLad_
MonitorElement * meErrorYPhi_
MonitorElement * meXYPosRing_px_
MonitorElement * meXYPosLay_
MonitorElement * meErrorXLad_
MonitorElement * meClustX_
void Fill(long long x)
MonitorElement * meClustXBlade_
MonitorElement * meClustXPhi_
MonitorElement * meXYPosLad_px_
MonitorElement * meErrorXBlade_
MonitorElement * meXYPosRing_
MonitorElement * meErrorYLad_
constexpr int subdetId() const
get the contents of the subdetector field (not cast into any detector&#39;s numbering enum) ...
Definition: DetId.h:41
MonitorElement * meXYPosLay_px_
MonitorElement * meClustXRing_
MonitorElement * meXYPos_py_
MonitorElement * meErrorYLay_
MonitorElement * meXYPos_
Definition: DetId.h:18
MonitorElement * meXYPosLad_
MonitorElement * meErrorYDisk_
MonitorElement * meErrorX_
MonitorElement * meClustYLad_
MonitorElement * meClustY_
MonitorElement * meXYPosRing_py_
MonitorElement * meXYPosLad_py_
MonitorElement * meErrorXLay_
MonitorElement * meClustYBlade_
MonitorElement * meClustYLay_
MonitorElement * meXYPos_px_
MonitorElement * meErrorXRing_
MonitorElement * meErrorYBlade_
MonitorElement * meErrorXPhi_
void SiPixelRecHitModule::nfill ( const int &  nrec,
bool  modon = true,
bool  ladon = false,
bool  layon = false,
bool  phion = false,
bool  bladeon = false,
bool  diskon = false,
bool  ringon = false 
)

Definition at line 430 of file SiPixelRecHitModule.cc.

References Reference_intrackfit_cff::barrel, makeMuonMisalignmentScenario::endcap, MonitorElement::Fill(), id_, menRecHitsBlade_, menRecHitsDisk_, menRecHitsLad_, menRecHitsLay_, menRecHitsPhi_, menRecHitsRing_, PixelSubdetector::PixelBarrel, PixelSubdetector::PixelEndcap, and DetId::subdetId().

430  {
431 
432  bool barrel = DetId(id_).subdetId() == static_cast<int>(PixelSubdetector::PixelBarrel);
433  bool endcap = DetId(id_).subdetId() == static_cast<int>(PixelSubdetector::PixelEndcap);
434 
435  //if(modon) menRecHits_->Fill(nrec);
436  //barrel
437  if(ladon && barrel) menRecHitsLad_->Fill(nrec);
438  if(layon && barrel) menRecHitsLay_->Fill(nrec);
439  if(phion && barrel) menRecHitsPhi_->Fill(nrec);
440  //endcap
441  if(bladeon && endcap) menRecHitsBlade_->Fill(nrec);
442  if(diskon && endcap) menRecHitsDisk_->Fill(nrec);
443  if(ringon && endcap) menRecHitsRing_->Fill(nrec);
444 }
MonitorElement * menRecHitsLay_
void Fill(long long x)
MonitorElement * menRecHitsRing_
constexpr int subdetId() const
get the contents of the subdetector field (not cast into any detector&#39;s numbering enum) ...
Definition: DetId.h:41
Definition: DetId.h:18
MonitorElement * menRecHitsDisk_
MonitorElement * menRecHitsPhi_
MonitorElement * menRecHitsLad_
MonitorElement * menRecHitsBlade_

Member Data Documentation

uint32_t SiPixelRecHitModule::id_
private

Definition at line 63 of file SiPixelRecHitModule.h.

Referenced by book(), fill(), and nfill().

MonitorElement* SiPixelRecHitModule::meClustX_
private

Definition at line 67 of file SiPixelRecHitModule.h.

Referenced by book(), and fill().

MonitorElement* SiPixelRecHitModule::meClustXBlade_
private

Definition at line 101 of file SiPixelRecHitModule.h.

Referenced by book(), and fill().

MonitorElement* SiPixelRecHitModule::meClustXDisk_
private

Definition at line 107 of file SiPixelRecHitModule.h.

Referenced by book(), and fill().

MonitorElement* SiPixelRecHitModule::meClustXLad_
private

Definition at line 76 of file SiPixelRecHitModule.h.

Referenced by book(), and fill().

MonitorElement* SiPixelRecHitModule::meClustXLay_
private

Definition at line 85 of file SiPixelRecHitModule.h.

Referenced by book(), and fill().

MonitorElement* SiPixelRecHitModule::meClustXPhi_
private

Definition at line 94 of file SiPixelRecHitModule.h.

Referenced by book(), and fill().

MonitorElement* SiPixelRecHitModule::meClustXRing_
private

Definition at line 116 of file SiPixelRecHitModule.h.

Referenced by book(), and fill().

MonitorElement* SiPixelRecHitModule::meClustY_
private

Definition at line 68 of file SiPixelRecHitModule.h.

Referenced by book(), and fill().

MonitorElement* SiPixelRecHitModule::meClustYBlade_
private

Definition at line 102 of file SiPixelRecHitModule.h.

Referenced by book(), and fill().

MonitorElement* SiPixelRecHitModule::meClustYDisk_
private

Definition at line 108 of file SiPixelRecHitModule.h.

Referenced by book(), and fill().

MonitorElement* SiPixelRecHitModule::meClustYLad_
private

Definition at line 77 of file SiPixelRecHitModule.h.

Referenced by book(), and fill().

MonitorElement* SiPixelRecHitModule::meClustYLay_
private

Definition at line 86 of file SiPixelRecHitModule.h.

Referenced by book(), and fill().

MonitorElement* SiPixelRecHitModule::meClustYPhi_
private

Definition at line 95 of file SiPixelRecHitModule.h.

Referenced by book(), and fill().

MonitorElement* SiPixelRecHitModule::meClustYRing_
private

Definition at line 117 of file SiPixelRecHitModule.h.

Referenced by book(), and fill().

MonitorElement* SiPixelRecHitModule::meErrorX_
private

Definition at line 69 of file SiPixelRecHitModule.h.

Referenced by book(), and fill().

MonitorElement* SiPixelRecHitModule::meErrorXBlade_
private

Definition at line 103 of file SiPixelRecHitModule.h.

Referenced by book(), and fill().

MonitorElement* SiPixelRecHitModule::meErrorXDisk_
private

Definition at line 109 of file SiPixelRecHitModule.h.

Referenced by book(), and fill().

MonitorElement* SiPixelRecHitModule::meErrorXLad_
private

Definition at line 78 of file SiPixelRecHitModule.h.

Referenced by book(), and fill().

MonitorElement* SiPixelRecHitModule::meErrorXLay_
private

Definition at line 87 of file SiPixelRecHitModule.h.

Referenced by book(), and fill().

MonitorElement* SiPixelRecHitModule::meErrorXPhi_
private

Definition at line 96 of file SiPixelRecHitModule.h.

Referenced by book(), and fill().

MonitorElement* SiPixelRecHitModule::meErrorXRing_
private

Definition at line 118 of file SiPixelRecHitModule.h.

Referenced by book(), and fill().

MonitorElement* SiPixelRecHitModule::meErrorY_
private

Definition at line 70 of file SiPixelRecHitModule.h.

Referenced by book(), and fill().

MonitorElement* SiPixelRecHitModule::meErrorYBlade_
private

Definition at line 104 of file SiPixelRecHitModule.h.

Referenced by book(), and fill().

MonitorElement* SiPixelRecHitModule::meErrorYDisk_
private

Definition at line 110 of file SiPixelRecHitModule.h.

Referenced by book(), and fill().

MonitorElement* SiPixelRecHitModule::meErrorYLad_
private

Definition at line 79 of file SiPixelRecHitModule.h.

Referenced by book(), and fill().

MonitorElement* SiPixelRecHitModule::meErrorYLay_
private

Definition at line 88 of file SiPixelRecHitModule.h.

Referenced by book(), and fill().

MonitorElement* SiPixelRecHitModule::meErrorYPhi_
private

Definition at line 97 of file SiPixelRecHitModule.h.

Referenced by book(), and fill().

MonitorElement* SiPixelRecHitModule::meErrorYRing_
private

Definition at line 119 of file SiPixelRecHitModule.h.

Referenced by book(), and fill().

MonitorElement* SiPixelRecHitModule::menRecHits_
private

Definition at line 71 of file SiPixelRecHitModule.h.

MonitorElement* SiPixelRecHitModule::menRecHitsBlade_
private

Definition at line 105 of file SiPixelRecHitModule.h.

Referenced by book(), and nfill().

MonitorElement* SiPixelRecHitModule::menRecHitsDisk_
private

Definition at line 111 of file SiPixelRecHitModule.h.

Referenced by book(), and nfill().

MonitorElement* SiPixelRecHitModule::menRecHitsLad_
private

Definition at line 80 of file SiPixelRecHitModule.h.

Referenced by book(), and nfill().

MonitorElement* SiPixelRecHitModule::menRecHitsLay_
private

Definition at line 89 of file SiPixelRecHitModule.h.

Referenced by book(), and nfill().

MonitorElement* SiPixelRecHitModule::menRecHitsPhi_
private

Definition at line 98 of file SiPixelRecHitModule.h.

Referenced by book(), and nfill().

MonitorElement* SiPixelRecHitModule::menRecHitsRing_
private

Definition at line 120 of file SiPixelRecHitModule.h.

Referenced by book(), and nfill().

MonitorElement* SiPixelRecHitModule::meXYPos_
private

Definition at line 64 of file SiPixelRecHitModule.h.

Referenced by book(), and fill().

MonitorElement* SiPixelRecHitModule::meXYPos_px_
private

Definition at line 65 of file SiPixelRecHitModule.h.

Referenced by book(), and fill().

MonitorElement* SiPixelRecHitModule::meXYPos_py_
private

Definition at line 66 of file SiPixelRecHitModule.h.

Referenced by book(), and fill().

MonitorElement* SiPixelRecHitModule::meXYPosLad_
private

Definition at line 73 of file SiPixelRecHitModule.h.

Referenced by book(), and fill().

MonitorElement* SiPixelRecHitModule::meXYPosLad_px_
private

Definition at line 74 of file SiPixelRecHitModule.h.

Referenced by book(), and fill().

MonitorElement* SiPixelRecHitModule::meXYPosLad_py_
private

Definition at line 75 of file SiPixelRecHitModule.h.

Referenced by book(), and fill().

MonitorElement* SiPixelRecHitModule::meXYPosLay_
private

Definition at line 82 of file SiPixelRecHitModule.h.

Referenced by book(), and fill().

MonitorElement* SiPixelRecHitModule::meXYPosLay_px_
private

Definition at line 83 of file SiPixelRecHitModule.h.

Referenced by book(), and fill().

MonitorElement* SiPixelRecHitModule::meXYPosLay_py_
private

Definition at line 84 of file SiPixelRecHitModule.h.

Referenced by book(), and fill().

MonitorElement* SiPixelRecHitModule::meXYPosPhi_
private

Definition at line 91 of file SiPixelRecHitModule.h.

Referenced by book(), and fill().

MonitorElement* SiPixelRecHitModule::meXYPosPhi_px_
private

Definition at line 92 of file SiPixelRecHitModule.h.

Referenced by book(), and fill().

MonitorElement* SiPixelRecHitModule::meXYPosPhi_py_
private

Definition at line 93 of file SiPixelRecHitModule.h.

Referenced by book(), and fill().

MonitorElement* SiPixelRecHitModule::meXYPosRing_
private

Definition at line 113 of file SiPixelRecHitModule.h.

Referenced by book(), and fill().

MonitorElement* SiPixelRecHitModule::meXYPosRing_px_
private

Definition at line 114 of file SiPixelRecHitModule.h.

Referenced by book(), and fill().

MonitorElement* SiPixelRecHitModule::meXYPosRing_py_
private

Definition at line 115 of file SiPixelRecHitModule.h.

Referenced by book(), and fill().