CMS 3D CMS Logo

TrackerNameSpace.cc
Go to the documentation of this file.
2 
4 
5 //______________________________________________________________________________
7  : trackerTopology_(topology),
8  tpb_(topology),
9  tpe_(topology),
10  tib_(topology),
11  tob_(topology),
12  tid_(topology),
13  tec_(topology) {}
14 
15 //______________________________________________________________________________
16 align::TrackerNameSpace::TPB ::TPB(const TrackerTopology* topology) : trackerTopology_(topology) {}
17 
18 //______________________________________________________________________________
20 
21 //______________________________________________________________________________
23  unsigned int l = trackerTopology_->pxbLadder(id); // increases with phi
24  unsigned int c = trackerTopology_->pxbLayer(id) - 1;
25 
26  // Ladder in 1st quadrant: number = lpqc_ + 1 - l (1 to lpqc_)
27  // Ladder in 2nd quadrant: number = l - lpqc_ (1 to lpqc_)
28  // Ladder in 3rd quadrant: number = l - lpqc_ (lpqc_ + 1 to 2 * lpqc_)
29  // Ladder in 4th quadrant: number = 5 * lpqc_ + 1 - l (lpqc_ + 1 to 2 * lpqc_)
30 
31  return l > 3 * lpqc_[c] ? 5 * lpqc_[c] + 1 - l : // ladder in 4th quadrant
32  (l > lpqc_[c] ? l - lpqc_[c] : // ladder not in 1st quadrant
33  lpqc_[c] + 1 - l);
34 }
35 
36 //______________________________________________________________________________
38 
39 //______________________________________________________________________________
41  unsigned int l = trackerTopology_->pxbLadder(id); // increases with phi
42  unsigned int c = trackerTopology_->pxbLayer(id) - 1;
43 
44  return l > lpqc_[c] && l <= 3 * lpqc_[c] ? 1 : 2;
45 }
46 
47 //______________________________________________________________________________
48 unsigned int align::TrackerNameSpace::TPB ::barrelNumber(align::ID) const { return 1; }
49 
50 //______________________________________________________________________________
52 
54 
56 
58  unsigned int b = trackerTopology_->pxfBlade(id); // 1 to 24 in increasing phi
59 
60  // Blade in 1st quadrant: number = bpqd_ + 1 - b (1 to bpqd_)
61  // Blade in 2nd quadrant: number = b - bpqd_ (1 to bpqd_)
62  // Blade in 3rd quadrant: number = b - bpqd_ (bpqd_ + 1 to 2 * bpqd_)
63  // Blade in 4th quadrant: number = 5 * bpqd_ + 1 - b (bpqd_ + 1 to 2 * bpqd_)
64 
65  return b > 3 * bpqd_ ? // blade in 4th quadrant
66  5 * bpqd_ + 1 - b
67  : (b > bpqd_ ? // blade not in 1st quadrant
68  b - bpqd_
69  : bpqd_ + 1 - b);
70 }
71 
73 
75  unsigned int b = trackerTopology_->pxfBlade(id); // 1 to 24 in increasing phi
76 
77  return b > bpqd_ && b <= 3 * bpqd_ ? 1 : 2;
78 }
79 
81 
83 
85 
87  std::vector<unsigned int> s = trackerTopology_->tibStringInfo(id);
88  // s[1]: surface lower = 1, upper = 2
89  // s[2]: string no. increases with phi
90 
91  unsigned int l = 2 * (trackerTopology_->tibLayer(id) - 1) + s[1] - 1;
92 
93  // String on +y surface: number = s (1 to sphs_)
94  // String in -y surface: number = 2 * sphs_ + 1 - s (1 to sphs_)
95 
96  return s[2] > sphs_[l] ? 2 * sphs_[l] + 1 - s[2] : s[2];
97 }
98 
100  return trackerTopology_->tibStringInfo(id)[1];
101 }
102 
104  std::vector<unsigned int> s = trackerTopology_->tibStringInfo(id);
105  // s[1]: surface lower = 1, upper = 2
106  // s[2]: string no. increases with phi
107 
108  unsigned int l = 2 * (trackerTopology_->tibLayer(id) - 1) + s[1] - 1;
109 
110  return s[2] > sphs_[l] ? 1 : 2;
111 }
112 
114 
116  return trackerTopology_->tibStringInfo(id)[0];
117 }
118 
120 
122 
124 
126  return trackerTopology_->tobRodInfo(id)[1];
127 }
128 
130 
132  return trackerTopology_->tobRodInfo(id)[0];
133 }
134 
136 
138 
140  return trackerTopology_->tidModuleInfo(id)[1];
141 }
142 
144  return trackerTopology_->tidModuleInfo(id)[0];
145 }
146 
148 
150 
152 
154 
156 
158 
160  return trackerTopology_->tecPetalInfo(id)[1];
161 }
162 
164  return trackerTopology_->tecPetalInfo(id)[0];
165 }
166 
168 
align::TrackerNameSpace::TPB::barrelNumber
unsigned int barrelNumber(align::ID) const
Barrel number is 1 for all align::ID's which belong to this barrel.
Definition: TrackerNameSpace.cc:48
align::TrackerNameSpace::TIB::layerNumber
unsigned int layerNumber(align::ID) const
Layer number increases with rho from 1 to 8.
Definition: TrackerNameSpace.cc:113
align::TrackerNameSpace::TEC::TEC
TEC(const TrackerTopology *)
Definition: TrackerNameSpace.cc:153
align::TrackerNameSpace::TID::TID
TID(const TrackerTopology *)
Definition: TrackerNameSpace.cc:137
align::TrackerNameSpace::TPB::TPB
TPB(const TrackerTopology *)
Definition: TrackerNameSpace.cc:16
sistrip::tob_
static const char tob_[]
Definition: ConstantsForGranularity.h:26
align::TrackerNameSpace::TOB::halfBarrelNumber
unsigned int halfBarrelNumber(align::ID) const
HalfBarrel number is 1 at -z side and 2 at +z side.
Definition: TrackerNameSpace.cc:131
align::TrackerNameSpace::TEC::sideNumber
unsigned int sideNumber(align::ID) const
Side number is 1 for back disk and 2 for front (towards IP).
Definition: TrackerNameSpace.cc:163
TrackerTopology::pxfSide
unsigned int pxfSide(const DetId &id) const
Definition: TrackerTopology.h:192
sistrip::tec_
static const char tec_[]
Definition: ConstantsForGranularity.h:27
align::TrackerNameSpace::TID::ringNumber
unsigned int ringNumber(align::ID) const
Ring number increases with rho from 1 to 3.
Definition: TrackerNameSpace.cc:147
TrackerTopology
Definition: TrackerTopology.h:16
TrackerTopology::pxbLadder
unsigned int pxbLadder(const DetId &id) const
Definition: TrackerTopology.h:155
align::TrackerNameSpace::TPB::ladderNumber
unsigned int ladderNumber(align::ID) const
Definition: TrackerNameSpace.cc:22
align::TrackerNameSpace::TIB::surfaceNumber
unsigned int surfaceNumber(align::ID) const
Surface number is 1 for inner and 2 for outer.
Definition: TrackerNameSpace.cc:99
align::TrackerNameSpace::TIB::barrelNumber
unsigned int barrelNumber(align::ID) const
Barrel number is 1 for all align::ID's which belong to this barrel.
Definition: TrackerNameSpace.cc:119
align::TrackerNameSpace::TIB::halfShellNumber
unsigned int halfShellNumber(align::ID) const
Half shell number is 1 for bottom (-y) and 2 for top (+y).
Definition: TrackerNameSpace.cc:103
align::TrackerNameSpace::TPE::bladeNumber
unsigned int bladeNumber(align::ID) const
Definition: TrackerNameSpace.cc:57
align::TrackerNameSpace::TID::sideNumber
unsigned int sideNumber(align::ID) const
Side number is 1 for back ring and 2 for front (towards IP).
Definition: TrackerNameSpace.cc:143
align::TrackerNameSpace::trackerTopology_
const TrackerTopology * trackerTopology_
Definition: TrackerNameSpace.h:261
align::TrackerNameSpace::TEC::petalNumber
unsigned int petalNumber(align::ID) const
Petal number increases with phi from 1 to 8.
Definition: TrackerNameSpace.cc:159
TrackerTopology::tidRing
unsigned int tidRing(const DetId &id) const
Definition: TrackerTopology.h:218
TrackerTopology::tidWheel
unsigned int tidWheel(const DetId &id) const
Definition: TrackerTopology.h:201
TrackerTopology::pxbLayer
unsigned int pxbLayer(const DetId &id) const
Definition: TrackerTopology.h:144
TrackerTopology::pxfPanel
unsigned int pxfPanel(const DetId &id) const
Definition: TrackerTopology.h:450
TrackerNameSpace.h
TrackerTopology::tobRodInfo
std::vector< unsigned int > tobRodInfo(const DetId &id) const
Definition: TrackerTopology.h:226
TrackerTopology.h
alignCSCRings.s
s
Definition: alignCSCRings.py:92
TrackerTopology::tibStringInfo
std::vector< unsigned int > tibStringInfo(const DetId &id) const
Definition: TrackerTopology.h:421
align::TrackerNameSpace::TID::diskNumber
unsigned int diskNumber(align::ID) const
Disk number increases with |z| from 1 to 3.
Definition: TrackerNameSpace.cc:149
TrackerTopology::tidModuleInfo
std::vector< unsigned int > tidModuleInfo(const DetId &id) const
Definition: TrackerTopology.h:434
align::TrackerNameSpace::TrackerNameSpace
TrackerNameSpace(const TrackerTopology *)
Definition: TrackerNameSpace.cc:6
align::TrackerNameSpace::TOB::layerNumber
unsigned int layerNumber(align::ID) const
Layer number increases with rho from 1 to 6.
Definition: TrackerNameSpace.cc:129
align::TrackerNameSpace::TPB::halfBarrelNumber
unsigned int halfBarrelNumber(align::ID) const
Half barrel number is 1 at left side (-x) and 2 at right side (+x).
Definition: TrackerNameSpace.cc:40
align::TrackerNameSpace::TPE::halfCylinderNumber
unsigned int halfCylinderNumber(align::ID) const
Half cylinder number is 1 at left side (-x) and 2 at right side (+x).
Definition: TrackerNameSpace.cc:74
align::TrackerNameSpace::TPE::panelNumber
unsigned int panelNumber(align::ID) const
Panel number is 1 for 4 modules, 2 for 3 modules.
Definition: TrackerNameSpace.cc:55
b
double b
Definition: hdecay.h:118
align::TrackerNameSpace::TOB::moduleNumber
unsigned int moduleNumber(align::ID) const
Module number increases with |z| from 1 to 6.
Definition: TrackerNameSpace.cc:123
align::TrackerNameSpace::TOB::rodNumber
unsigned int rodNumber(align::ID) const
Rod number increases with phi.
Definition: TrackerNameSpace.cc:125
align::TrackerNameSpace::TPE::TPE
TPE(const TrackerTopology *)
Definition: TrackerNameSpace.cc:51
align::TrackerNameSpace::TEC::endcapNumber
unsigned int endcapNumber(align::ID) const
Endcap number is 1 at -z side and 2 at +z side.
Definition: TrackerNameSpace.cc:169
align::TrackerNameSpace::TEC::diskNumber
unsigned int diskNumber(align::ID) const
Disk number increases with |z| from 1 to 9.
Definition: TrackerNameSpace.cc:167
align::ID
uint32_t ID
Definition: Definitions.h:24
align::TrackerNameSpace::TPB::moduleNumber
unsigned int moduleNumber(align::ID) const
Module number increases with z from 1 to 8.
Definition: TrackerNameSpace.cc:19
align::TrackerNameSpace::TPB::layerNumber
unsigned int layerNumber(align::ID) const
Layer number increases with rho from 1 to 3.
Definition: TrackerNameSpace.cc:37
align::TrackerNameSpace::TIB::moduleNumber
unsigned int moduleNumber(align::ID) const
Module number increases with |z| from 1 to 3.
Definition: TrackerNameSpace.cc:84
TrackerTopology::tibModule
unsigned int tibModule(const DetId &id) const
Definition: TrackerTopology.h:172
TrackerTopology::tidSide
unsigned int tidSide(const DetId &id) const
Definition: TrackerTopology.h:190
TrackerTopology::tecRing
unsigned int tecRing(const DetId &id) const
ring id
Definition: TrackerTopology.h:217
TrackerTopology::pxfModule
unsigned int pxfModule(const DetId &id) const
Definition: TrackerTopology.h:163
TrackerTopology::pxfDisk
unsigned int pxfDisk(const DetId &id) const
Definition: TrackerTopology.h:446
align::TrackerNameSpace::TIB::halfBarrelNumber
unsigned int halfBarrelNumber(align::ID) const
Half barrel number is 1 at -z side and 2 at +z side.
Definition: TrackerNameSpace.cc:115
cmsLHEtoEOSManager.l
l
Definition: cmsLHEtoEOSManager.py:204
align::TrackerNameSpace::TIB::stringNumber
unsigned int stringNumber(align::ID) const
Definition: TrackerNameSpace.cc:86
TrackerTopology::tobLayer
unsigned int tobLayer(const DetId &id) const
Definition: TrackerTopology.h:147
align::TrackerNameSpace::TPE::endcapNumber
unsigned int endcapNumber(align::ID) const
Endcap number is 1 for -z and 2 for +z.
Definition: TrackerNameSpace.cc:80
align::TrackerNameSpace::TID::moduleNumber
unsigned int moduleNumber(align::ID) const
Module number increases with phi.
Definition: TrackerNameSpace.cc:139
align::TrackerNameSpace::TPE::halfDiskNumber
unsigned int halfDiskNumber(align::ID) const
Half disk number increases with |z| from 1 to 3.
Definition: TrackerNameSpace.cc:72
align::TrackerNameSpace::TPE::moduleNumber
unsigned int moduleNumber(align::ID) const
Module number increases with rho; from 1 to 4.
Definition: TrackerNameSpace.cc:53
TrackerTopology::tobModule
unsigned int tobModule(const DetId &id) const
Definition: TrackerTopology.h:166
TrackerTopology::pxbModule
unsigned int pxbModule(const DetId &id) const
Definition: TrackerTopology.h:160
sistrip::tib_
static const char tib_[]
Definition: ConstantsForGranularity.h:25
TrackerTopology::tecModule
unsigned int tecModule(const DetId &id) const
Definition: TrackerTopology.h:169
align::TrackerNameSpace::TOB::TOB
TOB(const TrackerTopology *)
Definition: TrackerNameSpace.cc:121
TrackerTopology::pxfBlade
unsigned int pxfBlade(const DetId &id) const
Definition: TrackerTopology.h:447
TrackerTopology::tecPetalInfo
std::vector< unsigned int > tecPetalInfo(const DetId &id) const
Definition: TrackerTopology.h:407
c
auto & c
Definition: CAHitNtupletGeneratorKernelsImpl.h:46
align::TrackerNameSpace::TEC::ringNumber
unsigned int ringNumber(align::ID) const
Ring number increases with rho.
Definition: TrackerNameSpace.cc:157
TrackerTopology::tecWheel
unsigned int tecWheel(const DetId &id) const
Definition: TrackerTopology.h:198
align::TrackerNameSpace::TIB::TIB
TIB(const TrackerTopology *)
Definition: TrackerNameSpace.cc:82
align::TrackerNameSpace::TEC::moduleNumber
unsigned int moduleNumber(align::ID) const
Module number increases (decreases) with phi for +z (-z) endcap.
Definition: TrackerNameSpace.cc:155
align::TrackerNameSpace::TID::endcapNumber
unsigned int endcapNumber(align::ID) const
Endcap number is 1 at -z side and 2 at +z side.
Definition: TrackerNameSpace.cc:151
align::TrackerNameSpace::TOB::barrelNumber
unsigned int barrelNumber(align::ID) const
Barrel number is 1 for all align::ID's which belong to this barrel.
Definition: TrackerNameSpace.cc:135
TrackerTopology::tibLayer
unsigned int tibLayer(const DetId &id) const
Definition: TrackerTopology.h:150
TrackerTopology::tecSide
unsigned int tecSide(const DetId &id) const
Definition: TrackerTopology.h:184