#include <SCT_ElectricFieldTool.h>
Definition at line 26 of file SCT_ElectricFieldTool.h.
◆ FieldModel
◆ SCT_ElectricFieldTool()
| SCT_ElectricFieldTool::SCT_ElectricFieldTool |
( |
const std::string & | t, |
|
|
const std::string & | n, |
|
|
const IInterface * | p ) |
◆ ~SCT_ElectricFieldTool()
| virtual SCT_ElectricFieldTool::~SCT_ElectricFieldTool |
( |
| ) |
|
|
virtualdefault |
◆ finalize()
| StatusCode SCT_ElectricFieldTool::finalize |
( |
| ) |
|
|
overridevirtual |
◆ getElectricField()
| double SCT_ElectricFieldTool::getElectricField |
( |
double | positionZ, |
|
|
double | fluence, |
|
|
double | depletionVoltage, |
|
|
double | sensorThickness, |
|
|
double | biasVoltage ) const |
|
overridevirtual |
- Parameters
-
Definition at line 35 of file SCT_ElectricFieldTool.cxx.
39 {
41
42
43
44
45
46
47 double y{positionZ*0.1};
48 double bulkDepth{sensorThickness*0.1};
49 double Ey{0.};
51
52
53 double depletionDepth{bulkDepth};
54 if (biasVoltage < std::abs(depletionVoltage)) depletionDepth = std::sqrt(biasVoltage/std::abs(depletionVoltage)) * bulkDepth;
55 if (
y<=depletionDepth){
56
58 Ey = biasVoltage / depletionDepth ;
59 Ey = Ey*0.1;
60 return Ey / CLHEP::volt;
61 }
62
63
65 if (biasVoltage > std::abs(depletionVoltage)) {
66 Ey = (biasVoltage+depletionVoltage)/depletionDepth - 2.*depletionVoltage*(bulkDepth-
y)/(bulkDepth*bulkDepth);
67 } else {
68 double Emax{2.* depletionDepth * depletionVoltage / (bulkDepth*bulkDepth)};
69 Ey =
Emax*(1-(bulkDepth-
y)/depletionDepth);
70 }
71 Ey = Ey*0.1;
72 return Ey / CLHEP::volt;
73 }
74 } else {
75 return 0.;
76 }
77 } else {
78
79 ATH_MSG_INFO(
"Using for E-field simple toy model corresponding to 10^15 fluence, full depletion end for holes.");
80
81 double E_D{
m_model.Eval(positionZ*0.1)*0.1};
82 return E_D;
83 }
84
85 return -99.;
86}
◆ initialize()
| StatusCode SCT_ElectricFieldTool::initialize |
( |
| ) |
|
|
overridevirtual |
Definition at line 16 of file SCT_ElectricFieldTool.cxx.
16 {
18 2095.14,
19 -606483.,
20 8.60976e+07,
21 -7.20639e+09,
22 3.59418e+11,
23 -9.43812e+12,
24 9.78747e+13);
25
26 return StatusCode::SUCCESS;
27}
◆ m_eFieldModel
| IntegerProperty SCT_ElectricFieldTool::m_eFieldModel {this, "EFieldModel", FLAT_DIODE, "UNIFORM_FIELD=0 uniform E-field model, FLAT_DIODE=1 flat diode model"} |
|
private |
◆ m_model
| TF1 SCT_ElectricFieldTool::m_model {"pol6", "pol6", 0., 0.03} |
|
private |
The documentation for this class was generated from the following files: