61    fDetectorMessenger(0),
 
   62    fSolidWorld(0), fLogicWorld(0), fPhysiWorld(0),
 
   63    fSolidAbsorber(0), fLogicAbsorber(0), fPhysiAbsorber(0),
 
   64    fAbsorberMaterial(0), fAbsorberThickness(0.), fAbsorberRadius(0.),
 
   65    fZAbsorber(0.), fZStartAbs(0.), fZEndAbs(0.),
 
   66    fWorldMaterial(0), fWorldSizeR(0.), fWorldSizeZ(0.)
 
   70   fWorldSizeZ = 44000.*
mm;
 
   71   fWorldSizeR = 22000.*
mm;
 
   73   fAbsorberThickness = 1.0*
mm;
 
   75   fAbsorberRadius   = 20000.*
mm;
 
   76   fZAbsorber = 21990.0*
mm;
 
   92   delete fDetectorMessenger;
 
   99   return ConstructCalorimeter();
 
  104 void F01DetectorConstruction::DefineMaterials()
 
  112   G4double fractionmass, pressure, temperature;
 
  139   density = 1.39*
g/
cm3;
 
  153   density = 3.700*
mg/
cm3;
 
  159   density = 1.7836*
mg/
cm3;        
 
  163   density = 1.25053*
mg/
cm3;       
 
  167   density = 1.4289*
mg/
cm3;        
 
  171   density  = 1.2928*
mg/
cm3;       
 
  179   air->
AddMaterial( nitrogen, fractionmass = 0.7557 );
 
  186   density = 5.858*
mg/
cm3;
 
  192   density = 1.842*
mg/
cm3;
 
  199   density = 5.0818*
mg/
cm3;
 
  202   Xe20CO2->
AddMaterial( CarbonDioxide,   fractionmass = 0.078 );
 
  206   density = 3.601*
mg/
cm3;
 
  209   Kr20CO2->
AddMaterial( CarbonDioxide,   fractionmass = 0.11 );
 
  215   fAbsorberMaterial = air; 
 
  217   fWorldMaterial    = air;
 
  236   ComputeCalorParameters();
 
  241   fSolidWorld = 
new G4Tubs(
"World",                        
 
  242                    0.,fWorldSizeR,fWorldSizeZ/2.,0.,
twopi);
 
  257   fSolidAbsorber = 
new G4Tubs(
"Absorber", 1.0*
mm,
 
  259                               fAbsorberThickness/2.,
 
  281   G4cout << 
"\n The  WORLD   is made of " 
  282          << fWorldSizeZ/
mm << 
"mm of " << fWorldMaterial->
GetName();
 
  283   G4cout << 
", the transverse size (R) of the world is " 
  284          << fWorldSizeR/
mm << 
" mm. " << 
G4endl;
 
  285   G4cout << 
" The ABSORBER is made of " 
  286          << fAbsorberThickness/
mm << 
"mm of " << fAbsorberMaterial->
GetName();
 
  287   G4cout << 
", the transverse size (R) is " << fAbsorberRadius/
mm 
  289   G4cout << 
" Z position of the (middle of the) absorber " 
  290          << fZAbsorber/
mm << 
"  mm." << 
G4endl;
 
  303   for (
size_t j=0 ; j<theMaterialTable->size() ; j++)
 
  304    { material = (*theMaterialTable)[j];
 
  305      if (material->
GetName() == materialChoice)
 
  323   for (
size_t j=0 ; j<theMaterialTable->size() ; j++)
 
  324    { material = (*theMaterialTable)[j];
 
  325      if(material->
GetName() == materialChoice)
 
  339   fAbsorberThickness = val;
 
  340   ComputeCalorParameters();
 
  349   fAbsorberRadius = val;
 
  350   ComputeCalorParameters();
 
  359   ComputeCalorParameters();
 
  368   ComputeCalorParameters();
 
  377   ComputeCalorParameters();
 
  387   if (!fCalorimeterSD.
Get()) {
 
  389     fCalorimeterSD.
Put(calorimeterSD);
 
  394   if (!fEmFieldSetup.
Get()) {
 
  398     fEmFieldSetup.
Put(fieldSetup);
 
void SetAbsorberMaterial(G4String)
 
F01DetectorConstruction()
 
void SetAbsorberThickness(G4double)
 
CLHEP::Hep3Vector G4ThreeVector
 
void AddMaterial(G4Material *material, G4double fraction)
 
const G4String & GetName() const 
 
static G4MaterialTable * GetMaterialTable()
 
std::vector< G4Material * > G4MaterialTable
 
Definition of the F01DetectorMessenger class. 
 
static G4PhysicalVolumeStore * GetInstance()
 
Definition of the F01DetectorConstruction class. 
 
void SetWorldSizeR(G4double)
 
void SetWorldMaterial(G4String)
 
void SetWorldSizeZ(G4double)
 
G4GLOB_DLL std::ostream G4cout
 
Definition of the F01FieldSetup class. 
 
void PhysicsHasBeenModified()
 
void SetAbsorberZpos(G4double)
 
static G4LogicalVolumeStore * GetInstance()
 
static G4SolidStore * GetInstance()
 
static G4GeometryManager * GetInstance()
 
virtual G4VPhysicalVolume * Construct()
 
Definition of the F01CalorimeterSD class. 
 
void SetSensitiveDetector(const G4String &logVolName, G4VSensitiveDetector *aSD, G4bool multi=false)
 
void ReinitializeGeometry(G4bool destroyFirst=false, G4bool prop=true)
 
static G4RunManager * GetRunManager()
 
virtual void ConstructSDandField()
 
void OpenGeometry(G4VPhysicalVolume *vol=0)
 
void AddElement(G4Element *element, G4int nAtoms)
 
virtual ~F01DetectorConstruction()
 
void SetMaterial(G4Material *pMaterial)
 
void Put(const value_type &val) const 
 
void PrintCalorParameters()
 
void SetAbsorberRadius(G4double)