58 fTotalThickness(2.0*
m),
61 for(
size_t i=0;i<3;i++)
65 fCalorPhysical[i] = 0;
66 fLayerPhysical[i] = 0;
68 fCalName[0] =
"Calor-AP";
69 fCalName[1] =
"Calor-BP";
70 fCalName[2] =
"Calor-CP";
98 void RE06ParallelWorld::SetupGeometry()
110 =
new G4Tubs(
"Calor",0.0,0.5*
m,fTotalThickness/2.,0.0,360.*
deg);
119 fCalorLogical[i],fCalName[i],worldLogical,
false,i);
125 fCalorLogical[i],fCalName[i],worldLogical,
false,i);
133 =
new G4Tubs(
"Layer",0.0,0.5*
m,fTotalThickness/2.,0.0,360.*
deg);
139 =
new G4PVReplica(fCalName[i]+
"_Layer",fLayerLogical[i],fCalorLogical[i],
140 kRho,fNumberOfLayers,0.5*
m/fNumberOfLayers);
147 void RE06ParallelWorld::SetupDetectors()
160 epFilter->
add(particleName=
"e-");
161 epFilter->
add(particleName=
"e+");
163 for(
G4int i=0;i<3;i++)
165 G4String detName = fCalName[i]+
"_para";
198 if(fSerial==serial)
return;
200 if(!fConstructed)
return;
201 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)
void SetTranslation(const G4ThreeVector &v)
void AddNewDetector(G4VSensitiveDetector *aSD)
G4LogicalVolume * GetLogicalVolume() const
void add(const G4String &particleName)
static G4SDManager * GetSDMpointer()
virtual ~RE06ParallelWorld()