CMS 3D CMS Logo

List of all members | Classes | Public Types | Public Member Functions | Static Public Member Functions | Private Attributes | Static Private Attributes
tmtt::TrackerModule Class Reference

#include <TrackerModule.h>

Classes

struct  ModuleTypeCfg
 

Public Types

enum  BarrelModuleType { tiltedMinusZ = 1, tiltedPlusZ = 2, flat = 3 }
 

Public Member Functions

bool barrel () const
 
unsigned int calcModuleType (float pitch, float space, bool barrel, bool tiltedBarrel, bool psModule) const
 
const DetIddetId () const
 
unsigned int endcapRing () const
 
unsigned int layerId () const
 
unsigned int layerIdReduced () const
 
float maxPhi () const
 
float maxR () const
 
float maxZ () const
 
float minPhi () const
 
float minR () const
 
float minZ () const
 
unsigned int moduleTypeID () const
 
unsigned int nStrips () const
 
bool outerModuleAtSmallerR () const
 
float paramB () const
 
float pitchOverSep () const
 
bool psModule () const
 
unsigned int rawDetId () const
 
unsigned int rawStackedDetId () const
 
float sensorSpacing () const
 
float sensorWidth () const
 
float sigmaPar () const
 
float sigmaPerp () const
 
const PixelGeomDetUnitspecDet () const
 
const PixelTopologyspecTopol () const
 
const DetIdstackedDetId () const
 
float stripLength () const
 
float stripPitch () const
 
float theta () const
 
float tiltAngle () const
 
bool tiltedBarrel () const
 
 TrackerModule (const TrackerGeometry *trackerGeometry, const TrackerTopology *trackerTopology, const ModuleTypeCfg &moduleTypeCfg, const DetId &detId)
 

Static Public Member Functions

static unsigned int calcLayerIdReduced (unsigned int layerId)
 

Private Attributes

bool barrel_
 
DetId detId_
 
unsigned int endcapRing_
 
unsigned int layerId_
 
unsigned int layerIdReduced_
 
float moduleMaxPhi_
 
float moduleMaxR_
 
float moduleMaxZ_
 
float moduleMinPhi_
 
float moduleMinR_
 
float moduleMinZ_
 
ModuleTypeCfg moduleTypeCfg_
 
unsigned int moduleTypeID_
 
unsigned int nStrips_
 
bool outerModuleAtSmallerR_
 
bool psModule_
 
float sensorSpacing_
 
float sensorWidth_
 
const PixelGeomDetUnitspecDet_
 
const PixelTopologyspecTopol_
 
DetId stackedDetId_
 
float stripLength_
 
float stripPitch_
 
float tiltAngle_
 
bool tiltedBarrel_
 

Static Private Attributes

static const float invRoot12 = sqrt(1. / 12.)
 

Detailed Description

Definition at line 23 of file TrackerModule.h.

Member Enumeration Documentation

◆ BarrelModuleType

Enumerator
tiltedMinusZ 
tiltedPlusZ 
flat 

Definition at line 25 of file TrackerModule.h.

25 { tiltedMinusZ = 1, tiltedPlusZ = 2, flat = 3 };

Constructor & Destructor Documentation

◆ TrackerModule()

tmtt::TrackerModule::TrackerModule ( const TrackerGeometry trackerGeometry,
const TrackerTopology trackerTopology,
const ModuleTypeCfg moduleTypeCfg,
const DetId detId 
)

Definition at line 26 of file TrackerModule.cc.

30  : moduleTypeCfg_(moduleTypeCfg) {
31  detId_ = detId; // Det ID of lower sensor in stacked module.
32  stackedDetId_ = trackerTopology->stack(detId); // Det ID of stacked module.
33 
34  // Get min & max (r,phi,z) coordinates of the centre of the two sensors containing this stub.
35  const GeomDetUnit* det0 = trackerGeometry->idToDetUnit(detId);
36  const GeomDetUnit* det1 = trackerGeometry->idToDetUnit(trackerTopology->partnerDetId(detId));
37  specDet_ = dynamic_cast<const PixelGeomDetUnit*>(det0);
38  specTopol_ = dynamic_cast<const PixelTopology*>(&(specDet_->specificTopology()));
39 
40  float R0 = det0->position().perp();
41  float R1 = det1->position().perp();
42  float PHI0 = det0->position().phi();
43  float PHI1 = det1->position().phi();
44  float Z0 = det0->position().z();
45  float Z1 = det1->position().z();
46  moduleMinR_ = std::min(R0, R1);
47  moduleMaxR_ = std::max(R0, R1);
48  moduleMinPhi_ = std::min(PHI0, PHI1);
49  moduleMaxPhi_ = std::max(PHI0, PHI1);
50  moduleMinZ_ = std::min(Z0, Z1);
51  moduleMaxZ_ = std::max(Z0, Z1);
52 
53  // Note if modules are flipped back-to-front.
54  outerModuleAtSmallerR_ = (det0->position().mag() > det1->position().mag());
55 
56  // Note if module is PS or 2S, and whether in barrel or endcap.
57  // From Geometry/TrackerGeometryBuilder/README.md
60 
61  // Encode layer ID (barrel layers: 1-6, endcap disks: 11-15 + 21-25)
62  if (barrel_) {
63  layerId_ = trackerTopology->layer(detId); // barrel layer 1-6 encoded as 1-6
64  } else {
65  layerId_ = 10 * trackerTopology->side(detId) + trackerTopology->tidWheel(detId);
66  }
67  // Get reduced layer ID (in range 1-7), requiring only 3 bits for firmware.
69 
70  // Note module ring in endcap
71  endcapRing_ = barrel_ ? 0 : trackerTopology->tidRing(detId);
72  if (not barrel_) {
73  // Apply bodge, since Topology class annoyingly starts ring count at 1, even in endcap wheels where
74  // inner rings are absent.
75  unsigned int iWheel = trackerTopology->tidWheel(detId);
76  if (iWheel >= 3 && iWheel <= 5)
77  endcapRing_ += 3;
78  }
79 
80  // Note if tilted barrel module & get tilt angle (in range 0 to PI).
81  tiltedBarrel_ = barrel_ && (trackerTopology->tobSide(detId) != BarrelModuleType::flat);
82  float deltaR = std::abs(R1 - R0);
83  float deltaZ = (R1 - R0 > 0) ? (Z1 - Z0) : -(Z1 - Z0);
84  tiltAngle_ = atan(deltaR / deltaZ);
85 
86  // Get sensor strip or pixel pitch using innermost sensor of pair.
87 
88  const Bounds& bounds = det0->surface().bounds();
89  sensorWidth_ = bounds.width(); // Width of sensitive region of sensor (= stripPitch * nStrips).
92  nStrips_ = specTopol_->nrows(); // No. of strips in sensor
93  std::pair<float, float> pitch = specTopol_->pitch();
94  stripPitch_ = pitch.first; // Strip pitch (or pixel pitch along shortest axis)
95  stripLength_ = pitch.second; // Strip length (or pixel pitch along longest axis)
96 
97  // Get module type ID defined by firmware.
98 
100  }

References funct::abs(), barrel_, Surface::bounds(), calcLayerIdReduced(), calcModuleType(), PbPb_ZMuSkimMuonDPG_cff::deltaR, detId(), detId_, endcapRing_, TrackerGeometry::getDetectorType(), TrackerGeometry::idToDetUnit(), TrackerTopology::layer(), layerId_, layerIdReduced_, PV3DBase< T, PVType, FrameType >::mag(), SiStripPI::max, min(), moduleMaxPhi_, moduleMaxR_, moduleMaxZ_, moduleMinPhi_, moduleMinR_, moduleMinZ_, moduleTypeID_, PixelTopology::nrows(), nStrips_, outerModuleAtSmallerR_, TrackerTopology::partnerDetId(), PV3DBase< T, PVType, FrameType >::perp(), TrackerGeometry::Ph2PSP, PV3DBase< T, PVType, FrameType >::phi(), PixelTopology::pitch(), GeomDet::position(), psModule_, HLT_2018_cff::R0, sensorSpacing_, sensorWidth_, TrackerTopology::side(), specDet_, PixelGeomDetUnit::specificTopology(), specTopol_, mathSSE::sqrt(), TrackerTopology::stack(), stackedDetId_, stripLength_, stripPitch_, DetId::subdetId(), GeomDet::surface(), StripSubdetector::TIB, TrackerTopology::tidRing(), TrackerTopology::tidWheel(), tiltAngle_, tiltedBarrel_, StripSubdetector::TOB, TrackerTopology::tobSide(), Bounds::width(), PV3DBase< T, PVType, FrameType >::z(), and Z0.

