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 k-means
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, |
|
|
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.
◆ GetNeighboringCubesID() [1/2]
std::vector< unsigned int > Herd::CaloDBSCANClustering::GetNeighboringCubesID |
( |
unsigned int |
volID, |
|
|
CaloGeoParams & |
caloGeoParams |
|
) |
| |
|
private |
◆ GetNeighboringCubesID() [2/2]
const std::vector<unsigned int>& Herd::CaloDBSCANClustering::GetNeighboringCubesID |
( |
unsigned int |
volID | ) |
|
|
inlineprivate |
◆ Initialize()
bool Herd::CaloDBSCANClustering::Initialize |
( |
| ) |
|
|
override |
Initialization of the algorithm.
- Returns
- true if the initialization procedure is successful.
◆ Process()
bool Herd::CaloDBSCANClustering::Process |
( |
| ) |
|
|
override |
Process a single event.
- Returns
- If event processing is successful.
◆ _caloGeoParams
observer_ptr<CaloGeoParams> Herd::CaloDBSCANClustering::_caloGeoParams |
|
private |
◆ _caloHitsName
std::string Herd::CaloDBSCANClustering::_caloHitsName |
|
private |
◆ _evStore
EventStorePtr Herd::CaloDBSCANClustering::_evStore |
|
private |
◆ _globStore
GlobalStorePtr Herd::CaloDBSCANClustering::_globStore |
|
private |
◆ _maxDist
float Herd::CaloDBSCANClustering::_maxDist |
|
private |
◆ _minHits
unsigned int Herd::CaloDBSCANClustering::_minHits |
|
private |
◆ _minShowerHits
unsigned int Herd::CaloDBSCANClustering::_minShowerHits |
|
private |
◆ _showers
◆ _threshold
float Herd::CaloDBSCANClustering::_threshold |
|
private |
◆ m_labels
std::map<unsigned int, int> Herd::CaloDBSCANClustering::m_labels |
|
private |
◆ m_neighborCubes
std::vector<std::vector<unsigned int> > Herd::CaloDBSCANClustering::m_neighborCubes |
|
private |
◆ nShowers
int Herd::CaloDBSCANClustering::nShowers |
|
private |
The documentation for this class was generated from the following files: