File FindDublets.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
-
void findDublets(std::size_t maxBlockSize, 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, float deltaRMin, float deltaRMax, float cotThetaMax, float collisionRegionMin, float collisionRegionMax, device_array<unsigned int> &middleBottomCounts, device_array<std::size_t> &middleBottomDublets, device_array<unsigned int> &middleTopCounts, device_array<std::size_t> &middleTopDublets)¶
Find all viable middle-bottom and middle-top dublets.
This function is run as the first step in the seed finding, looking for viable middle-bottom and middle-top spacepoint pairs for the subsequent steps of the code.
Note that
middleBottomCounts
andmiddleTopCounts
have type “unsigned int” instead of “std::size_t”, because the GPU code needs to execute atomic operations on these arrays. And CUDA does not define such operations on std::size_t (i.e. unsigned long).- Parameters
maxBlockSize – [in] The maximum block size to use on the GPU
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
deltaRMin – [in] Configuration parameter from
Acts::SeedfinderConfig
deltaRMax – [in] Configuration parameter from
Acts::SeedfinderConfig
cotThetaMax – [in] Configuration parameter from
Acts::SeedfinderConfig
collisionRegionMin – [in] Configuration parameter from
Acts::SeedfinderConfig
collisionRegionMax – [in] Configuration parameter from
Acts::SeedfinderConfig
middleBottomCounts – [out] 1-D array of the number of middle-bottom dublets found for each middle spacepoint
middleBottomDublets – [out] 2-D matrix of size
nMiddleSPs
xnBottomSPs
, holding the bottom spacepoint indices for the identified middle-bottom dubletsmiddleTopCounts – [out] 1-D array of the number of middle-top dublets found for each middle spacepoint
middleTopDublets – [out] 2-D matrix of size
nMiddleSPs
xnTopSPs
, holding the top spacepoint indices for the identified middle-top dublets
-
void findDublets(std::size_t maxBlockSize, 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, float deltaRMin, float deltaRMax, float cotThetaMax, float collisionRegionMin, float collisionRegionMax, device_array<unsigned int> &middleBottomCounts, device_array<std::size_t> &middleBottomDublets, device_array<unsigned int> &middleTopCounts, device_array<std::size_t> &middleTopDublets)¶
-
namespace Details
-
namespace Cuda