91 nistManager->FindOrBuildMaterial(
"G4_Pb");
113 G4int nofLayers = 10;
118 auto layerThickness = absoThickness + gapThickness;
119 auto calorThickness = nofLayers * layerThickness;
120 auto worldSizeXY = 1.2 * calorSizeXY;
121 auto worldSizeZ = 1.2 * calorThickness;
128 if ( ! defaultMaterial || ! absorberMaterial || ! gapMaterial ) {
130 msg <<
"Cannot retrieve materials already defined.";
131 G4Exception(
"B4DetectorConstruction::DefineVolumes()",
140 worldSizeXY/2, worldSizeXY/2, worldSizeZ/2);
163 =
new G4Box(
"Calorimeter",
164 calorSizeXY/2, calorSizeXY/2, calorThickness/2);
187 calorSizeXY/2, calorSizeXY/2, layerThickness/2);
208 calorSizeXY/2, calorSizeXY/2, absoThickness/2);
231 calorSizeXY/2, calorSizeXY/2, gapThickness/2);
254 <<
"------------------------------------------------------------" <<
G4endl
255 <<
"---> The calorimeter is " << nofLayers <<
" layers of: [ "
256 << absoThickness/
mm <<
"mm of " << absorberMaterial->GetName()
258 << gapThickness/
mm <<
"mm of " << gapMaterial->GetName() <<
" ] " <<
G4endl
259 <<
"------------------------------------------------------------" <<
G4endl;
267 simpleBoxVisAtt->SetVisibility(
true);
268 calorLV->SetVisAttributes(simpleBoxVisAtt);
292 absDetector->RegisterPrimitive(primitive);
297 absDetector->RegisterPrimitive(primitive);
307 gapDetector->RegisterPrimitive(primitive);
311 gapDetector->RegisterPrimitive(primitive);