ATLAS Offline Software
Loading...
Searching...
No Matches
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),
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),
34
35Tracklet::~Tracklet() = default;
36
37
38// set functions
42
43// get functions
45const std::vector<const Muon::MdtPrepData*>& Tracklet::mdtHitsOnTrack() const { return m_mdts; }
46Identifier Tracklet::muonIdentifier() const { return m_ml1seg.getIdentifier(); }
51double Tracklet::alpha() const { return std::atan2(m_momentum.perp(), m_momentum.z()); }
52double Tracklet::deltaAlpha() const { return (m_ml1seg.alpha() - m_ml2seg.alpha()); }
53double Tracklet::charge() const { return m_charge; }
54const AmgSymMatrix(5) & Tracklet::errorMatrix() const { return m_ErrorMatrix; }
55int Tracklet::mdtChamber() const { return m_ml1seg.mdtChamber(); }
56int Tracklet::mdtChEta() const { return m_ml1seg.mdtChEta(); }
57int Tracklet::mdtChPhi() const { return m_ml1seg.mdtChPhi(); }
#define AmgSymMatrix(dim)
Class to represent measurements from the Monitored Drift Tubes.
Definition MdtPrepData.h:33
New segment class for single ML segments.
Identifier muonIdentifier() const
Definition Tracklet.cxx:46
const TrackletSegment & getML1seg() const
Definition Tracklet.cxx:47
Amg::Vector3D m_momentum
Definition Tracklet.h:20
TrackletSegment m_ml1seg
Definition Tracklet.h:19
const Amg::Vector3D & momentum() const
Definition Tracklet.cxx:50
xAOD::TrackParticle * m_track
Definition Tracklet.h:25
std::vector< const Muon::MdtPrepData * > m_mdts
Definition Tracklet.h:22
const std::vector< const Muon::MdtPrepData * > & mdtHitsOnTrack() const
Definition Tracklet.cxx:45
int mdtChPhi() const
double deltaAlpha() const
Definition Tracklet.cxx:52
const TrackletSegment & getML2seg() const
Definition Tracklet.cxx:48
Amg::Vector3D m_pos
Definition Tracklet.h:21
double charge() const
Definition Tracklet.cxx:53
int mdtChamber() const
Tracklet()=default
const Amg::Vector3D & globalPosition() const
Definition Tracklet.cxx:49
const xAOD::TrackParticle * getTrackParticle() const
Definition Tracklet.cxx:44
void charge(double charge)
Definition Tracklet.cxx:41
TrackletSegment m_ml2seg
Definition Tracklet.h:19
void setTrackParticle(xAOD::TrackParticle *track)
Definition Tracklet.cxx:39
double m_charge
Definition Tracklet.h:24
double alpha() const
Definition Tracklet.cxx:51
int mdtChEta() const
Eigen::Matrix< double, 3, 1 > Vector3D
TrackParticle_v1 TrackParticle
Reference the current persistent version: