EICrecon
JANA based reconstruction for the EPIC detector
Loading...
Searching...
No Matches
Public Member Functions | List of all members
eicrecon::TrackClusterMergeSplitter Class Reference

Track-Based Cluster Merger/Splitter. More...

#include <TrackClusterMergeSplitter.h>

Inheritance diagram for eicrecon::TrackClusterMergeSplitter:
Inheritance graph
[legend]
Collaboration diagram for eicrecon::TrackClusterMergeSplitter:
Collaboration graph
[legend]

Public Member Functions

 TrackClusterMergeSplitter (std::string_view name)
 ! Algorithm constructor
 
void process (const Input &, const Output &) const final
 
- Public Member Functions inherited from eicrecon::WithPodConfig< TrackClusterMergeSplitterConfig >
TrackClusterMergeSplitterConfiggetConfig ()
 Get a configuration to be changed.
 
TrackClusterMergeSplitterConfigapplyConfig (TrackClusterMergeSplitterConfig cfg)
 Sets a configuration (config is properly copyible)
 

Additional Inherited Members

- Public Types inherited from eicrecon::WithPodConfig< TrackClusterMergeSplitterConfig >
using ConfigType = TrackClusterMergeSplitterConfig
 
- Protected Attributes inherited from eicrecon::WithPodConfig< TrackClusterMergeSplitterConfig >
TrackClusterMergeSplitterConfig m_cfg
 

Detailed Description

Track-Based Cluster Merger/Splitter.

An algorithm which takes a collection of clusters, matches track projections, and then decides to merge or split those clusters based on average E/p from simulations.

Heavily inspired by Eur. Phys. J. C (2017) 77:466

Constructor & Destructor Documentation

◆ TrackClusterMergeSplitter()

eicrecon::TrackClusterMergeSplitter::TrackClusterMergeSplitter ( std::string_view  name)
inline

! Algorithm constructor

Member Function Documentation

◆ process()

void eicrecon::TrackClusterMergeSplitter::process ( const Input &  ,
const Output &   
) const
final

Merges and splits clusters based on matched tracks according to the following algorithm:

  1. Build map of clusters onto matched track projections.
  2. For each cluster-track pair: a. Calculate significance of pair's E/p wrt provided average and RMS of E/p b. If significance is less than minSigCut, merge all clusters within drAdd.
  3. Create a protocluster for each merged cluster
    • If multiple tracks point to same merged protocluster, create new protocluster for each projection with hits weighted relative to track.
  4. Convert any unmatched clusters into protoclusters.

The documentation for this class was generated from the following files: