CbmRoot
Loading...
Searching...
No Matches
CbmStsParSensorCond.h
Go to the documentation of this file.
1/* Copyright (C) 2014-2020 GSI Helmholtzzentrum fuer Schwerionenforschung, Darmstadt
2 SPDX-License-Identifier: GPL-3.0-only
3 Authors: Volker Friese [committer] */
4
13#ifndef CBMSTSPARSENSORCOND_H
14#define CBMSTSPARSENSORCOND_H 1
15
16#include <Rtypes.h> // for THashConsistencyHolder, ClassDefNV
17#include <RtypesCore.h> // for Double_t, Bool_t, Int_t, kFALSE
18
19#include <cassert> // for assert
20#include <string> // for string
21
22
33
34public:
37
38
46 CbmStsParSensorCond(Double_t vFD, Double_t vBias, Double_t temperature, Double_t cCoupling, Double_t cInterstrip);
47
48
51
52
55
56
59
60
64 Double_t GetCcoupling() const { return fCcoupling; }
65
66
70 Double_t GetCinterstrip() const { return fCinterstrip; }
71
72
78 Double_t GetCrossTalkCoeff() const
79 {
80 assert(fIsInit);
81 return fCrossTalkCoeff;
82 }
83
84
90 Double_t GetHallMobility(Double_t eField, Int_t chargeType) const;
91
92
96 Double_t GetTemperature() const { return fTemperature; }
97
98
102 Double_t GetVbias() const { return fVbias; }
103
104
108 Double_t GetVfd() const { return fVfd; }
109
110
117 void Init();
118
121
122
125
126
134 void SetParams(Double_t vFd, Double_t vBias, Double_t temperature, Double_t cCoupling, Double_t cInterstrip);
135
136
138 std::string ToString() const;
139
140
141private:
142 // --- Stored parameters
143 Double_t fVfd = 0.;
144 Double_t fVbias = 0.;
145 Double_t fTemperature = 273.;
146 Double_t fCcoupling = 0.;
147 Double_t fCinterstrip = 0.;
148
149 // --- Derived parameters
150 Double_t fCrossTalkCoeff = 0.;
151 Double_t fMuLowE = 0.;
152 Double_t fBetaE = 0.;
153 Double_t fVsatE = 0.;
154 Double_t fRhallE = 0.;
155 Double_t fMuLowH = 0.;
156 Double_t fBetaH = 0.;
157 Double_t fVsatH = 0.;
158 Double_t fRhallH = 0.;
159
160 Bool_t fIsInit = kFALSE;
161
162
164};
165
166#endif /* CBMSTSPARSENSORCOND_H */
Parameters for operating conditions of a STS sensor.
CbmStsParSensorCond()
Default constructor.
Double_t GetVbias() const
Bias voltage.
CbmStsParSensorCond(CbmStsParSensorCond &&)=delete
Move constructor (disabled)
Double_t fVbias
Bias voltage [V].
Double_t GetHallMobility(Double_t eField, Int_t chargeType) const
Hall mobility.
std::string ToString() const
String output.
void SetParams(Double_t vFd, Double_t vBias, Double_t temperature, Double_t cCoupling, Double_t cInterstrip)
Set the condition parameters.
Double_t fCcoupling
Coupling capacitance [pF].
Double_t GetCcoupling() const
Coupling capacitance.
Double_t GetTemperature() const
Temperature.
Double_t fTemperature
Temperature [K].
Double_t fCinterstrip
Inter-strip capacitance [pF].
ClassDefNV(CbmStsParSensorCond, 2)
Initialisation flag.
CbmStsParSensorCond & operator=(CbmStsParSensorCond &&)=delete
Move assignment operator (disabled)
Double_t GetCrossTalkCoeff() const
Cross-talk coefficient.
Double_t fMuLowE
Cross-talk coefficient.
CbmStsParSensorCond & operator=(const CbmStsParSensorCond &)
Copy assignment operator.
Double_t fVfd
Full depletion voltage [V].
void Init()
Calculate the derived parameters.
Double_t GetCinterstrip() const
Inter-strip capacitance.