83 G4Box* ROWorldBox =
new
84 G4Box(
"ROWorldBox",WorldSizeXY/2,WorldSizeXY/2,WorldSizeZ/2);
90 ROWorldLog,0,
false,0);
98 =
new G4Box(
"Payload RO",
108 "Payload RO", logicPayloadRO,ROWorldPhys,
false, 0);
122 new G4Box(
"ReadOutTKR", TKRSizeXY/2,TKRSizeXY/2,TKRSizeZ/2);
130 CALTKRDistance+TKRSizeZ/2),
131 "ReadOutTKR",ROlogicTKR,physiPayloadRO,
144 (
"TKRDetectorYRO",TKRSizeXY/2,TKRSizeXY/2,TKRSiliconThickness/2);
147 new G4LogicalVolume(solidTKRDetectorYRO,dummyMat,
"TKRDetectorYRO",0,0,0);
150 (
"TKRDetectorXRO",TKRSizeXY/2,TKRSizeXY/2,TKRSiliconThickness/2);
153 new G4LogicalVolume(solidTKRDetectorXRO,dummyMat,
"TKRDetectorXRO",0,0,0);
159 for (i = 0; i < NbOfTKRLayers; i++)
162 physiTKRDetectorYRO =
164 +TKRSiliconThickness/2
165 +(i)*TKRLayerDistance),
172 physiTKRDetectorXRO =
175 TKRSiliconThickness/2 +
178 (i)*TKRLayerDistance),
193 G4VSolid * solidTKRActiveTileXRO =
new
194 G4Box(
"Active Tile X", TKRActiveTileXY/2,TKRActiveTileXY/2,TKRActiveTileZ/2);
196 G4VSolid * solidTKRActiveTileYRO =
new
197 G4Box(
"Active Tile Y", TKRActiveTileXY/2,TKRActiveTileXY/2,TKRActiveTileZ/2);
201 new G4LogicalVolume(solidTKRActiveTileXRO, dummyMat,
"Active Tile",0,0,0);
204 new G4LogicalVolume(solidTKRActiveTileYRO, dummyMat,
"Active Tile",0,0,0);
220 for (i=0;i< NbOfTKRTiles; i++)
222 for (j=0;j< NbOfTKRTiles; j++)
224 k = i*NbOfTKRTiles + j;
226 x = -TKRSizeXY/2+TilesSeparation+SiliconGuardRing+TKRActiveTileXY/2+
227 (j)*((2*SiliconGuardRing)+TilesSeparation+TKRActiveTileXY);
228 y = -TKRSizeXY/2+TilesSeparation+SiliconGuardRing+TKRActiveTileXY/2+
229 (i)*((2*SiliconGuardRing)+TilesSeparation+TKRActiveTileXY);
232 physiTKRActiveTileXRO =
236 logicTKRActiveTileXRO,
241 x = -TKRSizeXY/2+TilesSeparation+SiliconGuardRing+TKRActiveTileXY/2+
242 (i)*((2*SiliconGuardRing)+TilesSeparation+TKRActiveTileXY);
243 y = -TKRSizeXY/2+TilesSeparation+SiliconGuardRing+TKRActiveTileXY/2+
244 (j)*((2*SiliconGuardRing)+TilesSeparation+TKRActiveTileXY);
247 physiTKRActiveTileYRO =
251 logicTKRActiveTileYRO,
276 TKRXStripX/2,TKRYStripX/2,
284 TKRXStripY/2,TKRYStripY/2,
294 for (i=0;i< NbOfTKRStrips; i++)
297 (i)*TKRSiliconPitch, 0., 0.),
300 physiTKRActiveTileXRO,
307 (i)*TKRSiliconPitch, 0.),
310 physiTKRActiveTileYRO,