BmnRoot
26.10.0-18-g4e3414f9
Software framework of the BM@N experiment
Toggle main menu visibility
Loading...
Searching...
No Matches
CbmStsRadTool.h
Go to the documentation of this file.
1
/** @file CbmStsRadTool.h
2
** @author Volker Friese <v.friese@gsi.de>
3
** @date 6 December 2011
4
**/
5
6
#ifndef CBMSTSRADTOOL_H
7
#define CBMSTSRADTOOL_H 1
8
9
#include "
TObject.h
"
10
11
#include <map>
12
13
using namespace
std
;
14
15
/** @class CbmStsRadTool
16
** @author Volker Friese <v.friese@gsi.de>
17
** @date 6 December 2011
18
** @brief Tool class to calculate the non-ionising radiation damage
19
** on the STS silicon
20
**
21
** This class provides some functionality to calculate the effects
22
** of non-ionising irradiation on Silicon.
23
**
24
** While the calculation of the NIEL factor is independent of the
25
** type of silicon used, those of leakage current and full depletion
26
** voltage depend on the specific silicon properties (effective
27
** doping concentration 9 x 10^11 cm^-3).
28
**/
29
class
CbmStsRadTool
:
public
TObject
30
{
31
32
public
:
33
/** Constructor **/
34
CbmStsRadTool
();
35
36
/** Destructor **/
37
virtual
~CbmStsRadTool
();
38
39
/** Get leakage current
40
** @param[in] fluence Fluence [neq/cm^2]
41
** @param[in] volume Volume [cm^3]
42
** @param[in] temperature Temperature [K]
43
** @return Leakage current [A]
44
**
45
** Calculates the leakage current in Silicon as function of irradiation
46
** fluence, volume and temperature.
47
**
48
** Formulae provided by S. Chatterji.
49
**/
50
Double_t
GetLeakageCurrent
(
Double_t
fluence,
Double_t
volume,
Double_t
temperature);
51
52
/** Get NIEL factor
53
*@param type Particle Id (PDG code)
54
*@param energy Energy in GeV
55
*@return NIEL factor
56
**
57
** Calculates the NIEL factor for a given particle type and energy
58
** from interpolation of the values tabulated in
59
** http://sesam.desy.de/members/gunnar/Si-dfuncs.htm
60
**
61
** Will return 0 for particle types other than proton, neutron,
62
** pion or electron, or if the energy is below the lowest tabulated
63
** value. Will return an asymptotic value if the energy is above the
64
** highest tabulated value.
65
**/
66
Double_t
GetNiel
(
Int_t
type,
Double_t
energy);
67
68
/** Get full depletion voltage
69
** @param fluence Fluence [neq/cm^2]
70
** @param d Thickness [cm]
71
** @return Full depletion voltage [V]
72
**
73
** Calculates the full depletion voltage of Silicon as function of
74
** non-ionising dose and thickness.
75
**
76
** Formulae and values provided by S. Chatterji.
77
**/
78
Double_t
GetVfd
(
Double_t
fluence,
Double_t
d);
79
80
private
:
81
/** Tables of NIEL factors as fnct. of energy **/
82
map<Double_t, Double_t>
niel_neutron
;
83
map<Double_t, Double_t>
niel_proton
;
84
map<Double_t, Double_t>
niel_pion
;
85
map<Double_t, Double_t>
niel_electron
;
86
87
/** Proportionality constant of leakage current and fluence **/
88
Double_t
fIAlpha
;
// [A/cm]
89
90
/** Constants for temperature dependence of leakage current **/
91
Double_t
fEGap0
;
// [eV]
92
Double_t
fEGapAlpha
;
// [ev?k]
93
Double_t
fEGapBeta
;
// [K]
94
95
/** Constants for effective doping concentration
96
** as function of fluence
97
**/
98
Double_t
fNeff0
;
// [cm^-3]
99
Double_t
fNeffC
;
// [cm^2]
100
Double_t
fNeffGc
;
// [1/cm]
101
102
/** Permittivity of Silicon **/
103
Double_t
fEpsilon
;
// [F/cm]
104
105
/** Initialisation
106
**
107
** Reads in tabulated NIEL factors from file
108
** and sets proper constants for Silicon.
109
**/
110
void
Init
();
111
112
/** Read data from file
113
*@param file File name (in directory input)
114
*@param map Map to be filled
115
**/
116
void
ReadData
(
const
char
* file, map<Double_t, Double_t>& map);
117
118
ClassDef
(
CbmStsRadTool
, 1);
119
};
120
121
#endif
Int_t
int Int_t
Double_t
double Double_t
ClassDef
#define ClassDef(name, id)
TObject.h
CbmStsRadTool::fIAlpha
Double_t fIAlpha
Proportionality constant of leakage current and fluence.
Definition
CbmStsRadTool.h:88
CbmStsRadTool::niel_proton
map< Double_t, Double_t > niel_proton
Definition
CbmStsRadTool.h:83
CbmStsRadTool::fEpsilon
Double_t fEpsilon
Permittivity of Silicon.
Definition
CbmStsRadTool.h:103
CbmStsRadTool::fEGapAlpha
Double_t fEGapAlpha
Definition
CbmStsRadTool.h:92
CbmStsRadTool::fEGap0
Double_t fEGap0
Constants for temperature dependence of leakage current.
Definition
CbmStsRadTool.h:91
CbmStsRadTool::GetLeakageCurrent
Double_t GetLeakageCurrent(Double_t fluence, Double_t volume, Double_t temperature)
Get leakage current.
Definition
CbmStsRadTool.cxx:39
CbmStsRadTool::CbmStsRadTool
CbmStsRadTool()
Constructor.
Definition
CbmStsRadTool.cxx:15
CbmStsRadTool::~CbmStsRadTool
virtual ~CbmStsRadTool()
Destructor.
Definition
CbmStsRadTool.cxx:35
CbmStsRadTool::fNeff0
Double_t fNeff0
Constants for effective doping concentration as function of fluence.
Definition
CbmStsRadTool.h:98
CbmStsRadTool::GetVfd
Double_t GetVfd(Double_t fluence, Double_t d)
Get full depletion voltage.
Definition
CbmStsRadTool.cxx:136
CbmStsRadTool::GetNiel
Double_t GetNiel(Int_t type, Double_t energy)
Get NIEL factor.
Definition
CbmStsRadTool.cxx:60
CbmStsRadTool::fNeffC
Double_t fNeffC
Definition
CbmStsRadTool.h:99
CbmStsRadTool::niel_neutron
map< Double_t, Double_t > niel_neutron
Tables of NIEL factors as fnct.
Definition
CbmStsRadTool.h:82
CbmStsRadTool::Init
void Init()
Initialisation.
Definition
CbmStsRadTool.cxx:152
CbmStsRadTool::niel_electron
map< Double_t, Double_t > niel_electron
Definition
CbmStsRadTool.h:85
CbmStsRadTool::niel_pion
map< Double_t, Double_t > niel_pion
Definition
CbmStsRadTool.h:84
CbmStsRadTool::ReadData
void ReadData(const char *file, map< Double_t, Double_t > &map)
Read data from file.
Definition
CbmStsRadTool.cxx:186
CbmStsRadTool::fNeffGc
Double_t fNeffGc
Definition
CbmStsRadTool.h:100
CbmStsRadTool::fEGapBeta
Double_t fEGapBeta
Definition
CbmStsRadTool.h:93
TObject::TObject
TObject()
std
Definition
json.hpp:4446
detectors
sts
CbmStsRadTool.h
Generated on
for BmnRoot by
1.17.0