12#ifndef BesTofConstruction_h
13#define BesTofConstruction_h 1
16#include "G4LogicalVolume.hh"
17#include "G4VPhysicalVolume.hh"
28 void Construct(G4LogicalVolume* logicalBes);
34 void getXYZ(
const G4RotationMatrix r,
double& a,
double&
b,
double& c)
const;
41 G4LogicalVolume* logicalTof;
42 G4VPhysicalVolume* physicalTof;
44 G4LogicalVolume* logicalBrTof;
45 G4LogicalVolume* logicalEcTofWest;
46 G4LogicalVolume* logicalEcTofEast;
49 G4LogicalVolume* logicalScinBr1;
50 G4LogicalVolume* logicalScinBr2;
51 G4VPhysicalVolume* physicalScinBr1;
52 G4VPhysicalVolume* physicalScinBr2;
55 G4LogicalVolume* logicalAlBr1;
56 G4LogicalVolume* logicalAlBr2;
57 G4VPhysicalVolume* physicalAlBr1;
58 G4VPhysicalVolume* physicalAlBr2;
60 G4LogicalVolume* logicalPVFBr1;
61 G4LogicalVolume* logicalPVFBr2;
62 G4VPhysicalVolume* physicalPVFBr1;
63 G4VPhysicalVolume* physicalPVFBr2;
66 G4LogicalVolume* logicalBucketBr1;
67 G4LogicalVolume* logicalBucketBr2;
68 G4VPhysicalVolume* physicalBucket1Br1;
69 G4VPhysicalVolume* physicalBucket2Br1;
70 G4VPhysicalVolume* physicalBucket1Br2;
71 G4VPhysicalVolume* physicalBucket2Br2;
73 G4LogicalVolume* logicalScinEcWest;
74 G4LogicalVolume* logicalScinEcEast;
75 G4VPhysicalVolume* physicalScinEcWest;
76 G4VPhysicalVolume* physicalScinEcEast;
78 G4LogicalVolume* logicalAlEcWest;
79 G4LogicalVolume* logicalAlEcEast;
80 G4VPhysicalVolume* physicalAlEcWest;
81 G4VPhysicalVolume* physicalAlEcEast;
83 G4LogicalVolume* logicalPVFEcWest;
84 G4LogicalVolume* logicalPVFEcEast;
85 G4VPhysicalVolume* physicalPVFEcWest;
86 G4VPhysicalVolume* physicalPVFEcEast;
88 G4LogicalVolume* logicalBucketEc;
89 G4VPhysicalVolume* physicalBucketEc;
94 G4Material* PMTmaterial;
98 G4LogicalVolume* logical_gasLayer;
100 G4double containerOut_xdown;
101 G4double containerOut_xup;
102 G4double containerOut_y;
103 G4double containerOut_z;
104 G4double container_thickness;
105 G4double container_lowBorder;
107 G4double containerIn_xdown;
108 G4double containerIn_xup;
109 G4double containerIn_y;
110 G4double containerIn_z;
112 G4double upCover_xdown;
113 G4double upCover_xup;
116 G4double upCover_posz;
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;
126 G4double lowCover2_xdown;
127 G4double lowCover2_xup;
128 G4double lowCover2_y;
129 G4double lowCover2_z;
130 G4double lowCover2_posz;
132 G4double upFEE_xdown;
136 G4double FEE_thickness;
139 G4double upFEE_pcb_xdown;
140 G4double upFEE_pcb_xup;
141 G4double upFEE_pcb_y;
142 G4double upFEE_pcb_z;
147 G4double sideFEE_posl;
149 G4double sideFEE_pcb_x;
150 G4double sideFEE_pcb_y;
151 G4double sideFEE_pcb_z;
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;
168 G4double bracket_posx;
170 G4double upStopBlock_x;
171 G4double upStopBlock_y;
172 G4double upStopBlock_z;
173 G4double upStopBlock_subtractr;
174 G4double upStopBlock_subtractposz;
176 G4double sideStopBlock_x;
177 G4double sideStopBlock_y;
178 G4double sideStopBlock_z;
179 G4double sideStopBlock_thickness;
180 G4double sideStopBlock_posz0;
181 G4double sideStopBlock_posz1;
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;
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;
196 G4double pcbBoard_xdown;
197 G4double pcbBoard_xup;
198 G4double pcbBoard_y0;
199 G4double pcbBoard_y1;
202 G4double strip_x[12];
208 G4double mylar_xdown;
214 G4double glass0_xdown;
218 G4double glass0_posz;
220 G4double glass1_xdown;
224 G4double glass1_posz;
226 G4double gasLayer_xdown;
227 G4double gasLayer_xup;
230 G4double gasLayer_posz;
233 G4double endcap_length;
235 G4double startAngle_east;
236 G4double startAngle_west;
244 VEC angleOffset_east;
247 VEC angleOffset_west;
std::vector< double > VEC
void ConstructEcTof_mrpc()
void getXYZ(const G4RotationMatrix r, double &a, double &b, double &c) const
void Construct(G4LogicalVolume *logicalBes)
virtual ~BesTofConstruction()