CbmRoot
|
Definition of gas parameters for one TRD module. More...
#include <CbmTrdParModGas.h>
Public Types | |
enum | CbmTrdParModGasDef { kDetType = 0, kNobleGasType, kPID } |
Public Member Functions | |
CbmTrdParModGas (const char *title="TRD gas properties definition") | |
virtual | ~CbmTrdParModGas () |
Double_t | GetCO2 () const |
const Char_t * | GetDetName () const |
Int_t | GetDetType () const |
Double_t | GetDriftTime (Double_t y0, Double_t z0) const |
void | GetElectricPotential (Int_t &ua, Int_t &ud) const |
Float_t | GetBindingEnergy (const Char_t shell='K', Bool_t main=kTRUE) const |
Get binding energy for the working gas. More... | |
Float_t | EkevFC (Float_t ekev) const |
Convert Energy debposit in keV to pad-plane charge taking into account the gas gain. More... | |
TString | GetFileName () const |
Double_t | GetNobleGas () const |
const Char_t * | GetNobleGasName () const |
Int_t | GetNobleGasType () const |
Float_t | GetNonIonizingBR (const Char_t shell='K') const |
Get branching ration for radiative process on the. More... | |
Char_t | GetPEshell (Float_t Ex) const |
Get first atomic shell which can be excited by PE effect. More... | |
Int_t | GetPidType () const |
Int_t | GetShellId (const Char_t shell) const |
Get atomic shell index. More... | |
UShort_t | GetUanode () const |
UShort_t | GetUdrift () const |
virtual void | Print (Option_t *opt="") const |
Double_t | ScanDriftTime (Double_t y0, Double_t z0, Double_t dzdy, Double_t dy) const |
Get prompt signal for track segment in the y-z plane. More... | |
void | SetDriftMap (TH2F *hm, TDirectory *d) |
Load drift map for current settings from repository. More... | |
void | SetDw (Double_t dw) |
void | SetGasThick (Double_t sz) |
void | SetDetType (Int_t gsi=0) |
void | SetCO2 (Double_t p) |
void | SetFileName (const Char_t *fn) |
void | SetNobleGas (Double_t p) |
void | SetNobleGasType (Int_t ar=1) |
void | SetPidType (Int_t like=1) |
void | SetElectricPotential (Int_t ua, Int_t ud) |
virtual Int_t | GetModuleId () const |
virtual void | SetModuleId (Int_t m) |
Protected Attributes | |
Int_t | fModuleId |
module id More... | |
Private Member Functions | |
CbmTrdParModGas (const CbmTrdParModGas &ref) | |
const CbmTrdParModGas & | operator= (const CbmTrdParModGas &ref) |
Private Attributes | |
Int_t | fConfig |
config TRD gas see CbmTrdParModGasDef More... | |
UShort_t | fUa |
anode voltage More... | |
UShort_t | fUd |
drift voltage More... | |
Double_t | fDw |
anode wire pitch More... | |
Double_t | fGasThick |
gas thickness More... | |
Double_t | fPercentCO2 |
Percentage of CO2. More... | |
TH2F * | fDriftMap |
drift time map for one amplification cell More... | |
TString | fFileNamePID |
filename for PID database More... | |
Static Private Attributes | |
static Float_t | fgkBindingEnergy [2][NSHELLS] |
binding energy in keV for first atomic shells of Ar and Xe More... | |
static Float_t | fgkBR [2][NSHELLS - 1] |
branching ratio for non-ionizing decay of Ar and Xe More... | |
static Float_t | fgkWi [3] |
average energy to produce one electron-ion pair for ar, xe and co2 More... | |
static Float_t | fgkGGainUaPar [2] = {-10.1676, 8.3745} |
gas gaian parametrization on Ua for Ar on Buch detector More... | |
static Float_t | fgkE0 = 866.1047 |
min energy [ADC ch] which can be measured More... | |
Definition of gas parameters for one TRD module.
Definition at line 16 of file CbmTrdParModGas.h.
Enumerator | |
---|---|
kDetType | |
kNobleGasType | Type of noble gas (Xe=0, Ar=1) |
kPID | PID Method (ANN=0, Likelihood=1) |
Definition at line 18 of file CbmTrdParModGas.h.
CbmTrdParModGas::CbmTrdParModGas | ( | const char * | title = "TRD gas properties definition" | ) |
Definition at line 38 of file CbmTrdParModGas.cxx.
References CbmTrdParMod::fModuleId, fUa, fUd, SetNobleGasType(), and VERBOSE.
|
virtual |
Definition at line 80 of file CbmTrdParModGas.cxx.
|
private |
Float_t CbmTrdParModGas::EkevFC | ( | Float_t | ekev | ) | const |
Convert Energy debposit in keV to pad-plane charge taking into account the gas gain.
[in] | ekev | Energy deposit in keV |
Definition at line 85 of file CbmTrdParModGas.cxx.
References fgkGGainUaPar, fgkWi, fPercentCO2, fUa, GetNobleGasType(), and VERBOSE.
Referenced by CbmTrdModuleSimT::MakeDigi().
Float_t CbmTrdParModGas::GetBindingEnergy | ( | const Char_t | shell = 'K' , |
Bool_t | main = kTRUE |
||
) | const |
Get binding energy for the working gas.
[in] | shell | shell id in capitals e.g. K, L, M ... |
[in] | main | switch between main and escape peak [main=true] |
Definition at line 143 of file CbmTrdParModGas.cxx.
References fgkBindingEnergy, GetNobleGasType(), GetShellId(), and NSHELLS.
Referenced by CbmTrdModuleSimT::MakeDigi().
|
inline |
Definition at line 28 of file CbmTrdParModGas.h.
References fPercentCO2.
|
inline |
|
inline |
Definition at line 30 of file CbmTrdParModGas.h.
References fConfig, and kDetType.
Referenced by GetDetName(), and CbmTrdParSetGas::putParams().
Double_t CbmTrdParModGas::GetDriftTime | ( | Double_t | y0, |
Double_t | z0 | ||
) | const |
Definition at line 189 of file CbmTrdParModGas.cxx.
References fDriftMap, and VERBOSE.
Referenced by CbmTrdModuleSimT::MakeDigi().
|
inline |
Definition at line 32 of file CbmTrdParModGas.h.
|
inline |
Definition at line 46 of file CbmTrdParModGas.h.
References fFileNamePID.
|
inlinevirtualinherited |
Definition at line 15 of file CbmTrdParMod.h.
References CbmTrdParMod::fModuleId.
Referenced by CbmTrdParSet::addParam(), and CbmMcbm2018UnpackerAlgoTrdR::CreateHistogram().
|
inline |
Definition at line 47 of file CbmTrdParModGas.h.
References fPercentCO2.
Referenced by Print(), and CbmTrdParSetGas::putParams().
|
inline |
Definition at line 48 of file CbmTrdParModGas.h.
References GetNobleGasType().
Referenced by Print().
|
inline |
Definition at line 51 of file CbmTrdParModGas.h.
References fConfig, and kNobleGasType.
Referenced by EkevFC(), GetBindingEnergy(), GetNobleGasName(), GetNonIonizingBR(), GetPEshell(), and GetShellId().
Float_t CbmTrdParModGas::GetNonIonizingBR | ( | const Char_t | shell = 'K' | ) | const |
Get branching ration for radiative process on the.
[in] | shell | shell id in capitals e.g. K, L, M ... |
Definition at line 165 of file CbmTrdParModGas.cxx.
References fgkBR, GetNobleGasType(), and GetShellId().
Referenced by CbmTrdModuleSimT::MakeDigi().
Char_t CbmTrdParModGas::GetPEshell | ( | Float_t | Ex | ) | const |
Get first atomic shell which can be excited by PE effect.
[in] | Ex | energy of the incident X [keV] |
Definition at line 174 of file CbmTrdParModGas.cxx.
References fgkBindingEnergy, GetNobleGasType(), and NSHELLS.
Referenced by CbmTrdModuleSimT::MakeDigi().
|
inline |
Definition at line 63 of file CbmTrdParModGas.h.
Referenced by Print(), and CbmTrdParSetGas::putParams().
Int_t CbmTrdParModGas::GetShellId | ( | const Char_t | shell | ) | const |
Get atomic shell index.
[in] | shell | shell name |
Return index of atomic shell. shell name can be 'K', 'L' and 'M'
Definition at line 126 of file CbmTrdParModGas.cxx.
References GetNobleGasType().
Referenced by GetBindingEnergy(), and GetNonIonizingBR().
|
inline |
Definition at line 68 of file CbmTrdParModGas.h.
References fUa.
Referenced by CbmTrdParSetGas::putParams().
|
inline |
Definition at line 69 of file CbmTrdParModGas.h.
References fUd.
Referenced by CbmTrdParSetGas::putParams().
|
private |
|
virtual |
Definition at line 198 of file CbmTrdParModGas.cxx.
References fFileNamePID, CbmTrdParMod::fModuleId, fUa, fUd, GetDetName(), GetNobleGas(), GetNobleGasName(), and GetPidType().
Referenced by CbmTrdParManager::CreateModuleParameters().
Double_t CbmTrdParModGas::ScanDriftTime | ( | Double_t | y0, |
Double_t | z0, | ||
Double_t | dzdy, | ||
Double_t | dy | ||
) | const |
Get prompt signal for track segment in the y-z plane.
y0 | entry point on y in amplification cell coordinates (+- anode pitch/2) |
z0 | entry point on z (+- chmb_height/2) |
dzdy | Track angle in the y-z plane |
dy | track span on y |
Definition at line 210 of file CbmTrdParModGas.cxx.
References fDriftMap, fDw, VERBOSE, and z1.
Referenced by CbmTrdModuleSimT::MakeDigi().
|
inline |
Definition at line 95 of file CbmTrdParModGas.h.
References fPercentCO2.
|
inline |
Definition at line 92 of file CbmTrdParModGas.h.
References fConfig, and kDetType.
Referenced by CbmTrdParManager::CreateModuleParameters().
void CbmTrdParModGas::SetDriftMap | ( | TH2F * | hm, |
TDirectory * | d | ||
) |
Load drift map for current settings from repository.
[in] | hm | histogram obtained as interpolation |
[in] | d | ROOT directory of CbmRoot |
Load drift map in the module and get ownership
Definition at line 265 of file CbmTrdParModGas.cxx.
References d, fDriftMap, CbmTrdParMod::fModuleId, fUa, fUd, and VERBOSE.
|
inline |
Definition at line 90 of file CbmTrdParModGas.h.
References fDw.
|
inline |
Definition at line 104 of file CbmTrdParModGas.h.
|
inline |
Definition at line 96 of file CbmTrdParModGas.h.
References fFileNamePID.
|
inline |
Definition at line 91 of file CbmTrdParModGas.h.
References fGasThick.
|
inlinevirtualinherited |
Definition at line 17 of file CbmTrdParMod.h.
References CbmTrdParMod::fModuleId, and m.
Referenced by CbmTrdParManager::CreateModuleParameters().
|
inline |
Definition at line 97 of file CbmTrdParModGas.h.
References fPercentCO2.
|
inline |
Definition at line 98 of file CbmTrdParModGas.h.
References fConfig, and kNobleGasType.
Referenced by CbmTrdParModGas().
|
inline |
Definition at line 101 of file CbmTrdParModGas.h.
Referenced by CbmTrdParManager::CreateModuleParameters().
|
private |
config TRD gas see CbmTrdParModGasDef
Definition at line 113 of file CbmTrdParModGas.h.
Referenced by GetDetType(), GetNobleGasType(), GetPidType(), SetDetType(), SetNobleGasType(), and SetPidType().
|
private |
drift time map for one amplification cell
Definition at line 119 of file CbmTrdParModGas.h.
Referenced by GetDriftTime(), ScanDriftTime(), and SetDriftMap().
|
private |
anode wire pitch
Definition at line 116 of file CbmTrdParModGas.h.
Referenced by ScanDriftTime(), and SetDw().
|
private |
filename for PID database
Definition at line 120 of file CbmTrdParModGas.h.
Referenced by GetFileName(), Print(), and SetFileName().
|
private |
|
staticprivate |
binding energy in keV for first atomic shells of Ar and Xe
Definition at line 122 of file CbmTrdParModGas.h.
Referenced by GetBindingEnergy(), and GetPEshell().
|
staticprivate |
branching ratio for non-ionizing decay of Ar and Xe
Definition at line 126 of file CbmTrdParModGas.h.
Referenced by GetNonIonizingBR().
|
staticprivate |
min energy [ADC ch] which can be measured
Definition at line 132 of file CbmTrdParModGas.h.
|
staticprivate |
gas gaian parametrization on Ua for Ar on Buch detector
Definition at line 130 of file CbmTrdParModGas.h.
Referenced by EkevFC().
|
staticprivate |
average energy to produce one electron-ion pair for ar, xe and co2
Definition at line 128 of file CbmTrdParModGas.h.
Referenced by EkevFC().
|
protectedinherited |
module id
Definition at line 20 of file CbmTrdParMod.h.
Referenced by CbmTrdParModGas(), CbmTrdParMod::GetModuleId(), Print(), CbmTrdParModDigi::Print(), SetDriftMap(), and CbmTrdParMod::SetModuleId().
|
private |
Percentage of CO2.
Definition at line 118 of file CbmTrdParModGas.h.
Referenced by EkevFC(), GetCO2(), GetNobleGas(), SetCO2(), and SetNobleGas().
|
private |
anode voltage
Definition at line 114 of file CbmTrdParModGas.h.
Referenced by CbmTrdParModGas(), EkevFC(), GetElectricPotential(), GetUanode(), Print(), SetDriftMap(), and SetElectricPotential().
|
private |
drift voltage
Definition at line 115 of file CbmTrdParModGas.h.
Referenced by CbmTrdParModGas(), GetElectricPotential(), GetUdrift(), Print(), SetDriftMap(), and SetElectricPotential().