|
ATLAS Offline Software
|
Go to the documentation of this file.
14 #ifndef TRK_RESIDUALVALIDATIONNTUPLEHELPER_H
15 #define TRK_RESIDUALVALIDATIONNTUPLEHELPER_H
18 #include "GaudiKernel/ToolHandle.h"
29 class MeasurementBase;
30 class IResidualPullCalculator;
54 const int& detectorType,
55 const bool& isOutlier );
67 const int& detectorType );
71 const int& detectorType );
77 const double locMesCov,
78 const double locTrkCov )
const;
80 void fillValues(
const int& detectorType,
double res1=-1000.,
double pull1=-1000.,
double res2=-1000.,
double pull2=-1000.);
119 [[maybe_unused]]
static const bool pullWarningOnce = [&]() {
120 msg(MSG::WARNING) <<
"no covariance of the track parameters given, can not calc pull!" <<
endmsg;
121 msg(MSG::WARNING) <<
"you may want to use the jobOption 'IgnoreMissingTrackCovariance' to calculate it anyhow." <<
endmsg;
127 m_PixResPhi->push_back(res1);
128 m_PixResEta->push_back(res2);
129 m_PixPullPhi->push_back(pull1);
130 m_PixPullEta->push_back(pull2);
132 m_SCTRes->push_back(res1);
133 m_SCTPull->push_back(pull1);
135 m_TRTRes->push_back(res1);
136 m_TRTPull->push_back(pull1);
138 m_MDTRes->push_back(res1);
139 m_MDTPull->push_back(pull1);
141 m_RPCRes->push_back(res1);
142 m_RPCPull->push_back(pull1);
144 m_TGCRes->push_back(res1);
145 m_TGCPull->push_back(pull1);
147 m_CSCRes->push_back(res1);
148 m_CSCPull->push_back(pull1);
154 #endif // TRK_RESIDUALVALIDATIONNTUPLEHELPER_H
std::vector< float > * m_SCTRes
hit residual in SCT local strip coord for each SCT meas't (corrects for fan-shaped strip arrangement ...
std::vector< float > * m_TGCPull
hit pull in TGC strip coordinate for each TGC meas't (corrects for fan-shaped strip arrangement),...
void givePullWarning() const
void fillValues(const int &detectorType, double res1=-1000., double pull1=-1000., double res2=-1000., double pull2=-1000.)
std::vector< float > * m_MDTPull
hit pull in MDT drift radius for each MDT meas't, vector of size nMDTHits UNIT:1
ResidualValidationNtupleHelper(const std::string &, const std::string &, const IInterface *)
std::vector< float > * m_CSCRes
hit residual in CSC ??? coordinate for each CSC meas't, vector of size nCSCHits UNIT:mm
std::vector< float > * m_PixResPhi
hit residual in pixel local phi for each Pixel meas't, vector of size nPixelHits UNIT:mm
std::vector< float > * m_PixPullEta
hit pull in pixel local eta coord for each Pixel meas't, vector of size nPixelHits UNIT:1
virtual StatusCode fillMeasurementData(const Trk::MeasurementBase *, const Trk::TrackParameters *, const int &detectorType, const bool &isOutlier)
fill residual data
StatusCode initialize()
initialize
std::vector< float > * m_MDTRes
hit residual in MDT drift radius for each MDT meas't, vector of size nMDTHits UNIT:mm
StatusCode finalize()
finalize
ToolHandle< Trk::IResidualPullCalculator > m_residualPullCalculator
The residual and pull calculator tool.
std::vector< float > * m_PixResEta
hit residual in pixel local eta for each Pixel meas't, vector of size nPixelHits UNIT:mm
::StatusCode StatusCode
StatusCode definition for legacy code.
std::vector< float > * m_SCTPull
hit pull in SCT local strip coord for each SCT meas't (corrects for fan-shaped strip arrangement in e...
virtual StatusCode addNtupleItems(TTree *tree, const int &detectorType)
add items to the ntuple and configure the helper tool: should be called once (per detector type) by t...
virtual StatusCode fillHoleData(const Trk::TrackStateOnSurface &, const int &)
fill special data about holes on track (here: do nothing)
Ensure that the ATLAS eigen extensions are properly loaded.
represents the track state (measurement, material, fit parameters and quality) at a surface.
virtual StatusCode resetVariables(const int &detectorType)
reset ntuple variables
bool m_trkParametersWarning
warn only once, if no track parameters exist
std::vector< float > * m_CSCPull
hit pull in CSC ??? coordinate for each CSC meas't, vector of size nCSCHits UNIT:1
std::vector< float > * m_RPCRes
hit residual in RPC coordinate for each RPC meas't, vector of size nRPCHits UNIT:mm
double calcPull(const double residual, const double locMesCov, const double locTrkCov) const
~ResidualValidationNtupleHelper()
bool m_pullWarning
warn only once, if pull cannot be calculated
std::vector< float > * m_PixPullPhi
hit pull in pixel local phi coord for each Pixel meas't, vector of size nPixelHits UNIT:1
std::vector< float > * m_TRTPull
hit pull in TRT drift radius for each TRT meas't, vector of size nTRTHits UNIT:1
std::vector< float > * m_RPCPull
hit pull in RPC strip coordinate for each RPC meas't, vector of size nRPCHits UNIT:1
std::vector< float > * m_TGCRes
hit residual in TGC strip coordinate for each TGC meas't, vector of size nTGCHits UNIT:mm
This class provides an interface to generate or decode an identifier for the upper levels of the dete...
std::vector< float > * m_TRTRes
hit residual in TRT drift radius for each TRT meas't, vector of size nTRTHits UNIT:mm