ATLAS Offline Software
Public Member Functions | Private Attributes | List of all members
MMCTest::TrackInfo Class Reference

#include <TrackInfo.h>

Collaboration diagram for MMCTest::TrackInfo:

Public Member Functions

 TrackInfo (std::string type, std::vector< std::string > systs)
 
 ~TrackInfo ()
 
void Reset ()
 
void Register (TTree *t)
 
void Fill (const xAOD::TrackParticle *tp)
 
TLorentzVector GetFourMomentum (bool calib=false)
 
int GetCharge ()
 
void SetCalibPt (float calib_pt, const std::string &syst)
 

Private Attributes

std::string m_Type
 
std::vector< std::string > m_Systs
 
float m_Pt = 0.0F
 
float m_Eta = 0.0F
 
float m_Phi = 0.0F
 
float m_QoverP = 0.0F
 
float m_Chi2 = 0.0F
 
std::map< std::string, float > m_CalibPt
 
int m_Charge = 0
 
int m_NDoF = 0
 
std::vector< float > m_TrackPars
 
std::vector< float > m_TrackCovMatrix
 

Detailed Description

Definition at line 18 of file PhysicsAnalysis/MuonID/MuonIDAnalysis/MuonMomentumCorrections/src/TrackInfo.h.

Constructor & Destructor Documentation

◆ TrackInfo()

MMCTest::TrackInfo::TrackInfo ( std::string  type,
std::vector< std::string >  systs 
)

Definition at line 6 of file PhysicsAnalysis/MuonID/MuonIDAnalysis/MuonMomentumCorrections/src/TrackInfo.cxx.

7  : m_Type (std::move (type)),
8  m_Systs (std::move (systs))
9  {
10  Reset();
11  }

◆ ~TrackInfo()

MMCTest::TrackInfo::~TrackInfo ( )
inline

Member Function Documentation

◆ Fill()

void MMCTest::TrackInfo::Fill ( const xAOD::TrackParticle tp)

Definition at line 42 of file PhysicsAnalysis/MuonID/MuonIDAnalysis/MuonMomentumCorrections/src/TrackInfo.cxx.

42  {
44  m_Eta = tp->eta();
45  m_Phi = tp->phi();
46  m_Charge = (int)tp->charge();
48  m_Chi2 = tp->chiSquared();
49  m_NDoF = (int)tp->numberDoF();
50  AmgVector(5) pars = tp->definingParameters();
51  AmgSymMatrix(5) cov = tp->definingParametersCovMatrix();
52 
54  for (unsigned int i = 0; i < 5; i++) m_TrackPars.push_back(pars[i]);
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  }

◆ GetCharge()

int MMCTest::TrackInfo::GetCharge ( )
inline

◆ GetFourMomentum()

TLorentzVector MMCTest::TrackInfo::GetFourMomentum ( bool  calib = false)

Definition at line 61 of file PhysicsAnalysis/MuonID/MuonIDAnalysis/MuonMomentumCorrections/src/TrackInfo.cxx.

61  {
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  }

◆ Register()

void MMCTest::TrackInfo::Register ( TTree *  t)

Definition at line 29 of file PhysicsAnalysis/MuonID/MuonIDAnalysis/MuonMomentumCorrections/src/TrackInfo.cxx.

29  {
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  }

◆ Reset()

void MMCTest::TrackInfo::Reset ( )

Definition at line 13 of file PhysicsAnalysis/MuonID/MuonIDAnalysis/MuonMomentumCorrections/src/TrackInfo.cxx.

13  {
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  }

◆ SetCalibPt()

void MMCTest::TrackInfo::SetCalibPt ( float  calib_pt,
const std::string &  syst 
)
inline

Member Data Documentation

◆ m_CalibPt

std::map<std::string, float> MMCTest::TrackInfo::m_CalibPt
private

◆ m_Charge

int MMCTest::TrackInfo::m_Charge = 0
private

◆ m_Chi2

float MMCTest::TrackInfo::m_Chi2 = 0.0F
private

◆ m_Eta

float MMCTest::TrackInfo::m_Eta = 0.0F
private

◆ m_NDoF

int MMCTest::TrackInfo::m_NDoF = 0
private

◆ m_Phi

float MMCTest::TrackInfo::m_Phi = 0.0F
private

◆ m_Pt

float MMCTest::TrackInfo::m_Pt = 0.0F
private

◆ m_QoverP

float MMCTest::TrackInfo::m_QoverP = 0.0F
private

◆ m_Systs

std::vector<std::string> MMCTest::TrackInfo::m_Systs
private

◆ m_TrackCovMatrix

std::vector<float> MMCTest::TrackInfo::m_TrackCovMatrix
private

◆ m_TrackPars

std::vector<float> MMCTest::TrackInfo::m_TrackPars
private

◆ m_Type

std::string MMCTest::TrackInfo::m_Type
private

The documentation for this class was generated from the following files:
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::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::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
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
PlotSFuncertainty.calib
calib
Definition: PlotSFuncertainty.py:110
MMCTest::TrackInfo::m_Charge
int m_Charge
Definition: PhysicsAnalysis/MuonID/MuonIDAnalysis/MuonMomentumCorrections/src/TrackInfo.h:24
VKalVrtAthena::varHolder_detail::clear
void clear(T &var)
Definition: NtupleVars.h:48
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
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