ATLAS Offline Software
ResidualPullCalculator.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
3 */
4 
6 // ResidualPullCalculator.h
7 // Header file for ResidualPullCalculator tool
9 // (c) ATLAS Detector software
11 // Sebastian.Fleischmann@cern.ch
13 
14 #ifndef TRK_RESIDUALPULLCALCULATOR_H
15 #define TRK_RESIDUALPULLCALCULATOR_H
16 
18 #include "GaudiKernel/ToolHandle.h"
19 
20 
22 
23 #include <optional>
24 
25 
26 class AtlasDetectorID;
27 
28 namespace Trk {
29 
30  class MeasurementBase;
31  class AlignmentEffectsOnTrack;
32 
46 class ResidualPullCalculator final : virtual public Trk::IResidualPullCalculator, public AthAlgTool {
47 public:
48 
49  ResidualPullCalculator(const std::string& type, const std::string& name, const IInterface* parent);
51  virtual StatusCode initialize() override final;
52  virtual StatusCode finalize() override final;
53 
54 
65  virtual std::optional<Trk::ResidualPull> residualPull(
66  const Trk::MeasurementBase* measurement,
67  const Trk::TrackParameters* trkPar,
68  const Trk::ResidualPull::ResidualType resType,
69  const Trk::TrackState::MeasurementType) const override final;
70 
80  virtual std::optional<Trk::ResidualPull> residualPull(
81  const Trk::MeasurementBase* measurement,
82  const Trk::TrackParameters* trkPar,
83  const Trk::ResidualPull::ResidualType resType,
86  const override final;
87 
92  virtual std::array<double,5> residuals(
93  const Trk::MeasurementBase* measurement,
94  const Trk::TrackParameters* trkPar,
95  const Trk::ResidualPull::ResidualType resType,
96  const Trk::TrackState::MeasurementType) const override final;
97 
98 
99 private:
104 
105  double calcPull(
106  const double residual,
107  const double locMesCov,
108  const double locTrkCov,
109  const Trk::ResidualPull::ResidualType& resType ) const;
110 }; // end class
111 } // end namespace Trk
112 
113 #endif //TRK_RESIDUALPULLCALCULATOR_H
ClusterSeg::residual
@ residual
Definition: ClusterNtuple.h:20
Trk::ResidualPullCalculator::m_TGCresidualTool
ToolHandle< IResidualPullCalculator > m_TGCresidualTool
the ResidualPullCalculator for the TGC
Definition: ResidualPullCalculator.h:102
Trk::MeasurementType
MeasurementType
Definition: MeasurementType.h:18
Trk::IResidualPullCalculator
provides the interface for tools which calculate residuals and pulls.
Definition: IResidualPullCalculator.h:35
Trk::ResidualPullCalculator::residuals
virtual std::array< double, 5 > residuals(const Trk::MeasurementBase *measurement, const Trk::TrackParameters *trkPar, const Trk::ResidualPull::ResidualType resType, const Trk::TrackState::MeasurementType) const override final
This function is a light-weight version of the function above, designed for track fitters where speed...
Definition: ResidualPullCalculator.cxx:88
Trk::ResidualPull
This class containes residual and pull information.
Definition: ResidualPull.h:46
const
bool const RAWDATA *ch2 const
Definition: LArRodBlockPhysicsV0.cxx:562
Trk::AlignmentEffectsOnTrack
Class to represent misalignments or 'discontinuities' on tracks These have a surface where the z axis...
Definition: AlignmentEffectsOnTrack.h:24
Trk::ResidualPullCalculator::finalize
virtual StatusCode finalize() override final
Definition: ResidualPullCalculator.cxx:79
Trk::ResidualPullCalculator::~ResidualPullCalculator
~ResidualPullCalculator()
Definition: ResidualPullCalculator.h:50
Trk::ResidualPullCalculator
AlgTool to calculate the residual and pull of a measurement and the related track state independently...
Definition: ResidualPullCalculator.h:46
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
vector
Definition: MultiHisto.h:13
AthAlgTool.h
test_pyathena.parent
parent
Definition: test_pyathena.py:15
xAOD::TrackState
TrackState_v1 TrackState
Definition: TrackState.h:11
Trk::ParametersBase
Definition: ParametersBase.h:55
Trk::ResidualPullCalculator::calcPull
double calcPull(const double residual, const double locMesCov, const double locTrkCov, const Trk::ResidualPull::ResidualType &resType) const
calc pull in 1 dimension
Definition: ResidualPullCalculator.cxx:449
Trk::ResidualPullCalculator::initialize
virtual StatusCode initialize() override final
initialize
Definition: ResidualPullCalculator.cxx:47
lumiFormat.array
array
Definition: lumiFormat.py:98
Trk::MeasurementBase
Definition: MeasurementBase.h:58
Trk
Ensure that the ATLAS eigen extensions are properly loaded.
Definition: FakeTrackBuilder.h:9
Trk::ResidualPullCalculator::ResidualPullCalculator
ResidualPullCalculator(const std::string &type, const std::string &name, const IInterface *parent)
constructor
Definition: ResidualPullCalculator.cxx:31
private
#define private
Definition: DetDescrConditionsDict_dict_fixes.cxx:13
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:195
IResidualPullCalculator.h
Trk::ResidualPullCalculator::residualPull
virtual std::optional< Trk::ResidualPull > residualPull(const Trk::MeasurementBase *measurement, const Trk::TrackParameters *trkPar, const Trk::ResidualPull::ResidualType resType, const Trk::TrackState::MeasurementType) const override final
This function returns (creates!) a Trk::ResidualPull object, which contains the values of residual an...
Definition: ResidualPullCalculator.cxx:177
python.CaloScaleNoiseConfig.type
type
Definition: CaloScaleNoiseConfig.py:78
Trk::ResidualPullCalculator::m_idHelper
const AtlasDetectorID * m_idHelper
Used to know the sub-det from PRD->identify().
Definition: ResidualPullCalculator.h:103
AthAlgTool
Definition: AthAlgTool.h:26
Trk::ResidualPullCalculator::m_RPCresidualTool
ToolHandle< IResidualPullCalculator > m_RPCresidualTool
the ResidualPullCalculator for the RPC
Definition: ResidualPullCalculator.h:101
AtlasDetectorID
This class provides an interface to generate or decode an identifier for the upper levels of the dete...
Definition: AtlasDetectorID.h:57
Trk::ResidualPullCalculator::m_SCTresidualTool
ToolHandle< IResidualPullCalculator > m_SCTresidualTool
the ResidualPullCalculator for the SCT
Definition: ResidualPullCalculator.h:100