ATLAS Offline Software
Public Member Functions | Static Public Member Functions | List of all members
Trk::IResidualPullCalculator Class Referenceabstract

provides the interface for tools which calculate residuals and pulls. More...

#include <IResidualPullCalculator.h>

Inheritance diagram for Trk::IResidualPullCalculator:
Collaboration diagram for Trk::IResidualPullCalculator:

Public Member Functions

virtual std::optional< Trk::ResidualPullresidualPull (const Trk::MeasurementBase *, const Trk::TrackParameters *, const Trk::ResidualPull::ResidualType residualType, const TrackState::MeasurementType=TrackState::unidentified) const =0
 This function returns a Trk::ResidualPull object, which contains the values of residual and pull for the given measurement and track state. More...
 
virtual std::optional< Trk::ResidualPullresidualPull (const Trk::MeasurementBase *, const Trk::TrackParameters *, const Trk::ResidualPull::ResidualType, const Trk::TrackState::MeasurementType, const std::vector< const Trk::AlignmentEffectsOnTrack * > &) const
 This function returns (creates!) a Trk::ResidualPull object, which contains the values of residual and pull for the given measurement and track state, and the Alignment effects. More...
 
virtual std::array< double, 5 > residuals (const Trk::MeasurementBase *, const Trk::TrackParameters *, const Trk::ResidualPull::ResidualType residualType, const TrackState::MeasurementType=TrackState::unidentified) const =0
 This function is a light-weight version of the function above, designed for track fitters where speed is critical. More...
 

Static Public Member Functions

static const InterfaceID & interfaceID ()
 Interface ID, declared here, and defined below. More...
 

Detailed Description

provides the interface for tools which calculate residuals and pulls.

Author
S. Fleischmann, W. Liebig

Definition at line 35 of file IResidualPullCalculator.h.

Member Function Documentation

◆ interfaceID()

const InterfaceID & Trk::IResidualPullCalculator::interfaceID ( )
inlinestatic

Interface ID, declared here, and defined below.

Definition at line 84 of file IResidualPullCalculator.h.

84  {
85  return IID_IResidualPullCalculator;
86 }

◆ residualPull() [1/2]

virtual std::optional<Trk::ResidualPull> Trk::IResidualPullCalculator::residualPull ( const Trk::MeasurementBase ,
const Trk::TrackParameters ,
const Trk::ResidualPull::ResidualType  residualType,
const TrackState::MeasurementType  = TrackState::unidentified 
) const
pure virtual

This function returns a Trk::ResidualPull object, which contains the values of residual and pull for the given measurement and track state.

The pull calculation needs to have matching TrackParameters and ResidualType setting: Unbiased track parameters (which can be calculated by the Trk::IUpdator) with 'Unbiased' type, and biased track parameters (current hit included in fit) with 'Biased' or 'HitOnly' type.

The function can determine the sub-detector type itself by using the ID helper, or interpret the DetectorType enum from the method interface.

Implemented in Muon::TGC_ResidualPullCalculator, Muon::RPC_ResidualPullCalculator, Trk::ResidualPullCalculator, and InDet::SCT_ResidualPullCalculator.

◆ residualPull() [2/2]

virtual std::optional<Trk::ResidualPull> Trk::IResidualPullCalculator::residualPull ( const Trk::MeasurementBase ,
const Trk::TrackParameters ,
const Trk::ResidualPull::ResidualType  ,
const Trk::TrackState::MeasurementType  ,
const std::vector< const Trk::AlignmentEffectsOnTrack * > &   
) const
inlinevirtual

This function returns (creates!) a Trk::ResidualPull object, which contains the values of residual and pull for the given measurement and track state, and the Alignment effects.

The track state can be an unbiased one (which can be retrieved by the Trk::IUpdator), a biased one (which contains the measurement), or a truth state. The enum residualTyp must be set according to this, otherwise the pulls will be wrong. Residuals differ in all three cases; please be aware of this.

This function determines the sub-detector type itself by using the ID helper

Reimplemented in Trk::ResidualPullCalculator.

Definition at line 64 of file IResidualPullCalculator.h.

69  {
70  return std::nullopt;
71  }

◆ residuals()

virtual std::array<double,5> Trk::IResidualPullCalculator::residuals ( const Trk::MeasurementBase ,
const Trk::TrackParameters ,
const Trk::ResidualPull::ResidualType  residualType,
const TrackState::MeasurementType  = TrackState::unidentified 
) const
pure virtual

This function is a light-weight version of the function above, designed for track fitters where speed is critical.

The user has to provide a std::array of size 5, which gets filled with the residuals.

Implemented in Muon::TGC_ResidualPullCalculator, Muon::RPC_ResidualPullCalculator, Trk::ResidualPullCalculator, and InDet::SCT_ResidualPullCalculator.


The documentation for this class was generated from the following file: