ECCE @ EIC Software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
ECCEdRICHFastPIDMap Class Reference

ECCEdRICHFastPIDMap Import from dRICH/genericRICH. More...

#include <ecce-detectors/blob/master/FastPID/ECCEdRICHFastPIDMap.h>

+ Inheritance diagram for ECCEdRICHFastPIDMap:
+ Collaboration diagram for ECCEdRICHFastPIDMap:

Public Types

enum  type { pi_k, k_p }
 
enum  EDetector_t { kBarrel, kForward }
 
- Public Types inherited from ECCEFastPIDMap
typedef std::map
< EICPIDDefs::PIDCandidate,
float > 
PIDCandidate_LogLikelihood_map
 

Public Member Functions

 ECCEdRICHFastPIDMap ()
 
virtual ~ECCEdRICHFastPIDMap ()
 
void dualRICH_aerogel ()
 set one of these two first
 
void dualRICH_C2F6 ()
 
PIDCandidate_LogLikelihood_map getFastSmearLogLikelihood (int truth_pid, const double momentum, const double theta) const override
 
void setIndex (double val)
 
void setEfficiency (double val)
 
void setMinPhotons (double val)
 
void setThresholdMode (bool val)
 
void setChromaticSigma (int n, double *valx, double *valy)
 
void setPositionSigma (int n, double *valx, double *valy)
 
void setEmissionSigma (int n, double *valx, double *valy)
 
void setFieldSigma (int n, double *valx, double *valy)
 
void setTrackingSigma (int n, double *valx, double *valy)
 
double numSigma (double eta, double p, type PID) const
 
double cherenkovAngle (double p, double m) const
 
double cherenkovThreshold (double m) const
 
double numberOfPhotons (double angle) const
 
double numberOfDetectedPhotons (double angle) const
 
double cherenkovAngleSigma (double eta, double p, double m) const
 
double etaMin () const
 
double etaMax () const
 
void setType (EDetector_t val)
 
void setName (const std::string &val)
 
void setLength (double val)
 
void setRadius (double val)
 
void setPositionZ (double val)
 
void setRadiusIn (double val)
 
void setRadiusOut (double val)
 
void setMagneticField (double val)
 
- Public Member Functions inherited from ECCEFastPIDMap
 ECCEFastPIDMap (const std::string &name="ECCEFastPIDMap")
 
virtual ~ECCEFastPIDMap ()
 
virtual void Verbosity (const int ival)
 Sets the verbosity of this module (0 by default=quiet).
 
virtual int Verbosity () const
 Gets the verbosity of this module.
 

Protected Attributes

double mIndex = 1.0014
 
double mEfficiency = 0.25
 
double mMinPhotons = 3.
 
TGraph * mChromaticSigma
 
TGraph * mPositionSigma = nullptr
 
TGraph * mEmissionSigma = nullptr
 
TGraph * mFieldSigma = nullptr
 
TGraph * mTrackingSigma = nullptr
 
bool mThresholdMode = true
 
bool initialized = false
 
std::string mName = "genericDetector"
 
std::string mDescription = "Detector description"
 
EDetector_t mType = kBarrel
 
double mLength = 200.
 
double mRadius = 200.
 
double mPositionZ = 200.
 
double mRadiusIn = 20.
 
double mRadiusOut = 200.
 
double mMagneticField = 2.
 
const double mLightSpeed = 29.9792458
 
const double mMassElectron = 0.00051099891
 
const double mMassPion = 0.13957018
 
const double mMassKaon = 0.493677
 
const double mMassProton = 0.93827208816
 

Detailed Description

ECCEdRICHFastPIDMap Import from dRICH/genericRICH.

Definition at line 28 of file ECCEdRICHFastPIDMap.h.

View newest version in sPHENIX GitHub at line 28 of file ECCEdRICHFastPIDMap.h

Member Enumeration Documentation

Enumerator:
kBarrel 
kForward 

Definition at line 43 of file ECCEdRICHFastPIDMap.h.

View newest version in sPHENIX GitHub at line 43 of file ECCEdRICHFastPIDMap.h

Enumerator:
pi_k 
k_p 

Definition at line 41 of file ECCEdRICHFastPIDMap.h.

View newest version in sPHENIX GitHub at line 41 of file ECCEdRICHFastPIDMap.h

Constructor & Destructor Documentation

ECCEdRICHFastPIDMap::ECCEdRICHFastPIDMap ( )

Definition at line 25 of file ECCEdRICHFastPIDMap.cc.

View newest version in sPHENIX GitHub at line 25 of file ECCEdRICHFastPIDMap.cc

ECCEdRICHFastPIDMap::~ECCEdRICHFastPIDMap ( )
virtual

Definition at line 27 of file ECCEdRICHFastPIDMap.cc.

View newest version in sPHENIX GitHub at line 27 of file ECCEdRICHFastPIDMap.cc

Member Function Documentation

double ECCEdRICHFastPIDMap::cherenkovAngle ( double  p,
double  m 
) const
inline

Definition at line 80 of file ECCEdRICHFastPIDMap.h.

View newest version in sPHENIX GitHub at line 80 of file ECCEdRICHFastPIDMap.h

References mIndex.

Referenced by cherenkovAngleSigma(), and numSigma().

+ Here is the caller graph for this function:

double ECCEdRICHFastPIDMap::cherenkovAngleSigma ( double  eta,
double  p,
double  m 
) const

Definition at line 166 of file ECCEdRICHFastPIDMap.cc.

View newest version in sPHENIX GitHub at line 166 of file ECCEdRICHFastPIDMap.cc

References cherenkovAngle(), mChromaticSigma, mEmissionSigma, mFieldSigma, mPositionSigma, mTrackingSigma, numberOfDetectedPhotons(), and theta().

Referenced by numSigma().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

double ECCEdRICHFastPIDMap::cherenkovThreshold ( double  m) const
inline

Definition at line 83 of file ECCEdRICHFastPIDMap.h.

View newest version in sPHENIX GitHub at line 83 of file ECCEdRICHFastPIDMap.h

References mIndex.

Referenced by numSigma().

+ Here is the caller graph for this function:

void ECCEdRICHFastPIDMap::dualRICH_aerogel ( )

set one of these two first

geometry

radiator

overall photon-detection efficiency

single-photon angular resolution

Definition at line 102 of file ECCEdRICHFastPIDMap.cc.

View newest version in sPHENIX GitHub at line 102 of file ECCEdRICHFastPIDMap.cc

References angle, initialized, kForward, setChromaticSigma(), setEfficiency(), setEmissionSigma(), setFieldSigma(), setIndex(), setLength(), setName(), setPositionSigma(), setPositionZ(), setRadiusIn(), setRadiusOut(), setTrackingSigma(), and setType().

Referenced by RICHReco().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void ECCEdRICHFastPIDMap::dualRICH_C2F6 ( )

geometry

radiator

overall photon-detection efficiency

single-photon angular resolution

Definition at line 134 of file ECCEdRICHFastPIDMap.cc.

View newest version in sPHENIX GitHub at line 134 of file ECCEdRICHFastPIDMap.cc

References angle, initialized, kForward, setChromaticSigma(), setEfficiency(), setEmissionSigma(), setFieldSigma(), setIndex(), setLength(), setName(), setPositionSigma(), setPositionZ(), setRadiusIn(), setRadiusOut(), setTrackingSigma(), and setType().

Referenced by RICHReco().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

double ECCEdRICHFastPIDMap::etaMax ( ) const

Definition at line 92 of file ECCEdRICHFastPIDMap.cc.

View newest version in sPHENIX GitHub at line 92 of file ECCEdRICHFastPIDMap.cc

References kBarrel, kForward, mLength, mPositionZ, mRadius, mRadiusIn, and mType.

Referenced by getFastSmearLogLikelihood().

+ Here is the caller graph for this function:

double ECCEdRICHFastPIDMap::etaMin ( ) const

Definition at line 82 of file ECCEdRICHFastPIDMap.cc.

View newest version in sPHENIX GitHub at line 82 of file ECCEdRICHFastPIDMap.cc

