21 #include "G4Material.hh" 25 #include "G4LogicalVolume.hh" 26 #include "G4PVPlacement.hh" 27 #include "G4RotationMatrix.hh" 28 #include "G4VisAttributes.hh" 29 #include "G4Colour.hh" 30 #include "G4RunManager.hh" 31 #include "G4Transform3D.hh" 36 #include "G4PVParameterised.hh" 38 #include "G4PhysicalConstants.hh" 39 #include "G4SystemOfUnits.hh" 45 : plaBulkMaterial(0),detConstruction(det) {
83 G4double hodo_x=105*cm;
84 G4double hodo_y=105*cm;
85 G4double hodo_z=60.0*cm;
87 G4double plaBulk_x = 9.95*mm;
88 G4double plaBulk_y = 100*mm;
89 G4double plaBulk_z = 5.0*mm;
99 G4double zHodo=5.0*m+chamberSizeZ-zGasBoxPosition;
123 G4LogicalVolume* plaLog(0);
124 G4VPhysicalVolume* plaPhys(0);
141 new G4Material(
"Galactic", z=1., a=1.01*g/mole,density= universe_mean_density,
142 kStateGas, 3.e-18*pascal, 2.73*kelvin);
143 Vacuum->SetChemicalFormula(
"NOMATTER");
146 G4Box* solidHodo =
new G4Box(
"solidhodo",0.5*hodo_x,0.5*hodo_y,0.5*hodo_z);
147 G4LogicalVolume* logicHodo =
new G4LogicalVolume(solidHodo,Vacuum,
"logichodo",0,0,0);
148 G4VPhysicalVolume* physiHodo =
new G4PVPlacement(0,G4ThreeVector(0.,yHodo,zHodo),logicHodo,
"physihodo",worldLog,
false,0);
152 G4VisAttributes* logicHodo_VisAtt =
new G4VisAttributes(G4Colour(0,0,1.0));
154 logicHodo->SetVisAttributes(logicHodo_VisAtt);
156 G4Box* plaBox =
new G4Box(
"solidbar",0.5*plaBulk_x,0.5*plaBulk_y,0.5*plaBulk_z);
161 plaPhys =
new G4PVParameterised(
"plaPhys",plaLog,logicHodo,kXAxis, nDE+nE1+nE2, BarParam);
163 G4VisAttributes* logicBar_VisAtt =
new G4VisAttributes(G4Colour(0.7,1.0,0.0));
164 plaLog->SetVisAttributes(logicBar_VisAtt);
174 G4VisAttributes* plaVisAtt1 =
new G4VisAttributes(G4Colour(1,1,1));
175 plaVisAtt1->SetVisibility(
true);
176 plaLog->SetVisAttributes(plaVisAtt1);
184 G4Material* pttoMaterial = G4Material::GetMaterial(mat);
192 G4RunManager::GetRunManager()->
199 G4cout <<
"##################################################################" 201 <<
"#### ActarSimSciDetectorConstruction::PrintDetectorParameters() ####" 203 G4cout <<
"##################################################################"
~ActarSimPlaDetectorConstruction()
Destructor.
void SetPlaBulkMaterial(G4String)
Set the material the scintillator bulk is made of.
ActarSimPlaDetectorConstruction(ActarSimDetectorConstruction *)
Constructor. Sets the material and the pointer to the Messenger.
void UpdateGeometry()
Updates Scintillator detector.
ActarSimPlaSD * GetPlaSD(void)
void SetXBoxPlaHalfLength(G4double xBox)
ActarSimDetectorConstruction * detConstruction
pointer to the global detector
ActarSimGasDetectorConstruction * GetGasDetector()
G4VPhysicalVolume * Construct(G4LogicalVolume *)
Wrap for the construction functions within the TOF.
G4VPhysicalVolume * GetWorldPhysicalVolume()
G4VPhysicalVolume * ConstructPla(G4LogicalVolume *)
Chamber Y,Z length.
void PrintDetectorParameters()
Prints Scintillator detector parameters. To be filled.
void SetZBoxPlaHalfLength(G4double zBox)
G4Material * plaBulkMaterial
Materials.
void SetSideCoverage(G4int cov)
G4double GetGasBoxCenterZ(void)
void SetYBoxPlaHalfLength(G4double yBox)
G4double GetChamberSizeZ(void)
G4LogicalVolume * GetWorldLogicalVolume()