91   G4double dPhi = twopi/nb_cryst, half_dPhi = 0.5*dPhi;
 
   92   G4double cosdPhi = std::cos(half_dPhi);
 
   93   G4double tandPhi = std::tan(half_dPhi);
 
   95   G4double ring_R1 = 0.5*cryst_dY/tandPhi;
 
   96   G4double ring_R2 = (ring_R1+cryst_dZ)/cosdPhi;
 
   98   G4double detector_dZ = nb_rings*cryst_dX;
 
  107   G4double world_sizeXY = 2.4*ring_R2;
 
  108   G4double world_sizeZ  = 1.2*detector_dZ;
 
  112        0.5*world_sizeXY, 0.5*world_sizeXY, 0.5*world_sizeZ); 
 
  133     new G4Tubs(
"Ring", ring_R1, ring_R2, 0.5*cryst_dX, 0., twopi);
 
  144   G4double dX = cryst_dX - gap, dY = cryst_dY - gap;
 
  145   G4Box* solidCryst = 
new G4Box(
"crystal", dX/2, dY/2, cryst_dZ/2);
 
  154   for (
G4int icrys = 0; icrys < nb_cryst ; icrys++) {
 
  157     rotm.rotateY(90*
deg); 
 
  176     new G4Tubs(
"Detector", ring_R1, ring_R2, 0.5*detector_dZ, 0., twopi);
 
  186   G4double OG = -0.5*(detector_dZ + cryst_dX);
 
  187   for (
G4int iring = 0; iring < nb_rings ; iring++) {
 
  219     new G4Tubs(
"Patient", 0., patient_radius, 0.5*patient_dZ, 0., twopi);
 
G4bool RegisterPrimitive(G4VPrimitiveScorer *)
 
G4Material * FindOrBuildMaterial(const G4String &name, G4bool isotopes=true, G4bool warning=false)
 
Definition of the B3DetectorConstruction class. 
 
CLHEP::Hep3Vector G4ThreeVector
 
virtual void ConstructSDandField()
 
CLHEP::HepRotation G4RotationMatrix
 
void SetVerboseLevel(G4int vl)
 
virtual ~B3DetectorConstruction()
 
static G4MaterialTable * GetMaterialTable()
 
static G4NistManager * Instance()
 
G4GLOB_DLL std::ostream G4cout
 
virtual G4VPhysicalVolume * Construct()
 
void SetSensitiveDetector(const G4String &logVolName, G4VSensitiveDetector *aSD, G4bool multi=false)
 
static G4SDManager * GetSDMpointer()
 
static const G4VisAttributes Invisible
 
void AddElement(G4Element *element, G4int nAtoms)
 
G4Element * FindOrBuildElement(G4int Z, G4bool isotopes=true)
 
void SetVisAttributes(const G4VisAttributes *pVA)