References kBarrel, kForward, mLength, mPositionZ, mRadius, mRadiusOut, and mType.

Referenced by getFastSmearLogLikelihood().

+ Here is the caller graph for this function:

ECCEdRICHFastPIDMap::PIDCandidate_LogLikelihood_map ECCEdRICHFastPIDMap::getFastSmearLogLikelihood ( int  truth_pid,
const double  momentum,
const double  theta 
) const
overridevirtual

Implements ECCEFastPIDMap.

Definition at line 30 of file ECCEdRICHFastPIDMap.cc.

View newest version in sPHENIX GitHub at line 30 of file ECCEdRICHFastPIDMap.cc

References kdfinder::abs(), Acts::VectorHelpers::eta(), etaMax(), etaMin(), initialized, k_p, EICPIDDefs::KaonCandiate, mName, numSigma(), pi_k, EICPIDDefs::PionCandiate, EICPIDDefs::ProtonCandiate, and ECCEFastPIDMap::Verbosity().

+ Here is the call graph for this function:

double ECCEdRICHFastPIDMap::numberOfDetectedPhotons ( double  angle) const
inline

Definition at line 89 of file ECCEdRICHFastPIDMap.h.

View newest version in sPHENIX GitHub at line 89 of file ECCEdRICHFastPIDMap.h

References mEfficiency, and numberOfPhotons().

Referenced by cherenkovAngleSigma().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

double ECCEdRICHFastPIDMap::numberOfPhotons ( double  angle) const
inline

Definition at line 86 of file ECCEdRICHFastPIDMap.h.

View newest version in sPHENIX GitHub at line 86 of file ECCEdRICHFastPIDMap.h

References mLength.

Referenced by numberOfDetectedPhotons().

+ Here is the caller graph for this function:

double ECCEdRICHFastPIDMap::numSigma ( double  eta,
double  p,
ECCEdRICHFastPIDMap::type  PID 
) const

methods to override

both particles are above threshold

lightest particle above threshold

none above threshold

Definition at line 185 of file ECCEdRICHFastPIDMap.cc.

View newest version in sPHENIX GitHub at line 185 of file ECCEdRICHFastPIDMap.cc

References cherenkovAngle(), cherenkovAngleSigma(), cherenkovThreshold(), g4zmq::exit(), k_p, mMassKaon, mMassPion, mMassProton, mName, mThresholdMode, pi_k, and ECCEFastPIDMap::Verbosity().

Referenced by getFastSmearLogLikelihood().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void ECCEdRICHFastPIDMap::setChromaticSigma ( int  n,
double *  valx,
double *  valy 
)
inline

Definition at line 51 of file ECCEdRICHFastPIDMap.h.

View newest version in sPHENIX GitHub at line 51 of file ECCEdRICHFastPIDMap.h

References mChromaticSigma.

Referenced by dualRICH_aerogel(), and dualRICH_C2F6().

+ Here is the caller graph for this function:

void ECCEdRICHFastPIDMap::setEfficiency ( double  val)
inline

Definition at line 47 of file ECCEdRICHFastPIDMap.h.

View newest version in sPHENIX GitHub at line 47 of file ECCEdRICHFastPIDMap.h

References mEfficiency.

Referenced by dualRICH_aerogel(), and dualRICH_C2F6().

+ Here is the caller graph for this function:

void ECCEdRICHFastPIDMap::setEmissionSigma ( int  n,
double *  valx,
double *  valy 
)
inline

Definition at line 61 of file ECCEdRICHFastPIDMap.h.

View newest version in sPHENIX GitHub at line 61 of file ECCEdRICHFastPIDMap.h

References mEmissionSigma.

Referenced by dualRICH_aerogel(), and dualRICH_C2F6().

+ Here is the caller graph for this function:

void ECCEdRICHFastPIDMap::setFieldSigma ( int  n,
double *  valx,
double *  valy 
)
inline

Definition at line 66 of file ECCEdRICHFastPIDMap.h.

View newest version in sPHENIX GitHub at line 66 of file ECCEdRICHFastPIDMap.h

References mFieldSigma.

Referenced by dualRICH_aerogel(), and dualRICH_C2F6().

