ATLAS Offline Software
PhysicsAnalysis
MuonID
MuonIDAnalysis
MuonMomentumCorrections
src
PhysicsAnalysis/MuonID/MuonIDAnalysis/MuonMomentumCorrections/src/TrackInfo.cxx
Go to the documentation of this file.
1
#define __TrackInfo_cxx__
2
#include <utility>
3
4
#include "
TrackInfo.h
"
5
namespace
MMCTest
{
6
TrackInfo::TrackInfo
(std::string
type
, std::vector<std::string> systs)
7
: m_Type (std::move (
type
)),
8
m_Systs (std::move (systs))
9
{
10
Reset
();
11
}
12
13
void
TrackInfo::Reset
() {
14
m_Pt
= -999.;
15
for
(
const
auto
&
s
:
m_Systs
) {
m_CalibPt
[
s
] = -999.; }
16
m_Eta
= -999.;
17
m_Phi
= -999.;
18
m_QoverP
= -999.;
19
m_Chi2
= -999.;
20
m_Charge
= -999;
21
m_NDoF
= 0;
22
m_TrackPars
.clear();
23
for
(
unsigned
int
i
= 0;
i
< 5;
i
++)
m_TrackPars
.push_back(0.);
24
m_TrackCovMatrix
.clear();
25
for
(
unsigned
int
i
= 0;
i
< 5;
i
++)
26
for
(
unsigned
int
j = 0; j < 5; j++)
m_TrackCovMatrix
.push_back(0.);
27
}
28
29
void
TrackInfo::Register
(TTree*
t
) {
30
t
->Branch((
"Muon_"
+
m_Type
+
"_Pt"
).c_str(), &
m_Pt
);
31
t
->Branch((
"Muon_"
+
m_Type
+
"_Eta"
).c_str(), &
m_Eta
);
32
t
->Branch((
"Muon_"
+
m_Type
+
"_Phi"
).c_str(), &
m_Phi
);
33
t
->Branch((
"Muon_"
+
m_Type
+
"_Charge"
).c_str(), &
m_Charge
);
34
t
->Branch((
"Muon_"
+
m_Type
+
"_QoverP"
).c_str(), &
m_QoverP
);
35
t
->Branch((
"Muon_"
+
m_Type
+
"_Chi2"
).c_str(), &
m_Chi2
);
36
t
->Branch((
"Muon_"
+
m_Type
+
"_NDoF"
).c_str(), &
m_NDoF
);
37
t
->Branch((
"Muon_"
+
m_Type
+
"_TrackPars"
).c_str(), &
m_TrackPars
);
38
t
->Branch((
"Muon_"
+
m_Type
+
"_TrackCovMatrix"
).c_str(), &
m_TrackCovMatrix
);
39
for
(
const
auto
&
s
:
m_Systs
) {
t
->Branch((
"Muon_"
+
m_Type
+
"_"
+
s
+
"CalibPt"
).c_str(), &
m_CalibPt
[
s
]); }
40
}
41
42
void
TrackInfo::Fill
(
const
xAOD::TrackParticle
*
tp
) {
43
m_Pt
=
tp
->pt() *
Gaudi::Units::perThousand
;
44
m_Eta
=
tp
->eta();
45
m_Phi
=
tp
->phi();
46
m_Charge
= (
int
)
tp
->charge();
47
m_QoverP
=
tp
->qOverP() /
Gaudi::Units::perThousand
;
48
m_Chi2
=
tp
->chiSquared();
49
m_NDoF
= (
int
)
tp
->numberDoF();
50
AmgVector
(5)
pars
=
tp
->definingParameters();
51
AmgSymMatrix
(5)
cov
=
tp
->definingParametersCovMatrix();
52
53
m_TrackPars
.clear();
54
for
(
unsigned
int
i
= 0;
i
< 5;
i
++)
m_TrackPars
.push_back(
pars
[
i
]);
55
m_TrackCovMatrix
.clear();
56
57
for
(
unsigned
int
i
= 0;
i
< 5;
i
++)
58
for
(
unsigned
int
j = 0; j < 5; j++)
m_TrackCovMatrix
.push_back(
cov
(
i
, j));
59
}
60
61
TLorentzVector
TrackInfo::GetFourMomentum
(
bool
calib
) {
62
TLorentzVector
result
;
63
if
(
calib
)
64
result
.SetPtEtaPhiM(
m_CalibPt
[
""
],
m_Eta
,
m_Phi
, 0.105658);
65
else
66
result
.SetPtEtaPhiM(
m_Pt
,
m_Eta
,
m_Phi
, 0.105658);
67
return
result
;
68
}
69
}
// namespace MMCTest
MMCTest::TrackInfo::m_Phi
float m_Phi
Definition:
PhysicsAnalysis/MuonID/MuonIDAnalysis/MuonMomentumCorrections/src/TrackInfo.h:22
make_hlt_rep.pars
pars
Definition:
make_hlt_rep.py:90
MMCTest
Definition:
PhysicsAnalysis/MuonID/MuonIDAnalysis/MuonMomentumCorrections/src/TrackInfo.cxx:5
MMCTest::TrackInfo::m_Systs
std::vector< std::string > m_Systs
Definition:
PhysicsAnalysis/MuonID/MuonIDAnalysis/MuonMomentumCorrections/src/TrackInfo.h:21
python.SystemOfUnits.s
int s
Definition:
SystemOfUnits.py:131
get_generator_info.result
result
Definition:
get_generator_info.py:21
MMCTest::TrackInfo::m_Pt
float m_Pt
Definition:
PhysicsAnalysis/MuonID/MuonIDAnalysis/MuonMomentumCorrections/src/TrackInfo.h:22
CaloCellPos2Ntuple.int
int
Definition:
CaloCellPos2Ntuple.py:24
MMCTest::TrackInfo::m_TrackCovMatrix
std::vector< float > m_TrackCovMatrix
Definition:
PhysicsAnalysis/MuonID/MuonIDAnalysis/MuonMomentumCorrections/src/TrackInfo.h:26
plotBeamSpotVxVal.cov
cov
Definition:
plotBeamSpotVxVal.py:201
MMCTest::TrackInfo::GetFourMomentum
TLorentzVector GetFourMomentum(bool calib=false)
Definition:
PhysicsAnalysis/MuonID/MuonIDAnalysis/MuonMomentumCorrections/src/TrackInfo.cxx:61
MMCTest::TrackInfo::m_QoverP
float m_QoverP
Definition:
PhysicsAnalysis/MuonID/MuonIDAnalysis/MuonMomentumCorrections/src/TrackInfo.h:22
ParticleTest.tp
tp
Definition:
ParticleTest.py:25
MMCTest::TrackInfo::Reset
void Reset()
Definition:
PhysicsAnalysis/MuonID/MuonIDAnalysis/MuonMomentumCorrections/src/TrackInfo.cxx:13
MMCTest::TrackInfo::m_CalibPt
std::map< std::string, float > m_CalibPt
Definition:
PhysicsAnalysis/MuonID/MuonIDAnalysis/MuonMomentumCorrections/src/TrackInfo.h:23
read_hist_ntuple.t
t
Definition:
read_hist_ntuple.py:5
AmgSymMatrix
#define AmgSymMatrix(dim)
Definition:
EventPrimitives.h:52
MMCTest::TrackInfo::Fill
void Fill(const xAOD::TrackParticle *tp)
Definition:
PhysicsAnalysis/MuonID/MuonIDAnalysis/MuonMomentumCorrections/src/TrackInfo.cxx:42
lumiFormat.i
int i
Definition:
lumiFormat.py:92
AmgVector
AmgVector(4) T2BSTrackFilterTool
Definition:
T2BSTrackFilterTool.cxx:114
MMCTest::TrackInfo::m_Chi2
float m_Chi2
Definition:
PhysicsAnalysis/MuonID/MuonIDAnalysis/MuonMomentumCorrections/src/TrackInfo.h:22
python.SystemOfUnits.perThousand
float perThousand
Definition:
SystemOfUnits.py:278
TrackInfo.h
PlotSFuncertainty.calib
calib
Definition:
PlotSFuncertainty.py:110
MMCTest::TrackInfo::m_Charge
int m_Charge
Definition:
PhysicsAnalysis/MuonID/MuonIDAnalysis/MuonMomentumCorrections/src/TrackInfo.h:24
python.CaloScaleNoiseConfig.type
type
Definition:
CaloScaleNoiseConfig.py:78
MMCTest::TrackInfo::m_NDoF
int m_NDoF
Definition:
PhysicsAnalysis/MuonID/MuonIDAnalysis/MuonMomentumCorrections/src/TrackInfo.h:24
MMCTest::TrackInfo::m_Eta
float m_Eta
Definition:
PhysicsAnalysis/MuonID/MuonIDAnalysis/MuonMomentumCorrections/src/TrackInfo.h:22
xAOD::TrackParticle_v1
Class describing a TrackParticle.
Definition:
TrackParticle_v1.h:43
MMCTest::TrackInfo::TrackInfo
TrackInfo(std::string type, std::vector< std::string > systs)
Definition:
PhysicsAnalysis/MuonID/MuonIDAnalysis/MuonMomentumCorrections/src/TrackInfo.cxx:6
MMCTest::TrackInfo::m_Type
std::string m_Type
Definition:
PhysicsAnalysis/MuonID/MuonIDAnalysis/MuonMomentumCorrections/src/TrackInfo.h:20
MMCTest::TrackInfo::m_TrackPars
std::vector< float > m_TrackPars
Definition:
PhysicsAnalysis/MuonID/MuonIDAnalysis/MuonMomentumCorrections/src/TrackInfo.h:25
MMCTest::TrackInfo::Register
void Register(TTree *t)
Definition:
PhysicsAnalysis/MuonID/MuonIDAnalysis/MuonMomentumCorrections/src/TrackInfo.cxx:29
Generated on Tue Jul 2 2024 21:29:49 for ATLAS Offline Software by
1.8.18