Project
Loading...
Searching...
No Matches
o2::tpc::CalculatedEdx Class Reference

#include <CalculatedEdx.h>

Public Member Functions

 CalculatedEdx ()
 
 ~CalculatedEdx ()=default
 
void setMembers (std::vector< o2::tpc::TPCClRefElem > *tpcTrackClIdxVecInput, const o2::tpc::ClusterNativeAccess &clIndex, std::vector< o2::tpc::TrackTPC > *vTPCTracksArrayInp)
 
void setRefit (const unsigned int nHbfPerTf=32)
 set the refitter
 
void setPropagateTrack (const bool propagate)
 
void setDebug (const bool debug)
 
void setFieldNominalGPUBz (const float field)
 
void setMaxMissingCl (int maxMissingCl)
 
void setMinChargeTotThreshold (float minChargeTotThreshold)
 
void setMinChargeMaxThreshold (float minChargeMaxThreshold)
 
void setStreamer (const char *debugRootFile)
 set the debug streamer
 
void setSCStreamer (const char *debugRootFile="debug_sc_corrections.root")
 set the debug streamer of the space-charge dedx correction
 
float getFieldNominalGPUBz ()
 
int getMaxMissingCl ()
 
float getMinChargeTotThreshold ()
 
float getMinChargeMaxThreshold ()
 
void fillMissingClusters (int missingClusters[4], float minChargeTot, float minChargeMax, int method, std::array< std::vector< float >, 5 > &chargeTotROC, std::array< std::vector< float >, 5 > &chargeMaxROC)
 fill missing clusters with minimum charge (method=0) or minimum charge/2 (method=1) or Landau (method=2)
 
void calculatedEdx (TrackTPC &track, dEdxInfo &output, float low=0.015f, float high=0.6f, CorrectionFlags correctionMask=CorrectionFlags::TopologyPol|CorrectionFlags::dEdxResidual, ClusterFlags clusterMask=ClusterFlags::None, int subthresholdMethod=0, const char *debugRootFile="dEdxDebug.root")
 
float getTruncMean (std::vector< float > &charge, float low, float high) const
 
float getTrackTopologyCorrection (const o2::tpc::TrackTPC &track, const unsigned int region) const
 
float getTrackTopologyCorrectionPol (const o2::tpc::TrackTPC &track, const o2::tpc::ClusterNative &cl, const unsigned int region, const float charge, ChargeType chargeType, const float threshold) const
 
void loadCalibsFromCCDB (long runNumberOrTimeStamp, const bool isMC=false)
 
void loadCalibsFromLocalCCDBFolder (const char *localCCDBFolder)
 
void setTrackTopologyCorrectionFromFile (const char *folder, const char *file, const char *object)
 
void setGainMapFromFile (const char *folder, const char *file, const char *object)
 
void setGainMapResidualFromFile (const char *folder, const char *file, const char *object)
 
void setResidualCorrectionFromFile (const char *folder, const char *file, const char *object)
 
void setZeroSuppressionThresholdFromFile (const char *folder, const char *file, const char *object)
 
void setMagneticFieldFromFile (const char *folder, const char *file, const char *object)
 
void setPropagatorFromFile (const char *folder, const char *file, const char *object)
 
void setLumi (const float lumi)
 
auto & getSCCorrection ()
 
unsigned int getOccupancy (const o2::tpc::ClusterNative &cl) const
 

Detailed Description

Definition at line 80 of file CalculatedEdx.h.

Constructor & Destructor Documentation

◆ CalculatedEdx()

CalculatedEdx::CalculatedEdx ( )

Definition at line 33 of file CalculatedEdx.cxx.

◆ ~CalculatedEdx()

o2::tpc::CalculatedEdx::~CalculatedEdx ( )
default

Member Function Documentation

◆ calculatedEdx()

void CalculatedEdx::calculatedEdx ( TrackTPC track,
dEdxInfo output,
float  low = 0.015f,
float  high = 0.6f,
CorrectionFlags  correctionMask = CorrectionFlags::TopologyPol | CorrectionFlags::dEdxResidual,
ClusterFlags  clusterMask = ClusterFlags::None,
int  subthresholdMethod = 0,
const char debugRootFile = "dEdxDebug.root" 
)

get the truncated mean for the input track with the truncation range, charge type, region and corrections the cluster charge is normalized by effective length*gain, you can turn off the normalization by setting all corrections to false

Parameters
trackinput track
outputoutput dEdxInfo
lowlower cluster cut
highhigher cluster cut
maskto apply different corrections: TopologySimple = simple analytical topology correction, TopologyPol = topology correction from polynomials, GainFull = full gain map from calibration container, GainResidual = residuals gain map from calibration container, dEdxResidual = residual dEdx correction

Definition at line 77 of file CalculatedEdx.cxx.

◆ fillMissingClusters()

void CalculatedEdx::fillMissingClusters ( int  missingClusters[4],
float  minChargeTot,
float  minChargeMax,
int  method,
std::array< std::vector< float >, 5 > &  chargeTotROC,
std::array< std::vector< float >, 5 > &  chargeMaxROC 
)

fill missing clusters with minimum charge (method=0) or minimum charge/2 (method=1) or Landau (method=2)

Definition at line 56 of file CalculatedEdx.cxx.

◆ getFieldNominalGPUBz()

float o2::tpc::CalculatedEdx::getFieldNominalGPUBz ( )
inline
Returns
returns magnetic field in kG

Definition at line 121 of file CalculatedEdx.h.

◆ getMaxMissingCl()

int o2::tpc::CalculatedEdx::getMaxMissingCl ( )
inline
Returns
returns maxMissingCl for subthreshold cluster treatment

Definition at line 124 of file CalculatedEdx.h.

◆ getMinChargeMaxThreshold()

float o2::tpc::CalculatedEdx::getMinChargeMaxThreshold ( )
inline
Returns
returns the upper limit for the possible minimum charge max in subthreshold treatment

Definition at line 130 of file CalculatedEdx.h.

◆ getMinChargeTotThreshold()

float o2::tpc::CalculatedEdx::getMinChargeTotThreshold ( )
inline
Returns
returns the upper limit for the possible minimum charge tot in subthreshold treatment

Definition at line 127 of file CalculatedEdx.h.

◆ getOccupancy()

unsigned int CalculatedEdx::getOccupancy ( const o2::tpc::ClusterNative cl) const
Returns
returns cluster occupancy for given cluster

Definition at line 676 of file CalculatedEdx.cxx.

◆ getSCCorrection()

auto & o2::tpc::CalculatedEdx::getSCCorrection ( )
inline
Returns
returns space-charge dedx correctin

Definition at line 222 of file CalculatedEdx.h.

◆ getTrackTopologyCorrection()

float CalculatedEdx::getTrackTopologyCorrection ( const o2::tpc::TrackTPC track,
const unsigned int  region 
) const

get effective track length using simple analytical topology correction

Parameters
trackinput track
regionpad region
Returns
returns simple analytical topology correction

Definition at line 503 of file CalculatedEdx.cxx.

◆ getTrackTopologyCorrectionPol()

float CalculatedEdx::getTrackTopologyCorrectionPol ( const o2::tpc::TrackTPC track,
const o2::tpc::ClusterNative cl,
const unsigned int  region,
const float  charge,
ChargeType  chargeType,
const float  threshold 
) const

get effective track length using topology correction from polynomials

Parameters
trackinput track
clcluster
regionpad region
chargetotal or maximum charge of the cluster, cl
chargeTypetotal or maximum
thresholdzero supression threshold
Returns
returns topology correction from polynomials

Definition at line 515 of file CalculatedEdx.cxx.

◆ getTruncMean()

float CalculatedEdx::getTruncMean ( std::vector< float > &  charge,
float  low,
float  high 
) const

get the truncated mean for the input charge vector and the truncation range low*nCl<nCl<high*nCl

Parameters
chargeinput vector
lowlower cluster cut (e.g. 0.015)
highhigher cluster cut (e.g. 0.6)

Definition at line 481 of file CalculatedEdx.cxx.

◆ loadCalibsFromCCDB()

void CalculatedEdx::loadCalibsFromCCDB ( long  runNumberOrTimeStamp,
const bool  isMC = false 
)

load calibration objects from CCDB

Parameters
runNumberOrTimeStamprun number or time stamp
isMCset if dEdx space-charge corrections will be loaded for MC or real data

Definition at line 533 of file CalculatedEdx.cxx.

◆ loadCalibsFromLocalCCDBFolder()

void CalculatedEdx::loadCalibsFromLocalCCDBFolder ( const char localCCDBFolder)

load calibration objects from local CCDB folder

Parameters
localCCDBFolderlocal CCDB folder

Definition at line 594 of file CalculatedEdx.cxx.

◆ setDebug()

void o2::tpc::CalculatedEdx::setDebug ( const bool  debug)
inline
Parameters
debuguse debug streamer and set debug vectors

Definition at line 100 of file CalculatedEdx.h.

◆ setFieldNominalGPUBz()

void o2::tpc::CalculatedEdx::setFieldNominalGPUBz ( const float  field)
inline
Parameters
fieldmagnetic field in kG, used for track propagation

Definition at line 103 of file CalculatedEdx.h.

◆ setGainMapFromFile()

void CalculatedEdx::setGainMapFromFile ( const char folder,
const char file,
const char object 
)

load gain map from a local file

Parameters
folderfolder path without a trailing /
filefile path starting with /
objectname of the object to load

Definition at line 612 of file CalculatedEdx.cxx.

◆ setGainMapResidualFromFile()

void CalculatedEdx::setGainMapResidualFromFile ( const char folder,
const char file,
const char object 
)

load gain map residual from a local file

Parameters
folderfolder path without a trailing /
filefile path starting with /
objectname of the object to load

Definition at line 622 of file CalculatedEdx.cxx.

◆ setLumi()

void o2::tpc::CalculatedEdx::setLumi ( const float  lumi)
inline
Parameters
lumiset luminosity for space-charge correction map scaling

Definition at line 219 of file CalculatedEdx.h.

◆ setMagneticFieldFromFile()

void CalculatedEdx::setMagneticFieldFromFile ( const char folder,
const char file,
const char object 
)

load magnetic field from a local file

Parameters
folderfolder path without a trailing /
filefile path starting with /
objectname of the object to load

Definition at line 652 of file CalculatedEdx.cxx.

◆ setMaxMissingCl()

void o2::tpc::CalculatedEdx::setMaxMissingCl ( int  maxMissingCl)
inline
Parameters
maxMissingClmaximum number of missing clusters for subthreshold check

Definition at line 106 of file CalculatedEdx.h.

◆ setMembers()

void CalculatedEdx::setMembers ( std::vector< o2::tpc::TPCClRefElem > *  tpcTrackClIdxVecInput,
const o2::tpc::ClusterNativeAccess clIndex,
std::vector< o2::tpc::TrackTPC > *  vTPCTracksArrayInp 
)

set the member variables

Parameters
tpcTrackClIdxVecInputTPCClRefElem member variable
clIndexClusterNativeAccess member variable
vTPCTracksArrayInpvector of tpc tracks

Definition at line 39 of file CalculatedEdx.cxx.

◆ setMinChargeMaxThreshold()

void o2::tpc::CalculatedEdx::setMinChargeMaxThreshold ( float  minChargeMaxThreshold)
inline
Parameters
minChargeMaxThresholdupper limit for the possible minimum charge max in subthreshold treatment

Definition at line 112 of file CalculatedEdx.h.

◆ setMinChargeTotThreshold()

void o2::tpc::CalculatedEdx::setMinChargeTotThreshold ( float  minChargeTotThreshold)
inline
Parameters
minChargeTotThresholdupper limit for the possible minimum charge tot in subthreshold treatment

Definition at line 109 of file CalculatedEdx.h.

◆ setPropagateTrack()

void o2::tpc::CalculatedEdx::setPropagateTrack ( const bool  propagate)
inline
Parameters
propagatepropagate the tracks to extract the track parameters instead of performing a refit

Definition at line 97 of file CalculatedEdx.h.

◆ setPropagatorFromFile()

void CalculatedEdx::setPropagatorFromFile ( const char folder,
const char file,
const char object 
)

load propagator from a local file

Parameters
folderfolder path without a trailing /
filefile path starting with /
objectname of the object to load

Definition at line 665 of file CalculatedEdx.cxx.

◆ setRefit()

void CalculatedEdx::setRefit ( const unsigned int  nHbfPerTf = 32)

set the refitter

Definition at line 46 of file CalculatedEdx.cxx.

◆ setResidualCorrectionFromFile()

void CalculatedEdx::setResidualCorrectionFromFile ( const char folder,
const char file,
const char object 
)

load dEdx residual correction from a local file

Parameters
folderfolder path without a trailing /
filefile path starting with /
objectname of the object to load

Definition at line 632 of file CalculatedEdx.cxx.

◆ setSCStreamer()

void o2::tpc::CalculatedEdx::setSCStreamer ( const char debugRootFile = "debug_sc_corrections.root")
inline

set the debug streamer of the space-charge dedx correction

Definition at line 118 of file CalculatedEdx.h.

◆ setStreamer()

void o2::tpc::CalculatedEdx::setStreamer ( const char debugRootFile)
inline

set the debug streamer

Definition at line 115 of file CalculatedEdx.h.

◆ setTrackTopologyCorrectionFromFile()

void CalculatedEdx::setTrackTopologyCorrectionFromFile ( const char folder,
const char file,
const char object 
)

load track topology correction from a local file

Parameters
folderfolder path without a trailing /
filefile path starting with /
objectname of the object to load

Definition at line 605 of file CalculatedEdx.cxx.

◆ setZeroSuppressionThresholdFromFile()

void CalculatedEdx::setZeroSuppressionThresholdFromFile ( const char folder,
const char file,
const char object 
)

load zero suppression threshold from a local file

Parameters
folderfolder path without a trailing /
filefile path starting with /
objectname of the object to load

Definition at line 642 of file CalculatedEdx.cxx.


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