BOSS 7.0.3
BESIII Offline Software System
Loading...
Searching...
No Matches
InstallArea/include/TofSim/TofSim/BesTofConstruction.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: BesTofConstruction.hh
11
12#ifndef BesTofConstruction_h
13#define BesTofConstruction_h 1
14
15#include "BesSubdetector.hh"
16#include "G4LogicalVolume.hh"
17#include "G4VPhysicalVolume.hh"
18#include "BesTofGeoParameter.hh"
19
20
22{
23 public:
25 virtual ~BesTofConstruction();
26
27 public:
28 void Construct(G4LogicalVolume* logicalBes);
29 void ConstructBr1Tof();
30 void ConstructBr2Tof();
31 void ConstructEcTof();
33 void DefineMaterial();
34 void getXYZ( const G4RotationMatrix r, double& a, double& b, double& c) const;
35
36
37 private:
38 void IniParam_mrpc();
39 BesTofGeoParameter* tofPara;
40
41 G4LogicalVolume* logicalTof;
42 G4VPhysicalVolume* physicalTof;
43
44 G4LogicalVolume* logicalBrTof;
45 G4LogicalVolume* logicalEcTofWest;
46 G4LogicalVolume* logicalEcTofEast;
47
48 //scintillator
49 G4LogicalVolume* logicalScinBr1;
50 G4LogicalVolume* logicalScinBr2;
51 G4VPhysicalVolume* physicalScinBr1;
52 G4VPhysicalVolume* physicalScinBr2;
53
54 //casing material
55 G4LogicalVolume* logicalAlBr1;
56 G4LogicalVolume* logicalAlBr2;
57 G4VPhysicalVolume* physicalAlBr1;
58 G4VPhysicalVolume* physicalAlBr2;
59
60 G4LogicalVolume* logicalPVFBr1;
61 G4LogicalVolume* logicalPVFBr2;
62 G4VPhysicalVolume* physicalPVFBr1;
63 G4VPhysicalVolume* physicalPVFBr2;
64
65 //bucket
66 G4LogicalVolume* logicalBucketBr1;
67 G4LogicalVolume* logicalBucketBr2;
68 G4VPhysicalVolume* physicalBucket1Br1;
69 G4VPhysicalVolume* physicalBucket2Br1;
70 G4VPhysicalVolume* physicalBucket1Br2;
71 G4VPhysicalVolume* physicalBucket2Br2;
72
73 G4LogicalVolume* logicalScinEcWest;
74 G4LogicalVolume* logicalScinEcEast;
75 G4VPhysicalVolume* physicalScinEcWest;
76 G4VPhysicalVolume* physicalScinEcEast;
77
78 G4LogicalVolume* logicalAlEcWest;
79 G4LogicalVolume* logicalAlEcEast;
80 G4VPhysicalVolume* physicalAlEcWest;
81 G4VPhysicalVolume* physicalAlEcEast;
82
83 G4LogicalVolume* logicalPVFEcWest;
84 G4LogicalVolume* logicalPVFEcEast;
85 G4VPhysicalVolume* physicalPVFEcWest;
86 G4VPhysicalVolume* physicalPVFEcEast;
87
88 G4LogicalVolume* logicalBucketEc;
89 G4VPhysicalVolume* physicalBucketEc;
90
91 G4Material* BC404;
92 G4Material* BC408;
93 G4Material* PVF;
94 G4Material* PMTmaterial;
95
96
97 //MRPC
98 G4LogicalVolume* logical_gasLayer;
99
100 G4double containerOut_xdown;
101 G4double containerOut_xup;
102 G4double containerOut_y;
103 G4double containerOut_z;
104 G4double container_thickness;
105 G4double container_lowBorder;
106
107 G4double containerIn_xdown;
108 G4double containerIn_xup;
109 G4double containerIn_y;
110 G4double containerIn_z;
111
112 G4double upCover_xdown;
113 G4double upCover_xup;
114 G4double upCover_y;
115 G4double upCover_z;
116 G4double upCover_posz;
117
118 G4double lowCover1_xdown;
119 G4double lowCover1_xup;
120 G4double lowCover1_y;
121 G4double lowCover1_z;
122 G4double lowCover1_addx;
123 G4double lowCover1_addz;
124 G4double lowCover1_posz;
125
126 G4double lowCover2_xdown;
127 G4double lowCover2_xup;
128 G4double lowCover2_y;
129 G4double lowCover2_z;
130 G4double lowCover2_posz;
131
132 G4double upFEE_xdown;
133 G4double upFEE_xup;
134 G4double upFEE_y;
135 G4double upFEE_z;
136 G4double FEE_thickness;
137 G4double upFEE_posz;
138
139 G4double upFEE_pcb_xdown;
140 G4double upFEE_pcb_xup;
141 G4double upFEE_pcb_y;
142 G4double upFEE_pcb_z;
143
144 G4double sideFEE_x;
145 G4double sideFEE_y;
146 G4double sideFEE_z;
147 G4double sideFEE_posl;
148
149 G4double sideFEE_pcb_x;
150 G4double sideFEE_pcb_y;
151 G4double sideFEE_pcb_z;
152
153 G4double castingDie_x;
154 G4double castingDie_y;
155 G4double castingDie_z;
156 G4double castingDie_addr;
157 G4double castingDie_subtractx;
158 G4double castingDie_subtract_posz;
159 G4double castingDie_posz1;
160 G4double castingDie_posz2;
161 G4double chamber_in_posy;
162 G4double chamber_out_posy;
163
164 G4double bracket_x;
165 G4double bracket_y;
166 G4double bracket_z;
167 G4double bracket_r;
168 G4double bracket_posx;
169
170 G4double upStopBlock_x;
171 G4double upStopBlock_y;
172 G4double upStopBlock_z;
173 G4double upStopBlock_subtractr;
174 G4double upStopBlock_subtractposz;
175
176 G4double sideStopBlock_x;
177 G4double sideStopBlock_y;
178 G4double sideStopBlock_z;
179 G4double sideStopBlock_thickness;
180 G4double sideStopBlock_posz0;
181 G4double sideStopBlock_posz1;
182
183 G4double honeyComb_xdown;
184 G4double honeyComb_xup;
185 G4double honeyComb_y;
186 G4double honeyComb_z;
187 G4double honeyComb_surface_y;
188 G4double honeyComb_posz;
189
190 G4double tape_mrpc_xdown;
191 G4double tape_mrpc_xup;
192 G4double tape_mrpc_y;
193 G4double tape_mrpc_z;
194 G4double tape_mrpc_posz;
195
196 G4double pcbBoard_xdown;
197 G4double pcbBoard_xup;
198 G4double pcbBoard_y0;
199 G4double pcbBoard_y1;
200 G4double pcbBoard_z;
201
202 G4double strip_x[12];
203 G4double strip_y;
204 G4double strip_z;
205 G4double strip_gap;
206 G4double strip_posz;
207
208 G4double mylar_xdown;
209 G4double mylar_xup;
210 G4double mylar_y;
211 G4double mylar_z;
212 G4double mylar_posz;
213
214 G4double glass0_xdown;
215 G4double glass0_xup;
216 G4double glass0_y;
217 G4double glass0_z;
218 G4double glass0_posz;
219
220 G4double glass1_xdown;
221 G4double glass1_xup;
222 G4double glass1_y;
223 G4double glass1_z;
224 G4double glass1_posz;
225
226 G4double gasLayer_xdown;
227 G4double gasLayer_xup;
228 G4double gasLayer_y;
229 G4double gasLayer_z;
230 G4double gasLayer_posz;
231
232 G4double endcap_r;
233 G4double endcap_length;
234 G4double layer_posz;
235 G4double startAngle_east;
236 G4double startAngle_west;
237
238 double m_userLimits;
239 double m_ionE;
240
241 //Adjusting parameters
242 VEC rOffset_east;
243 VEC angle_east;
244 VEC angleOffset_east;
245 VEC rOffset_west;
246 VEC angle_west;
247 VEC angleOffset_west;
248};
249
250#endif
void getXYZ(const G4RotationMatrix r, double &a, double &b, double &c) const
void Construct(G4LogicalVolume *logicalBes)