ATLAS Offline Software
|
provides the interface for tools which calculate residuals and pulls. More...
#include <IResidualPullCalculator.h>
Public Member Functions | |
virtual std::optional< Trk::ResidualPull > | residualPull (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::ResidualPull > | residualPull (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... | |
provides the interface for tools which calculate residuals and pulls.
Definition at line 35 of file IResidualPullCalculator.h.
|
inlinestatic |
Interface ID, declared here, and defined below.
Definition at line 84 of file IResidualPullCalculator.h.
|
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.
|
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.
|
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.