CMS 3D CMS Logo

Stub.h
Go to the documentation of this file.
1 #ifndef L1Trigger_TrackFindingTMTT_Stub_h
2 #define L1Trigger_TrackFindingTMTT_Stub_h
3 
12 
17 
18 #include <vector>
19 #include <set>
20 #include <array>
21 #include <map>
22 #include <memory>
23 
24 class TrackerGeometry;
25 class TrackerTopology;
26 
27 namespace tmtt {
28 
29  class TP;
30  class DegradeBend;
31  class StubKiller;
32 
40 
41  //=== Represents a Tracker stub (=pair of hits)
42 
43  class Stub {
44  public:
45  // Hybrid L1 tracking: stub constructor.
46  Stub(const Settings* settings,
47  unsigned int idStub,
48  double phi,
49  double r,
50  double z,
51  double bend,
52  unsigned int iphi,
53  double alpha,
54  unsigned int layerId,
55  unsigned int iPhiSec,
56  bool psModule,
57  bool barrel,
58  bool tiltedBarrel,
59  float stripPitch,
60  float stripLength,
61  unsigned int nStrips);
62 
63  // TMTT L1 tracking: stub constructor.
64  Stub(const TTStubRef& ttStubRef,
65  unsigned int index_in_vStubs,
66  const Settings* settings,
67  const TrackerTopology* trackerTopology,
69  const DegradeBend* degradeBend,
70  const StubKiller* stubKiller);
71 
72  bool operator==(const Stub& stubOther) { return (this->index() == stubOther.index()); }
73 
74  // Return reference to original TTStub.
75  const TTStubRef& ttStubRef() const { return ttStubRef_; }
76 
77  // Info about tracker module containing stub.
78  const TrackerModule* trackerModule() const { return trackerModule_; }
79 
80  // Fill truth info with association from stub to tracking particles.
81  void fillTruth(const std::map<edm::Ptr<TrackingParticle>, const TP*>& translateTP,
82  const edm::Handle<TTStubAssMap>& mcTruthTTStubHandle,
83  const edm::Handle<TTClusterAssMap>& mcTruthTTClusterHandle);
84 
85  // Calculate HT m-bin range consistent with bend.
86  void calcQoverPtrange();
87 
88  // Digitize stub for input to GP, HT, SF, TF
89  enum class DigiStage { NONE, GP, HT, SF, TF };
90  void digitize(unsigned int iPhiSec, DigiStage digiStep);
91 
92  // Control warning messages about accessing non-digitized quantities.
93  void setDigitizeWarningsOn(bool newVal) { digitizeWarningsOn_ = newVal; }
94 
95  // Access to digitized version of stub coords.
96  const DigitalStub* digitalStub() const { return digitalStub_.get(); }
97 
98  // === Functions for returning info about reconstructed stubs ===
99 
100  // Location in InputData::vStubs_
101  unsigned int index() const { return index_in_vStubs_; }
102 
103  //--- Stub data and quantities derived from it ---
104 
105  // Stub coordinates (optionally after digitisation, if digitisation requested via cfg).
106  // N.B. Digitisation is only run if Stub::digitize() is called.
107  float phi() const { return phi_; }
108  float r() const { return r_; }
109  float z() const { return z_; }
110  float theta() const { return atan2(r_, z_); }
111  float eta() const { return asinh(z_ / r_); }
112 
113  // Location of stub in module in units of strip/pixel number in phi direction.
114  // Range from 0 to (nStrips - 1) inclusive.
115  unsigned int iphi() const { return iphi_; }
116  // alpha correction for non-radial strips in endcap 2S modules.
117  // (If true hit at larger r than stub r by deltaR, then stub phi needs correcting by +alpha*deltaR).
118  // *** TO DO *** : Digitize this.
119  float alpha() const { return alpha_; }
120 
121  // Get stub bend and its resolution, as available within the front end chip (i.e. prior to loss of bits
122  // or digitisation).
123  float bendInFrontend() const { return bendInFrontend_; }
124  float bendCutInFrontend() const { return settings_->bendCut(); }
125  // Get stub bend (i.e. displacement between two hits in stub in units of strip pitch).
126  float bend() const { return bend_; }
127  // Bend resolution.
128  float bendCut() const { return (settings_->bendCut() + (numMergedBend_ - 1) * settings_->bendCutExtra()); }
129  // No. of bend values merged into FE bend encoding of this stub.
130  float numMergedBend() const { return numMergedBend_; }
131  // Estimated track q/Pt based on stub bend info.
132  float qOverPt() const { return (this->qOverPtOverBend() * this->bend()); }
133  float qOverPtcut() const { return (this->qOverPtOverBend() * this->bendCut()); }
134  // Range in q/Pt bins in HT array compatible with stub bend.
135  unsigned int min_qOverPt_bin() const { return min_qOverPt_bin_; }
136  unsigned int max_qOverPt_bin() const { return max_qOverPt_bin_; }
137  // Difference in phi between stub and angle at which track crosses given radius, assuming track has given Pt.
138  float phiDiff(float rad, float Pt) const { return std::abs(r_ - rad) * (settings_->invPtToDphi()) / Pt; }
139  // Phi angle at which particle consistent with this stub & its bend cross specified radius.
140  float trkPhiAtR(float rad) const { return phi_ + (bend_ * dphiOverBend_) * (1. - rad / r_); }
141  // Its resolution
142  float trkPhiAtRcut(float rad) const { return (bendCut() * dphiOverBend_) * std::abs(1. - rad / r_); }
143 
144  // -- conversion factors
145  // Ratio of track crossing angle to bend.
146  float dphiOverBend() const { return dphiOverBend_; }
147  // Ratio of q/Pt to bend.
148  float qOverPtOverBend() const { return dphiOverBend_ / (r_ * settings_->invPtToDphi()); }
149 
150  //--- Info about the two clusters that make up the stub.
151 
152  // Coordinates in frame of sensor, measured in units of strip pitch along two orthogonal axes running perpendicular and parallel to longer axis of pixels/strips (U & V).
153  std::array<float, 2> localU_cluster() const { return localU_cluster_; }
154  std::array<float, 2> localV_cluster() const { return localV_cluster_; }
155 
156  //--- Check if this stub will be output by FE. Stub failing this not used for L1 tracks.
157  bool frontendPass() const { return frontendPass_; }
158  // Indicates if stub would have passed DE cuts, were it not for window size encoded in DegradeBend.h
160 
161  //--- Truth info
162 
163  // Association of stub to tracking particles
164  const std::set<const TP*>& assocTPs() const {
165  return assocTPs_;
166  } // Return TPs associated to this stub. (Whether only TPs contributing to both clusters are returned is determined by "StubMatchStrict" config param.)
167  bool genuine() const { return (not assocTPs_.empty()); } // Did stub match at least one TP?
168  const TP* assocTP() const {
169  return assocTP_;
170  } // If only one TP contributed to both clusters, this tells you which TP it is. Returns nullptr if none.
171 
172  // Association of both clusters making up stub to tracking particles
173  std::array<bool, 2> genuineCluster() const {
174  return std::array<bool, 2>{{(assocTPofCluster_[0] != nullptr), (assocTPofCluster_[1] != nullptr)}};
175  } // Was cluster produced by a single TP?
176  std::array<const TP*, 2> assocTPofCluster() const {
177  return assocTPofCluster_;
178  } // Which TP made each cluster. Warning: If cluster was not produced by a single TP, then returns nullptr! (P.S. If both clusters match same TP, then this will equal assocTP()).
179 
180  //--- Quantities common to all stubs in a given module ---
181  // N.B. Not taken from trackerModule_ to cope with Hybrid tracking.
182 
183  // Angle between normal to module and beam-line along +ve z axis. (In range -PI/2 to +PI/2).
184  float tiltAngle() const { return tiltAngle_; }
185  // Uncertainty in stub (r,z)
186  float sigmaR() const { return (barrel() ? 0. : sigmaPar()); }
187  float sigmaZ() const { return (barrel() ? sigmaPar() : 0.); }
188  // Hit resolution perpendicular to strip. Measures phi.
189  float sigmaPerp() const { return invRoot12 * stripPitch_; }
190  // Hit resolution parallel to strip. Measures r or z.
191  float sigmaPar() const { return invRoot12 * stripLength_; }
192 
193  //--- These module variables could be taken directly from trackerModule_, were it not for need
194  //--- to support Hybrid.
195  // Module type: PS or 2S?
196  bool psModule() const { return psModule_; }
197  // Tracker layer ID number (1-6 = barrel layer; 11-15 = endcap A disk; 21-25 = endcap B disk)
198  unsigned int layerId() const { return layerId_; }
199  // Reduced layer ID (in range 1-7). This encodes the layer ID in only 3 bits (to simplify firmware) by merging some barrel layer and endcap disk layer IDs into a single ID.
200  unsigned int layerIdReduced() const { return layerIdReduced_; }
201  bool barrel() const { return barrel_; }
202  // True if stub is in tilted barrel module.
203  bool tiltedBarrel() const { return tiltedBarrel_; }
204  // Strip pitch (or pixel pitch along shortest axis).
205  float stripPitch() const { return stripPitch_; }
206  // Strip length (or pixel pitch along longest axis).
207  float stripLength() const { return stripLength_; }
208  // No. of strips in sensor.
209  unsigned int nStrips() const { return nStrips_; }
210 
211  private:
212  // Degrade assumed stub bend resolution.
213  // And return an integer indicating how many values of bend are merged into this single one.
214  void degradeResolution(float bend, float& degradedBend, unsigned int& num) const;
215 
216  // Set the frontendPass_ flag, indicating if frontend readout electronics will output this stub.
217  void setFrontend(const StubKiller* stubKiller);
218 
219  // Set info about the module that this stub is in.
220  void setTrackerModule(const TrackerGeometry* trackerGeometry,
221  const TrackerTopology* trackerTopology,
222  const DetId& detId);
223 
224  // Function to calculate approximation for dphiOverBendCorrection aka B
225  double approxB();
226 
227  // Calculate variables giving ratio of track intercept angle to stub bend.
228  void calcDphiOverBend();
229 
230  private:
231  TTStubRef ttStubRef_; // Reference to original TTStub
232 
233  const Settings* settings_; // configuration parameters.
234 
235  unsigned int index_in_vStubs_; // location of this stub in InputData::vStubs
236 
237  //--- Parameters passed along optical links from PP to MP (or equivalent ones if easier for analysis software to use).
238  // WARNING: If you add any variables in this section, take care to ensure that they are digitized correctly by Stub::digitize().
239  float phi_; // stub coords, optionally after digitisation.
240  float r_;
241  float z_;
242  float bend_; // bend of stub.
243  float dphiOverBend_; // related to rho parameter.
244  unsigned int min_qOverPt_bin_; // Range in q/Pt bins in HT array compatible with stub bend.
245  unsigned int max_qOverPt_bin_;
246 
247  //--- Info about the two clusters that make up the stub.
248  std::array<float, 2> localU_cluster_;
249  std::array<float, 2> localV_cluster_;
250 
251  unsigned int iphi_;
252  float alpha_;
253 
254  // Would front-end electronics output this stub?
256  // Did stub fail window cuts assumed in DegradeBend.h?
258  // Bend in front end chip (prior to degredation by loss of bits & digitization).
260  // Used for stub bend resolution degrading.
261  unsigned int numMergedBend_;
262 
263  //--- Truth info about stub.
264  const TP* assocTP_;
265  std::set<const TP*> assocTPs_;
266  //--- Truth info about the two clusters that make up the stub
267  std::array<const TP*, 2> assocTPofCluster_;
268 
269  std::unique_ptr<DigitalStub> digitalStub_; // Class used to digitize stub if required.
271  bool digitizeWarningsOn_; // Enable warnings about accessing non-digitized quantities.
272 
273  // Info about tracker module containing stub.
275 
276  // Used to degrade stub bend information.
278 
279  // These module variables are needed only to support the Hybrid stub constructor.
280  // (Otherwise, they could be taken from trackerModule_).
281  unsigned int layerId_;
282  unsigned int layerIdReduced_;
283  float tiltAngle_;
284  float stripPitch_;
286  unsigned int nStrips_;
287  bool psModule_;
288  bool barrel_;
290 
291  const float rejectedStubBend_ = 99999.; // Bend set to this if stub rejected.
292 
293  const float invRoot12 = sqrt(1. / 12.);
294  };
295 
296 } // namespace tmtt
297 #endif
tmtt::Stub::index_in_vStubs_
unsigned int index_in_vStubs_
Definition: Stub.h:235
tmtt::Settings::invPtToDphi
double invPtToDphi() const
Definition: Settings.h:397
tmtt::Stub::layerId_
unsigned int layerId_
Definition: Stub.h:281
tmtt::Stub::phi
float phi() const
Definition: Stub.h:107
tmtt::Stub::setDigitizeWarningsOn
void setDigitizeWarningsOn(bool newVal)
Definition: Stub.h:93
TTClusterAssociationMap
Stores association of Truth Particles (TP) to L1 Track-Trigger Clusters.
Definition: TTClusterAssociationMap.h:44
tmtt::Stub::tiltedBarrel_
bool tiltedBarrel_
Definition: Stub.h:289
tmtt::Stub::psModule
bool psModule() const
Definition: Stub.h:196
tmtt::Stub::digitalStub
const DigitalStub * digitalStub() const
Definition: Stub.h:96
TTTypes.h
tmtt::Stub::assocTPs
const std::set< const TP * > & assocTPs() const
Definition: Stub.h:164
tmtt::Stub::tiltedBarrel
bool tiltedBarrel() const
Definition: Stub.h:203
TrackerTopology
Definition: TrackerTopology.h:16
tmtt::Stub::setFrontend
void setFrontend(const StubKiller *stubKiller)
Definition: Stub.cc:267
tmtt::Stub::DigiStage::SF
tmtt::TTClusterRef
edm::Ref< edmNew::DetSetVector< TTCluster< Ref_Phase2TrackerDigi_ > >, TTCluster< Ref_Phase2TrackerDigi_ > > TTClusterRef
Definition: Stub.h:37
tmtt::Stub::operator==
bool operator==(const Stub &stubOther)
Definition: Stub.h:72
tmtt::Stub::stubFailedDegradeWindow_
bool stubFailedDegradeWindow_
Definition: Stub.h:257
tmtt::Stub::qOverPtcut
float qOverPtcut() const
Definition: Stub.h:133
DigiToRawDM_cff.TP
TP
Definition: DigiToRawDM_cff.py:51
tmtt::Stub::tiltAngle
float tiltAngle() const
Definition: Stub.h:184
tmtt::TrackerModule
Definition: TrackerModule.h:24
tmtt::Stub::stripLength
float stripLength() const
Definition: Stub.h:207
tmtt::Stub::digitizeWarningsOn_
bool digitizeWarningsOn_
Definition: Stub.h:271
tmtt::Stub::stripPitch_
float stripPitch_
Definition: Stub.h:284
tmtt::Stub::phi_
float phi_
Definition: Stub.h:239
tmtt::Stub::r
float r() const
Definition: Stub.h:108
tmtt::Stub::dphiOverBend
float dphiOverBend() const
Definition: Stub.h:146
tmtt::Stub::frontendPass_
bool frontendPass_
Definition: Stub.h:255
tmtt::Stub::layerIdReduced
unsigned int layerIdReduced() const
Definition: Stub.h:200
tmtt::Stub::trackerModule
const TrackerModule * trackerModule() const
Definition: Stub.h:78
tmtt::TP
Definition: TP.h:23
tmtt::Stub::sigmaR
float sigmaR() const
Definition: Stub.h:186
tmtt::Stub::frontendPass
bool frontendPass() const
Definition: Stub.h:157
edm::Handle
Definition: AssociativeIterator.h:50
tmtt::Stub::numMergedBend
float numMergedBend() const
Definition: Stub.h:130
tmtt::Stub::sigmaZ
float sigmaZ() const
Definition: Stub.h:187
tmtt::TTClusterAssMap
TTClusterAssociationMap< Ref_Phase2TrackerDigi_ > TTClusterAssMap
Definition: Stub.h:39
tmtt::Settings::bendCut
double bendCut() const
Definition: Settings.h:70
tmtt::Stub::bendInFrontend
float bendInFrontend() const
Definition: Stub.h:123
tmtt::Stub::genuine
bool genuine() const
Definition: Stub.h:167
tmtt::Stub::iphi
unsigned int iphi() const
Definition: Stub.h:115
tmtt::Stub::bendCut
float bendCut() const
Definition: Stub.h:128
edm::Ref
Definition: AssociativeIterator.h:58
tmtt::Stub::psModule_
bool psModule_
Definition: Stub.h:287
DetId
Definition: DetId.h:17
tmtt::Stub::max_qOverPt_bin_
unsigned int max_qOverPt_bin_
Definition: Stub.h:245
TTStubAssociationMap
Stores association of Truth Particles (TP) to L1 Track-Trigger Stubs.
Definition: TTStubAssociationMap.h:49
mathSSE::sqrt
T sqrt(T t)
Definition: SSEVec.h:19
tmtt::Stub::fillTruth
void fillTruth(const std::map< edm::Ptr< TrackingParticle >, const TP * > &translateTP, const edm::Handle< TTStubAssMap > &mcTruthTTStubHandle, const edm::Handle< TTClusterAssMap > &mcTruthTTClusterHandle)
Definition: Stub.cc:328
tmtt::Stub::assocTPs_
std::set< const TP * > assocTPs_
Definition: Stub.h:265
edmNew::DetSet
Definition: DetSetNew.h:22
tmtt::Stub::DigiStage::TF
tmtt::Stub::eta
float eta() const
Definition: Stub.h:111
tmtt::Stub::invRoot12
const float invRoot12
Definition: Stub.h:293
TrackerModule.h
tmtt::Stub::ttStubRef_
TTStubRef ttStubRef_
Definition: Stub.h:231
tmtt::Settings::bendCutExtra
double bendCutExtra() const
Definition: Settings.h:74
tmtt::Stub::index
unsigned int index() const
Definition: Stub.h:101
tmtt::Stub::degradeResolution
void degradeResolution(float bend, float &degradedBend, unsigned int &num) const
Definition: Stub.cc:248
tmtt::Stub::Stub
Stub(const Settings *settings, unsigned int idStub, double phi, double r, double z, double bend, unsigned int iphi, double alpha, unsigned int layerId, unsigned int iPhiSec, bool psModule, bool barrel, bool tiltedBarrel, float stripPitch, float stripLength, unsigned int nStrips)
Definition: Stub.cc:21
tmtt::Stub::digitize
void digitize(unsigned int iPhiSec, DigiStage digiStep)
Definition: Stub.cc:203
tmtt::Stub::stripLength_
float stripLength_
Definition: Stub.h:285
tmtt::Stub::trkPhiAtR
float trkPhiAtR(float rad) const
Definition: Stub.h:140
tmtt::Stub::z
float z() const
Definition: Stub.h:109
tmtt::Stub::digitalStub_
std::unique_ptr< DigitalStub > digitalStub_
Definition: Stub.h:269
tmtt::Stub::assocTPofCluster_
std::array< const TP *, 2 > assocTPofCluster_
Definition: Stub.h:267
tmtt::Stub::stubFailedDegradeWindow
bool stubFailedDegradeWindow() const
Definition: Stub.h:159
Phase2TrackerDigi.h
tmtt::Stub::lastDigiStep_
DigiStage lastDigiStep_
Definition: Stub.h:270
tmtt::Stub::setTrackerModule
void setTrackerModule(const TrackerGeometry *trackerGeometry, const TrackerTopology *trackerTopology, const DetId &detId)
tmtt::Stub::ttStubRef
const TTStubRef & ttStubRef() const
Definition: Stub.h:75
tmtt::Stub::DigiStage::NONE
tmtt::Stub::layerId
unsigned int layerId() const
Definition: Stub.h:198
tmtt::Stub::dphiOverBend_
float dphiOverBend_
Definition: Stub.h:243
tmtt::Stub::degradeBend_
const DegradeBend * degradeBend_
Definition: Stub.h:277
tmtt::StubKiller
Definition: StubKiller.h:20
tmtt::Stub::min_qOverPt_bin_
unsigned int min_qOverPt_bin_
Definition: Stub.h:244
tmtt::Settings
Definition: Settings.h:17
tmtt::Stub::iphi_
unsigned int iphi_
Definition: Stub.h:251
tmtt::Stub::layerIdReduced_
unsigned int layerIdReduced_
Definition: Stub.h:282
DigitalStub.h
TTStubAssociationMap.h
tmtt::Stub::genuineCluster
std::array< bool, 2 > genuineCluster() const
Definition: Stub.h:173
tmtt::Stub::qOverPtOverBend
float qOverPtOverBend() const
Definition: Stub.h:148
tmtt::DigitalStub
Definition: DigitalStub.h:14
DetSetVector.h
tmtt::Stub::settings_
const Settings * settings_
Definition: Stub.h:233
tmtt::Stub::localV_cluster
std::array< float, 2 > localV_cluster() const
Definition: Stub.h:154
tmtt::TTStubDetSet
edmNew::DetSet< TTStub< Ref_Phase2TrackerDigi_ > > TTStubDetSet
Definition: Stub.h:34
tmtt::Stub::bend_
float bend_
Definition: Stub.h:242
EgammaValidation_cff.num
num
Definition: EgammaValidation_cff.py:33
edm::Ptr< TrackingParticle >
tmtt::Stub::sigmaPerp
float sigmaPerp() const
Definition: Stub.h:189
tmtt::Stub::bendInFrontend_
float bendInFrontend_
Definition: Stub.h:259
tmtt::Stub::DigiStage::HT
tmtt::TTStubDetSetVec
edmNew::DetSetVector< TTStub< Ref_Phase2TrackerDigi_ > > TTStubDetSetVec
Definition: ConverterToTTTrack.h:15
edmNew::DetSetVector
Definition: DetSetNew.h:13
tmtt::Stub::barrel
bool barrel() const
Definition: Stub.h:201
tmtt::Stub::localU_cluster_
std::array< float, 2 > localU_cluster_
Definition: Stub.h:248
Ref.h
tmtt::Stub::assocTP
const TP * assocTP() const
Definition: Stub.h:168
tmtt::Stub::alpha
float alpha() const
Definition: Stub.h:119
tmtt::DegradeBend
Definition: DegradeBend.h:15
tmtt::Stub::theta
float theta() const
Definition: Stub.h:110
tmtt::Stub::nStrips_
unsigned int nStrips_
Definition: Stub.h:286
DetId.h
Frameworkfwd.h
Settings.h
tmtt::Stub::z_
float z_
Definition: Stub.h:241
tmtt::Stub::max_qOverPt_bin
unsigned int max_qOverPt_bin() const
Definition: Stub.h:136
tmtt::Stub::stripPitch
float stripPitch() const
Definition: Stub.h:205
tmtt::Stub::r_
float r_
Definition: Stub.h:240
tmtt::Stub::rejectedStubBend_
const float rejectedStubBend_
Definition: Stub.h:291
tmtt::Stub::tiltAngle_
float tiltAngle_
Definition: Stub.h:283
tmtt::Stub::sigmaPar
float sigmaPar() const
Definition: Stub.h:191
tmtt::Stub::phiDiff
float phiDiff(float rad, float Pt) const
Definition: Stub.h:138
tmtt::Stub::numMergedBend_
unsigned int numMergedBend_
Definition: Stub.h:261
TTCluster
NOTE: this is needed even if it seems not.
Definition: TTCluster.h:27
tmtt::Stub::nStrips
unsigned int nStrips() const
Definition: Stub.h:209
TTStub.h
tmtt::TTStubAssMap
TTStubAssociationMap< Ref_Phase2TrackerDigi_ > TTStubAssMap
Definition: Stub.h:38
tmtt::TTStubRef
edm::Ref< TTStubDetSetVec, TTStub< Ref_Phase2TrackerDigi_ > > TTStubRef
Definition: ConverterToTTTrack.h:16
funct::abs
Abs< T >::type abs(const T &t)
Definition: Abs.h:22
genParticles_cff.map
map
Definition: genParticles_cff.py:11
tmtt::Stub::barrel_
bool barrel_
Definition: Stub.h:288
DegradeBend.h
tmtt::Stub::alpha_
float alpha_
Definition: Stub.h:252
tmtt::Stub::assocTPofCluster
std::array< const TP *, 2 > assocTPofCluster() const
Definition: Stub.h:176
tmtt::Stub::calcQoverPtrange
void calcQoverPtrange()
Definition: Stub.cc:163
tmtt::Stub::localV_cluster_
std::array< float, 2 > localV_cluster_
Definition: Stub.h:249
tmtt::Stub::min_qOverPt_bin
unsigned int min_qOverPt_bin() const
Definition: Stub.h:135
tmtt::Stub
Definition: Stub.h:43
tmtt::Stub::bend
float bend() const
Definition: Stub.h:126
tmtt::Stub::approxB
double approxB()
Definition: Stub.cc:304
tmtt::Stub::localU_cluster
std::array< float, 2 > localU_cluster() const
Definition: Stub.h:153
tmtt
=== This is the base class for the linearised chi-squared track fit algorithms.
Definition: Array2D.h:16
tmtt::Stub::qOverPt
float qOverPt() const
Definition: Stub.h:132
tmtt::Stub::assocTP_
const TP * assocTP_
Definition: Stub.h:264
tmtt::Stub::DigiStage::GP
tmtt::Stub::bendCutInFrontend
float bendCutInFrontend() const
Definition: Stub.h:124
tmtt::Stub::trackerModule_
const TrackerModule * trackerModule_
Definition: Stub.h:274
TrackerGeometry
Definition: TrackerGeometry.h:14
tmtt::Stub::calcDphiOverBend
void calcDphiOverBend()
Definition: Stub.cc:314
tmtt::Stub::DigiStage
DigiStage
Definition: Stub.h:89
tmtt::Stub::trkPhiAtRcut
float trkPhiAtRcut(float rad) const
Definition: Stub.h:142