71 fTotalThickness (2.0*
m),
82 fDetectorMessenger(0),
87 for(
size_t i=0;i<3;i++)
141 G4int ncomponents, natoms;
182 density = 1.390*
g/
cm3;
186 density = 11.35*
g/
cm3;
194 density = 1.000*
g/
cm3;
199 density = 1.032*
g/
cm3;
208 density = 1.290*
mg/
cm3;
219 temperature = 2.73*
kelvin;
332 epFilter->
add(particleName=
"e-");
333 epFilter->
add(particleName=
"e+");
336 for(
G4int i=0;i<3;i++)
338 for(
G4int j=0;j<2;j++)
344 { detName +=
"_abs"; }
346 { detName +=
"_gap"; }
397 <<
"--------------------------------------------------------" <<
G4endl;
399 {
G4cout <<
" Calorimeters are placed in serial." <<
G4endl; }
401 {
G4cout <<
" Calorimeters are placed in parallel." <<
G4endl; }
405 <<
"--------------------------------------------------------" <<
G4endl;
430 << materialChoice <<
" is not defined. - Command is ignored." <<
G4endl;
458 << materialChoice <<
" is not defined. - Command is ignored." <<
G4endl;
475 for(
G4int i=0;i<3;i++)
502 for(
size_t i=0;i<3;i++)
518 static G4bool isAdded =
false;
520 if( isAdded )
return;
525 G4int ncomponents, natoms;
static constexpr double kelvin
void AddRootLogicalVolume(G4LogicalVolume *lv)
static G4RunManager * GetRunManager()
void SetSerialGeometry(G4bool ser)
G4Material * fGapMaterial
static constexpr double atmosphere
G4VUserParallelWorld * GetParallelWorld(G4int i) const
G4String GetAbsorberMaterial() const
CLHEP::Hep3Vector G4ThreeVector
std::vector< ExP01TrackerHit * > a
Definition of the RE06PrimaryGeneratorAction class.
void SetSensitiveDetector(const G4String &logVolName, G4VSensitiveDetector *aSD, G4bool multi=false)
RE06DetectorMessenger * fDetectorMessenger
static G4MaterialTable * GetMaterialTable()
G4VPhysicalVolume * fCalorPhysical[3]
void AddNewDetector(G4VSensitiveDetector *aSD)
static G4ThreadLocal G4bool fConstructedSDandField
void SetZHalfLength(G4double dz)
static G4Element * GetElement(G4String name, G4bool warning=true)
static constexpr double perCent
G4LogicalVolume * fLayerLogical[3]
G4LogicalVolume * fCalorLogical[3]
G4LogicalVolume * fGapLogical[3]
void SetTranslation(const G4ThreeVector &v)
void SetVerboseLevel(G4int vl)
static constexpr double universe_mean_density
void SetFilter(G4VSDFilter *f)
static G4Material * GetMaterial(const G4String &name, G4bool warning=true)
void SetSerial(G4bool serial)
static const G4VisAttributes & GetInvisible()
const G4String & GetName() const
void AddIsotope(G4Isotope *isotope, G4double RelativeAbundance)
G4Material * fAbsorberMaterial
static constexpr double g
static constexpr double m
G4double fTotalThickness
total thinkness of one calorimeter
void ConstructSDandField()
Definition of the RE06DetectorMessenger class.
void PrintCalorParameters() const
G4PVReplica * fLayerPhysical[3]
static constexpr double mg
void add(const G4String &particleName)
G4LogicalVolume * fWorldLogical
G4VPhysicalVolume * fWorldPhysical
void SetAbsorberMaterial(G4String materialChoice)
void RemoveDaughter(const G4VPhysicalVolume *p)
RE06DetectorConstruction()
Definition of the RE06DetectorConstruction class.
Definition of the RE06ParallelWorld class.
G4bool RegisterPrimitive(G4VPrimitiveScorer *)
void SetVisAttributes(const G4VisAttributes *pVA)
void GeometryHasBeenModified(G4bool prop=true)
void SetRegion(G4Region *reg)
G4GLOB_DLL std::ostream G4cerr
G4String GetGapMaterial() const
virtual G4VPhysicalVolume * Construct()
G4VPhysicalVolume * fGapPhysical[3]
void SetVisibility(G4bool=true)
static G4SDManager * GetSDMpointer()
G4int GetVerboseLevel() const
G4Material * fWorldMaterial
void SetNumberOfLayers(G4int nl)
G4double fLayerThickness
= fTotalThickness / fNumberOfLayers
void AddElement(G4Element *element, G4int nAtoms)
G4GLOB_DLL std::ostream G4cout
void SetMaterial(G4Material *pMaterial)
void SetGapMaterial(G4String materialChoice)
static constexpr double mole
static constexpr double cm3
virtual ~RE06DetectorConstruction()
const G4VUserPrimaryGeneratorAction * GetUserPrimaryGeneratorAction() const