+ Here is the caller graph for this function:

void ECCEdRICHFastPIDMap::setIndex ( double  val)
inline

setters

Definition at line 46 of file ECCEdRICHFastPIDMap.h.

View newest version in sPHENIX GitHub at line 46 of file ECCEdRICHFastPIDMap.h

References mIndex.

Referenced by dualRICH_aerogel(), and dualRICH_C2F6().

+ Here is the caller graph for this function:

void ECCEdRICHFastPIDMap::setLength ( double  val)
inline

Definition at line 99 of file ECCEdRICHFastPIDMap.h.

View newest version in sPHENIX GitHub at line 99 of file ECCEdRICHFastPIDMap.h

References mLength.

Referenced by dualRICH_aerogel(), and dualRICH_C2F6().

+ Here is the caller graph for this function:

void ECCEdRICHFastPIDMap::setMagneticField ( double  val)
inline

Definition at line 104 of file ECCEdRICHFastPIDMap.h.

View newest version in sPHENIX GitHub at line 104 of file ECCEdRICHFastPIDMap.h

References mMagneticField.

void ECCEdRICHFastPIDMap::setMinPhotons ( double  val)
inline

Definition at line 48 of file ECCEdRICHFastPIDMap.h.

View newest version in sPHENIX GitHub at line 48 of file ECCEdRICHFastPIDMap.h

References mMinPhotons.

void ECCEdRICHFastPIDMap::setName ( const std::string &  val)
inline

Definition at line 98 of file ECCEdRICHFastPIDMap.h.

View newest version in sPHENIX GitHub at line 98 of file ECCEdRICHFastPIDMap.h

References mName.

Referenced by dualRICH_aerogel(), and dualRICH_C2F6().

+ Here is the caller graph for this function:

void ECCEdRICHFastPIDMap::setPositionSigma ( int  n,
double *  valx,
double *  valy 
)
inline

Definition at line 56 of file ECCEdRICHFastPIDMap.h.

View newest version in sPHENIX GitHub at line 56 of file ECCEdRICHFastPIDMap.h

References mPositionSigma.

Referenced by dualRICH_aerogel(), and dualRICH_C2F6().

+ Here is the caller graph for this function:

void ECCEdRICHFastPIDMap::setPositionZ ( double  val)
inline

Definition at line 101 of file ECCEdRICHFastPIDMap.h.

View newest version in sPHENIX GitHub at line 101 of file ECCEdRICHFastPIDMap.h

References mPositionZ.

Referenced by dualRICH_aerogel(), and dualRICH_C2F6().

+ Here is the caller graph for this function:

void ECCEdRICHFastPIDMap::setRadius ( double  val)
inline

Definition at line 100 of file ECCEdRICHFastPIDMap.h.

View newest version in sPHENIX GitHub at line 100 of file ECCEdRICHFastPIDMap.h

References mRadius.

void ECCEdRICHFastPIDMap::setRadiusIn ( double  val)
inline

Definition at line 102 of file ECCEdRICHFastPIDMap.h.

View newest version in sPHENIX GitHub at line 102 of file ECCEdRICHFastPIDMap.h

References mRadiusIn.

Referenced by dualRICH_aerogel(), and dualRICH_C2F6().

+ Here is the caller graph for this function:

void ECCEdRICHFastPIDMap::setRadiusOut ( double  val)
inline

Definition at line 103 of file ECCEdRICHFastPIDMap.h.

View newest version in sPHENIX GitHub at line 103 of file ECCEdRICHFastPIDMap.h

References mRadiusOut.

Referenced by dualRICH_aerogel(), and dualRICH_C2F6().

+ Here is the caller graph for this function:

void ECCEdRICHFastPIDMap::setThresholdMode ( bool  val)
inline

Definition at line 49 of file ECCEdRICHFastPIDMap.h.

View newest version in sPHENIX GitHub at line 49 of file ECCEdRICHFastPIDMap.h

References mThresholdMode.

void ECCEdRICHFastPIDMap::setTrackingSigma ( int  n,
double *  valx,
double *  valy 
)
inline

