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

#include <IGlobalTrackFitter.h>

Inheritance diagram for Trk::IGlobalTrackFitter:
Collaboration diagram for Trk::IGlobalTrackFitter:

Classes

struct  AlignmentCache
 

Public Member Functions

virtual TrackalignmentFit (AlignmentCache &, const Track &, const RunOutlierRemoval runOutlier=false, const ParticleHypothesis matEffects=Trk::nonInteracting) const =0
 RE-FIT A TRACK FOR ALIGNMENT. More...
 
virtual std::unique_ptr< Trackfit (const EventContext &ctx, const Track &track, const RunOutlierRemoval runOutlier=false, const ParticleHypothesis matEffects=Trk::nonInteracting) const =0
 RE-FIT A TRACK. More...
 
virtual std::unique_ptr< Trackfit (const EventContext &ctx, const Track &track, const PrepRawDataSet &prepRawSet, const RunOutlierRemoval runOutlier=false, const ParticleHypothesis matEffects=Trk::nonInteracting) const =0
 RE-FIT A TRACK, ADDING A PRD SET. More...
 
virtual std::unique_ptr< Trackfit (const EventContext &ctx, const PrepRawDataSet &prepRawSet, const TrackParameters &params, const RunOutlierRemoval runOutlier=false, const ParticleHypothesis matEffects=Trk::nonInteracting) const =0
 FIT A TRACK TO A SET OF PrepRawData. More...
 
virtual std::unique_ptr< Trackfit (const EventContext &ctx, const Track &track, const MeasurementSet &measSet, const RunOutlierRemoval runOutlier=false, const ParticleHypothesis matEffects=Trk::nonInteracting) const =0
 RE-FIT A TRACK, ADDING A FITTABLE MEASUREMENT SET. More...
 
virtual std::unique_ptr< Trackfit (const EventContext &ctx, const MeasurementSet &measSet, const TrackParameters &params, const RunOutlierRemoval runOutlier=false, const ParticleHypothesis matEffects=Trk::nonInteracting) const =0
 FIT A TRACK TO A SET OF MEASUREMENTBASE. More...
 
virtual std::unique_ptr< Trackfit (const EventContext &ctx, const Track &track1, const Track &track2, const RunOutlierRemoval runOutlier=false, const ParticleHypothesis matEffects=Trk::nonInteracting) const =0
 COMBINE TWO TRACKS BY REFITTING. More...
 

Static Public Member Functions

static const InterfaceID & interfaceID ()
 

Friends

class ShiftingDerivCalcTool
 
class Chi2DerivCalcTool
 

Detailed Description

provides additional abstract interfaces for information provided from global-least-squares track fit algorithms working in the ATLAS EDM.

Definition at line 30 of file IGlobalTrackFitter.h.

Member Function Documentation

◆ alignmentFit()

virtual Track* Trk::IGlobalTrackFitter::alignmentFit ( AlignmentCache ,
const Track ,
const RunOutlierRemoval  runOutlier = false,
const ParticleHypothesis  matEffects = Trk::nonInteracting 
) const
pure virtual

RE-FIT A TRACK FOR ALIGNMENT.

Since it is not our but the fitter model's decision if to re-fit on PRD or ROT level, it is made pure virtual.

Implemented in Trk::iPatGlobalFitter.

◆ fit() [1/6]

virtual std::unique_ptr<Track> Trk::ITrackFitter::fit ( const EventContext &  ctx,
const MeasurementSet measSet,
const TrackParameters params,
const RunOutlierRemoval  runOutlier = false,
const ParticleHypothesis  matEffects = Trk::nonInteracting 
) const
pure virtualinherited

FIT A TRACK TO A SET OF MEASUREMENTBASE.

Main fit method. The TrackParameters is a first estimate for the track, represented close to the origin.

Implemented in Trk::iPatFitter, Trk::DistributedKalmanFilter, and Trk::GaussianSumFitter.

◆ fit() [2/6]

virtual std::unique_ptr<Track> Trk::ITrackFitter::fit ( const EventContext &  ctx,
const PrepRawDataSet prepRawSet,
const TrackParameters params,
const RunOutlierRemoval  runOutlier = false,
const ParticleHypothesis  matEffects = Trk::nonInteracting 
) const
pure virtualinherited

FIT A TRACK TO A SET OF PrepRawData.

Main fit method. The TrackParameters is a first estimate for the track, represented close to the origin. Use-cases can be thought of that make it necessary to control toggling outlier removal and material effects not via job options (once-per-job) but at each call (toggle within event, large set of fast fit followed by one final full fit).

Implemented in Trk::iPatFitter, Trk::DistributedKalmanFilter, and Trk::GaussianSumFitter.

◆ fit() [3/6]

virtual std::unique_ptr<Track> Trk::ITrackFitter::fit ( const EventContext &  ctx,
const Track track,
const MeasurementSet measSet,
const RunOutlierRemoval  runOutlier = false,
const ParticleHypothesis  matEffects = Trk::nonInteracting 
) const
pure virtualinherited

RE-FIT A TRACK, ADDING A FITTABLE MEASUREMENT SET.

this method will use the vector of measurements from the existing track and refit adding the new measurements. The code is in this class, but can be overwritten by inheriting classes.

Implemented in Trk::GaussianSumFitter, Trk::iPatFitter, and Trk::DistributedKalmanFilter.

◆ fit() [4/6]

virtual std::unique_ptr<Track> Trk::ITrackFitter::fit ( const EventContext &  ctx,
const Track track,
const PrepRawDataSet prepRawSet,
const RunOutlierRemoval  runOutlier = false,
const ParticleHypothesis  matEffects = Trk::nonInteracting 
) const
pure virtualinherited

RE-FIT A TRACK, ADDING A PRD SET.

this method will disintegrate the track back to PRD and call the fit(PRDset) method.

Implemented in Trk::GaussianSumFitter, Trk::iPatFitter, and Trk::DistributedKalmanFilter.

◆ fit() [5/6]

virtual std::unique_ptr<Track> Trk::ITrackFitter::fit ( const EventContext &  ctx,
const Track track,
const RunOutlierRemoval  runOutlier = false,
const ParticleHypothesis  matEffects = Trk::nonInteracting 
) const
pure virtualinherited

◆ fit() [6/6]

virtual std::unique_ptr<Track> Trk::ITrackFitter::fit ( const EventContext &  ctx,
const Track track1,
const Track track2,
const RunOutlierRemoval  runOutlier = false,
const ParticleHypothesis  matEffects = Trk::nonInteracting 
) const
pure virtualinherited

COMBINE TWO TRACKS BY REFITTING.

Specifically designed for combined muon fits, allowing to extract extra informations (ID-exit & MS-entrance parameters, layers, Mefos) from already fitted tracks.

Implemented in Trk::GaussianSumFitter, Trk::iPatFitter, and Trk::DistributedKalmanFilter.

◆ interfaceID()

static const InterfaceID& Trk::ITrackFitter::interfaceID ( )
inlinestaticinherited

Definition at line 45 of file ITrackFitter.h.

46  {
47  return IID_ITrackFitter;
48  }

Friends And Related Function Documentation

◆ Chi2DerivCalcTool

friend class Chi2DerivCalcTool
friend

Definition at line 34 of file IGlobalTrackFitter.h.

◆ ShiftingDerivCalcTool

friend class ShiftingDerivCalcTool
friend

Definition at line 33 of file IGlobalTrackFitter.h.


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