38 #ifndef GammaRayTelDetectorConstruction_h
39 #define GammaRayTelDetectorConstruction_h 1
175 G4int NbOfACDLateralTiles;
176 G4int NbOfACDTopTiles;
231 G4Box* solidTKRDetectorX;
235 G4Box* solidTKRDetectorY;
239 G4Box* solidCALLayerX;
243 G4Box* solidCALLayerY;
247 G4Box* solidCALDetectorX;
251 G4Box* solidCALDetectorY;
259 G4Box* solidConverter;
275 void DefineMaterials();
276 void ComputePayloadParameters();
282 inline void GammaRayTelDetectorConstruction::ComputePayloadParameters()
286 TKRSupportThickness =TKRLayerDistance -2.*TKRSiliconThickness
287 - TKRViewsDistance - ConverterThickness;
288 TKRSizeXY = NbOfTKRTiles*TKRSiliconTileXY + (NbOfTKRTiles+1)*TilesSeparation;
289 TKRSizeZ = NbOfTKRLayers*TKRLayerDistance;
291 TKRActiveTileXY = TKRSiliconTileXY - 2*SiliconGuardRing;
292 TKRActiveTileZ = TKRSiliconThickness;
293 NbOfTKRStrips =
G4int(TKRActiveTileXY/TKRSiliconPitch);
295 SiliconGuardRing = TKRActiveTileXY - NbOfTKRStrips*TKRSiliconPitch;
296 TKRActiveTileXY = TKRSiliconTileXY - 2*SiliconGuardRing;
298 TKRXStripX = TKRYStripY = TKRSiliconPitch;
299 TKRYStripX = TKRXStripY = TKRActiveTileXY;
300 TKRZStrip = TKRSiliconThickness;
302 CALSizeXY = TKRSizeXY;
303 CALSizeZ = 2.*NbOfCALLayers*CALBarThickness;
306 CALBarY = CALSizeXY/(NbOfCALBars);
307 CALBarZ = CALBarThickness;
309 ACTSizeXY = TKRSizeXY + 2*ACDTKRDistance + 2*ACDThickness;
310 ACTSizeZ = ACDThickness;
312 ACL1SizeX = TKRSizeXY + 2*ACDTKRDistance + ACDThickness;
313 ACL1SizeY = ACDThickness;
314 ACL1SizeZ = TKRSizeZ + CALSizeZ + ACDTKRDistance + CALTKRDistance;
316 ACL2SizeX = ACDThickness;
317 ACL2SizeY = TKRSizeXY + 2*ACDTKRDistance + ACDThickness;
318 ACL2SizeZ = TKRSizeZ + CALSizeZ + ACDTKRDistance + CALTKRDistance;
320 PayloadSizeZ = 1.1*(ACL1SizeZ + ACTSizeZ);
321 PayloadSizeXY = (ACTSizeXY);
323 WorldSizeZ = 1.5*PayloadSizeZ; WorldSizeXY = 1.5*PayloadSizeXY;