ATLAS Offline Software
PerigeeParametersNtupleTool.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2022 CERN for the benefit of the ATLAS collaboration
3 */
4 
6 // PerigeeParametersNtupleTool.h
7 // Header file for PerigeeParametersNtupleTool
9 // (c) ATLAS Detector software
11 // Sebastian.Fleischmann -at- cern.ch, Wolfgang.Liebig -at- cern.ch
13 #ifndef TRK_PERIGEEPARAMETERSNTUPLETOOL_H
14 #define TRK_PERIGEEPARAMETERSNTUPLETOOL_H
15 
18 #include "GaudiKernel/ToolHandle.h"
19 
20 namespace Trk {
21 
22  class IExtrapolator;
23 
30 public:
31 
32  // standard AlgToolmethods
33  PerigeeParametersNtupleTool(const std::string&,const std::string&,const IInterface*);
35 
36  // standard Athena methods
39 
43  virtual StatusCode addNtupleItems ( TTree* tree );
44 
47  virtual StatusCode fillTrackData (
48  const Trk::Track&,
49  const int iterationIndex,
50  const unsigned int fitStatCode );
51 
55 
58  const TrackTruth&,
59  const int);
60 
62  virtual void resetVariables( );
63 
64 private:
65 
66  // perigee filling common to Track and TrackParticle input
68 
69  ToolHandle<Trk::IExtrapolator> m_extrapolator;
70  bool m_doTruth;
71  float m_Rec_d0;
72  float m_Rec_z0;
73  float m_Rec_phi0;
74  float m_Rec_theta;
75  float m_Rec_eta;
76  float m_Rec_qOverP;
77 
78  float m_errord0;
79  float m_errorz0;
80  float m_errorphi0;
81  float m_errortheta0;
82  float m_errorqoverp;
83 
84  // Truth information
85  float m_mc_d0;
86  float m_mc_z0;
87  float m_mc_phi0;
88  float m_mc_theta;
89  float m_mc_qOverP;
90  float m_mc_qOverPt;
91  float m_mc_eta;
92 
93  float m_mc_diff_d0;
94  float m_mc_diff_z0;
98 
99  float m_mc_pull_d0;
100  float m_mc_pull_z0;
104 
108  float m_mc_energy;
109 
110  float m_mc_prob;
111 
112 };
113 
114 
115 } // end of namespace
116 
117 
118 #endif // TRK_PERIGEEPARAMETERSNTUPLETOOL_H
Trk::PerigeeParametersNtupleTool::m_mc_pull_z0
float m_mc_pull_z0
parameter-pull for z0 UNIT:1
Definition: PerigeeParametersNtupleTool.h:100
Trk::PerigeeParametersNtupleTool::m_mc_phi0
float m_mc_phi0
matched MC-truth track params: angle phi at perigee UNIT:rad
Definition: PerigeeParametersNtupleTool.h:87
Trk::PerigeeParametersNtupleTool::m_mc_particleID
int m_mc_particleID
PDG-ID for matched truth track.
Definition: PerigeeParametersNtupleTool.h:105
Trk::Track
The ATLAS Track class.
Definition: Tracking/TrkEvent/TrkTrack/TrkTrack/Track.h:73
Trk::PerigeeParametersNtupleTool::m_errorphi0
float m_errorphi0
error on angle phi at perigee UNIT:rad
Definition: PerigeeParametersNtupleTool.h:80
Trk::PerigeeParametersNtupleTool::m_extrapolator
ToolHandle< Trk::IExtrapolator > m_extrapolator
extrapolator, in case tracks do not have perigee
Definition: PerigeeParametersNtupleTool.h:69
Trk::PerigeeParametersNtupleTool::m_mc_truthTreeIndex
int m_mc_truthTreeIndex
entry index linking to 'Truth' tree in ntuple
Definition: PerigeeParametersNtupleTool.h:107
Trk::ParametersT
Dummy class used to allow special convertors to be called for surfaces owned by a detector element.
Definition: EMErrorDetail.h:25
tree
TChain * tree
Definition: tile_monitor.h:30
Trk::PerigeeParametersNtupleTool::m_mc_prob
float m_mc_prob
match probability for the truth particle (calculated by the job's configured TrackTruthSelector)
Definition: PerigeeParametersNtupleTool.h:110
Trk::PerigeeParametersNtupleTool::m_mc_pull_phi0
float m_mc_pull_phi0
parameter-pull for phi UNIT:1
Definition: PerigeeParametersNtupleTool.h:101
Trk::PerigeeParametersNtupleTool::m_Rec_phi0
float m_Rec_phi0
reconstructed track params: angle phi at perigee UNIT:rad
Definition: PerigeeParametersNtupleTool.h:73
Trk::PerigeeParametersNtupleTool::m_mc_diff_phi0
float m_mc_diff_phi0
difference reconstructed minus true parameter: angle phi UNIT:rad
Definition: PerigeeParametersNtupleTool.h:95
Trk::PerigeeParametersNtupleTool::m_mc_pull_theta
float m_mc_pull_theta
parameter-pull for theta UNIT:1
Definition: PerigeeParametersNtupleTool.h:102
Trk::PerigeeParametersNtupleTool::fillTrackTruthData
virtual StatusCode fillTrackTruthData(const TrackParameters *&, const TrackTruth &, const int)
fill data about the truth match (score, parameter-pulls etc)
Definition: PerigeeParametersNtupleTool.cxx:222
Trk::PerigeeParametersNtupleTool::m_errorz0
float m_errorz0
error on local z0 at perigee UNIT:mm
Definition: PerigeeParametersNtupleTool.h:79
Trk::PerigeeParametersNtupleTool::m_mc_pull_d0
float m_mc_pull_d0
parameter-pull for d0 UNIT:1
Definition: PerigeeParametersNtupleTool.h:99
Trk::PerigeeParametersNtupleTool::finalize
StatusCode finalize()
Definition: PerigeeParametersNtupleTool.cxx:99
Trk::PerigeeParametersNtupleTool::m_mc_diff_theta
float m_mc_diff_theta
difference reconstructed minus true parameter: angle theta UNIT:rad
Definition: PerigeeParametersNtupleTool.h:96
Trk::PerigeeParametersNtupleTool::PerigeeParametersNtupleTool
PerigeeParametersNtupleTool(const std::string &, const std::string &, const IInterface *)
Definition: PerigeeParametersNtupleTool.cxx:27
Trk::ITrackValidationNtupleTool
Definition: ITrackValidationNtupleTool.h:38
Trk::PerigeeParametersNtupleTool::m_mc_pull_qOverP
float m_mc_pull_qOverP
parameter-pull for q/p UNIT:1
Definition: PerigeeParametersNtupleTool.h:103
Trk::PerigeeParametersNtupleTool::m_mc_diff_d0
float m_mc_diff_d0
difference reconstructed minus true parameter: d0 UNIT:mm
Definition: PerigeeParametersNtupleTool.h:93
Trk::PerigeeParametersNtupleTool::m_Rec_theta
float m_Rec_theta
reconstructed track params: angle theta at perigee UNIT:rad
Definition: PerigeeParametersNtupleTool.h:74
Trk::PerigeeParametersNtupleTool::initialize
StatusCode initialize()
Definition: PerigeeParametersNtupleTool.cxx:90
Trk::TrackParticleBase
Definition: TrackParticleBase.h:41
Trk::PerigeeParametersNtupleTool::m_mc_qOverP
float m_mc_qOverP
matched MC-truth track params: curvature q/p at perigee UNIT:1/MeV
Definition: PerigeeParametersNtupleTool.h:89
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
Trk::PerigeeParametersNtupleTool::m_mc_diff_qOverP
float m_mc_diff_qOverP
difference reconstructed minus true parameter: q/p UNIT:1/MeV
Definition: PerigeeParametersNtupleTool.h:97
AthAlgTool.h
Trk::PerigeeParametersNtupleTool::m_errorqoverp
float m_errorqoverp
error on curvature q/p UNIT:1/MeV
Definition: PerigeeParametersNtupleTool.h:82
Trk::PerigeeParametersNtupleTool::m_mc_barcode
int m_mc_barcode
barcode for matched truth track
Definition: PerigeeParametersNtupleTool.h:106
Trk::PerigeeParametersNtupleTool::addNtupleItems
virtual StatusCode addNtupleItems(TTree *tree)
add branches to the tree Should be called once (per track collection and tree) dunring the initialisa...
Definition: PerigeeParametersNtupleTool.cxx:105
Trk::ParametersBase
Definition: ParametersBase.h:55
Trk::PerigeeParametersNtupleTool::m_doTruth
bool m_doTruth
switch to turn truth on/off
Definition: PerigeeParametersNtupleTool.h:70
Trk::PerigeeParametersNtupleTool::fillTrackData
virtual StatusCode fillTrackData(const Trk::Track &, const int iterationIndex, const unsigned int fitStatCode)
fill ntuple data of a given track without writing the record.
Definition: PerigeeParametersNtupleTool.cxx:164
Trk::PerigeeParametersNtupleTool::m_mc_eta
float m_mc_eta
matched MC-truth track params: pseudorapidity
Definition: PerigeeParametersNtupleTool.h:91
Trk
Ensure that the ATLAS eigen extensions are properly loaded.
Definition: FakeTrackBuilder.h:9
ITrackValidationNtupleTool.h
Trk::PerigeeParametersNtupleTool::fillTrackParticleData
virtual StatusCode fillTrackParticleData(const Trk::TrackParticleBase &)
fill ntuple data of a given TrackParticle without writing the record.
Definition: PerigeeParametersNtupleTool.cxx:204
Trk::PerigeeParametersNtupleTool::m_mc_diff_z0
float m_mc_diff_z0
difference reconstructed minus true parameter: z0 UNIT:mm
Definition: PerigeeParametersNtupleTool.h:94
Trk::PerigeeParametersNtupleTool::m_mc_d0
float m_mc_d0
matched MC-truth track params: local d0 at perigee UNIT:mm
Definition: PerigeeParametersNtupleTool.h:85
Trk::PerigeeParametersNtupleTool::m_Rec_eta
float m_Rec_eta
reconstructed track params: pseudorapidity UNIT:1
Definition: PerigeeParametersNtupleTool.h:75
Trk::PerigeeParametersNtupleTool::m_mc_qOverPt
float m_mc_qOverPt
matched MC-truth track params: projected curvature q/pT at perigee UNIT:1/MeV
Definition: PerigeeParametersNtupleTool.h:90
Trk::PerigeeParametersNtupleTool::resetVariables
virtual void resetVariables()
reset the variables after writing the record to disk ntuple
Definition: PerigeeParametersNtupleTool.cxx:218
Trk::PerigeeParametersNtupleTool::m_Rec_d0
float m_Rec_d0
reconstructed track params: local d0 at perigee UNIT:mm
Definition: PerigeeParametersNtupleTool.h:71
TrackTruth
MC particle associated with a reco track + the quality of match.
Definition: TrackTruth.h:14
Trk::PerigeeParametersNtupleTool::m_Rec_qOverP
float m_Rec_qOverP
reconstructed track params: curvature q/p UNIT:1/MeV
Definition: PerigeeParametersNtupleTool.h:76
Trk::PerigeeParametersNtupleTool::m_errord0
float m_errord0
error on local d0 at perigee UNIT:mm
Definition: PerigeeParametersNtupleTool.h:78
Trk::PerigeeParametersNtupleTool
Explain...
Definition: PerigeeParametersNtupleTool.h:29
Trk::PerigeeParametersNtupleTool::m_mc_theta
float m_mc_theta
matched MC-truth track params: angle theta at perigee UNIT:rad
Definition: PerigeeParametersNtupleTool.h:88
Trk::PerigeeParametersNtupleTool::fillTrackPerigee
StatusCode fillTrackPerigee(const Trk::Perigee *perigee)
fill the perigee in ntuple
Definition: PerigeeParametersNtupleTool.cxx:274
Trk::PerigeeParametersNtupleTool::m_mc_z0
float m_mc_z0
matched MC-truth track params: local z0 at perigee UNIT:mm
Definition: PerigeeParametersNtupleTool.h:86
Trk::PerigeeParametersNtupleTool::~PerigeeParametersNtupleTool
~PerigeeParametersNtupleTool()
AthAlgTool
Definition: AthAlgTool.h:26
Trk::PerigeeParametersNtupleTool::m_mc_energy
float m_mc_energy
energy of the truth particle UNIT:MeV
Definition: PerigeeParametersNtupleTool.h:108
Trk::PerigeeParametersNtupleTool::m_Rec_z0
float m_Rec_z0
reconstructed track params: local z0 at perigee UNIT:mm
Definition: PerigeeParametersNtupleTool.h:72
Trk::PerigeeParametersNtupleTool::m_errortheta0
float m_errortheta0
error on angle theta at perigee UNIT:rad
Definition: PerigeeParametersNtupleTool.h:81