BOSS 8.0.0
BESIII Offline Software System
Loading...
Searching...
No Matches
Simulation/BOOST/TofSim/include/TofSim/BesTofGeoParameter.hh
Go to the documentation of this file.
1//---------------------------------------------------------------------------//
2// BOOST --- BESIII Object_Oriented Simulation Tool //
3//---------------------------------------------------------------------------//
4// Description:
5// Author: Dengzy
6// Created: Mar, 2004
7// Modified:
8// Comment:
9//---------------------------------------------------------------------------//
10//$ID: BesTofGeoParameter.hh
11
12#ifndef BesTofGeoParameter_h
13#define BesTofGeoParameter_h 1
14
15#include "globals.hh"
16#include <map>
17#include <vector>
18
19typedef std::vector<double> VEC;
20typedef std::map<std::string, double> CONTAINER;
21typedef std::map<std::string, VEC> CONTAINER2;
22
24protected:
27
28public:
30 double Get( std::string key );
31 VEC GetVec( std::string key );
32 void Get_deadChannel( int deadChannel[72][12] );
33
34 G4int GetnScinBr() { return nScinBr; }
35 G4double GetBr1L() { return br1L; }
36 G4double GetBr1TrapW1() { return br1TrapW1; }
37 G4double GetBr1TrapW2() { return br1TrapW2; }
38 G4double GetBr1TrapH() { return br1TrapH; }
39 G4double GetBr1R1() { return br1R1; }
40 G4double GetAlThickness() { return AlThickness; }
41 G4double GetPVFThickness() { return PVFThickness; }
42
43 G4double GetBr2L() { return br2L; }
44 G4double GetBr2TrapW1() { return br2TrapW1; }
45 G4double GetBr2TrapW2() { return br2TrapW2; }
46 G4double GetBr2TrapH() { return br2TrapH; }
47 G4double GetBr2R1() { return br2R1; }
48
49 G4double GetBucketDBr() { return bucketDBr; }
50 G4double GetBucketLBr() { return bucketLBr; }
51
52 G4int GetnScinEc() { return nScinEc; }
53 G4double GetEcL() { return ecL; }
54 G4double GetEcTrapW1() { return ecTrapW1; }
55 G4double GetEcTrapW2() { return ecTrapW2; }
56 G4double GetEcTrapH() { return ecTrapH; }
57 G4double GetEcTrapH1() { return ecTrapH1; }
58 G4double GetzPosEastEc() { return zPosEastEc; }
59 G4double GetzPosWestEc() { return zPosWestEc; }
60 G4double GetEcR1() { return ecR1; }
61 G4double GetEcR2() { return ecR2; }
62
63 G4double GetBucketDEc() { return bucketDEc; }
64 G4double GetBucketLEc() { return bucketLEc; }
65 G4double GetBucketPosR() { return bucketPosR; }
66
67 G4double GetTau1() { return m_tau1; }
68 G4double GetTau2() { return m_tau2; }
69 G4double GetTau3() { return m_tau3; }
70 G4double GetTauRatio() { return m_tauRatio; }
71 G4double GetRefIndex() { return m_refIndex; }
72 G4double GetPhNConst() { return m_phNConst; }
73 G4double GetCpe2pmt() { return m_Cpe2pmt; }
74 G4double GetRAngle() { return m_rAngle; }
75 G4double GetQE() { return m_QE; }
76 G4double GetCE() { return m_CE; }
77 G4double GetPeCorFac() { return m_peCorFac; }
78 G4double GetAtten( int i ) { return m_atten[i]; }
79
80 G4double GetTTSmean() { return m_ttsMean; }
81 G4double GetTTSsigma() { return m_ttsSigma; }
82 G4double GetPMTgain() { return m_PMTgain; }
83 G4double GetCe() { return m_Ce; }
84 G4double GetRiseTime() { return m_riseTime; }
85 G4double GetLLthresh() { return m_LLthresh; }
86 G4double GetHLthresh() { return m_HLthresh; }
87 G4double GetPreGain() { return m_preGain; }
88 G4double GetNoiseSigma() { return m_noiseSigma; }
89
90 G4double GetTau1Ec() { return m_tau1Ec; }
91 G4double GetTau2Ec() { return m_tau2Ec; }
92 G4double GetTau3Ec() { return m_tau3Ec; }
93 G4double GetTauRatioEc() { return m_tauRatioEc; }
94 G4double GetRefIndexEc() { return m_refIndexEc; }
95 G4double GetPhNConstEc() { return m_phNConstEc; }
96 G4double GetCpe2pmtEc() { return m_Cpe2pmtEc; }
97 G4double GetRAngleEc() { return m_rAngleEc; }
98 G4double GetQEEc() { return m_QEEc; }
99 G4double GetCEEc() { return m_CEEc; }
100 G4double GetPeCorFacEc() { return m_peCorFacEc; }
101 G4double GetAttenEc() { return m_attenEc; }
102
103 G4double GetTTSmeanEc() { return m_ttsMeanEc; }
104 G4double GetTTSsigmaEc() { return m_ttsSigmaEc; }
105 G4double GetPMTgainEc() { return m_PMTgainEc; }
106 G4double GetCeEc() { return m_CeEc; }
107 G4double GetRiseTimeEc() { return m_riseTimeEc; }
108 G4double GetLLthreshEc() { return m_LLthreshEc; }
109 G4double GetHLthreshEc() { return m_HLthreshEc; }
110 G4double GetPreGainEc() { return m_preGainEc; }
111 G4double GetNoiseSigmaEc() { return m_noiseSigmaEc; }
112 //++++++++++
113 // tian added, for barrel parameters
114 G4double GetBrEPMTgain( int scinNb ) { return m_BrEPMTgain[scinNb]; }
115 G4double GetBrERiseTime( int scinNb ) { return m_BrERiseTime[scinNb]; }
116 G4double GetBrWPMTgain( int scinNb ) { return m_BrWPMTgain[scinNb]; }
117 G4double GetBrWRiseTime( int scinNb ) { return m_BrWRiseTime[scinNb]; }
118
119private:
120 // tianhl, for reading barrel parameters
121 void ReadData();
122 void ReadBrData();
123 void ReadMrpcData();
124
125 static BesTofGeoParameter* m_instance;
126 G4String m_dataPath;
127 CONTAINER container;
128 CONTAINER UNIT;
129 CONTAINER2 container2;
130 int m_deadChannel[72][12];
131
132 G4int nScinBr;
133 G4double br1L;
134 G4double br1TrapW1;
135 G4double br1TrapW2;
136 G4double br1TrapH;
137 G4double br1R1;
138 G4double AlThickness;
139 G4double PVFThickness;
140
141 G4double br2L;
142 G4double br2TrapW1;
143 G4double br2TrapW2;
144 G4double br2TrapH;
145 G4double br2R1;
146
147 G4double bucketDBr;
148 G4double bucketLBr;
149
150 G4int nScinEc;
151 G4double ecL;
152 G4double ecTrapW1;
153 G4double ecTrapW2;
154 G4double ecTrapH;
155 G4double ecTrapH1;
156 G4double zPosEastEc;
157 G4double zPosWestEc;
158 G4double ecR1;
159 G4double ecR2;
160
161 G4double bucketDEc;
162 G4double bucketLEc;
163 G4double bucketPosR;
164
165 G4double m_tau1;
166 G4double m_tau2;
167 G4double m_tau3;
168 G4double m_tauRatio;
169 G4double m_refIndex;
170 G4double m_phNConst;
171 G4double m_QE;
172 G4double m_CE;
173 G4double m_rAngle;
174 G4double m_Cpe2pmt;
175 G4double m_peCorFac;
176
177 G4double m_ttsMean;
178 G4double m_ttsSigma;
179 G4double m_PMTgain;
180 G4double m_Ce;
181 G4double m_riseTime;
182 G4double m_LLthresh;
183 G4double m_HLthresh;
184 G4double m_preGain;
185 G4double m_noiseSigma;
186
187 G4double m_tau1Ec;
188 G4double m_tau2Ec;
189 G4double m_tau3Ec;
190 G4double m_tauRatioEc;
191 G4double m_refIndexEc;
192 G4double m_phNConstEc;
193 G4double m_Cpe2pmtEc;
194 G4double m_rAngleEc;
195 G4double m_QEEc;
196 G4double m_CEEc;
197 G4double m_peCorFacEc;
198 G4double m_attenEc;
199
200 G4double m_ttsMeanEc;
201 G4double m_ttsSigmaEc;
202 G4double m_PMTgainEc;
203 G4double m_CeEc;
204 G4double m_riseTimeEc;
205 G4double m_LLthreshEc;
206 G4double m_HLthreshEc;
207 G4double m_preGainEc;
208 G4double m_noiseSigmaEc;
209
210 G4double m_atten[176];
211 G4double m_BrEPMTgain[176];
212 G4double m_BrERiseTime[176];
213 G4double m_BrWPMTgain[176];
214 G4double m_BrWRiseTime[176];
215};
216
217#endif
*************DOUBLE PRECISION m_pi *DOUBLE PRECISION m_HvecTau2 DOUBLE PRECISION m_HvClone2 DOUBLE PRECISION m_gamma1 DOUBLE PRECISION m_gamma2 DOUBLE PRECISION m_thet1 DOUBLE PRECISION m_thet2 INTEGER m_IFPHOT *COMMON c_Taupair $ !Spin Polarimeter vector first Tau $ !Spin Polarimeter vector second Tau $ !Clone Spin Polarimeter vector first Tau $ !Clone Spin Polarimeter vector second Tau $ !Random Euler angle for cloning st tau $ !Random Euler angle for cloning st tau $ !Random Euler angle for cloning st tau $ !Random Euler angle for cloning nd tau $ !Random Euler angle for cloning nd tau $ !Random Euler angle for cloning nd tau $ !phi of HvecTau1 $ !theta of HvecTau1 $ !phi of HvecTau2 $ !theta of HvecTau2 $ !super key
Definition Taupair.h:42
double Get(std::string key)
void Get_deadChannel(int deadChannel[72][12])
static BesTofGeoParameter * GetInstance()
VEC GetVec(std::string key)