Template Class GridDensityVertexFinder

Nested Relationships

Nested Types

Class Documentation

template<int mainGridSize = 2000, int trkGridSize = 15, typename vfitter_t = DummyVertexFitter<>>
class Acts::GridDensityVertexFinder

Vertex finder that makes use of a track density grid.

Each single track is modelled as a 2(!)-dim Gaussian distribution grid in the d0-z0 plane, but only the overlap with the z-axis (i.e. a 1-dim density vector) needs to be calculated. All track contributions along the beam axis (main density grid) a superimposed and the z-value of the bin with the highest track density is returned as a vertex candidate.

Template Parameters
  • mainGridSize: The size of the z-axis 1-dim main density grid

  • trkGridSize: The 2(!)-dim grid size of a single track, i.e. a single track is modelled as a (trkGridSize x trkGridSize) grid in the d0-z0 plane. Note: trkGridSize has to be an odd value.

Public Types

using MainGridVector = typename GridDensity::MainGridVector
using TrackGridVector = typename GridDensity::TrackGridVector

Public Functions

template<typename T = InputTrack_t, std::enable_if_t<std::is_same<T, BoundTrackParameters>::value, int> = 0>
GridDensityVertexFinder(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>
GridDensityVertexFinder()

Default constructor used if InputTrack_t type == BoundTrackParameters.

GridDensityVertexFinder(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

GridDensityVertexFinder(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.

Return

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

Parameters
  • trackVector: Input track collection

  • vertexingOptions: Vertexing options

  • state: The state object to cache the density grid and density contributions of each track, to be used if cacheGridStateForTrackRemoval == true

struct Config

The Config struct.

Public Functions

Config(float zMinMax = 100)

Parameters
  • zMinMax: min and max z value of big z-axis grid

Config(const GridDensity &gDensity)

Parameters
  • gDensity: The grid density

Public Members

bool cacheGridStateForTrackRemoval = true
double d0SignificanceCut = maxD0TrackSignificance * maxD0TrackSignificance
bool estimateSeedWidth = false
GridDensity gridDensity
double maxD0TrackSignificance = 3.5
double maxZ0TrackSignificance = 12.
double z0SignificanceCut = maxZ0TrackSignificance * maxZ0TrackSignificance
struct State

The State struct.

Only needed if cacheGridStateForTrackRemoval == true

Public Members

std::map<const InputTrack_t*, std::pair<int, TrackGridVector>> binAndTrackGridMap
bool isInitialized = false
MainGridVector mainGrid = MainGridVector::Zero()
std::map<const InputTrack_t*, bool> trackSelectionMap
std::vector<const InputTrack_t*> tracksToRemove