30 #include "DetectorConstruction.hh"
44 #include "SensitiveDetector.hh"
55 analysis = analysis_manager;
93 Air -> AddElement(elN, 70*
perCent);
94 Air -> AddElement(elO, 30*
perCent);
103 dopant -> AddElement(elC, 99.9994*
perCent);
104 dopant -> AddElement(elB, 0.0006*
perCent);
119 PMMA -> AddElement(elC, 5);
120 PMMA -> AddElement(elO, 2);
121 PMMA -> AddElement(elH, 8);
125 water -> AddElement(elH, 2);
126 water -> AddElement(elO, 1);
133 vacuumDensity,
kStateGas,temperature,pressure);
142 G4Box* world =
new G4Box(
"world_box", worldx, worldy, worldz);
164 G4Box* DiaVol_box =
new G4Box(
"DiaVol_box",DiaVol_x,DiaVol_y,DiaVol_z);
177 G4Box* vacblock_box =
new G4Box(
"vacblock_box",vacblock_x,vacblock_y,vacblock_z);
193 G4Box* Bdl_box =
new G4Box(
"Bdl_box",Bdl_x,Bdl_y,Bdl_z);
198 G4ThreeVector(0,0,DiaVol_z - Bdl_z - vacblock_z- vacblock_z),
210 G4Box* SV_box =
new G4Box(
"SV_box",SV_x,SV_y,SV_z);
215 logical_Bdl,
false, 0,
true);
218 logical_Bdl,
false, 0,
true);
221 logical_Bdl,
false, 0,
true);
224 logical_Bdl,
false, 0,
true);
232 G4Box* AlStrip =
new G4Box(
"AlStrip",AlStrip_x,AlStrip_y,AlStrip_z);
237 logical_vacblock,
false, 0,
true);
246 G4Tubs* GoldCylinder1 =
new G4Tubs(
"GoldCylinder1", innerRadiusOfTheTube1,
247 outerRadiusOfTheTube1,
249 startAngleOfTheTube1,
250 spanningAngleOfTheTube1);
255 logical_GoldCylinder1,
256 "GoldCylinder1_phys",
257 logical_vacblock,
false, 0,
true);
267 innerRadiusOfTheTube2,
268 outerRadiusOfTheTube2,
270 startAngleOfTheTube2,
271 spanningAngleOfTheTube2);
276 logical_Bdl,
false, 0,
true);
281 G4double heightOfTheTube3 = 75.*
um -heightOfTheTube2 - heightOfTheTube1 ;
286 innerRadiusOfTheTube3,
287 outerRadiusOfTheTube3,
289 startAngleOfTheTube3,
290 spanningAngleOfTheTube3);
295 logical_GoldCylinder3,
296 "GoldCylinder3_phys",
307 vis_SV.SetForceSolid(
true);
308 logical_SV -> SetVisAttributes(vis_SV);
313 vis_GoldCylinder1.SetForceAuxEdgeVisible(
true);
314 logical_GoldCylinder1 -> SetVisAttributes(vis_GoldCylinder1);
317 vis_GoldCylinder2.SetForceAuxEdgeVisible(
true);
318 logical_GoldCylinder2 -> SetVisAttributes(vis_GoldCylinder2);
321 vis_GoldCylinder3.SetForceAuxEdgeVisible(
true);
322 logical_GoldCylinder3 -> SetVisAttributes(vis_GoldCylinder3);
324 return physical_world;
static constexpr double mg
CLHEP::Hep3Vector G4ThreeVector
static constexpr double perCent
G4VPhysicalVolume * Construct()
virtual void ConstructSDandField()
double A(double temperature)
static constexpr double um
static constexpr double m
static constexpr double kelvin
static constexpr double cm3
void SetSensitiveDetector(const G4String &logVolName, G4VSensitiveDetector *aSD, G4bool multi=false)
void AddNewDetector(G4VSensitiveDetector *aSD)
static constexpr double nm
static G4SDManager * GetSDMpointer()
static constexpr double deg
static constexpr double micrometer
static constexpr double mole
static const G4VisAttributes & GetInvisible()