ATLAS Offline Software
FitMeasurement.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 /***************************************************************************
6  for any measurement type (cluster, drift circle or material)
7  stores the quantities needed during track fitting
8  i.e. position, surface, weights, intersection, derivatives, residual etc
9  ***************************************************************************/
10 
11 #ifndef TRKIPATFITTERUTILS_FITMEASUREMENT_H
12 #define TRKIPATFITTERUTILS_FITMEASUREMENT_H
13 
14 //<<<<<< INCLUDES >>>>>>
15 
16 #include <vector>
17 
19 // #include "GeoPrimitives/GeoPrimitives.h"
20 #include <memory>
21 
26 
27 //<<<<<< CLASS DECLARATIONS >>>>>>
28 
29 class HitOnTrack;
30 class MsgStream;
31 
32 namespace Trk {
33 class AlignmentEffectsOnTrack;
34 class MaterialEffectsBase;
35 class MeasurementBase;
36 class Surface;
37 class TrackStateOnSurface;
38 class TrackSurfaceIntersection;
39 
41  public:
42  FitMeasurement(int hitIndex, HitOnTrack* hitOnTrack,
43  const MeasurementBase* measurementBase); // MeasurementBase
44 
46  double particleMass, const Amg::Vector3D& position,
47  double qOverP = 0.,
48  bool calo = false); // MaterialEffectsBase
49 
50  FitMeasurement(double radiationThickness, double deltaE, double particleMass,
51  const Amg::Vector3D& position, const Amg::Vector3D& direction,
52  double qOverP,
53  const Surface* surface = 0); // for merged material effects
54 
56  const Amg::Vector3D& direction,
57  const Amg::Vector3D& position); // (mis-)alignment effects
58 
60  double shift); // aggregationBreak placeholder
61 
62  FitMeasurement(const TrackStateOnSurface& TSOS); // other TSOS
63 
64  FitMeasurement(int hitIndex, HitOnTrack* hitOnTrack,
65  const Amg::Vector3D& position, double sigma, double sigma2,
66  double sinStereo, int status, const Surface* surface,
67  MeasurementType type); // stripCluster
68 
69  FitMeasurement(int hitIndex, HitOnTrack* hitOnTrack,
70  const Amg::Vector3D& position, double sigma,
71  double signedDriftDistance, double sinStereo,
72  const Surface* surface); // driftCircle
73 
74  FitMeasurement(const TrackParameters& perigee); // perigee
75 
76  FitMeasurement(double d0, const Amg::Vector3D& position,
77  double sigma); // transverseVertex
78 
79  ~FitMeasurement(void); // destructor
80  // forbidden copy constructor
81  // forbidden assignment operator
82 
83  bool afterCalo(void) const;
84  double alignmentAngle(void) const;
85  void alignmentAngle(double value);
86  const AlignmentEffectsOnTrack* alignmentEffects(void) const;
87  double alignmentOffset(void) const;
88  void alignmentOffset(double value);
89  unsigned alignmentParameter(void) const;
90  void alignmentParameter(unsigned value);
91  unsigned alignmentParameter2(void) const;
92  void alignmentParameter2(unsigned value);
93  double derivative(int param) const;
94  void derivative(int param, double value);
95  void derivative(double* pointer);
96  double derivative2(int param) const;
97  void derivative2(int param, double value);
98  void derivative2(double* pointer);
99  int derivativeRow(void) const;
100  void derivativeRow(int row);
101  double d0(void) const;
102  double energyLoss(void) const;
103  double energyLossSigma(void) const;
104  unsigned firstParameter(void) const;
105  void firstParameter(unsigned value);
106  void flipDriftDirection(void);
107  int hitIndex(void) const;
108  const HitOnTrack* hitOnTrack(void) const;
109  HitOnTrack* hitOnTrack(void);
113  const std::optional<TrackSurfaceIntersection>& value);
114  bool isAlignment(void) const;
115  bool isCluster(void) const;
116  bool isDrift(void) const;
117  bool isEnergyDeposit(void) const;
118  bool isFlipped(void) const;
119  bool isMaterialDelimiter(void) const;
120  bool isOutlier(void) const;
121  bool isPassive(void) const;
122  bool isPerigee(void) const;
123  bool isPositionMeasurement(void) const;
124  bool isPseudo(void) const;
125  bool isScatterer(void) const;
126  bool isTrapezoidCluster(void) const;
127  bool isVertex(void) const;
128  bool is2Dimensional(void) const;
129 
130  // number of fit parameters influencing (upstream to) this measurement
131  unsigned lastParameter(void) const;
132  void lastParameter(unsigned value, bool afterCalo = false);
133  const MaterialEffectsBase* materialEffects(void) const;
134  const MeasurementBase* measurementBase(void) const;
135  double minEnergyDeposit(void) const;
136  const Amg::Vector3D& minimizationDirection(void) const;
138  const Amg::Vector3D& normal(void) const;
139  int numberDoF(void) const;
140  void numberDoF(int value);
141  bool numericalDerivative(void) const;
142  const Amg::VectorX& perigee(void) const;
143  const Amg::MatrixX& perigeeWeight(void) const;
144  const Amg::Vector3D& position(void) const;
145  void print(MsgStream& log) const;
146  static void printHeading(MsgStream& log);
147  double qOverP(void) const;
148  void qOverP(double value);
149  double radiationThickness(void) const;
150  double residual(void) const;
151  void residual(double value);
153  double residual2(void) const;
154  void residual2(double value);
155  double scattererPhi(void) const;
156  void scattererPhi(double value);
157  double scattererTheta(void) const;
158  void scattererTheta(double value);
159  void scatteringAngle(double angle, double totalRadiationThickness);
160  const Amg::Vector3D& sensorDirection(void) const;
161 
162  // for upper hemisphere cosmics
163  void setEnergyGain(void);
164 
165  void setMaterialEffectsOwner(void);
166  void setNumericalDerivative(void);
167  void setOutlier(void);
168 
169  // to handle calo energy deposit with asymmetric errors
170  void setSigma(void);
171  void setSigmaMinus(void);
172  void setSigmaPlus(void);
173  void setSigmaSymmetric(void);
174 
175  double sigma(void) const;
176  double sigma2(void) const;
177  double signedDriftDistance(void) const;
178  int status(void) const;
179  const Surface* surface(void) const;
180  MeasurementType type(void) const;
181  void unsetOutlier(void);
182  double weight(void) const;
183  double weight2(void) const;
184 
185  private:
186  // copy, assignment: no semantics, no implementation
189 
195  double* m_derivative;
196  double* m_derivative2;
198  double m_d0;
199  double m_energyLoss;
203  HitOnTrack* m_hitOnTrack;
204  std::array<std::optional<TrackSurfaceIntersection>, ExtrapolationTypes>
206  unsigned m_lastParameter;
215  bool m_outlier;
220  double m_qOverP;
224  double m_scatterPhi;
230  double m_sigma;
231  double m_sigmaMinus;
232  double m_sigmaPlus;
234  int m_status;
237  double m_weight;
238  double m_weight2;
239 };
240 
241 //<<<<<< INLINE PUBLIC MEMBER FUNCTIONS >>>>>>
242 
243 inline bool FitMeasurement::afterCalo(void) const {
244  return m_afterCalo;
245 }
246 
247 inline double FitMeasurement::alignmentAngle(void) const {
248  return m_scatterPhi;
249 }
250 
253 }
254 
256  void) const {
257  return m_alignmentEffects;
258 }
259 
260 inline double FitMeasurement::alignmentOffset(void) const {
261  return m_scatterTheta;
262 }
263 
266 }
267 
268 inline unsigned FitMeasurement::alignmentParameter(void) const {
269  return m_alignmentParameter;
270 }
271 
274 }
275 
276 inline unsigned FitMeasurement::alignmentParameter2(void) const {
277  return m_alignmentParameter2;
278 }
279 
282 }
283 
284 inline double FitMeasurement::derivative(int param) const {
285  return *(m_derivative + param);
286 }
287 
288 inline void FitMeasurement::derivative(int param, double value) {
289  *(m_derivative + param) = value;
290 }
291 
292 inline void FitMeasurement::derivative(double* pointer) {
293  m_derivative = pointer;
294 }
295 
296 inline double FitMeasurement::derivative2(int param) const {
297  return *(m_derivative2 + param);
298 }
299 
300 inline void FitMeasurement::derivative2(int param, double value) {
301  *(m_derivative2 + param) = value;
302 }
303 
304 inline void FitMeasurement::derivative2(double* pointer) {
305  m_derivative2 = pointer;
306 }
307 
308 inline int FitMeasurement::derivativeRow(void) const {
309  return m_derivativeRow;
310 }
311 
314 }
315 
316 inline double FitMeasurement::d0(void) const {
317  return m_d0;
318 }
319 
320 inline double FitMeasurement::energyLoss(void) const {
321  return m_energyLoss;
322 }
323 
324 inline double FitMeasurement::energyLossSigma(void) const {
325  return m_sigma;
326 }
327 
328 inline unsigned FitMeasurement::firstParameter(void) const {
329  return m_firstParameter;
330 }
331 
332 inline void FitMeasurement::firstParameter(unsigned value) {
334 }
335 
337  if (m_type == driftCircle) {
338  m_flippedDriftDistance = true;
340  }
341 }
342 
343 inline int FitMeasurement::hitIndex(void) const {
344  return m_hitIndex;
345 }
346 
347 inline const HitOnTrack* FitMeasurement::hitOnTrack(void) const {
348  return m_hitOnTrack;
349 }
350 
351 inline HitOnTrack* FitMeasurement::hitOnTrack(void) {
352  return m_hitOnTrack;
353 }
354 
356  return (bool)m_intersection[type];
357 }
358 
360  ExtrapolationType type) const {
361  return *m_intersection[type];
362 }
363 
364 inline bool FitMeasurement::isAlignment(void) const {
365  return (m_type == alignment);
366 }
367 
368 inline bool FitMeasurement::isCluster(void) const {
369  return (m_type == pixelCluster || m_type == stripCluster ||
371 }
372 
373 inline bool FitMeasurement::isDrift(void) const {
374  return (m_type == driftCircle);
375 }
376 
377 inline bool FitMeasurement::isEnergyDeposit(void) const {
378  return (m_type == energyDeposit);
379 }
380 
381 inline bool FitMeasurement::isFlipped(void) const {
383 }
384 
385 inline bool FitMeasurement::isMaterialDelimiter(void) const {
386  return (m_type == materialDelimiter);
387 }
388 
389 inline bool FitMeasurement::isOutlier(void) const {
390  return m_outlier;
391 }
392 
393 inline bool FitMeasurement::isPassive(void) const {
394  return (m_type > bremPoint);
395 }
396 
397 inline bool FitMeasurement::isPerigee(void) const {
398  return (m_type == perigeeParameters);
399 }
400 
401 inline bool FitMeasurement::isPositionMeasurement(void) const {
402  return (m_type < barrelScatterer);
403 }
404 
405 inline bool FitMeasurement::isPseudo(void) const {
406  return (m_type == pseudoMeasurement);
407 }
408 
409 inline bool FitMeasurement::isScatterer(void) const {
410  return (m_type == barrelScatterer || m_type == endcapScatterer ||
412  m_type == endcapInert);
413 }
414 
415 inline bool FitMeasurement::isTrapezoidCluster(void) const {
416  return (m_type == trapezoidCluster);
417 }
418 
419 inline bool FitMeasurement::isVertex(void) const {
420  return (m_type == vertex || m_type == transverseVertex);
421 }
422 
423 inline bool FitMeasurement::is2Dimensional(void) const {
424  return (m_numberDoF == 2);
425 }
426 
427 inline unsigned FitMeasurement::lastParameter(void) const {
428  return m_lastParameter;
429 }
430 
431 inline void FitMeasurement::lastParameter(unsigned value, bool afterCalo) {
434 }
435 
437  return m_materialEffects;
438 }
439 
441  return m_measurementBase;
442 }
443 
444 inline double FitMeasurement::minEnergyDeposit(void) const {
445  return m_minEnergyDeposit;
446 }
447 
450 }
451 
454 }
455 
456 inline const Amg::Vector3D& FitMeasurement::normal(void) const {
457  return m_normal;
458 }
459 
460 inline int FitMeasurement::numberDoF(void) const {
461  if (m_outlier)
462  return 0;
463  return m_numberDoF;
464 }
465 
467  m_numberDoF = value;
468 }
469 
470 inline bool FitMeasurement::numericalDerivative(void) const {
471  return m_numericalDerivative;
472 }
473 
474 inline const Amg::VectorX& FitMeasurement::perigee(void) const {
475  return m_perigee;
476 }
477 
478 inline const Amg::MatrixX& FitMeasurement::perigeeWeight(void) const {
479  return m_perigeeWeight;
480 }
481 
482 inline const Amg::Vector3D& FitMeasurement::position(void) const {
483  return m_position;
484 }
485 
486 inline double FitMeasurement::qOverP(void) const {
487  return m_qOverP;
488 }
489 
490 inline double FitMeasurement::radiationThickness(void) const {
491  return m_radiationThickness;
492 }
493 
494 inline double FitMeasurement::residual(void) const {
495  return *m_residual;
496 }
497 
498 inline void FitMeasurement::residual(double value) {
499  *m_residual = value;
500 }
501 
503  m_residual = pointer;
504 }
505 
506 inline double FitMeasurement::residual2(void) const {
507  return *(m_residual + 1);
508 }
509 
510 inline void FitMeasurement::residual2(double value) {
511  *(m_residual + 1) = value;
512 }
513 
514 inline double FitMeasurement::scattererPhi(void) const {
515  return m_scatterPhi;
516 }
517 
518 inline void FitMeasurement::scattererPhi(double value) {
520 }
521 
522 inline double FitMeasurement::scattererTheta(void) const {
523  return m_scatterTheta;
524 }
525 
528 }
529 
531  return m_sensorDirection;
532 }
533 
534 inline void FitMeasurement::setEnergyGain(void) {
535  m_energyLoss = -fabs(m_energyLoss);
536 }
537 
539  m_materialEffectsOwner = true;
540 }
541 
543  m_numericalDerivative = true;
544 }
545 
546 inline void FitMeasurement::setOutlier(void) {
547  m_numberDoF = 0;
548  m_outlier = true;
549  m_weight = 1.0;
550  m_weight2 = 1.0;
551 }
552 
553 inline void FitMeasurement::setSigma(void) {
554  m_weight = 1. / m_sigma;
555 }
556 
557 inline void FitMeasurement::setSigmaMinus(void) {
558  m_weight = 1. / m_sigmaMinus;
559 }
560 
561 inline void FitMeasurement::setSigmaPlus(void) {
562  m_weight = 1. / m_sigmaPlus;
563 }
564 
565 inline double FitMeasurement::sigma(void) const {
566  if (!m_weight)
567  return 0;
568  return 1. / m_weight;
569 }
570 
571 inline double FitMeasurement::sigma2(void) const {
572  if (!m_weight2)
573  return 0;
574  return 1. / m_weight2;
575 }
576 
577 inline double FitMeasurement::signedDriftDistance(void) const {
578  return m_signedDriftDistance;
579 }
580 
581 inline int FitMeasurement::status(void) const {
582  return m_status;
583 }
584 
585 inline const Surface* FitMeasurement::surface(void) const {
586  return m_surface;
587 }
588 
590  return m_type;
591 }
592 
593 inline void FitMeasurement::unsetOutlier(void) {
594  m_outlier = false;
595 }
596 
597 inline double FitMeasurement::weight(void) const {
598  return m_weight;
599 }
600 
601 inline double FitMeasurement::weight2(void) const {
602  return m_weight2;
603 }
604 
605 } // namespace Trk
606 
607 #endif // TRKIPATFITTERUTILS_FITMEASUREMENT_H
xAOD::iterator
JetConstituentVector::iterator iterator
Definition: JetConstituentVector.cxx:68
Trk::FitMeasurement::scattererTheta
double scattererTheta(void) const
Definition: FitMeasurement.h:522
Trk::FitMeasurement::m_scatterTheta
double m_scatterTheta
Definition: FitMeasurement.h:225
Trk::FitMeasurement::is2Dimensional
bool is2Dimensional(void) const
Definition: FitMeasurement.h:423
query_example.row
row
Definition: query_example.py:24
Trk::FitMeasurement::setOutlier
void setOutlier(void)
Definition: FitMeasurement.h:546
Trk::FitMeasurement::minEnergyDeposit
double minEnergyDeposit(void) const
Definition: FitMeasurement.h:444
Trk::FitMeasurement::intersection
const TrackSurfaceIntersection & intersection(ExtrapolationType type) const
Definition: FitMeasurement.h:359
Trk::FitMeasurement::m_betaSquared
double m_betaSquared
Definition: FitMeasurement.h:194
Trk::FitMeasurement::unsetOutlier
void unsetOutlier(void)
Definition: FitMeasurement.h:593
Amg::VectorX
Eigen::Matrix< double, Eigen::Dynamic, 1 > VectorX
Dynamic Vector - dynamic allocation.
Definition: EventPrimitives.h:32
Amg::MatrixX
Eigen::Matrix< double, Eigen::Dynamic, Eigen::Dynamic > MatrixX
Dynamic Matrix - dynamic allocation.
Definition: EventPrimitives.h:29
Trk::FitMeasurement::numberDoF
int numberDoF(void) const
Definition: FitMeasurement.h:460
Trk::bremPoint
@ bremPoint
Definition: MeasurementType.h:35
perigeeParameters
Definition: ExtrapolatorComparisonTest.h:42
TrackParameters.h
Trk::FitMeasurement::printHeading
static void printHeading(MsgStream &log)
Definition: FitMeasurement.cxx:879
Trk::FitMeasurement::m_d0
double m_d0
Definition: FitMeasurement.h:198
Trk::FitMeasurement::hasIntersection
bool hasIntersection(ExtrapolationType type) const
Definition: FitMeasurement.h:355
Trk::FitMeasurement::m_intersection
std::array< std::optional< TrackSurfaceIntersection >, ExtrapolationTypes > m_intersection
Definition: FitMeasurement.h:205
Trk::FitMeasurement::m_hitOnTrack
HitOnTrack * m_hitOnTrack
Definition: FitMeasurement.h:203
Trk::FitMeasurement::numericalDerivative
bool numericalDerivative(void) const
Definition: FitMeasurement.h:470
Trk::FitMeasurement::isTrapezoidCluster
bool isTrapezoidCluster(void) const
Definition: FitMeasurement.h:415
Trk::materialDelimiter
@ materialDelimiter
Definition: MeasurementType.h:37
Trk::MeasurementType
MeasurementType
Definition: MeasurementType.h:18
Trk::FitMeasurement::m_normal
Amg::Vector3D m_normal
Definition: FitMeasurement.h:212
Trk::FitMeasurement::setSigmaMinus
void setSigmaMinus(void)
Definition: FitMeasurement.h:557
Trk::FitMeasurement::m_derivativeRow
int m_derivativeRow
Definition: FitMeasurement.h:197
Trk::FitMeasurement::residual2
double residual2(void) const
Definition: FitMeasurement.h:506
Trk::FitMeasurement::energyLossSigma
double energyLossSigma(void) const
Definition: FitMeasurement.h:324
Trk::FitMeasurement::surface
const Surface * surface(void) const
Definition: FitMeasurement.h:585
Trk::FitMeasurement::isDrift
bool isDrift(void) const
Definition: FitMeasurement.h:373
Trk::FitMeasurement::derivative
double derivative(int param) const
Definition: FitMeasurement.h:284
Trk::calorimeterScatterer
@ calorimeterScatterer
Definition: MeasurementType.h:29
Trk::FitMeasurement::alignmentAngle
double alignmentAngle(void) const
Definition: FitMeasurement.h:247
Trk::FitMeasurement::isPseudo
bool isPseudo(void) const
Definition: FitMeasurement.h:405
Surface
Definition: Trigger/TrigAccel/TrigCudaFitter/src/Surface.h:7
Trk::FitMeasurement::isMaterialDelimiter
bool isMaterialDelimiter(void) const
Definition: FitMeasurement.h:385
Trk::FitMeasurement::m_scatterPhi
double m_scatterPhi
Definition: FitMeasurement.h:224
Trk::FitMeasurement::m_minimizationDirection
Amg::Vector3D m_minimizationDirection
Definition: FitMeasurement.h:211
athena.value
value
Definition: athena.py:122
Trk::FitMeasurement::~FitMeasurement
~FitMeasurement(void)
Definition: FitMeasurement.cxx:866
Trk::TrackSurfaceIntersection
Definition: TrackSurfaceIntersection.h:32
Trk::FitMeasurement::flipDriftDirection
void flipDriftDirection(void)
Definition: FitMeasurement.h:336
Trk::FitMeasurement::m_materialEffects
const MaterialEffectsBase * m_materialEffects
Definition: FitMeasurement.h:207
Trk::FitMeasurement::m_particleMassSquared
double m_particleMassSquared
Definition: FitMeasurement.h:216
Trk::FitMeasurement::position
const Amg::Vector3D & position(void) const
Definition: FitMeasurement.h:482
Trk::FitMeasurement::d0
double d0(void) const
Definition: FitMeasurement.h:316
Trk::MaterialEffectsBase
base class to integrate material effects on Trk::Track in a flexible way.
Definition: MaterialEffectsBase.h:35
Trk::barrelScatterer
@ barrelScatterer
Definition: MeasurementType.h:27
Trk::FitMeasurement::m_sensorDirection
Amg::Vector3D m_sensorDirection
Definition: FitMeasurement.h:229
Trk::AlignmentEffectsOnTrack
Class to represent misalignments or 'discontinuities' on tracks These have a surface where the z axis...
Definition: AlignmentEffectsOnTrack.h:24
Trk::FitMeasurement::m_sigmaPlus
double m_sigmaPlus
Definition: FitMeasurement.h:232
Trk::FitMeasurement::setSigmaSymmetric
void setSigmaSymmetric(void)
Definition: FitMeasurement.cxx:1025
Trk::FitMeasurement::m_alignmentParameter
unsigned m_alignmentParameter
Definition: FitMeasurement.h:192
Trk::FitMeasurement::m_derivative
double * m_derivative
Definition: FitMeasurement.h:195
Trk::energyDeposit
@ energyDeposit
Definition: MeasurementType.h:32
Trk::FitMeasurement::hitOnTrack
const HitOnTrack * hitOnTrack(void) const
Definition: FitMeasurement.h:347
Trk::FitMeasurement::materialEffects
const MaterialEffectsBase * materialEffects(void) const
Definition: FitMeasurement.h:436
Trk::FitMeasurement::m_alignmentParameter2
unsigned m_alignmentParameter2
Definition: FitMeasurement.h:193
Trk::stripCluster
@ stripCluster
Definition: MeasurementType.h:23
Trk::transverseVertex
@ transverseVertex
Definition: MeasurementType.h:20
Trk::FitMeasurement::type
MeasurementType type(void) const
Definition: FitMeasurement.h:589
Trk::FitMeasurement::perigeeWeight
const Amg::MatrixX & perigeeWeight(void) const
Definition: FitMeasurement.h:478
ExtrapolationType.h
Trk::FitMeasurement::isVertex
bool isVertex(void) const
Definition: FitMeasurement.h:419
Trk::FitMeasurement::sigma2
double sigma2(void) const
Definition: FitMeasurement.h:571
Trk::FitMeasurement::m_scaleFactor
double m_scaleFactor
Definition: FitMeasurement.h:223
Trk::FitMeasurement::alignmentParameter
unsigned alignmentParameter(void) const
Definition: FitMeasurement.h:268
Trk::FitMeasurement::m_radiationThickness
double m_radiationThickness
Definition: FitMeasurement.h:221
Trk::FitMeasurement::derivative2
double derivative2(int param) const
Definition: FitMeasurement.h:296
Trk::trapezoidCluster
@ trapezoidCluster
Definition: MeasurementType.h:24
Trk::FitMeasurement::hitIndex
int hitIndex(void) const
Definition: FitMeasurement.h:343
Trk::FitMeasurement::scattererPhi
double scattererPhi(void) const
Definition: FitMeasurement.h:514
Trk::FitMeasurement::isOutlier
bool isOutlier(void) const
Definition: FitMeasurement.h:389
Trk::FitMeasurement::scatteringAngle
void scatteringAngle(double angle, double totalRadiationThickness)
Definition: FitMeasurement.cxx:977
Trk::barrelInert
@ barrelInert
Definition: MeasurementType.h:30
Trk::FitMeasurement::alignmentParameter2
unsigned alignmentParameter2(void) const
Definition: FitMeasurement.h:276
Trk::FitMeasurement::m_weight
double m_weight
Definition: FitMeasurement.h:237
Trk::FitMeasurement::measurementBase
const MeasurementBase * measurementBase(void) const
Definition: FitMeasurement.h:440
Trk::FitMeasurement::energyLoss
double energyLoss(void) const
Definition: FitMeasurement.h:320
Trk::FitMeasurement::derivativeRow
int derivativeRow(void) const
Definition: FitMeasurement.h:308
Trk::FitMeasurement::m_residual
std::vector< double >::iterator m_residual
Definition: FitMeasurement.h:222
Trk::FitMeasurement::weight2
double weight2(void) const
Definition: FitMeasurement.h:601
Trk::endcapInert
@ endcapInert
Definition: MeasurementType.h:31
Trk::FitMeasurement
Definition: FitMeasurement.h:40
Trk::FitMeasurement::setMaterialEffectsOwner
void setMaterialEffectsOwner(void)
Definition: FitMeasurement.h:538
angle
double angle(const GeoTrf::Vector2D &a, const GeoTrf::Vector2D &b)
Definition: TRTDetectorFactory_Full.cxx:73
Trk::FitMeasurement::alignmentEffects
const AlignmentEffectsOnTrack * alignmentEffects(void) const
Definition: FitMeasurement.h:255
Trk::FitMeasurement::setEnergyGain
void setEnergyGain(void)
Definition: FitMeasurement.h:534
Trk::FitMeasurement::m_alignmentEffects
const AlignmentEffectsOnTrack * m_alignmentEffects
Definition: FitMeasurement.h:191
Trk::FitMeasurement::signedDriftDistance
double signedDriftDistance(void) const
Definition: FitMeasurement.h:577
Trk::FitMeasurement::m_weight2
double m_weight2
Definition: FitMeasurement.h:238
Trk::FitMeasurement::print
void print(MsgStream &log) const
Definition: FitMeasurement.cxx:886
Trk::FitMeasurement::m_outlier
bool m_outlier
Definition: FitMeasurement.h:215
Trk::ParametersBase
Definition: ParametersBase.h:55
Trk::FitMeasurement::status
int status(void) const
Definition: FitMeasurement.h:581
Trk::FitMeasurement::m_position
Amg::Vector3D m_position
Definition: FitMeasurement.h:219
Trk::FitMeasurement::m_sigmaMinus
double m_sigmaMinus
Definition: FitMeasurement.h:231
Trk::FitMeasurement::radiationThickness
double radiationThickness(void) const
Definition: FitMeasurement.h:490
Trk::FitMeasurement::FitMeasurement
FitMeasurement(int hitIndex, HitOnTrack *hitOnTrack, const MeasurementBase *measurementBase)
Definition: FitMeasurement.cxx:45
Trk::FitMeasurement::alignmentOffset
double alignmentOffset(void) const
Definition: FitMeasurement.h:260
Trk::FitMeasurement::m_minEnergyDeposit
double m_minEnergyDeposit
Definition: FitMeasurement.h:210
Trk::FitMeasurement::m_secondResidual
double m_secondResidual
Definition: FitMeasurement.h:228
Trk::FitMeasurement::m_energyLoss
double m_energyLoss
Definition: FitMeasurement.h:199
Trk::MeasurementBase
Definition: MeasurementBase.h:58
Trk::FitMeasurement::sigma
double sigma(void) const
Definition: FitMeasurement.h:565
EventPrimitives.h
Trk
Ensure that the ATLAS eigen extensions are properly loaded.
Definition: FakeTrackBuilder.h:9
Trk::FitMeasurement::m_signedDriftDistance
double m_signedDriftDistance
Definition: FitMeasurement.h:233
Trk::ExtrapolationType
ExtrapolationType
Definition: ExtrapolationType.h:18
Trk::FitMeasurement::isEnergyDeposit
bool isEnergyDeposit(void) const
Definition: FitMeasurement.h:377
Trk::FitMeasurement::m_flippedDriftDistance
bool m_flippedDriftDistance
Definition: FitMeasurement.h:201
Trk::FitMeasurement::m_status
int m_status
Definition: FitMeasurement.h:234
Trk::FitMeasurement::normal
const Amg::Vector3D & normal(void) const
Definition: FitMeasurement.h:456
Trk::TrackStateOnSurface
represents the track state (measurement, material, fit parameters and quality) at a surface.
Definition: TrackStateOnSurface.h:71
Trk::FitMeasurement::operator=
FitMeasurement & operator=(const FitMeasurement &)
Trk::FitMeasurement::isCluster
bool isCluster(void) const
Definition: FitMeasurement.h:368
Trk::FitMeasurement::m_hitIndex
int m_hitIndex
Definition: FitMeasurement.h:202
Trk::FitMeasurement::m_numberDoF
int m_numberDoF
Definition: FitMeasurement.h:213
Trk::FitMeasurement::isAlignment
bool isAlignment(void) const
Definition: FitMeasurement.h:364
Trk::FitMeasurement::m_scatteringAngle
double m_scatteringAngle
Definition: FitMeasurement.h:226
Trk::pseudoMeasurement
@ pseudoMeasurement
Definition: MeasurementType.h:26
Trk::FitMeasurement::afterCalo
bool afterCalo(void) const
Definition: FitMeasurement.h:243
Trk::FitMeasurement::m_perigeeWeight
Amg::MatrixX m_perigeeWeight
Definition: FitMeasurement.h:218
Amg::Vector3D
Eigen::Matrix< double, 3, 1 > Vector3D
Definition: GeoPrimitives.h:47
MeasurementType.h
Trk::FitMeasurement::m_qOverP
double m_qOverP
Definition: FitMeasurement.h:220
Trk::FitMeasurement::isFlipped
bool isFlipped(void) const
Definition: FitMeasurement.h:381
Trk::FitMeasurement::setNumericalDerivative
void setNumericalDerivative(void)
Definition: FitMeasurement.h:542
Trk::pixelCluster
@ pixelCluster
Definition: MeasurementType.h:22
Trk::vertex
@ vertex
Definition: MeasurementType.h:21
Trk::FitMeasurement::m_numericalDerivative
bool m_numericalDerivative
Definition: FitMeasurement.h:214
Trk::FitMeasurement::m_type
MeasurementType m_type
Definition: FitMeasurement.h:236
Trk::FitMeasurement::firstParameter
unsigned firstParameter(void) const
Definition: FitMeasurement.h:328
Trk::FitMeasurement::m_derivative2
double * m_derivative2
Definition: FitMeasurement.h:196
Trk::FitMeasurement::m_materialEffectsOwner
bool m_materialEffectsOwner
Definition: FitMeasurement.h:208
Trk::FitMeasurement::lastParameter
unsigned lastParameter(void) const
Definition: FitMeasurement.h:427
Trk::FitMeasurement::residual
double residual(void) const
Definition: FitMeasurement.h:494
python.CaloScaleNoiseConfig.type
type
Definition: CaloScaleNoiseConfig.py:78
Trk::FitMeasurement::FitMeasurement
FitMeasurement(const FitMeasurement &)
Trk::ExtrapolationTypes
@ ExtrapolationTypes
Definition: ExtrapolationType.h:26
python.CaloCondTools.log
log
Definition: CaloCondTools.py:20
Trk::FitMeasurement::m_scatteringAngleOffSet
double m_scatteringAngleOffSet
Definition: FitMeasurement.h:227
Trk::FitMeasurement::m_lastParameter
unsigned m_lastParameter
Definition: FitMeasurement.h:206
Trk::FitMeasurement::isPositionMeasurement
bool isPositionMeasurement(void) const
Definition: FitMeasurement.h:401
Trk::FitMeasurement::isPassive
bool isPassive(void) const
Definition: FitMeasurement.h:393
Trk::FitMeasurement::sensorDirection
const Amg::Vector3D & sensorDirection(void) const
Definition: FitMeasurement.h:530
Trk::FitMeasurement::setSigma
void setSigma(void)
Definition: FitMeasurement.h:553
Trk::FitMeasurement::m_sigma
double m_sigma
Definition: FitMeasurement.h:230
Trk::FitMeasurement::m_perigee
Amg::VectorX m_perigee
Definition: FitMeasurement.h:217
TrackSurfaceIntersection.h
Trk::FitMeasurement::qOverP
double qOverP(void) const
Definition: FitMeasurement.h:486
Trk::Surface
Definition: Tracking/TrkDetDescr/TrkSurfaces/TrkSurfaces/Surface.h:75
Trk::FitMeasurement::m_measurementBase
const MeasurementBase * m_measurementBase
Definition: FitMeasurement.h:209
Trk::FitMeasurement::weight
double weight(void) const
Definition: FitMeasurement.h:597
Trk::FitMeasurement::isScatterer
bool isScatterer(void) const
Definition: FitMeasurement.h:409
Trk::FitMeasurement::m_firstParameter
unsigned m_firstParameter
Definition: FitMeasurement.h:200
Trk::FitMeasurement::m_afterCalo
bool m_afterCalo
Definition: FitMeasurement.h:190
Trk::FitMeasurement::m_surface
const Surface * m_surface
Definition: FitMeasurement.h:235
Trk::alignment
@ alignment
Definition: MeasurementType.h:33
Trk::FitMeasurement::minimizationDirection
const Amg::Vector3D & minimizationDirection(void) const
Definition: FitMeasurement.h:448
Trk::FitMeasurement::isPerigee
bool isPerigee(void) const
Definition: FitMeasurement.h:397
Trk::endcapScatterer
@ endcapScatterer
Definition: MeasurementType.h:28
Trk::driftCircle
@ driftCircle
Definition: MeasurementType.h:25
Trk::FitMeasurement::setSigmaPlus
void setSigmaPlus(void)
Definition: FitMeasurement.h:561
Trk::FitMeasurement::perigee
const Amg::VectorX & perigee(void) const
Definition: FitMeasurement.h:474