ATLAS Offline Software
Loading...
Searching...
No Matches
ActsTrk::IExtrapolationTool Class Referenceabstract

Tool to extrapolate bound track parameters through the Acts::TrackingGeometry. More...

#include <IExtrapolationTool.h>

Inheritance diagram for ActsTrk::IExtrapolationTool:
Collaboration diagram for ActsTrk::IExtrapolationTool:

Classes

struct  SurfaceRecordOptions
 Configuration struct to steer the propagation with surface record. More...

Public Types

enum class  VolumeAbort : std::uint8_t { atEntrance , atExit }
 Enumeration to define at which stage the propagation shall be terminated. More...
using RecordedMaterial = Acts::MaterialInteractor::result_type
 Abrivation of the recorded material.
using PropagationOutput
 Abrivation of the recorded steps and the allocated material.
using BoundParamVec_t = std::vector<Acts::BoundTrackParameters>
 Abrivation of the recorded surfaces along the propagation.

Public Member Functions

 DeclareInterfaceID (ActsTrk::IExtrapolationTool, 1, 0)
virtual Acts::Result< PropagationOutputpropagationSteps (const EventContext &ctx, const Acts::BoundTrackParameters &startParameters, const Acts::Direction navDir=Acts::Direction::Forward(), const double pathLimit=1._km) const =0
 Extrapolate the track parameters until the end of the world and record the performed steps & the allocated material.
virtual Acts::Result< BoundParamVec_tpropagateAndRecord (const EventContext &ctx, const Acts::BoundTrackParameters &startParameters, const SurfaceRecordOptions &recordOpts) const =0
 Propagate the track parameters forward throuht the detector and record the surface crossings along the trajectory.
virtual Acts::Result< PropagationOutputpropagationSteps (const EventContext &ctx, const Acts::BoundTrackParameters &startParameters, const Acts::Surface &target, const Acts::Direction navDir=Acts::Direction::Forward(), const double pathLimit=1._km) const =0
 Extrapolate the track parameters from a start to a target surface and record the peformed steps & allocated parameters.
virtual Acts::Result< Acts::BoundTrackParameters > propagate (const EventContext &ctx, const Acts::BoundTrackParameters &startParameters, const Acts::Surface &target, const Acts::Direction navDir=Acts::Direction::Forward(), const double pathLimit=1._km) const =0
 Extrapolates the track parameters from a start to a target surface and returns the extrapolated track parameters on that surface.
virtual Acts::Result< Acts::BoundTrackParameters > propagate (const EventContext &ctx, const Acts::BoundTrackParameters &startParameters, const Acts::TrackingVolume &target, const VolumeAbort stopVolumeFlag, const Acts::Direction navDir=Acts::Direction::Forward(), const double pathLimit=1._km) const =0
 Extrapolates the track parameters from the start parameters to a target tracking volume which needs to be part of the tracking geometry.
virtual Acts::Result< Acts::BoundTrackParameters > propagate (const EventContext &ctx, const Acts::BoundTrackParameters &startParameters, const Acts::Direction navDir=Acts::Direction::Forward(), const double pathLimit=1._km) const =0
 Propagate the track parameters until the end of the world volume.

Detailed Description

Tool to extrapolate bound track parameters through the Acts::TrackingGeometry.

Extrapolation can be either done towards a target surface,

Definition at line 30 of file IExtrapolationTool.h.

Member Typedef Documentation

◆ BoundParamVec_t

using ActsTrk::IExtrapolationTool::BoundParamVec_t = std::vector<Acts::BoundTrackParameters>

Abrivation of the recorded surfaces along the propagation.

Definition at line 46 of file IExtrapolationTool.h.

◆ PropagationOutput

Initial value:
std::pair<std::vector<Acts::detail::Step>,
Acts::MaterialInteractor::result_type RecordedMaterial
Abrivation of the recorded material.

Abrivation of the recorded steps and the allocated material.

Definition at line 43 of file IExtrapolationTool.h.

◆ RecordedMaterial

using ActsTrk::IExtrapolationTool::RecordedMaterial = Acts::MaterialInteractor::result_type

Abrivation of the recorded material.

Definition at line 41 of file IExtrapolationTool.h.

Member Enumeration Documentation

◆ VolumeAbort

enum class ActsTrk::IExtrapolationTool::VolumeAbort : std::uint8_t
strong

Enumeration to define at which stage the propagation shall be terminated.

Enumerator
atEntrance 
atExit 

Definition at line 36 of file IExtrapolationTool.h.

36 : std::uint8_t{
37 atEntrance, //Propagation stops at entrance of the target volume
38 atExit, // Propagation stops as soon as the mother volume is entered
39 };

Member Function Documentation

◆ DeclareInterfaceID()

ActsTrk::IExtrapolationTool::DeclareInterfaceID ( ActsTrk::IExtrapolationTool ,
1 ,
0  )

◆ propagate() [1/3]

virtual Acts::Result< Acts::BoundTrackParameters > ActsTrk::IExtrapolationTool::propagate ( const EventContext & ctx,
const Acts::BoundTrackParameters & startParameters,
const Acts::Direction navDir = Acts::Direction::Forward(),
const double pathLimit = 1._km ) const
pure virtual

Propagate the track parameters until the end of the world volume.

Parameters
ctxEventContext to fetch the alignment & magnetic field from the conditions store
startParametersReference to the bound track parameters encoding the start surface & the associated track parameters on the surface
navDirRun the propagation along (Foward) or opposite (Backward) to the track parameter's direction
pathLimitMaximum length of the propagated trajectory. The extrapolation is aborted if the limit is exceeded and no surface is not yet reached.

◆ propagate() [2/3]

virtual Acts::Result< Acts::BoundTrackParameters > ActsTrk::IExtrapolationTool::propagate ( const EventContext & ctx,
const Acts::BoundTrackParameters & startParameters,
const Acts::Surface & target,
const Acts::Direction navDir = Acts::Direction::Forward(),
const double pathLimit = 1._km ) const
pure virtual

Extrapolates the track parameters from a start to a target surface and returns the extrapolated track parameters on that surface.

If the extrapolation fails, a nullopt is returned

Parameters
ctxEventContext to fetch the alignment & magnetic field from the conditions store
startParametersReference to the bound track parameters encoding the start surface & the associated track parameters on the surface
targetReference to the surface onto which the track shall be extrapolated
navDirRun the propagation along (Foward) or opposite (Backward) to the track parameter's direction
pathLimitMaximum length of the propagated trajectory. The extrapolation is aborted if the limit is exceeded and the surface not yet reached.

◆ propagate() [3/3]

virtual Acts::Result< Acts::BoundTrackParameters > ActsTrk::IExtrapolationTool::propagate ( const EventContext & ctx,
const Acts::BoundTrackParameters & startParameters,
const Acts::TrackingVolume & target,
const VolumeAbort stopVolumeFlag,
const Acts::Direction navDir = Acts::Direction::Forward(),
const double pathLimit = 1._km ) const
pure virtual

Extrapolates the track parameters from the start parameters to a target tracking volume which needs to be part of the tracking geometry.

The extrapolation stops either if the mother volume is entered or the volume itself is entered

Parameters
ctxEventContext to fetch the alignment & magnetic field from the conditions store
startParametersReference to the bound track parameters encoding the start surface & the associated track parameters on the surface
targetReference to the tracking volume into which the extrapolation shall happen
navDirRun the propagation along (Foward) or opposite (Backward) to the track parameter's direction
stopVolumeFlagAbort extrapolation at entrance or exit of the volume
pathLimitMaximum length of the propagated trajectory. The extrapolation is aborted if the limit is exceeded and the surface not yet reached.

◆ propagateAndRecord()

virtual Acts::Result< BoundParamVec_t > ActsTrk::IExtrapolationTool::propagateAndRecord ( const EventContext & ctx,
const Acts::BoundTrackParameters & startParameters,
const SurfaceRecordOptions & recordOpts ) const
pure virtual

Propagate the track parameters forward throuht the detector and record the surface crossings along the trajectory.

Parameters
ctxEventContext to access the alignment and the magnetic field
startParametersThe track parameters from which the propagation shall start
recordOptsRecord options specifying the target and also the flags at which surface types the track parameters shall be recorded

◆ propagationSteps() [1/2]

virtual Acts::Result< PropagationOutput > ActsTrk::IExtrapolationTool::propagationSteps ( const EventContext & ctx,
const Acts::BoundTrackParameters & startParameters,
const Acts::Direction navDir = Acts::Direction::Forward(),
const double pathLimit = 1._km ) const
pure virtual

Extrapolate the track parameters until the end of the world and record the performed steps & the allocated material.

Parameters
ctxEventContext to fetch the alignment & magnetic field from the conditions store
startParametersReference to the bound track parameters encoding the start surface & the associated track parameters on the surface
navDirRun the propagation along (Foward) or opposite (Backward) to the track parameter's direction
pathLimitMaximum length of the propagated trajectory, if not aborted by the end of the world condition otherwise.

◆ propagationSteps() [2/2]

virtual Acts::Result< PropagationOutput > ActsTrk::IExtrapolationTool::propagationSteps ( const EventContext & ctx,
const Acts::BoundTrackParameters & startParameters,
const Acts::Surface & target,
const Acts::Direction navDir = Acts::Direction::Forward(),
const double pathLimit = 1._km ) const
pure virtual

Extrapolate the track parameters from a start to a target surface and record the peformed steps & allocated parameters.

Parameters
ctxEventContext to fetch the alignment & magnetic field from the conditions store
startParametersReference to the bound track parameters encoding the start surface & the associated track parameters on the surface
targetReference to the surface onto which the track shall be extrapolated
navDirRun the propagation along (Foward) or opposite (Backward) to the track parameter's direction
pathLimitMaximum length of the propagated trajectory. The extrapolation is aborted if the limit is exceeded and the surface not yet reached.

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