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;
217 density = universe_mean_density;
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;
void GeometryHasBeenModified(G4bool prop=true)
RE06DetectorMessenger * fDetectorMessenger
G4bool RegisterPrimitive(G4VPrimitiveScorer *)
const G4VUserPrimaryGeneratorAction * GetUserPrimaryGeneratorAction() const
G4Material * fGapMaterial
void SetZHalfLength(G4double dz)
Definition of the RE06DetectorMessenger class.
static constexpr double mg
G4VPhysicalVolume * fGapPhysical[3]
CLHEP::Hep3Vector G4ThreeVector
void AddRootLogicalVolume(G4LogicalVolume *lv)
static G4Element * GetElement(G4String name, G4bool warning=true)
void PrintCalorParameters() const
std::vector< ExP01TrackerHit * > a
static G4Material * GetMaterial(const G4String &name, G4bool warning=true)
void SetVerboseLevel(G4int vl)
static constexpr double perCent
const G4String & GetName() const
G4LogicalVolume * fWorldLogical
static G4MaterialTable * GetMaterialTable()
void SetFilter(G4VSDFilter *f)
virtual ~RE06DetectorConstruction()
Definition of the RE06ParallelWorld class.
const char * name(G4int ptype)
G4PVReplica * fLayerPhysical[3]
static constexpr double g
G4Material * fAbsorberMaterial
G4String GetGapMaterial() const
G4LogicalVolume * fLayerLogical[3]
G4VPhysicalVolume * fWorldPhysical
void SetRegion(G4Region *reg)
G4GLOB_DLL std::ostream G4cout
static constexpr double m
void SetVisibility(G4bool=true)
void SetSerialGeometry(G4bool ser)
G4double fTotalThickness
total thinkness of one calorimeter
RE06DetectorConstruction()
void AddIsotope(G4Isotope *isotope, G4double RelativeAbundance)
void SetTranslation(const G4ThreeVector &v)
G4String GetAbsorberMaterial() const
G4VUserParallelWorld * GetParallelWorld(G4int i) const
void SetSerial(G4bool serial)
static constexpr double kelvin
static constexpr double cm3
void SetSensitiveDetector(const G4String &logVolName, G4VSensitiveDetector *aSD, G4bool multi=false)
void AddNewDetector(G4VSensitiveDetector *aSD)
static G4RunManager * GetRunManager()
G4Material * fWorldMaterial
void SetAbsorberMaterial(G4String materialChoice)
void add(const G4String &particleName)
G4LogicalVolume * fGapLogical[3]
virtual G4VPhysicalVolume * Construct()
static G4SDManager * GetSDMpointer()
G4double fLayerThickness
= fTotalThickness / fNumberOfLayers
G4LogicalVolume * fCalorLogical[3]
void SetNumberOfLayers(G4int nl)
Definition of the RE06PrimaryGeneratorAction class.
void AddElement(G4Element *element, G4int nAtoms)
Definition of the RE06DetectorConstruction class.
static G4ThreadLocal G4bool fConstructedSDandField
void ConstructSDandField()
void SetMaterial(G4Material *pMaterial)
void SetGapMaterial(G4String materialChoice)
static constexpr double atmosphere
static constexpr double mole
static const G4VisAttributes & GetInvisible()
void SetVisAttributes(const G4VisAttributes *pVA)
void RemoveDaughter(const G4VPhysicalVolume *p)
G4GLOB_DLL std::ostream G4cerr
G4int GetVerboseLevel() const
G4VPhysicalVolume * fCalorPhysical[3]