Member Function Documentation

◆ barrel()

bool tmtt::TrackerModule::barrel ( ) const
inline

Definition at line 64 of file TrackerModule.h.

64 { return barrel_; }

References barrel_.

Referenced by calcModuleType().

◆ calcLayerIdReduced()

unsigned int tmtt::TrackerModule::calcLayerIdReduced ( unsigned int  layerId)
static

Definition at line 104 of file TrackerModule.cc.

104  {
105  // Don't bother distinguishing two endcaps, as no track can have stubs in both.
106  unsigned int lay = (layerId < 20) ? layerId : layerId - 10;
107 
108  // No genuine track can have stubs in both barrel layer 6 and endcap disk 11 etc., so merge their layer IDs.
109  if (lay == 6)
110  lay = 11;
111  if (lay == 5)
112  lay = 12;
113  if (lay == 4)
114  lay = 13;
115  if (lay == 3)
116  lay = 15;
117  // At this point, the reduced layer ID can have values of 1, 2, 11, 12, 13, 14, 15. So correct to put in range 1-7.
118  if (lay > 10)
119  lay -= 8;
120 
121  if (lay < 1 || lay > 7)
122  throw cms::Exception("LogicError") << "TrackerModule: Reduced layer ID out of expected range";
123 
124  return lay;
125  }

References Exception, and layerId().

Referenced by TrackerModule().

◆ calcModuleType()

unsigned int tmtt::TrackerModule::calcModuleType ( float  pitch,
float  space,
bool  barrel,
bool  tiltedBarrel,
bool  psModule 
) const

Definition at line 129 of file TrackerModule.cc.

130  {
131  // Calculate unique module type ID, allowing sensor pitch/seperation of module to be determined in FW.
132 
133  unsigned int moduleType = 999;
134  constexpr float tol = 0.001; // Tolerance
135 
136  for (unsigned int i = 0; i < moduleTypeCfg_.pitchVsType.size(); i++) {
137  if (std::abs(pitch - moduleTypeCfg_.pitchVsType[i]) < tol &&
140  moduleType = i;
141  }
142  }
143 
144  if (moduleType == 999) {
145  std::stringstream text;
146  text << "WARNING: TrackerModule found tracker module type unknown to firmware: pitch=" << pitch
147  << " separation=" << space << " barrel=" << barrel << " tilted=" << tiltedBarrel << " PS=" << psModule;
148  std::call_once(
149  printOnce, [](string t) { edm::LogWarning("L1track") << t; }, text.str());
150  }
151  return moduleType;
152  }

References funct::abs(), barrel(), tmtt::TrackerModule::ModuleTypeCfg::barrelVsType, mps_fire::i, moduleTypeCfg_, tmtt::TrackerModule::ModuleTypeCfg::pitchVsType, psModule(), tmtt::TrackerModule::ModuleTypeCfg::psVsType, tmtt::TrackerModule::ModuleTypeCfg::spaceVsType, OrderedSet::t, runonSM::text, tiltedBarrel(), and tmtt::TrackerModule::ModuleTypeCfg::tiltedVsType.

Referenced by TrackerModule().

◆ detId()

const DetId& tmtt::TrackerModule::detId ( ) const
inline

Definition at line 43 of file TrackerModule.h.

43 { return detId_; }

References detId_.

Referenced by tmtt::Stub::degradeResolution(), TrackerModule(), and tmtt::StubWindowSuggest::updateStoredWindow().

◆ endcapRing()

unsigned int tmtt::TrackerModule::endcapRing ( ) const
inline

Definition at line 70 of file TrackerModule.h.

70 { return endcapRing_; }

References endcapRing_.

◆ layerId()