Definition at line 71 of file ECCEdRICHFastPIDMap.h.

View newest version in sPHENIX GitHub at line 71 of file ECCEdRICHFastPIDMap.h

References mTrackingSigma.

Referenced by dualRICH_aerogel(), and dualRICH_C2F6().

+ Here is the caller graph for this function:

void ECCEdRICHFastPIDMap::setType ( EDetector_t  val)
inline

setters

Definition at line 97 of file ECCEdRICHFastPIDMap.h.

View newest version in sPHENIX GitHub at line 97 of file ECCEdRICHFastPIDMap.h

References mType.

Referenced by dualRICH_aerogel(), and dualRICH_C2F6().

+ Here is the caller graph for this function:

Member Data Documentation

bool ECCEdRICHFastPIDMap::initialized = false
protected

Definition at line 123 of file ECCEdRICHFastPIDMap.h.

View newest version in sPHENIX GitHub at line 123 of file ECCEdRICHFastPIDMap.h

Referenced by dualRICH_aerogel(), dualRICH_C2F6(), and getFastSmearLogLikelihood().

TGraph* ECCEdRICHFastPIDMap::mChromaticSigma
protected
Initial value:
=
nullptr

Definition at line 113 of file ECCEdRICHFastPIDMap.h.

View newest version in sPHENIX GitHub at line 113 of file ECCEdRICHFastPIDMap.h

Referenced by cherenkovAngleSigma(), and setChromaticSigma().

std::string ECCEdRICHFastPIDMap::mDescription = "Detector description"
protected

Definition at line 125 of file ECCEdRICHFastPIDMap.h.

View newest version in sPHENIX GitHub at line 125 of file ECCEdRICHFastPIDMap.h

double ECCEdRICHFastPIDMap::mEfficiency = 0.25
protected

Definition at line 109 of file ECCEdRICHFastPIDMap.h.

View newest version in sPHENIX GitHub at line 109 of file ECCEdRICHFastPIDMap.h

Referenced by numberOfDetectedPhotons(), and setEfficiency().

TGraph* ECCEdRICHFastPIDMap::mEmissionSigma = nullptr
protected

Definition at line 116 of file ECCEdRICHFastPIDMap.h.

View newest version in sPHENIX GitHub at line 116 of file ECCEdRICHFastPIDMap.h

Referenced by cherenkovAngleSigma(), and setEmissionSigma().

TGraph* ECCEdRICHFastPIDMap::mFieldSigma = nullptr
protected

Definition at line 117 of file ECCEdRICHFastPIDMap.h.

View newest version in sPHENIX GitHub at line 117 of file ECCEdRICHFastPIDMap.h

Referenced by cherenkovAngleSigma(), and setFieldSigma().

double ECCEdRICHFastPIDMap::mIndex = 1.0014
protected

Definition at line 108 of file ECCEdRICHFastPIDMap.h.

View newest version in sPHENIX GitHub at line 108 of file ECCEdRICHFastPIDMap.h

Referenced by cherenkovAngle(), cherenkovThreshold(), and setIndex().

double ECCEdRICHFastPIDMap::mLength = 200.
protected

Definition at line 127 of file ECCEdRICHFastPIDMap.h.

View newest version in sPHENIX GitHub at line 127 of file ECCEdRICHFastPIDMap.h

Referenced by etaMax(), etaMin(), numberOfPhotons(), and setLength().

const double ECCEdRICHFastPIDMap::mLightSpeed = 29.9792458
protected

Definition at line 134 of file ECCEdRICHFastPIDMap.h.

View newest version in sPHENIX GitHub at line 134 of file ECCEdRICHFastPIDMap.h

double ECCEdRICHFastPIDMap::mMagneticField = 2.
protected

Definition at line 132 of file ECCEdRICHFastPIDMap.h.

View newest version in sPHENIX GitHub at line 132 of file ECCEdRICHFastPIDMap.h

Referenced by setMagneticField().

const double ECCEdRICHFastPIDMap::mMassElectron = 0.00051099891
protected

Definition at line 135 of file ECCEdRICHFastPIDMap.h.

View newest version in sPHENIX GitHub at line 135 of file ECCEdRICHFastPIDMap.h

const double ECCEdRICHFastPIDMap::mMassKaon = 0.493677
protected

Definition at line 137 of file ECCEdRICHFastPIDMap.h.

View newest version in sPHENIX GitHub at line 137 of file ECCEdRICHFastPIDMap.h

Referenced by numSigma().

const double ECCEdRICHFastPIDMap::mMassPion = 0.13957018
protected

Definition at line 136 of file ECCEdRICHFastPIDMap.h.

View newest version in sPHENIX GitHub at line 136 of file ECCEdRICHFastPIDMap.h

Referenced by numSigma().

const double ECCEdRICHFastPIDMap::mMassProton = 0.93827208816
protected

Definition at line 138 of file ECCEdRICHFastPIDMap.h.

View newest version in sPHENIX GitHub at line 138 of file ECCEdRICHFastPIDMap.h

Referenced by numSigma().

double ECCEdRICHFastPIDMap::mMinPhotons = 3.
protected

Definition at line 110 of file ECCEdRICHFastPIDMap.h.

View newest version in sPHENIX GitHub at line 110 of file ECCEdRICHFastPIDMap.h

Referenced by setMinPhotons().

std::string ECCEdRICHFastPIDMap::mName = "genericDetector"
protected

Definition at line 124 of file ECCEdRICHFastPIDMap.h.

View newest version in sPHENIX GitHub at line 124 of file ECCEdRICHFastPIDMap.h

Referenced by getFastSmearLogLikelihood(), numSigma(), and setName().

TGraph* ECCEdRICHFastPIDMap::mPositionSigma = nullptr
protected

Definition at line 115 of file ECCEdRICHFastPIDMap.h.

View newest version in sPHENIX GitHub at line 115 of file ECCEdRICHFastPIDMap.h

Referenced by cherenkovAngleSigma(), and setPositionSigma().

double ECCEdRICHFastPIDMap::mPositionZ = 200.
protected

Definition at line 129 of file ECCEdRICHFastPIDMap.h.

View newest version in sPHENIX GitHub at line 129 of file ECCEdRICHFastPIDMap.h

Referenced by etaMax(), etaMin(), and setPositionZ().

double ECCEdRICHFastPIDMap::mRadius = 200.
protected

Definition at line 128 of file ECCEdRICHFastPIDMap.h.

View newest version in sPHENIX GitHub at line 128 of file ECCEdRICHFastPIDMap.h

Referenced by etaMax(), etaMin(), and setRadius().

double ECCEdRICHFastPIDMap::mRadiusIn = 20.
protected

Definition at line 130 of file ECCEdRICHFastPIDMap.h.

View newest version in sPHENIX GitHub at line 130 of file ECCEdRICHFastPIDMap.h

Referenced by etaMax(), and setRadiusIn().

double ECCEdRICHFastPIDMap::mRadiusOut = 200.
protected

Definition at line 131 of file ECCEdRICHFastPIDMap.h.

View newest version in sPHENIX GitHub at line 131 of file ECCEdRICHFastPIDMap.h

Referenced by etaMin(), and setRadiusOut().

bool ECCEdRICHFastPIDMap::mThresholdMode = true
protected

Definition at line 121 of file ECCEdRICHFastPIDMap.h.

View newest version in sPHENIX GitHub at line 121 of file ECCEdRICHFastPIDMap.h

Referenced by numSigma(), and setThresholdMode().

TGraph* ECCEdRICHFastPIDMap::mTrackingSigma = nullptr
protected

Definition at line 118 of file ECCEdRICHFastPIDMap.h.

View newest version in sPHENIX GitHub at line 118 of file ECCEdRICHFastPIDMap.h

Referenced by cherenkovAngleSigma(), and setTrackingSigma().

EDetector_t ECCEdRICHFastPIDMap::mType = kBarrel
protected

Definition at line 126 of file ECCEdRICHFastPIDMap.h.

View newest version in sPHENIX GitHub at line 126 of file ECCEdRICHFastPIDMap.h

Referenced by etaMax(), etaMin(), and setType().


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