Geant4  10.01.p02
B4DetectorConstruction Class Reference

Detector construction class to define materials and geometry. The calorimeter is a box made of a given number of layers. A layer consists of an absorber plate and of a detection gap. The layer is replicated. More...

#include <B4DetectorConstruction.hh>

+ Inheritance diagram for B4DetectorConstruction:
+ Collaboration diagram for B4DetectorConstruction:

Public Member Functions

 B4DetectorConstruction ()
 
virtual ~B4DetectorConstruction ()
 
virtual G4VPhysicalVolume * Construct ()
 
virtual void ConstructSDandField ()
 
const G4VPhysicalVolume * GetAbsorberPV () const
 
const G4VPhysicalVolume * GetGapPV () const
 
 B4DetectorConstruction ()
 
virtual ~B4DetectorConstruction ()
 
virtual G4VPhysicalVolume * Construct ()
 
virtual void ConstructSDandField ()
 
const G4VPhysicalVolume * GetAbsorberPV () const
 
const G4VPhysicalVolume * GetGapPV () const
 
- Public Member Functions inherited from G4VUserDetectorConstruction
 G4VUserDetectorConstruction ()
 
virtual ~G4VUserDetectorConstruction ()
 
virtual void CloneSD ()
 
virtual void CloneF ()
 
void RegisterParallelWorld (G4VUserParallelWorld *)
 
G4int ConstructParallelGeometries ()
 
void ConstructParallelSD ()
 
G4int GetNumberOfParallelWorld () const
 
G4VUserParallelWorld * GetParallelWorld (G4int i) const
 

Private Member Functions

void DefineMaterials ()
 
G4VPhysicalVolume * DefineVolumes ()
 
void DefineMaterials ()
 
G4VPhysicalVolume * DefineVolumes ()
 

Private Attributes

G4VPhysicalVolume * fAbsorberPV
 
G4VPhysicalVolume * fGapPV
 
G4bool fCheckOverlaps
 

Static Private Attributes

static G4ThreadLocal
G4GlobalMagFieldMessenger * 
fMagFieldMessenger = 0
 

Additional Inherited Members

- Protected Member Functions inherited from G4VUserDetectorConstruction
void SetSensitiveDetector (const G4String &logVolName, G4VSensitiveDetector *aSD, G4bool multi=false)
 
void SetSensitiveDetector (G4LogicalVolume *logVol, G4VSensitiveDetector *aSD)
 

Detailed Description

Detector construction class to define materials and geometry. The calorimeter is a box made of a given number of layers. A layer consists of an absorber plate and of a detection gap. The layer is replicated.

Four parameters define the geometry of the calorimeter :

  • the thickness of an absorber plate,
  • the thickness of a gap,
  • the number of layers,
  • the transverse size of the calorimeter (the input face is a square).

In addition a transverse uniform magnetic field is defined via G4GlobalMagFieldMessenger class.

Definition at line 54 of file B4DetectorConstruction.hh.

Constructor & Destructor Documentation

B4DetectorConstruction::B4DetectorConstruction ( )

Definition at line 61 of file B4DetectorConstruction.cc.

B4DetectorConstruction::~B4DetectorConstruction ( )
virtual

Definition at line 71 of file B4DetectorConstruction.cc.

B4DetectorConstruction::B4DetectorConstruction ( )
virtual B4DetectorConstruction::~B4DetectorConstruction ( )
virtual

Member Function Documentation

G4VPhysicalVolume * B4DetectorConstruction::Construct ( void  )
virtual

Implements G4VUserDetectorConstruction.

Definition at line 77 of file B4DetectorConstruction.cc.

References DefineMaterials(), and DefineVolumes().

+ Here is the call graph for this function:

virtual G4VPhysicalVolume* B4DetectorConstruction::Construct ( )
virtual
void B4DetectorConstruction::ConstructSDandField ( )
virtual

Reimplemented from G4VUserDetectorConstruction.

Definition at line 281 of file B4DetectorConstruction.cc.

References fMagFieldMessenger, G4AutoDelete::Register(), and G4GlobalMagFieldMessenger::SetVerboseLevel().

+ Here is the call graph for this function:

virtual void B4DetectorConstruction::ConstructSDandField ( )
virtual

Reimplemented from G4VUserDetectorConstruction.

void B4DetectorConstruction::DefineMaterials ( )
private
void B4DetectorConstruction::DefineMaterials ( )
private

Definition at line 88 of file B4DetectorConstruction.cc.

References a, cm3, density, G4NistManager::FindOrBuildMaterial(), g, G4cout, G4endl, G4Material::GetMaterialTable(), G4NistManager::Instance(), kelvin, kStateGas, mole, pascal, and z.

Referenced by Construct().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4VPhysicalVolume * B4DetectorConstruction::DefineVolumes ( )
private

Definition at line 111 of file B4DetectorConstruction.cc.

References cm, fAbsorberPV, FatalException, fCheckOverlaps, fGapPV, G4cout, G4endl, G4Exception(), G4Material::GetMaterial(), G4Material::GetName(), G4VisAttributes::Invisible, kZAxis, mm, G4LogicalVolume::SetVisAttributes(), and G4VisAttributes::SetVisibility().

Referenced by Construct().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4VPhysicalVolume* B4DetectorConstruction::DefineVolumes ( )
private
const G4VPhysicalVolume* B4DetectorConstruction::GetAbsorberPV ( ) const
const G4VPhysicalVolume * B4DetectorConstruction::GetAbsorberPV ( ) const
inline

Definition at line 88 of file B4DetectorConstruction.hh.

References fAbsorberPV.

Referenced by B4bSteppingAction::UserSteppingAction(), and B4aSteppingAction::UserSteppingAction().

+ Here is the caller graph for this function:

const G4VPhysicalVolume * B4DetectorConstruction::GetGapPV ( ) const
inline

Definition at line 92 of file B4DetectorConstruction.hh.

References fGapPV.

Referenced by B4bSteppingAction::UserSteppingAction(), and B4aSteppingAction::UserSteppingAction().

+ Here is the caller graph for this function:

const G4VPhysicalVolume* B4DetectorConstruction::GetGapPV ( ) const

Member Data Documentation

G4VPhysicalVolume * B4DetectorConstruction::fAbsorberPV
private

Definition at line 80 of file B4DetectorConstruction.hh.

Referenced by DefineVolumes(), and GetAbsorberPV().

G4bool B4DetectorConstruction::fCheckOverlaps
private

Definition at line 83 of file B4DetectorConstruction.hh.

Referenced by DefineVolumes().

G4VPhysicalVolume * B4DetectorConstruction::fGapPV
private

Definition at line 81 of file B4DetectorConstruction.hh.

Referenced by DefineVolumes(), and GetGapPV().

G4ThreadLocal G4GlobalMagFieldMessenger * B4DetectorConstruction::fMagFieldMessenger = 0
staticprivate

Definition at line 77 of file B4DetectorConstruction.hh.

Referenced by ConstructSDandField().


The documentation for this class was generated from the following files: