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;
void SetNbOfCALLayers(G4int)
G4double GetTKRViewsDistance()
G4int GetNbOfACDLateralTiles()
~GammaRayTelDetectorConstruction()
void SetNbOfTKRLayers(G4int)
void SetCALBarThickness(G4double)
void SetTKRSiliconThickness(G4double)
void SetTKRViewsDistance(G4double)
G4double GetTKRLayerDistance()
G4double GetACDThickness()
G4double GetWorldSizeXY()
void SetTKRSiliconPitch(G4double)
void SetNbOfCALBars(G4int)
G4double GetCALTKRDistance()
G4double GetPayloadSizeZ()
G4Material * GetConverterMaterial()
G4double GetTKRSiliconThickness()
G4double GetTKRActiveTileZ()
void SetConverterMaterial(G4String)
G4double GetTKRActiveTileXY()
void SetTKRLayerDistance(G4double)
G4double GetConverterThickness()
G4double GetSiliconGuardRing()
G4double GetTKRSiliconPitch()
void PrintPayloadParameters()
void SetNbOfTKRTiles(G4int)
GammaRayTelDetectorConstruction()
G4double GetPayloadSizeXY()
void SetTKRTileSizeXY(G4double)
G4double GetCALBarThickness()
void SetMagField(G4double)
G4double GetTKRSiliconTileXY()
G4VPhysicalVolume * Construct()
G4int GetNbOfACDTopTiles()
G4double GetTilesSeparation()
void SetConverterThickness(G4double)
void SetACDThickness(G4double)