Loading [MathJax]/extensions/tex2jax.js
ATLAS Offline Software
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
Tracklet.cxx
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
3 */
4 
6 
7 
9  const TrackletSegment& ML2seg,
10  const Amg::Vector3D& p,
11  const AmgSymMatrix(5) & ErrorMatrix,
12  double charge) :
13  m_ml1seg(ML1seg),
14  m_ml2seg(ML2seg),
15  m_momentum(p),
16  m_pos(ML1seg.globalPosition()),
17  m_mdts(ML1seg.mdtHitsOnTrack()),
18  m_ErrorMatrix(ErrorMatrix),
19  m_charge(charge) {
20  for (const Muon::MdtPrepData* mdt_ml2 : m_ml2seg.mdtHitsOnTrack()) m_mdts.push_back(mdt_ml2);
21 }
22 
24  const Amg::Vector3D& p,
25  const AmgSymMatrix(5) & ErrorMatrix,
26  double charge) :
27  m_ml1seg(ML1seg),
28  m_ml2seg(ML1seg),
29  m_momentum(p),
30  m_pos(ML1seg.globalPosition()),
31  m_mdts(ML1seg.mdtHitsOnTrack()),
32  m_ErrorMatrix(ErrorMatrix),
33  m_charge(charge) {}
34 
35 Tracklet::~Tracklet() = default;
36 
37 
38 // set functions
42 
43 // get functions
45 const std::vector<const Muon::MdtPrepData*>& Tracklet::mdtHitsOnTrack() const { return m_mdts; }
47 const TrackletSegment& Tracklet::getML1seg() const { return m_ml1seg; }
48 const TrackletSegment& Tracklet::getML2seg() const { return m_ml2seg; }
49 const Amg::Vector3D& Tracklet::globalPosition() const { return m_pos; }
50 const Amg::Vector3D& Tracklet::momentum() const { return m_momentum; }
51 double Tracklet::alpha() const { return std::atan2(m_momentum.perp(), m_momentum.z()); }
52 double Tracklet::deltaAlpha() const { return (m_ml1seg.alpha() - m_ml2seg.alpha()); }
53 double Tracklet::charge() const { return m_charge; }
54 const AmgSymMatrix(5) & Tracklet::errorMatrix() const { return m_ErrorMatrix; }
55 int Tracklet::mdtChamber() const { return m_ml1seg.mdtChamber(); }
56 int Tracklet::mdtChEta() const { return m_ml1seg.mdtChEta(); }
57 int Tracklet::mdtChPhi() const { return m_ml1seg.mdtChPhi(); }
Tracklet::getTrackParticle
const xAOD::TrackParticle * getTrackParticle() const
Definition: Tracklet.cxx:44
Tracklet::charge
double charge() const
Definition: Tracklet.cxx:53
Tracklet::muonIdentifier
Identifier muonIdentifier() const
Definition: Tracklet.cxx:46
Tracklet::momentum
const Amg::Vector3D & momentum() const
Definition: Tracklet.cxx:50
AmgSymMatrix
#define AmgSymMatrix(dim)
Definition: EventPrimitives.h:50
TrackletSegment::getIdentifier
const Identifier getIdentifier() const
Definition: TrackletSegment.cxx:31
Tracklet::m_track
xAOD::TrackParticle * m_track
Definition: Tracklet.h:25
Tracklet::m_pos
Amg::Vector3D m_pos
Definition: Tracklet.h:21
Tracklet::m_charge
double m_charge
Definition: Tracklet.h:24
TrackletSegment::mdtChamber
int mdtChamber() const
Definition: TrackletSegment.cxx:41
python.utils.AtlRunQueryDQUtils.p
p
Definition: AtlRunQueryDQUtils.py:210
TrackletSegment
New segment class for single ML segments.
Definition: TrackletSegment.h:20
Tracklet::Tracklet
Tracklet()=default
Tracklet::mdtChEta
int mdtChEta() const
TrackletSegment::alpha
double alpha() const
Definition: TrackletSegment.cxx:33
Tracklet::mdtChPhi
int mdtChPhi() const
Tracklet::deltaAlpha
double deltaAlpha() const
Definition: Tracklet.cxx:52
Tracklet::getML1seg
const TrackletSegment & getML1seg() const
Definition: Tracklet.cxx:47
Tracklet::mdtHitsOnTrack
const std::vector< const Muon::MdtPrepData * > & mdtHitsOnTrack() const
Definition: Tracklet.cxx:45
charge
double charge(const T &p)
Definition: AtlasPID.h:931
Tracklet::getML2seg
const TrackletSegment & getML2seg() const
Definition: Tracklet.cxx:48
Muon::MdtPrepData
Class to represent measurements from the Monitored Drift Tubes.
Definition: MdtPrepData.h:33
Amg::Vector3D
Eigen::Matrix< double, 3, 1 > Vector3D
Definition: GeoPrimitives.h:47
Tracklet::m_ml1seg
TrackletSegment m_ml1seg
Definition: Tracklet.h:19
Tracklet::~Tracklet
~Tracklet()
TrackletSegment::mdtHitsOnTrack
const std::vector< const Muon::MdtPrepData * > & mdtHitsOnTrack() const
Definition: TrackletSegment.cxx:30
Tracklet::m_momentum
Amg::Vector3D m_momentum
Definition: Tracklet.h:20
Tracklet::setTrackParticle
void setTrackParticle(xAOD::TrackParticle *track)
Definition: Tracklet.cxx:39
Tracklet::alpha
double alpha() const
Definition: Tracklet.cxx:51
Tracklet::m_ml2seg
TrackletSegment m_ml2seg
Definition: Tracklet.h:19
Tracklet::mdtChamber
int mdtChamber() const
Tracklet::globalPosition
const Amg::Vector3D & globalPosition() const
Definition: Tracklet.cxx:49
TrackletSegment::mdtChEta
int mdtChEta() const
Definition: TrackletSegment.cxx:42
TrackletSegment::mdtChPhi
int mdtChPhi() const
Definition: TrackletSegment.cxx:43
xAOD::track
@ track
Definition: TrackingPrimitives.h:513
xAOD::TrackParticle_v1
Class describing a TrackParticle.
Definition: TrackParticle_v1.h:43
Tracklet::m_mdts
std::vector< const Muon::MdtPrepData * > m_mdts
Definition: Tracklet.h:22
Tracklet.h
Identifier
Definition: IdentifierFieldParser.cxx:14