CbmRoot
Loading...
Searching...
No Matches
cbm::algo::trd::HitFinder2D Class Reference

Cluster finding and hit reconstruction algorithms for the TRD(2D) module. More...

#include <HitFinder2D.h>

Collaboration diagram for cbm::algo::trd::HitFinder2D:
[legend]

Public Types

typedef std::pair< Hit, std::vector< DigiRec > > resultType
 

Public Member Functions

 HitFinder2D ()
 Default constructor.
 
 HitFinder2D (HitFinder2DModPar params)
 Constructor with placement.
 
virtual ~HitFinder2D ()
 
std::vector< resultTypeoperator() (std::vector< Cluster2D > *clusters)
 Steering routine for building hits.
 
std::pair< int, HitFactory2DProjectDigis (const Cluster2D *cluster)
 
bool BuildHit (Hit *h, HitFactory2D &hitF)
 Implement topologic cuts for hit merging.
 
void SetHitTimeOffset (int dt)
 Time offset to synchronize TRD2D hits to the rest of detectors.
 

Private Member Functions

 HitFinder2D (const HitFinder2D &ref)
 
const HitFinder2Doperator= (const HitFinder2D &ref)
 
Hit MakeHit (int cId, const Cluster2D *cluster)
 
int GetPadRowCol (int address, int &c)
 Addressing ASIC on module based on id.
 
void CalibrateHit (Hit *h, const double dx, const double dy, const double edx, const double edy, const double edt, const double time, const double tdrift, const double eloss, const HitFactory2D &hitF)
 

Private Attributes

const float fClk = CbmTrdDigi::Clk(CbmTrdDigi::eCbmTrdAsicType::kFASP)
 
HitFinder2DModPar fParams
 Parameter container.
 
int fHitTimeOff = 0
 

Static Private Attributes

static Double_t fgDT [3] = {4.181e-6, 1586, 24}
 hit time offset for synchronization
 

Detailed Description

Cluster finding and hit reconstruction algorithms for the TRD(2D) module.

Author
Alexandru Bercucic aberc.nosp@m.uci@.nosp@m.niham.nosp@m..nip.nosp@m.ne.ro
Since
01.02.2019
Date
01.10.2021

Extend the TRD module reconstructor for the particular case of inner TRD-2D modules. The class is a collection of algorithms to :

  • identify time and spatially correlated digis and build clusters
  • identify the type of clusters and apply further merging/deconvolution
  • apply FEE (channel gain, baseline) and detector (energy gain, maps, etc) calibration
  • steer the calculation of hit 4D parameters (x, y, t, E)

Definition at line 42 of file HitFinder2D.h.

Member Typedef Documentation

◆ resultType

Definition at line 44 of file HitFinder2D.h.

Constructor & Destructor Documentation

◆ HitFinder2D() [1/3]

cbm::algo::trd::HitFinder2D::HitFinder2D ( )
inline

Default constructor.

Definition at line 47 of file HitFinder2D.h.

◆ HitFinder2D() [2/3]

cbm::algo::trd::HitFinder2D::HitFinder2D ( HitFinder2DModPar params)

Constructor with placement.

Definition at line 21 of file HitFinder2D.cxx.

◆ ~HitFinder2D()

virtual cbm::algo::trd::HitFinder2D::~HitFinder2D ( )
inlinevirtual

Definition at line 52 of file HitFinder2D.h.

◆ HitFinder2D() [3/3]

cbm::algo::trd::HitFinder2D::HitFinder2D ( const HitFinder2D & ref)
private

Member Function Documentation

◆ BuildHit()

◆ CalibrateHit()

void cbm::algo::trd::HitFinder2D::CalibrateHit ( Hit * h,
const double dx,
const double dy,
const double edx,
const double edy,
const double edt,
const double time,
const double tdrift,
const double eloss,
const HitFactory2D & hitF )
private

◆ GetPadRowCol()

int cbm::algo::trd::HitFinder2D::GetPadRowCol ( int address,
int & c )
inlineprivate

Addressing ASIC on module based on id.

Parameters
[in]idmodule wise ASIC identifier
Returns
ASIC address within experiment

Definition at line 274 of file HitFinder2D.cxx.

References fParams, and cbm::algo::trd::HitFinder2DModPar::rowPar.

Referenced by ProjectDigis().

◆ MakeHit()

Hit cbm::algo::trd::HitFinder2D::MakeHit ( int cId,
const Cluster2D * cluster )
private

◆ operator()()

std::vector< trd::HitFinder2D::resultType > cbm::algo::trd::HitFinder2D::operator() ( std::vector< Cluster2D > * clusters)

Steering routine for building hits.

Definition at line 24 of file HitFinder2D.cxx.

References MakeHit().

◆ operator=()

const HitFinder2D & cbm::algo::trd::HitFinder2D::operator= ( const HitFinder2D & ref)
private

◆ ProjectDigis()

◆ SetHitTimeOffset()

void cbm::algo::trd::HitFinder2D::SetHitTimeOffset ( int dt)
inline

Time offset to synchronize TRD2D hits to the rest of detectors.

Parameters
dtoffset in [ns]

Definition at line 66 of file HitFinder2D.h.

References fHitTimeOff.

Member Data Documentation

◆ fClk

const float cbm::algo::trd::HitFinder2D::fClk = CbmTrdDigi::Clk(CbmTrdDigi::eCbmTrdAsicType::kFASP)
private

Definition at line 74 of file HitFinder2D.h.

Referenced by BuildHit(), and CalibrateHit().

◆ fgDT

double cbm::algo::trd::HitFinder2D::fgDT = {4.181e-6, 1586, 24}
staticprivate

hit time offset for synchronization

Definition at line 89 of file HitFinder2D.h.

Referenced by BuildHit().

◆ fHitTimeOff

int cbm::algo::trd::HitFinder2D::fHitTimeOff = 0
private

Definition at line 87 of file HitFinder2D.h.

Referenced by CalibrateHit(), and SetHitTimeOffset().

◆ fParams

HitFinder2DModPar cbm::algo::trd::HitFinder2D::fParams
private

Parameter container.

Definition at line 76 of file HitFinder2D.h.

Referenced by BuildHit(), CalibrateHit(), GetPadRowCol(), MakeHit(), and ProjectDigis().


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