Geant4  10.01.p01
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 G4VPhysicalVolumeConstruct ()
 
virtual void ConstructSDandField ()
 
const G4VPhysicalVolumeGetAbsorberPV () const
 
const G4VPhysicalVolumeGetGapPV () const
 
 B4DetectorConstruction ()
 
virtual ~B4DetectorConstruction ()
 
virtual G4VPhysicalVolumeConstruct ()
 
virtual void ConstructSDandField ()
 
const G4VPhysicalVolumeGetAbsorberPV () const
 
const G4VPhysicalVolumeGetGapPV () 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
 
G4VUserParallelWorldGetParallelWorld (G4int i) const
 

Private Member Functions

void DefineMaterials ()
 
G4VPhysicalVolumeDefineVolumes ()
 
void DefineMaterials ()
 
G4VPhysicalVolumeDefineVolumes ()
 

Private Attributes

G4VPhysicalVolumefAbsorberPV
 
G4VPhysicalVolumefGapPV
 
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: