60 fTotalThickness(2.0*
m),
63 for(
size_t i=0;i<3;i++)
67 fCalorPhysical[i] = 0;
68 fLayerPhysical[i] = 0;
70 fCalName[0] =
"Calor-AP";
71 fCalName[1] =
"Calor-BP";
72 fCalName[2] =
"Calor-CP";
97 fSDConstructed =
true;
103 void RE06ParallelWorld::SetupGeometry()
115 =
new G4Tubs(
"Calor",0.0,0.5*
m,fTotalThickness/2.,0.0,360.*
deg);
124 fCalorLogical[i],fCalName[i],worldLogical,
false,i);
130 fCalorLogical[i],fCalName[i],worldLogical,
false,i);
138 =
new G4Tubs(
"Layer",0.0,0.5*
m,fTotalThickness/2.,0.0,360.*
deg);
144 =
new G4PVReplica(fCalName[i]+
"_Layer",fLayerLogical[i],fCalorLogical[i],
145 kRho,fNumberOfLayers,0.5*
m/fNumberOfLayers);
152 void RE06ParallelWorld::SetupDetectors()
165 epFilter->
add(particleName=
"e-");
166 epFilter->
add(particleName=
"e+");
168 for(
G4int i=0;i<3;i++)
170 G4String detName = fCalName[i]+
"_para";
203 if(fSerial==serial)
return;
205 if(!fConstructed)
return;
206 for(
G4int i=0;i<3;i++)
G4bool RegisterPrimitive(G4VPrimitiveScorer *)
CLHEP::Hep3Vector G4ThreeVector
G4VPhysicalVolume * GetWorld()
void SetVerboseLevel(G4int vl)
void SetFilter(G4VSDFilter *f)
virtual void ConstructSD()
Definition of the RE06ParallelWorld class.
RE06ParallelWorld(G4String worldName)
void SetSerialGeometry(G4bool ser)
void SetSensitiveDetector(const G4String &logVolName, G4VSensitiveDetector *aSD, G4bool multi=false)
static constexpr double m
void SetTranslation(const G4ThreeVector &v)
void AddNewDetector(G4VSensitiveDetector *aSD)
G4LogicalVolume * GetLogicalVolume() const
void add(const G4String &particleName)
static G4SDManager * GetSDMpointer()
virtual ~RE06ParallelWorld()
static constexpr double deg