61 #include "FCALCryostatVolumesParameters.input"
89 new G4Tubs(
"CryostatSolid", CryostatRMin, CryostatRMax, CryostatLenght,
102 G4Tubs * SolidInsulation =
103 new G4Tubs(
"InsulationSolid", InsulationRMin, InsulationRMax,
104 InsulationLenght, StartingPhi, DPhi);
107 "InsulationLogical");
110 LogicalCryostat, 0, 0);
139 new G4Tubs(
"LArgSolid", LArgRMin, LArgRMax, LArgLenght,StartingPhi,DPhi);
144 new G4PVPlacement(0,
G4ThreeVector(LArgPosX, LArgPosY, LArgPosZ),
145 LogicalLArg,
"LArgPhysical", LogicalCryostat, 0,0);
153 G4Box * SolidFrontExcluder =
154 new G4Box(
"FrontExcluderSolid", FrontExcluderSizeX, FrontExcluderSizeY,
158 ,
"FrontExcluderLogical");
161 new G4PVPlacement(0,
G4ThreeVector(FrontExcluderPosX, FrontExcluderPosY,
162 FrontExcluderPosZ),
"FrontExcluderPhysical",
163 LogicalFrontExcluder, PhysicalLArg, 0,0);
172 G4Trd * SolidBackExcluder =
173 new G4Trd(
"BackExcluderSolid", BackExcluderSize1X, BackExcluderSize2X,
174 BackExcluderSize1Y, BackExcluderSize2Y, BackExcluderSizeZ);
177 "BackExcluderLogical");
180 BackExcluderRotationMatrix->rotateX(BackExcluderRotX);
183 new G4PVPlacement(BackExcluderRotationMatrix,
185 BackExcluderPosZ),
"BackExcluder", LogicalBackExcluder,
195 G4Tubs * SolidFCALEnvelope =
196 new G4Tubs(
"FCALEnvelopeSolid", FCALEnvelopeRMin, FCALEnvelopeRMax,
197 FCALEnvelopeLenght, FCALEnvelopeStartPhi, FCALEnvelopeDPhi);
201 "FCALEnvelopeLogical");
204 FCALRotationMatrix->rotateX(FCALEnvelopeRotX);
208 new G4PVPlacement(FCALRotationMatrix,
209 G4ThreeVector(FCALEnvelopePosX,FCALEnvelopePosY,FCALEnvelopePosZ)
210 , LogicalFCALEnvelope,
"FCALEnvelopePhysical", LogicalLArg, 0,0);
222 EmModuleRot->
rotateZ(ModuleRotZ);
225 new G4PVPlacement(EmModuleRot,
226 G4ThreeVector(FCALEmModulePosX,FCALEmModulePosY,FCALEmModulePosZ),
227 LogicalFCALEmModule,
"FCALEmModulePhysical",LogicalFCALEnvelope,0,0);
237 HadModuleRot->
rotateZ(ModuleRotZ);
240 new G4PVPlacement(HadModuleRot,
241 G4ThreeVector(FCALHadModulePosX,FCALHadModulePosY,FCALHadModulePosZ),
242 LogicalFCALHadModule,
"FCALHadModulePhysical",LogicalFCALEnvelope,0,0);
250 return LogicalCryostat;
CLHEP::Hep3Vector G4ThreeVector
CLHEP::HepRotation G4RotationMatrix
static FCALMaterialConsultant * construct()
G4LogicalVolume * Construct()
G4LogicalVolume * Construct()
G4Material * Material(G4String)
G4LogicalVolume * Construct()
static const G4VisAttributes Invisible
HepRotation & rotateZ(double delta)
void SetVisAttributes(const G4VisAttributes *pVA)