Algorithm that clusters calorimeter hits into showers.
More...
#include <algorithms/clustering/CaloDBSCANClustering.h>
|
using | HitIt = std::vector< Hit >::const_iterator |
|
Algorithm that clusters calorimeter hits into showers.
This algorithm creates aggregates hits into showers using a DBSCAN clusterization method
name | type | store | optional | description |
caloHitsGeV | CaloHits | evStore | no | Hits in the calorimeter. |
caloGeoParams | CaloGeoParams | gloabStore | no | Geometry information of the calorimeter. |
Produced event objects:
name | alias | type | store | description |
caloClusters | | CaloClusters | evStore | A collection of clustered hits |
Parameters:
name | type | default value | description |
threshold | float | 0 | eDep threshold |
maxDist | float | 6 | The maximum distance between two hits to be considered connected |
minHits | int | 2 | The minimum number of hits to start the clustering process |
minShowerHits | int | 9 | The minimum number of hits to save a shower |
◆ HitIt
◆ CaloDBSCANClustering()
Herd::CaloDBSCANClustering::CaloDBSCANClustering |
( |
const std::string & |
name | ) |
|
Constructor.
- Parameters
-
name | The name of the algorithm. |
◆ BuildNeighborsMap()
void Herd::CaloDBSCANClustering::BuildNeighborsMap |
( |
CaloGeoParams & |
caloGeoParams | ) |
|
|
private |
◆ BuildShowerFromSeed()
void Herd::CaloDBSCANClustering::BuildShowerFromSeed |
( |
HitIt |
seedIt, |
|
|
const CaloHits & |
hits |
|
) |
| |
|
private |
◆ CountHitNeighbors()
unsigned int Herd::CaloDBSCANClustering::CountHitNeighbors |
( |
HitIt |
hitIt, |
|
|
const CaloHits & |
hits |
|
) |
| |
|
private |
◆ FindNeighborsHitID()
std::vector< unsigned int > Herd::CaloDBSCANClustering::FindNeighborsHitID |
( |
HitIt |
hitIt, |
|
|
const CaloHits & |
hits |
|
) |
| |
|
private |
◆ FindShowers()
void Herd::CaloDBSCANClustering::FindShowers |
( |
CaloHits & |
caloHits | ) |
|
|
private |
◆ FreeObjects()
std::vector< std::string > Herd::CaloDBSCANClustering::FreeObjects |
( |
const std::vector< std::string > & |
objs, |
|
|
EA::Memory::Status |
memStatus |
|
) |
| |
|
override |
Free the memory of unneeded objects.
Currently this method frees the memory of the clusters if memStatus
is EXHAUSTED.
- Parameters
-
objs | The list of objects to be freed. |
memStatus | The current memory occupation status. |
- Returns
- a list of freed objects.
◆ Initialize()
bool Herd::CaloDBSCANClustering::Initialize |
( |
| ) |
|
|
override |
Initialization of the algorithm.
- Returns
- true if the initialization procedure is successful.
◆ NeighboringCubesID() [1/2]
const std::vector<unsigned int>& Herd::CaloDBSCANClustering::NeighboringCubesID |
( |
unsigned int |
volID | ) |
|
|
inlineprivate |
◆ NeighboringCubesID() [2/2]
std::vector< unsigned int > Herd::CaloDBSCANClustering::NeighboringCubesID |
( |
unsigned int |
volID, |
|
|
CaloGeoParams & |
caloGeoParams |
|
) |
| |
|
private |
◆ Process()
bool Herd::CaloDBSCANClustering::Process |
( |
| ) |
|
|
override |
Process a single event.
- Returns
- If event processing is successful.
◆ m_caloGeoParams
EA::observer_ptr<CaloGeoParams> Herd::CaloDBSCANClustering::m_caloGeoParams |
|
private |
◆ m_caloHitsName
std::string Herd::CaloDBSCANClustering::m_caloHitsName |
|
private |
◆ m_evStore
EA::EventStorePtr Herd::CaloDBSCANClustering::m_evStore |
|
private |
◆ m_globStore
EA::GlobalStorePtr Herd::CaloDBSCANClustering::m_globStore |
|
private |
◆ m_labels
std::map<unsigned int, int> Herd::CaloDBSCANClustering::m_labels |
|
private |
◆ m_maxDist
float Herd::CaloDBSCANClustering::m_maxDist |
|
private |
◆ m_minHits
unsigned int Herd::CaloDBSCANClustering::m_minHits |
|
private |
◆ m_minShowerHits
unsigned int Herd::CaloDBSCANClustering::m_minShowerHits |
|
private |
◆ m_neighborCubes
std::vector<std::vector<unsigned int> > Herd::CaloDBSCANClustering::m_neighborCubes |
|
private |
◆ m_nShowers
int Herd::CaloDBSCANClustering::m_nShowers |
|
private |
◆ m_showers
◆ m_threshold
float Herd::CaloDBSCANClustering::m_threshold |
|
private |
The documentation for this class was generated from the following files: