File Clusterization.hpp¶
Variables
-
template<typename T>
constexpr bool CellConcept = Concepts::CellConceptImpl<T>::value¶
-
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.
Functions
-
template<typename cell_t>
std::vector<std::vector<cell_t>> createClusters(std::unordered_map<size_t, std::pair<cell_t, bool>> &cellMap, size_t nBins0, bool commonCorner = true, double threshold = 0.)¶ create clusters This function recieves digitization cells and bundles the neighbouring to create clusters later and does cell merging.
Furthermore an energy cut (excluding cells which fall below threshold) can be applied. The function is templated on the cell type to allow users to use their own implementation
- Template Parameters
Cell – the digitizated cell
- Parameters
cellMap – [in] map of all cells per cell ID on module
nBins0 – [in] number of bins in direction 0
commonCorner – [in] flag indicating if also cells sharing a common corner should be merged into one cluster
threshold – [in] possible activation threshold to be applied
- Returns
vector (the different clusters) of vector of digitization cells (the cells which belong to each cluster)
-
template<typename cell_t>
void fillCluster(std::vector<std::vector<cell_t>> &mergedCells, std::unordered_map<size_t, std::pair<cell_t, bool>> &cellMap, size_t index, size_t nBins0, bool commonCorner = true, double activation = 0.)¶ fillCluster This function is a helper function internally used by Acts::createClusters.
It does connected component labelling using a hash map in order to find out which cells are neighbours. This function is called recursively by all neighbours of the current cell. The function is templated on the cell type to allow users to use their own implementation
- Template Parameters
Cell – the digitizated cell
- Parameters
mergedCells – [inout] the final vector of cells to which cells of one cluster should be added
cellMap – [inout] the hashmap of all present cells + a flag indicating if they have been added to a cluster already, with the key being the global grid index
index – [in] the current global grid index of the cell
nBins0 – [in] number of bins in direction 0
commonCorner – [in] flag indicating if also cells sharing a common corner should be merged into one cluster
activation – [in] possible activation threshold to be applied
-
template<typename cell_t>