unsigned int tmtt::TrackerModule::layerId ( ) const
inline

Definition at line 66 of file TrackerModule.h.

66 { return layerId_; }

References layerId_.

Referenced by calcLayerIdReduced().

◆ layerIdReduced()

unsigned int tmtt::TrackerModule::layerIdReduced ( ) const
inline

Definition at line 68 of file TrackerModule.h.

68 { return layerIdReduced_; }

References layerIdReduced_.

◆ maxPhi()

float tmtt::TrackerModule::maxPhi ( ) const
inline

Definition at line 55 of file TrackerModule.h.

55 { return moduleMaxPhi_; }

References moduleMaxPhi_.

◆ maxR()

float tmtt::TrackerModule::maxR ( ) const
inline

Definition at line 53 of file TrackerModule.h.

53 { return moduleMaxR_; }

References moduleMaxR_.

◆ maxZ()

float tmtt::TrackerModule::maxZ ( ) const
inline

Definition at line 57 of file TrackerModule.h.

57 { return moduleMaxZ_; }

References moduleMaxZ_.

◆ minPhi()

float tmtt::TrackerModule::minPhi ( ) const
inline

Definition at line 54 of file TrackerModule.h.

54 { return moduleMinPhi_; }

References moduleMinPhi_.

◆ minR()

float tmtt::TrackerModule::minR ( ) const
inline

Definition at line 52 of file TrackerModule.h.

52 { return moduleMinR_; }

References moduleMinR_.

◆ minZ()

float tmtt::TrackerModule::minZ ( ) const
inline

Definition at line 56 of file TrackerModule.h.

56 { return moduleMinZ_; }

References moduleMinZ_.

◆ moduleTypeID()

unsigned int tmtt::TrackerModule::moduleTypeID ( ) const
inline

Definition at line 94 of file TrackerModule.h.

94 { return moduleTypeID_; }

References moduleTypeID_.

◆ nStrips()

unsigned int tmtt::TrackerModule::nStrips ( ) const
inline

Definition at line 80 of file TrackerModule.h.

80 { return nStrips_; }

References nStrips_.

◆ outerModuleAtSmallerR()

bool tmtt::TrackerModule::outerModuleAtSmallerR ( ) const
inline

Definition at line 61 of file TrackerModule.h.

61 { return outerModuleAtSmallerR_; }

References outerModuleAtSmallerR_.

Referenced by tmtt::Stub::Stub().

◆ paramB()

float tmtt::TrackerModule::paramB ( ) const
inline

Definition at line 92 of file TrackerModule.h.

92 { return std::abs(cos(theta() - tiltAngle()) / sin(theta())); }

References funct::abs(), funct::cos(), funct::sin(), theta(), and tiltAngle().

◆ pitchOverSep()

float tmtt::TrackerModule::pitchOverSep ( ) const
inline

Definition at line 90 of file TrackerModule.h.

90 { return stripPitch_ / sensorSpacing_; }

References sensorSpacing_, and stripPitch_.

Referenced by tmtt::Stub::calcDphiOverBend().

◆ psModule()

bool tmtt::TrackerModule::psModule ( ) const
inline

Definition at line 63 of file TrackerModule.h.

63 { return psModule_; }

References psModule_.

Referenced by calcModuleType().

◆ rawDetId()

unsigned int tmtt::TrackerModule::rawDetId ( ) const
inline

Definition at line 44 of file TrackerModule.h.

44 { return detId_.rawId(); }

References detId_, and DetId::rawId().

◆ rawStackedDetId()

unsigned int tmtt::TrackerModule::rawStackedDetId ( ) const
inline

Definition at line 47 of file TrackerModule.h.

47 { return stackedDetId_.rawId(); }

References DetId::rawId(), and stackedDetId_.

◆ sensorSpacing()

float tmtt::TrackerModule::sensorSpacing ( ) const
inline

Definition at line 78 of file TrackerModule.h.

78 { return sensorSpacing_; }

References sensorSpacing_.

◆ sensorWidth()

float tmtt::TrackerModule::sensorWidth ( ) const
inline

Definition at line 76 of file TrackerModule.h.

76 { return sensorWidth_; }

