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