88 nistManager->FindOrBuildMaterial(
"G4_Pb");
115 auto layerThickness = absoThickness + gapThickness;
116 auto calorThickness =
fNofLayers * layerThickness;
117 auto worldSizeXY = 1.2 * calorSizeXY;
118 auto worldSizeZ = 1.2 * calorThickness;
125 if ( ! defaultMaterial || ! absorberMaterial || ! gapMaterial ) {
127 msg <<
"Cannot retrieve materials already defined.";
128 G4Exception(
"B4DetectorConstruction::DefineVolumes()",
137 worldSizeXY/2, worldSizeXY/2, worldSizeZ/2);
160 =
new G4Box(
"Calorimeter",
161 calorSizeXY/2, calorSizeXY/2, calorThickness/2);
184 calorSizeXY/2, calorSizeXY/2, layerThickness/2);
205 calorSizeXY/2, calorSizeXY/2, absoThickness/2);
228 calorSizeXY/2, calorSizeXY/2, gapThickness/2);
251 <<
"------------------------------------------------------------" <<
G4endl
252 <<
"---> The calorimeter is " <<
fNofLayers <<
" layers of: [ "
253 << absoThickness/
mm <<
"mm of " << absorberMaterial->GetName()
255 << gapThickness/
mm <<
"mm of " << gapMaterial->GetName() <<
" ] " <<
G4endl
256 <<
"------------------------------------------------------------" <<
G4endl;
264 simpleBoxVisAtt->SetVisibility(
true);
265 calorLV->SetVisAttributes(simpleBoxVisAtt);
static constexpr double kelvin
B4cDetectorConstruction()
CLHEP::Hep3Vector G4ThreeVector
std::ostringstream G4ExceptionDescription
std::vector< ExP01TrackerHit * > a
void SetSensitiveDetector(const G4String &logVolName, G4VSensitiveDetector *aSD, G4bool multi=false)
static G4MaterialTable * GetMaterialTable()
static constexpr double mm
virtual void ConstructSDandField()
void AddNewDetector(G4VSensitiveDetector *aSD)
void SetVerboseLevel(G4int verboseLevel)
static constexpr double universe_mean_density
static G4Material * GetMaterial(const G4String &name, G4bool warning=true)
static const G4VisAttributes & GetInvisible()
static constexpr double g
Definition of the B4cDetectorConstruction class.
Definition of the B4cCalorimeterSD class.
static G4ThreadLocal G4GlobalMagFieldMessenger * fMagFieldMessenger
virtual G4VPhysicalVolume * Construct()
void G4Exception(const char *originOfException, const char *exceptionCode, G4ExceptionSeverity severity, const char *description)
static G4SDManager * GetSDMpointer()
static constexpr double cm
G4GLOB_DLL std::ostream G4cout
G4VPhysicalVolume * DefineVolumes()
static constexpr double mole
static constexpr double cm3
virtual ~B4cDetectorConstruction()
static G4NistManager * Instance()