References sensorWidth_.

Referenced by tmtt::Stub::Stub().

◆ sigmaPar()

float tmtt::TrackerModule::sigmaPar ( ) const
inline

Definition at line 88 of file TrackerModule.h.

88 { return invRoot12 * stripLength_; }

References invRoot12, and stripLength_.

◆ sigmaPerp()

float tmtt::TrackerModule::sigmaPerp ( ) const
inline

Definition at line 86 of file TrackerModule.h.

86 { return invRoot12 * stripPitch_; }

References invRoot12, and stripPitch_.

◆ specDet()

const PixelGeomDetUnit* tmtt::TrackerModule::specDet ( ) const
inline

Definition at line 49 of file TrackerModule.h.

49 { return specDet_; }

References specDet_.

Referenced by tmtt::Stub::Stub().

◆ specTopol()

const PixelTopology* tmtt::TrackerModule::specTopol ( ) const
inline

Definition at line 50 of file TrackerModule.h.

50 { return specTopol_; }

References specTopol_.

Referenced by tmtt::Stub::Stub().

◆ stackedDetId()

const DetId& tmtt::TrackerModule::stackedDetId ( ) const
inline

Definition at line 46 of file TrackerModule.h.

46 { return stackedDetId_; }

References stackedDetId_.

◆ stripLength()

float tmtt::TrackerModule::stripLength ( ) const
inline

Definition at line 84 of file TrackerModule.h.

84 { return stripLength_; }

References stripLength_.

◆ stripPitch()

float tmtt::TrackerModule::stripPitch ( ) const
inline

Definition at line 82 of file TrackerModule.h.

82 { return stripPitch_; }

References stripPitch_.

◆ theta()

float tmtt::TrackerModule::theta ( void  ) const
inline

Definition at line 59 of file TrackerModule.h.

59 { return atan2(moduleMinR_, moduleMinZ_); }

References moduleMinR_, and moduleMinZ_.

Referenced by paramB(), and Tau.Tau::zImpact().

◆ tiltAngle()

float tmtt::TrackerModule::tiltAngle ( ) const
inline

Definition at line 74 of file TrackerModule.h.

74 { return tiltAngle_; }

References tiltAngle_.

Referenced by tmtt::Stub::calcDphiOverBend(), and paramB().

◆ tiltedBarrel()

bool tmtt::TrackerModule::tiltedBarrel ( ) const
inline

Definition at line 72 of file TrackerModule.h.

72 { return tiltedBarrel_; }

References tiltedBarrel_.

Referenced by calcModuleType().

Member Data Documentation

◆ barrel_

bool tmtt::TrackerModule::barrel_
private

Definition at line 117 of file TrackerModule.h.

Referenced by barrel(), and TrackerModule().

◆ detId_

DetId tmtt::TrackerModule::detId_
private

Definition at line 105 of file TrackerModule.h.

Referenced by detId(), rawDetId(), and TrackerModule().

◆ endcapRing_

unsigned int tmtt::TrackerModule::endcapRing_
private

Definition at line 120 of file TrackerModule.h.

Referenced by endcapRing(), and TrackerModule().

◆ invRoot12

const float tmtt::TrackerModule::invRoot12 = sqrt(1. / 12.)
staticprivate

Definition at line 132 of file TrackerModule.h.

Referenced by sigmaPar(), and sigmaPerp().

◆ layerId_

unsigned int tmtt::TrackerModule::layerId_
private

Definition at line 118 of file TrackerModule.h.

Referenced by layerId(), and TrackerModule().

◆ layerIdReduced_

unsigned int tmtt::TrackerModule::layerIdReduced_
private

Definition at line 119 of file TrackerModule.h.

Referenced by layerIdReduced(), and TrackerModule().

◆ moduleMaxPhi_

float tmtt::TrackerModule::moduleMaxPhi_
private

Definition at line 112 of file TrackerModule.h.

Referenced by maxPhi(), and TrackerModule().

◆ moduleMaxR_

float tmtt::TrackerModule::moduleMaxR_
private

Definition at line 110 of file TrackerModule.h.

Referenced by maxR(), and TrackerModule().

