All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups
sistrip::SiStripClus Class Reference

#include <SiStripClus.h>

Inheritance diagram for sistrip::SiStripClus:
[legend]

Public Member Functions

virtual ProcessornewProcessor ()
 Method that returns a new instance of this processor. More...
 
 SiStripClus ()
 Constructor - set processor description and register processor parameters. More...
 
virtual void init ()
 Method called at the beginning of data processing - used for initialization. More...
 
virtual void processRunHeader (LCRunHeader *run)
 Method called for each run - used for run header processing. More...
 
virtual void processEvent (LCEvent *event)
 Method called for each event - used for event data processing. More...
 
virtual void check (LCEvent *event)
 Method called after each event - used for data checking. More...
 
virtual void end ()
 Method called after all data processing. More...
 

Protected Member Functions

ClsVec findClus (SensorStripMap &sensorMap)
 Method searching for clusters - first, strips above _SNseed threshold, so-called seed strips, are defined. More...
 
void calcHits (ClsVec &clsVec, IMPL::LCCollectionVec *colOfTrkHits)
 Method calculating hits from given clusters. More...
 
float * calcResolution (const int &layerID, const double &hitTheta, const double &posZ)
 Method calculating hit resolution, i.e. covariance matrix. More...
 
void updateMap (TrackerPulseImpl *pulse, SensorStripMap &sensorMap)
 Method to update and store the Sensor strip map. More...
 
void releaseMap (SensorStripMap &sensorMap)
 Method to release memory of the SensorStripMap. More...
 
void printProcessorParams () const
 Method printing processor parameters. More...
 
void printHitInfo (const StripCluster *pCluster) const
 Method printing hit info. More...
 

Protected Attributes

std::string _inColName
 LCIO input collection name. More...
 
std::string _outColName
 LCIO output collection name. More...
 
std::string _relColNamePlsToSim
 LCIO input relation collection name - TrackerPulse <-> SimTrkHit. More...
 
float _CMSnoise
 Common mode subtracted noise, set in ENC. More...
 
float _SNseed
 Signal to noise ratio cut for seed strips. More...
 
float _SNadjacent
 Signal to noise ratio cut for adjacent strips. More...
 
float _SNtotal
 Signal to noise ratio cut for total cluster. More...
 
float _TanOfAvgHLorentzShift
 Tangent of holes' average Lorentz shift. More...
 
bool _floatStripsRPhi
 Is every even strip floating in R-Phi? More...
 
bool _floatStripsZ
 Is every even strip floating in Z? More...
 
SiStripGeom_geometry
 All geometry information from Gear xml file. More...
 
std::vector< float > _resSVDFirstInRPhi
 Mean strip resolution in RPhi - 1st layer; in [mm]. More...
 
std::vector< float > _resSVDOtherInRPhi
 Mean strip resolution in RPhi - other layers; in [mm]. More...
 
std::vector< float > _resSVDFirstInZ
 Mean strip resolution in Z - 1st layer; in [mm]. More...
 
std::vector< float > _resSVDOtherInZ
 Mean strip resolution in Z - other layers; in [mm]. More...
 
LCRelationNavigator * _navigatorPls
 
double _pitchFront
 Pitch in the middle of the front sensor. More...
 
double _pitchRear
 Pitch in the middle of the rear sensor. More...
 
std::string _subdetector
 Name of the subdetector to be clusterize. More...
 

Private Member Functions

template<class It >
StripChargeMapstoreHitsAdjacents (StripChargeMap &clsStripsIn, It schmap, const It &endIt, StripChargeMap &cM)
 Calculated and stored the hits adjacents. More...
 

Private Attributes

int _nRun
 Run number. More...
 
int _nEvent
 Event number. More...
 

Detailed Description

Definition at line 69 of file SiStripClus.h.

Constructor & Destructor Documentation

sistrip::SiStripClus::SiStripClus ( )

Constructor - set processor description and register processor parameters.

Definition at line 49 of file SiStripClus.cc.

Member Function Documentation

void sistrip::SiStripClus::calcHits ( ClsVec clsVec,
IMPL::LCCollectionVec *  colOfTrkHits 
)
protected

Method calculating hits from given clusters.

Definition at line 1680 of file SiStripClus.cc.

float * sistrip::SiStripClus::calcResolution ( const int &  layerID,
const double &  hitTheta,
const double &  posZ 
)
protected

Method calculating hit resolution, i.e. covariance matrix.

Definition at line 1829 of file SiStripClus.cc.

void sistrip::SiStripClus::check ( LCEvent *  event)
virtual

Method called after each event - used for data checking.

Definition at line 466 of file SiStripClus.cc.

void sistrip::SiStripClus::end ( )
virtual

Method called after all data processing.

Definition at line 473 of file SiStripClus.cc.

ClsVec sistrip::SiStripClus::findClus ( SensorStripMap sensorMap)
protected

Method searching for clusters - first, strips above _SNseed threshold, so-called seed strips, are defined.

Then the strips adjacent to the seeds and above _SNadjacent threshold are extracted. Finally, clusters taken as Gaussian are calculated (if total charge is above _SNtotal threshold) and their mean positions and sigmas are saved in either R-Phi or Z. Finally, they are mixed into 3D cluster. (input parameter: sensor map of strips with total integrated charge, output parameter: sensor map of clusters found by this algorithm)

Definition at line 506 of file SiStripClus.cc.

void sistrip::SiStripClus::init ( )
virtual

Method called at the beginning of data processing - used for initialization.

Definition at line 229 of file SiStripClus.cc.

virtual Processor* sistrip::SiStripClus::newProcessor ( )
inlinevirtual

Method that returns a new instance of this processor.

Definition at line 74 of file SiStripClus.h.

void sistrip::SiStripClus::printHitInfo ( const StripCluster pCluster) const
protected

Method printing hit info.

Definition at line 2093 of file SiStripClus.cc.

void sistrip::SiStripClus::printProcessorParams ( ) const
protected

Method printing processor parameters.

Definition at line 2059 of file SiStripClus.cc.

void sistrip::SiStripClus::processEvent ( LCEvent *  event)
virtual

Method called for each event - used for event data processing.

Definition at line 301 of file SiStripClus.cc.

void sistrip::SiStripClus::processRunHeader ( LCRunHeader *  run)
virtual

Method called for each run - used for run header processing.

Definition at line 286 of file SiStripClus.cc.

void sistrip::SiStripClus::releaseMap ( SensorStripMap sensorMap)
protected

Method to release memory of the SensorStripMap.

Definition at line 2026 of file SiStripClus.cc.

template<class It >
StripChargeMap & sistrip::SiStripClus::storeHitsAdjacents ( StripChargeMap clsStripsIn,
It  schmap,
const It &  endIt,
StripChargeMap cM 
)
private

Calculated and stored the hits adjacents.

Definition at line 1645 of file SiStripClus.cc.

void sistrip::SiStripClus::updateMap ( TrackerPulseImpl *  pulse,
SensorStripMap sensorMap 
)
protected

Method to update and store the Sensor strip map.

Definition at line 1947 of file SiStripClus.cc.

Member Data Documentation

float sistrip::SiStripClus::_CMSnoise
protected

Common mode subtracted noise, set in ENC.

Definition at line 135 of file SiStripClus.h.

bool sistrip::SiStripClus::_floatStripsRPhi
protected

Is every even strip floating in R-Phi?

Definition at line 145 of file SiStripClus.h.

bool sistrip::SiStripClus::_floatStripsZ
protected

Is every even strip floating in Z?

Definition at line 146 of file SiStripClus.h.

SiStripGeom* sistrip::SiStripClus::_geometry
protected

All geometry information from Gear xml file.

Definition at line 147 of file SiStripClus.h.

std::string sistrip::SiStripClus::_inColName
protected

LCIO input collection name.

Definition at line 130 of file SiStripClus.h.

LCRelationNavigator* sistrip::SiStripClus::_navigatorPls
protected

Definition at line 156 of file SiStripClus.h.

int sistrip::SiStripClus::_nEvent
private

Event number.

Definition at line 199 of file SiStripClus.h.

int sistrip::SiStripClus::_nRun
private

Run number.

Definition at line 198 of file SiStripClus.h.

std::string sistrip::SiStripClus::_outColName
protected

LCIO output collection name.

Definition at line 131 of file SiStripClus.h.

double sistrip::SiStripClus::_pitchFront
protected

Pitch in the middle of the front sensor.

Definition at line 159 of file SiStripClus.h.

double sistrip::SiStripClus::_pitchRear
protected

Pitch in the middle of the rear sensor.

Definition at line 160 of file SiStripClus.h.

std::string sistrip::SiStripClus::_relColNamePlsToSim
protected

LCIO input relation collection name - TrackerPulse <-> SimTrkHit.

Definition at line 132 of file SiStripClus.h.

std::vector<float> sistrip::SiStripClus::_resSVDFirstInRPhi
protected

Mean strip resolution in RPhi - 1st layer; in [mm].

Definition at line 150 of file SiStripClus.h.

std::vector<float> sistrip::SiStripClus::_resSVDFirstInZ
protected

Mean strip resolution in Z - 1st layer; in [mm].

Definition at line 152 of file SiStripClus.h.

std::vector<float> sistrip::SiStripClus::_resSVDOtherInRPhi
protected

Mean strip resolution in RPhi - other layers; in [mm].

Definition at line 151 of file SiStripClus.h.

std::vector<float> sistrip::SiStripClus::_resSVDOtherInZ
protected

Mean strip resolution in Z - other layers; in [mm].

Definition at line 153 of file SiStripClus.h.

float sistrip::SiStripClus::_SNadjacent
protected

Signal to noise ratio cut for adjacent strips.

Definition at line 137 of file SiStripClus.h.

float sistrip::SiStripClus::_SNseed
protected

Signal to noise ratio cut for seed strips.

Definition at line 136 of file SiStripClus.h.

float sistrip::SiStripClus::_SNtotal
protected

Signal to noise ratio cut for total cluster.

Definition at line 138 of file SiStripClus.h.

std::string sistrip::SiStripClus::_subdetector
protected

Name of the subdetector to be clusterize.

Definition at line 162 of file SiStripClus.h.

float sistrip::SiStripClus::_TanOfAvgHLorentzShift
protected

Tangent of holes' average Lorentz shift.

Definition at line 142 of file SiStripClus.h.


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