Template Class ImpactPointEstimator

Nested Relationships

Nested Types

Class Documentation

template<typename input_track_t, typename propagator_t, typename propagator_options_t = PropagatorOptions<>>
class Acts::ImpactPointEstimator

Estimator for impact point calculations.

Public Functions

ImpactPointEstimator(const Config &cfg)

Constructor.

Parameters
  • cfg: Configuration object

Result<double> calculate3dDistance(const GeometryContext &gctx, const BoundTrackParameters &trkParams, const Vector3 &vtxPos, State &state) const

Calculates 3D distance between a track and a 3D point.

Return

Distance

Parameters
  • gctx: The geometry context

  • trkParams: Track parameters

  • vtxPos: Position to calculate distance to

  • state: The state object

Result<std::unique_ptr<const BoundTrackParameters>> estimate3DImpactParameters(const GeometryContext &gctx, const Acts::MagneticFieldContext &mctx, const BoundTrackParameters &trkParams, const Vector3 &vtxPos, State &state) const

Creates track parameters bound to plane at point of closest approach in 3d to given reference position.

The parameters and errors are defined on the plane intersecting the track at point of closest approach, with track orthogonal to the plane and center of the plane defined as the given reference point (vertex).

Return

New track params

Parameters
  • gctx: The geometry context

  • mctx: The magnetic field context

  • trkParams: Track parameters

  • vtxPos: Reference position (vertex)

  • state: The state object

Result<ImpactParametersAndSigma> estimateImpactParameters(const BoundTrackParameters &track, const Vertex<input_track_t> &vtx, const GeometryContext &gctx, const MagneticFieldContext &mctx) const

Estimates the impact parameters and their errors of a given track w.r.t.

a vertex by propagating the trajectory state towards the vertex position.

Parameters
  • track: Track to estimate IP from

  • vtx: Vertex the track belongs to

  • gctx: The geometry context

  • mctx: The magnetic field context

Result<double> get3dVertexCompatibility(const GeometryContext &gctx, const BoundTrackParameters *trkParams, const Vector3 &vertexPos) const

Estimates the compatibility of a track to a vertex position based on the 3d distance between the track and the vertex.

Return

The compatibility value

Parameters
  • gctx: The Geometry context

  • track: Track parameters at point of closest approach in 3d as retrieved by estimate3DImpactParameters

  • vertexPos: The vertex position

struct Config

Public Functions

Config(std::shared_ptr<MagneticFieldProvider> bIn, std::shared_ptr<propagator_t> prop)

Config constructor if magnetic field is present.

Parameters
  • bIn: The magnetic field

  • prop: The propagator

Config(std::shared_ptr<propagator_t> prop)

Config constructor without B field -> uses NullBField provided)

Parameters
  • prop: The propagator

Public Members

std::shared_ptr<MagneticFieldProvider> bField

Magnetic field.

int maxIterations = 20

Max. number of iterations in Newton method.

double maxRho = 1e+15

Maximum curvature value.

double minQoP = 1e-15

Minimum q/p value.

double precision = 1.e-10

Desired precision in deltaPhi in Newton method.

std::shared_ptr<propagator_t> propagator

Propagator.

struct State

Public Functions

State(MagneticFieldProvider::Cache fieldCacheIn)

The state constructor.

Parameters
  • mctx: The magnetic field context

Public Members

MagneticFieldProvider::Cache fieldCache

Magnetic field cache.