◆ moduleMaxZ_

float tmtt::TrackerModule::moduleMaxZ_
private

Definition at line 114 of file TrackerModule.h.

Referenced by maxZ(), and TrackerModule().

◆ moduleMinPhi_

float tmtt::TrackerModule::moduleMinPhi_
private

Definition at line 111 of file TrackerModule.h.

Referenced by minPhi(), and TrackerModule().

◆ moduleMinR_

float tmtt::TrackerModule::moduleMinR_
private

Definition at line 109 of file TrackerModule.h.

Referenced by minR(), theta(), and TrackerModule().

◆ moduleMinZ_

float tmtt::TrackerModule::moduleMinZ_
private

Definition at line 113 of file TrackerModule.h.

Referenced by minZ(), theta(), and TrackerModule().

◆ moduleTypeCfg_

ModuleTypeCfg tmtt::TrackerModule::moduleTypeCfg_
private

Definition at line 130 of file TrackerModule.h.

Referenced by calcModuleType().

◆ moduleTypeID_

unsigned int tmtt::TrackerModule::moduleTypeID_
private

Definition at line 128 of file TrackerModule.h.

Referenced by moduleTypeID(), and TrackerModule().

◆ nStrips_

unsigned int tmtt::TrackerModule::nStrips_
private

Definition at line 125 of file TrackerModule.h.

Referenced by nStrips(), and TrackerModule().

◆ outerModuleAtSmallerR_

bool tmtt::TrackerModule::outerModuleAtSmallerR_
private

Definition at line 115 of file TrackerModule.h.

Referenced by outerModuleAtSmallerR(), and TrackerModule().

◆ psModule_

bool tmtt::TrackerModule::psModule_
private

Definition at line 116 of file TrackerModule.h.

Referenced by psModule(), and TrackerModule().

◆ sensorSpacing_

float tmtt::TrackerModule::sensorSpacing_
private

Definition at line 124 of file TrackerModule.h.

Referenced by pitchOverSep(), sensorSpacing(), and TrackerModule().

◆ sensorWidth_

float tmtt::TrackerModule::sensorWidth_
private

Definition at line 123 of file TrackerModule.h.

Referenced by sensorWidth(), and TrackerModule().

◆ specDet_

const PixelGeomDetUnit* tmtt::TrackerModule::specDet_
private

Definition at line 107 of file TrackerModule.h.

Referenced by specDet(), and TrackerModule().

◆ specTopol_

const PixelTopology* tmtt::TrackerModule::specTopol_
private

Definition at line 108 of file TrackerModule.h.

Referenced by specTopol(), and TrackerModule().

◆ stackedDetId_

DetId tmtt::TrackerModule::stackedDetId_
private

Definition at line 106 of file TrackerModule.h.

Referenced by rawStackedDetId(), stackedDetId(), and TrackerModule().

◆ stripLength_

float tmtt::TrackerModule::stripLength_
private

Definition at line 127 of file TrackerModule.h.

Referenced by sigmaPar(), stripLength(), and TrackerModule().

◆ stripPitch_

float tmtt::TrackerModule::stripPitch_
private

Definition at line 126 of file TrackerModule.h.

Referenced by pitchOverSep(), sigmaPerp(), stripPitch(), and TrackerModule().

◆ tiltAngle_

float tmtt::TrackerModule::tiltAngle_
private

Definition at line 122 of file TrackerModule.h.

Referenced by tiltAngle(), and TrackerModule().

◆ tiltedBarrel_

bool tmtt::TrackerModule::tiltedBarrel_
private

Definition at line 121 of file TrackerModule.h.

Referenced by tiltedBarrel(), and TrackerModule().

