File TrackDensityVertexFinder.hpp

namespace Acts

Note

This file is foreseen for the Geometry module to replace Extent

template<typename vfitter_t, typename track_density_t = GaussianTrackDensity<typename vfitter_t::InputTrack_t>>
class TrackDensityVertexFinder
#include <Acts/Vertexing/TrackDensityVertexFinder.hpp>

Finds a vertex seed based on the maximum of a track density function.

Each track is modelled as a 2d density function around its d0/z0 perigee parameter values. The z seed position is then found as the position of the maximum of all summed track density functions.

Ref. (1): https://cds.cern.ch/record/2670380

Template Parameters
  • vfitter_t – The vertex fitter type (needed to fulfill concept)

  • track_density_t – The track density type

Public Functions

template<typename T = InputTrack_t, std::enable_if_t<std::is_same<T, BoundTrackParameters>::value, int> = 0>
inline TrackDensityVertexFinder(const Config &cfg)

Constructor used if InputTrack_t type == BoundTrackParameters.

Parameters

cfg – Configuration object

template<typename T = InputTrack_t, std::enable_if_t<std::is_same<T, BoundTrackParameters>::value, int> = 0>
inline TrackDensityVertexFinder()

Default constructor used if InputTrack_t type == BoundTrackParameters.

inline TrackDensityVertexFinder(const Config &cfg, const std::function<BoundTrackParameters(InputTrack_t)> &func)

Constructor for user-defined InputTrack_t type =! BoundTrackParameters.

Parameters
  • cfg – Configuration object

  • func – Function extracting BoundTrackParameters from InputTrack_t object

inline TrackDensityVertexFinder(const std::function<BoundTrackParameters(InputTrack_t)> &func)

Constructor for user-defined InputTrack_t type =! BoundTrackParameters with default Config object.

Parameters

func – Function extracting BoundTrackParameters from InputTrack_t object

Result<std::vector<Vertex<InputTrack_t>>> find(const std::vector<const InputTrack_t*> &trackVector, const VertexingOptions<InputTrack_t> &vertexingOptions, State &state) const

Function that finds single vertex candidate.

Parameters
  • trackVector – Input track collection

  • vertexingOptions – Vertexing options

  • state – State for fulfilling interfaces

Returns

Vector of vertices, filled with a single vertex (for consistent interfaces)

Private Types

using InputTrack_t = typename vfitter_t::InputTrack_t

Private Members

Config m_cfg
std::function<BoundTrackParameters(InputTrack_t)> m_extractParameters

Function to extract track parameters, InputTrack_t objects are BoundTrackParameters by default, function to be overwritten to return BoundTrackParameters for other InputTrack_t objects.

Param InputTrack_t

object to extract track parameters from

struct Config
#include <Acts/Vertexing/TrackDensityVertexFinder.hpp>

The Config struct.

Public Members

track_density_t trackDensityEstimator
struct State
#include <Acts/Vertexing/TrackDensityVertexFinder.hpp>

State struct for fulfilling interface.