ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
MuonSpectrometer
MSVertexReconstruction
MSVertexUtils
src
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
5
#include "
MSVertexUtils/Tracklet.h
"
6
7
8
Tracklet::Tracklet
(
const
TrackletSegment
& ML1seg,
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
23
Tracklet::Tracklet
(
const
TrackletSegment
& ML1seg,
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
39
void
Tracklet::setTrackParticle
(
xAOD::TrackParticle
* track){
m_track
= track; }
40
void
Tracklet::momentum
(
const
Amg::Vector3D
& p) {
m_momentum
= p; }
41
void
Tracklet::charge
(
double
charge
) {
m_charge
=
charge
; }
42
43
// get functions
44
const
xAOD::TrackParticle
*
Tracklet::getTrackParticle
()
const
{
return
m_track
; }
45
const
std::vector<const Muon::MdtPrepData*>&
Tracklet::mdtHitsOnTrack
()
const
{
return
m_mdts
; }
46
Identifier
Tracklet::muonIdentifier
()
const
{
return
m_ml1seg
.getIdentifier(); }
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(); }
AmgSymMatrix
#define AmgSymMatrix(dim)
Definition
EventPrimitives.h:50
Tracklet.h
Muon::MdtPrepData
Class to represent measurements from the Monitored Drift Tubes.
Definition
MdtPrepData.h:33
TrackletSegment
New segment class for single ML segments.
Definition
TrackletSegment.h:20
Tracklet::muonIdentifier
Identifier muonIdentifier() const
Definition
Tracklet.cxx:46
Tracklet::getML1seg
const TrackletSegment & getML1seg() const
Definition
Tracklet.cxx:47
Tracklet::m_momentum
Amg::Vector3D m_momentum
Definition
Tracklet.h:20
Tracklet::m_ml1seg
TrackletSegment m_ml1seg
Definition
Tracklet.h:19
Tracklet::momentum
const Amg::Vector3D & momentum() const
Definition
Tracklet.cxx:50
Tracklet::m_track
xAOD::TrackParticle * m_track
Definition
Tracklet.h:25
Tracklet::m_mdts
std::vector< const Muon::MdtPrepData * > m_mdts
Definition
Tracklet.h:22
Tracklet::mdtHitsOnTrack
const std::vector< const Muon::MdtPrepData * > & mdtHitsOnTrack() const
Definition
Tracklet.cxx:45
Tracklet::mdtChPhi
int mdtChPhi() const
Tracklet::deltaAlpha
double deltaAlpha() const
Definition
Tracklet.cxx:52
Tracklet::getML2seg
const TrackletSegment & getML2seg() const
Definition
Tracklet.cxx:48
Tracklet::m_pos
Amg::Vector3D m_pos
Definition
Tracklet.h:21
Tracklet::charge
double charge() const
Definition
Tracklet.cxx:53
Tracklet::mdtChamber
int mdtChamber() const
Tracklet::Tracklet
Tracklet()=default
Tracklet::globalPosition
const Amg::Vector3D & globalPosition() const
Definition
Tracklet.cxx:49
Tracklet::getTrackParticle
const xAOD::TrackParticle * getTrackParticle() const
Definition
Tracklet.cxx:44
Tracklet::charge
void charge(double charge)
Definition
Tracklet.cxx:41
Tracklet::m_ml2seg
TrackletSegment m_ml2seg
Definition
Tracklet.h:19
Tracklet::setTrackParticle
void setTrackParticle(xAOD::TrackParticle *track)
Definition
Tracklet.cxx:39
Tracklet::m_charge
double m_charge
Definition
Tracklet.h:24
Tracklet::alpha
double alpha() const
Definition
Tracklet.cxx:51
Tracklet::mdtChEta
int mdtChEta() const
Tracklet::~Tracklet
~Tracklet()
Amg::Vector3D
Eigen::Matrix< double, 3, 1 > Vector3D
Definition
GeoPrimitives.h:47
Identifier
Definition
IdentifierFieldParser.cxx:14
xAOD::TrackParticle
TrackParticle_v1 TrackParticle
Reference the current persistent version:
Definition
Event/xAOD/xAODTracking/xAODTracking/TrackParticle.h:13
Generated on
for ATLAS Offline Software by
1.17.0