GeomDet::position
const Surface::PositionType & position() const
The position (origin of the R.F.)
Definition: GeomDet.h:43
TrackerTopology::side
unsigned int side(const DetId &id) const
Definition: TrackerTopology.cc:28
mps_fire.i
i
Definition: mps_fire.py:355
tmtt::TrackerModule::moduleMinR_
float moduleMinR_
Definition: TrackerModule.h:109
Bounds::width
virtual float width() const =0
tmtt::TrackerModule::tiltedBarrel
bool tiltedBarrel() const
Definition: TrackerModule.h:72
tmtt::TrackerModule::sensorSpacing_
float sensorSpacing_
Definition: TrackerModule.h:124
tmtt::TrackerModule::tiltAngle_
float tiltAngle_
Definition: TrackerModule.h:122
GeomDet
Definition: GeomDet.h:27
tmtt::TrackerModule::tiltedPlusZ
Definition: TrackerModule.h:25
min
T min(T a, T b)
Definition: MathUtil.h:58
PixelTopology::pitch
virtual std::pair< float, float > pitch() const =0
tmtt::TrackerModule::layerId_
unsigned int layerId_
Definition: TrackerModule.h:118
Bounds
Definition: Bounds.h:18
tmtt::TrackerModule::tiltedBarrel_
bool tiltedBarrel_
Definition: TrackerModule.h:121
TrackerTopology::layer
unsigned int layer(const DetId &id) const
Definition: TrackerTopology.cc:47
tmtt::TrackerModule::endcapRing_
unsigned int endcapRing_
Definition: TrackerModule.h:120
TrackerTopology::stack
uint32_t stack(const DetId &id) const
Definition: TrackerTopology.cc:104
tmtt::TrackerModule::moduleMaxR_
float moduleMaxR_
Definition: TrackerModule.h:110
tmtt::TrackerModule::moduleMaxZ_
float moduleMaxZ_
Definition: TrackerModule.h:114
tmtt::TrackerModule::specDet_
const PixelGeomDetUnit * specDet_
Definition: TrackerModule.h:107
TrackerGeometry::getDetectorType
ModuleType getDetectorType(DetId) const
Definition: TrackerGeometry.cc:247
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
funct::sin
Sin< T >::type sin(const T &t)
Definition: Sin.h:22
tmtt::TrackerModule::moduleTypeCfg_
ModuleTypeCfg moduleTypeCfg_
Definition: TrackerModule.h:130
TrackerGeometry::idToDetUnit
const TrackerGeomDet * idToDetUnit(DetId) const override
Return the pointer to the GeomDetUnit corresponding to a given DetId.
Definition: TrackerGeometry.cc:183
PV3DBase::z
T z() const
Definition: PV3DBase.h:61
tmtt::TrackerModule::barrel
bool barrel() const
Definition: TrackerModule.h:64
GeomDet::surface
const Plane & surface() const
The nominal surface of the GeomDet.
Definition: GeomDet.h:37
tmtt::TrackerModule::moduleMinPhi_
float moduleMinPhi_
Definition: TrackerModule.h:111
tmtt::TrackerModule::calcModuleType
unsigned int calcModuleType(float pitch, float space, bool barrel, bool tiltedBarrel, bool psModule) const
Definition: TrackerModule.cc:129
funct::cos
Cos< T >::type cos(const T &t)
Definition: Cos.h:22
tmtt::TrackerModule::calcLayerIdReduced
static unsigned int calcLayerIdReduced(unsigned int layerId)
Definition: TrackerModule.cc:104
tmtt::TrackerModule::specTopol_
const PixelTopology * specTopol_
Definition: TrackerModule.h:108
tmtt::TrackerModule::ModuleTypeCfg::tiltedVsType
std::vector< bool > tiltedVsType
Definition: TrackerModule.h:33
tmtt::TrackerModule::moduleMaxPhi_
float moduleMaxPhi_
Definition: TrackerModule.h:112
mathSSE::sqrt
T sqrt(T t)
Definition: SSEVec.h:19
Surface::bounds
const Bounds & bounds() const
Definition: Surface.h:87
tmtt::TrackerModule::nStrips_
unsigned int nStrips_
Definition: TrackerModule.h:125
TrackerTopology::partnerDetId
DetId partnerDetId(const DetId &id) const
Definition: TrackerTopology.cc:233
tmtt::TrackerModule::tiltAngle
float tiltAngle() const
Definition: TrackerModule.h:74
StripSubdetector::TIB
static constexpr auto TIB
Definition: StripSubdetector.h:16
OrderedSet.t
t
Definition: OrderedSet.py:90
tmtt::TrackerModule::barrel_
bool barrel_
Definition: TrackerModule.h:117
PbPb_ZMuSkimMuonDPG_cff.deltaR
deltaR
Definition: PbPb_ZMuSkimMuonDPG_cff.py:63
DetId::subdetId
constexpr int subdetId() const
get the contents of the subdetector field (not cast into any detector's numbering enum)
Definition: DetId.h:48
tmtt::TrackerModule::psModule_
bool psModule_
Definition: TrackerModule.h:116
edm::LogWarning
Definition: MessageLogger.h:141
SiStripPI::max
Definition: SiStripPayloadInspectorHelper.h:169
PixelGeomDetUnit::specificTopology
virtual const PixelTopology & specificTopology() const
Returns a reference to the pixel proxy topology.
Definition: PixelGeomDetUnit.cc:17
tmtt::TrackerModule::stripPitch_
float stripPitch_
Definition: TrackerModule.h:126
tmtt::TrackerModule::layerIdReduced_
unsigned int layerIdReduced_
Definition: TrackerModule.h:119
tmtt::TrackerModule::moduleMinZ_
float moduleMinZ_
Definition: TrackerModule.h:113
HLT_2018_cff.R0
R0
Definition: HLT_2018_cff.py:7317
tmtt::TrackerModule::sensorWidth_
float sensorWidth_
Definition: TrackerModule.h:123
tmtt::TrackerModule::stackedDetId_
DetId stackedDetId_
Definition: TrackerModule.h:106
tmtt::TrackerModule::theta
float theta() const
Definition: TrackerModule.h:59
PV3DBase::mag
T mag() const
Definition: PV3DBase.h:64
DetId::rawId
constexpr uint32_t rawId() const
get the raw id
Definition: DetId.h:57
tmtt::TrackerModule::outerModuleAtSmallerR_
bool outerModuleAtSmallerR_
Definition: TrackerModule.h:115
tmtt::TrackerModule::layerId
unsigned int layerId() const
Definition: TrackerModule.h:66
Exception
Definition: hltDiff.cc:246
StripSubdetector::TOB
static constexpr auto TOB
Definition: StripSubdetector.h:18
tmtt::TrackerModule::moduleTypeID_
unsigned int moduleTypeID_
Definition: TrackerModule.h:128
tmtt::TrackerModule::ModuleTypeCfg::spaceVsType
std::vector< double > spaceVsType
Definition: TrackerModule.h:30
tmtt::TrackerModule::detId_
DetId detId_
Definition: TrackerModule.h:105
tmtt::TrackerModule::ModuleTypeCfg::psVsType
std::vector< bool > psVsType
Definition: TrackerModule.h:32
tmtt::TrackerModule::tiltedMinusZ
Definition: TrackerModule.h:25
tmtt::TrackerModule::flat
Definition: TrackerModule.h:25
funct::abs
Abs< T >::type abs(const T &t)
Definition: Abs.h:22
runonSM.text
text
Definition: runonSM.py:43
tmtt::TrackerModule::detId
const DetId & detId() const
Definition: TrackerModule.h:43
PixelTopology::nrows
virtual int nrows() const =0
tmtt::TrackerModule::psModule
bool psModule() const
Definition: TrackerModule.h:63
PV3DBase::perp
T perp() const
Definition: PV3DBase.h:69
tmtt::TrackerModule::ModuleTypeCfg::barrelVsType
std::vector< bool > barrelVsType
Definition: TrackerModule.h:31
PV3DBase::phi
Geom::Phi< T > phi() const
Definition: PV3DBase.h:66
TrackerTopology::tobSide
unsigned int tobSide(const DetId &id) const
Definition: TrackerTopology.h:180
Z0
static const double Z0
Definition: CastorGeometryData.h:32
TrackerGeometry::ModuleType::Ph2PSP
tmtt::TrackerModule::invRoot12
static const float invRoot12
Definition: TrackerModule.h:132
tmtt::TrackerModule::ModuleTypeCfg::pitchVsType
std::vector< double > pitchVsType
Definition: TrackerModule.h:29
tmtt::TrackerModule::stripLength_
float stripLength_
Definition: TrackerModule.h:127