File FindTriplets.hpp

namespace Acts

Set the Geometry Context PLUGIN.

Set the Calibration Context PLUGIN.

Convenience functions to ease creation of and Acts::InterpolatedMaterialMap and to avoid code duplication.

Set the Mangetic Field Context PLUGIN.

Convenience functions to ease creation of and Acts::InterpolatedBFieldMap and to avoid code duplication.

Currently implemented for the two most common formats: rz and xyz.

namespace Cuda
namespace Details

Namespace holding some implementation detail types that should not be used directly in client code.

Functions

std::vector<std::vector<Triplet>> findTriplets(const Info::Device &device, std::size_t maxBlockSize, const DubletCounts &dubletCounts, const SeedFilterConfig &seedConfig, const TripletFilterConfig &filterConfig, std::size_t nBottomSPs, const device_array<SpacePoint> &bottomSPs, std::size_t nMiddleSPs, const device_array<SpacePoint> &middleSPs, std::size_t nTopSPs, const device_array<SpacePoint> &topSPs, const device_array<unsigned int> &middleBottomCounts, const device_array<std::size_t> &middleBottomDublets, const device_array<unsigned int> &middleTopCounts, const device_array<std::size_t> &middleTopDublets, float maxScatteringAngle2, float sigmaScattering, float minHelixDiameter2, float pT2perRadius, float impactMax)

Find all viable triplets from the provided spacepoint dublets.

This function is used to find a “loosely selected” set of seed candidates that still need to be filtered through Acts::SeedFilter::filterSeeds_1SpFixed before returning it to the user.

Parameters
  • device[in] Properties of the device that the code will be running on

  • maxBlockSize[in] The maximum block size to use on the GPU

  • dubletCounts[in] The output object from Acts::Cuda::Details::countDublets

  • seedConfig[in] Configuration parameters for the triplet finding/filtering

  • filterConfig[in] User provided settings (code…) for the triplet filtering

  • nBottomSPs[in] The number of bottom spacepoints in bottomSPs

  • bottomSPs[in] Properties of all of the bottom spacepoints

  • nMiddleSPs[in] The number of middle spacepoints in middleSPs

  • middleSPs[in] Properties of all of the middle spacepoints

  • nTopSPs[in] The number of top spacepoints in topSPs

  • topSPs[in] Properties of all of the top spacepoints

  • middleBottomCounts[in] 1-D array of the number of middle-bottom dublets found for each middle spacepoint

  • middleBottomDublets[in] 2-D matrix of size nMiddleSPs x nBottomSPs, holding the bottom spacepoint indices for the identified middle-bottom dublets

  • middleTopCounts[in] 1-D array of the number of middle-top dublets found for each middle spacepoint

  • middleTopDublets[in] 2-D matrix of size nMiddleSPs x nTopSPs, holding the top spacepoint indices for the identified middle-top dublets

  • maxScatteringAngle2[in] Configuration parameter from Acts::SeedfinderConfig

  • sigmaScattering[in] Configuration parameter from Acts::SeedfinderConfig

  • minHelixDiameter2[in] Configuration parameter from Acts::SeedfinderConfig

  • pT2perRadius[in] Configuration parameter from Acts::SeedfinderConfig

  • impactMax[in] Configuration parameter from Acts::SeedfinderConfig

Returns

A 2-D structure holding the parameters of the identified triplets for each middle spacepoint