31 #include "B4DetectorConstruction.hh"
92 nistManager->FindOrBuildMaterial(
"G4_Pb");
114 G4int nofLayers = 10;
119 auto layerThickness = absoThickness + gapThickness;
120 auto calorThickness = nofLayers * layerThickness;
121 auto worldSizeXY = 1.2 * calorSizeXY;
122 auto worldSizeZ = 1.2 * calorThickness;
129 if ( ! defaultMaterial || ! absorberMaterial || ! gapMaterial ) {
131 msg <<
"Cannot retrieve materials already defined.";
132 G4Exception(
"B4DetectorConstruction::DefineVolumes()",
141 worldSizeXY/2, worldSizeXY/2, worldSizeZ/2);
164 =
new G4Box(
"Calorimeter",
165 calorSizeXY/2, calorSizeXY/2, calorThickness/2);
188 calorSizeXY/2, calorSizeXY/2, layerThickness/2);
209 calorSizeXY/2, calorSizeXY/2, absoThickness/2);
233 calorSizeXY/2, calorSizeXY/2, gapThickness/2);
257 <<
"------------------------------------------------------------" <<
G4endl
258 <<
"---> The calorimeter is " << nofLayers <<
" layers of: [ "
259 << absoThickness/
mm <<
"mm of " << absorberMaterial->GetName()
261 << gapThickness/
mm <<
"mm of " << gapMaterial->GetName() <<
" ] " <<
G4endl
262 <<
"------------------------------------------------------------" <<
G4endl;
270 simpleBoxVisAtt->SetVisibility(
true);
271 calorLV->SetVisAttributes(simpleBoxVisAtt);
static constexpr double kelvin
static G4ThreadLocal G4GlobalMagFieldMessenger * fMagFieldMessenger
CLHEP::Hep3Vector G4ThreeVector
std::ostringstream G4ExceptionDescription
std::vector< ExP01TrackerHit * > a
virtual G4VPhysicalVolume * Construct()
static G4MaterialTable * GetMaterialTable()
static constexpr double mm
G4VPhysicalVolume * DefineVolumes()
void SetVerboseLevel(G4int verboseLevel)
G4VPhysicalVolume * fGapPV
static constexpr double universe_mean_density
static G4Material * GetMaterial(const G4String &name, G4bool warning=true)
static const G4VisAttributes & GetInvisible()
static constexpr double g
G4VPhysicalVolume * fAbsorberPV
virtual void ConstructSDandField()
void G4Exception(const char *originOfException, const char *exceptionCode, G4ExceptionSeverity severity, const char *description)
static constexpr double cm
G4GLOB_DLL std::ostream G4cout
static constexpr double mole
static constexpr double cm3
virtual ~B4DetectorConstruction()
static G4NistManager * Instance()