ECCE @ EIC Software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
GB03DetectorConstruction Class Reference

#include <geant4/tree/geant4-10.6-release/examples/extended/biasing/GB03/include/GB03DetectorConstruction.hh>

+ Inheritance diagram for GB03DetectorConstruction:
+ Collaboration diagram for GB03DetectorConstruction:

Public Member Functions

 GB03DetectorConstruction ()
 
virtual ~GB03DetectorConstruction ()
 
virtual G4VPhysicalVolumeConstruct ()
 
virtual void ConstructSDandField ()
 
void PrintCalorParameters () const
 
void SetAbsorberMaterial (G4String materialChoice)
 
G4String GetAbsorberMaterial () const
 
void SetGapMaterial (G4String materialChoice)
 
G4String GetGapMaterial () const
 
void SetNumberOfLayers (G4int nl)
 
G4int GetVerboseLevel () const
 
void SetVerboseLevel (G4int val)
 
- 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
 

Static Public Member Functions

static G4int GetNumberOfLayers ()
 

Private Member Functions

void DefineMaterials ()
 
void SetupGeometry ()
 
void SetupDetectors ()
 
void SetupBiasing ()
 

Private Attributes

G4double fTotalThickness
 
G4double fLayerThickness
 total thinkness of one calorimeter
 
G4bool fConstructed
 = fTotalThickness / fNumberOfLayers
 
G4String fCalName
 
G4MaterialfWorldMaterial
 
G4MaterialfAbsorberMaterial
 
G4MaterialfGapMaterial
 
G4BoxfLayerSolid
 
G4BoxfGapSolid
 
G4LogicalVolumefWorldLogical
 
G4LogicalVolumefCalorLogical
 
G4LogicalVolumefLayerLogical
 
G4LogicalVolumefGapLogical
 
G4VPhysicalVolumefWorldPhysical
 
G4VPhysicalVolumefCalorPhysical
 
G4PVReplicafLayerPhysical
 
G4VPhysicalVolumefGapPhysical
 
GB03DetectorMessengerfDetectorMessenger
 
G4int fVerboseLevel
 

Static Private Attributes

static G4int fNumberOfLayers = 40
 
static G4ThreadLocal G4bool fConstructedSDandField = false
 

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

Definition at line 43 of file GB03DetectorConstruction.hh.

View newest version in sPHENIX GitHub at line 43 of file GB03DetectorConstruction.hh

Constructor & Destructor Documentation

GB03DetectorConstruction::GB03DetectorConstruction ( )

Definition at line 63 of file GB03DetectorConstruction.cc.

View newest version in sPHENIX GitHub at line 63 of file GB03DetectorConstruction.cc

References fCalName, fDetectorMessenger, fLayerThickness, fNumberOfLayers, and fTotalThickness.

GB03DetectorConstruction::~GB03DetectorConstruction ( )
virtual

Definition at line 80 of file GB03DetectorConstruction.cc.

View newest version in sPHENIX GitHub at line 80 of file GB03DetectorConstruction.cc

References fDetectorMessenger.

Member Function Documentation

G4VPhysicalVolume * GB03DetectorConstruction::Construct ( void  )
virtual

Implements G4VUserDetectorConstruction.

Definition at line 85 of file GB03DetectorConstruction.cc.

View newest version in sPHENIX GitHub at line 85 of file GB03DetectorConstruction.cc

References DefineMaterials(), fConstructed, fWorldPhysical, GetVerboseLevel(), PrintCalorParameters(), and SetupGeometry().

+ Here is the call graph for this function:

void GB03DetectorConstruction::ConstructSDandField ( )
virtual

Reimplemented from G4VUserDetectorConstruction.

Definition at line 101 of file GB03DetectorConstruction.cc.

View newest version in sPHENIX GitHub at line 101 of file GB03DetectorConstruction.cc

References fConstructedSDandField, SetupBiasing(), and SetupDetectors().

+ Here is the call graph for this function:

void GB03DetectorConstruction::DefineMaterials ( )
private

Definition at line 113 of file GB03DetectorConstruction.cc.

View newest version in sPHENIX GitHub at line 113 of file GB03DetectorConstruction.cc

References a, G4Material::AddElement(), G4Element::AddIsotope(), C(), cm3, e, fAbsorberMaterial, fGapMaterial, fWorldMaterial, Acts::UnitConstants::g, G4cout, G4endl, G4Material::GetMaterialTable(), GetVerboseLevel(), H, kelvin, kStateGas, mg, mole, n, N, pascal, perCent, source.hepunit::universe_mean_density, and z.

Referenced by Construct().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4String GB03DetectorConstruction::GetAbsorberMaterial ( ) const

Definition at line 359 of file GB03DetectorConstruction.cc.

View newest version in sPHENIX GitHub at line 359 of file GB03DetectorConstruction.cc

References fAbsorberMaterial, and G4Material::GetName().

Referenced by GB03DetectorMessenger::GetCurrentValue().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4String GB03DetectorConstruction::GetGapMaterial ( ) const

Definition at line 387 of file GB03DetectorConstruction.cc.

View newest version in sPHENIX GitHub at line 387 of file GB03DetectorConstruction.cc

References fGapMaterial, and G4Material::GetName().

Referenced by GB03DetectorMessenger::GetCurrentValue().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static G4int GB03DetectorConstruction::GetNumberOfLayers ( )
inlinestatic

Definition at line 58 of file GB03DetectorConstruction.hh.

View newest version in sPHENIX GitHub at line 58 of file GB03DetectorConstruction.hh

References fNumberOfLayers.

Referenced by GB03DetectorMessenger::GetCurrentValue().

+ Here is the caller graph for this function:

G4int GB03DetectorConstruction::GetVerboseLevel ( ) const
inline

Definition at line 60 of file GB03DetectorConstruction.hh.

View newest version in sPHENIX GitHub at line 60 of file GB03DetectorConstruction.hh

References fVerboseLevel.

Referenced by Construct(), DefineMaterials(), GB03DetectorMessenger::GetCurrentValue(), SetAbsorberMaterial(), and SetGapMaterial().

+ Here is the caller graph for this function:

void GB03DetectorConstruction::PrintCalorParameters ( ) const

Definition at line 321 of file GB03DetectorConstruction.cc.

View newest version in sPHENIX GitHub at line 321 of file GB03DetectorConstruction.cc

References fAbsorberMaterial, fGapMaterial, G4cout, G4endl, and G4Material::GetName().

Referenced by Construct(), SetAbsorberMaterial(), and SetGapMaterial().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void GB03DetectorConstruction::SetAbsorberMaterial ( G4String  materialChoice)

Definition at line 333 of file GB03DetectorConstruction.cc.

View newest version in sPHENIX GitHub at line 333 of file GB03DetectorConstruction.cc

References fAbsorberMaterial, fCalorLogical, fConstructed, fLayerLogical, G4cerr, G4endl, G4RunManager::GeometryHasBeenModified(), G4Material::GetMaterial(), G4RunManager::GetRunManager(), GetVerboseLevel(), PrintCalorParameters(), and G4LogicalVolume::SetMaterial().

Referenced by GB03DetectorMessenger::SetNewValue().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void GB03DetectorConstruction::SetGapMaterial ( G4String  materialChoice)

Definition at line 364 of file GB03DetectorConstruction.cc.

View newest version in sPHENIX GitHub at line 364 of file GB03DetectorConstruction.cc

References fConstructed, fGapLogical, fGapMaterial, G4cerr, G4endl, G4RunManager::GeometryHasBeenModified(), G4Material::GetMaterial(), G4RunManager::GetRunManager(), GetVerboseLevel(), PrintCalorParameters(), and G4LogicalVolume::SetMaterial().

Referenced by GB03DetectorMessenger::SetNewValue().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void GB03DetectorConstruction::SetNumberOfLayers ( G4int  nl)

Definition at line 392 of file GB03DetectorConstruction.cc.

View newest version in sPHENIX GitHub at line 392 of file GB03DetectorConstruction.cc

References fCalName, fCalorLogical, fConstructed, fGapPhysical, fGapSolid, fLayerLogical, fLayerPhysical, fLayerSolid, fLayerThickness, fNumberOfLayers, fTotalThickness, G4RunManager::GeometryHasBeenModified(), G4RunManager::GetRunManager(), kZAxis, G4LogicalVolume::RemoveDaughter(), G4VPhysicalVolume::SetTranslation(), and G4Box::SetZHalfLength().

Referenced by GB03DetectorMessenger::SetNewValue().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void GB03DetectorConstruction::SetupBiasing ( )
private

Definition at line 313 of file GB03DetectorConstruction.cc.

View newest version in sPHENIX GitHub at line 313 of file GB03DetectorConstruction.cc

References G4VBiasingOperator::AttachTo(), and fLayerLogical.

Referenced by ConstructSDandField().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void GB03DetectorConstruction::SetupDetectors ( )
private

Definition at line 264 of file GB03DetectorConstruction.cc.

View newest version in sPHENIX GitHub at line 264 of file GB03DetectorConstruction.cc

References G4SDManager::AddNewDetector(), fCalName, fGapLogical, fLayerLogical, G4SDManager::GetSDMpointer(), G4MultiFunctionalDetector::RegisterPrimitive(), G4VPrimitiveScorer::SetFilter(), G4VUserDetectorConstruction::SetSensitiveDetector(), and G4SDManager::SetVerboseLevel().

Referenced by ConstructSDandField().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void GB03DetectorConstruction::SetupGeometry ( )
private

Definition at line 214 of file GB03DetectorConstruction.cc.

View newest version in sPHENIX GitHub at line 214 of file GB03DetectorConstruction.cc

References fAbsorberMaterial, fCalName, fCalorLogical, fCalorPhysical, fGapLogical, fGapMaterial, fGapPhysical, fGapSolid, fLayerLogical, fLayerPhysical, fLayerSolid, fLayerThickness, fNumberOfLayers, fTotalThickness, fWorldLogical, fWorldMaterial, fWorldPhysical, G4VisAttributes::GetInvisible(), kZAxis, m, G4LogicalVolume::SetVisAttributes(), and G4VisAttributes::SetVisibility().

Referenced by Construct().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void GB03DetectorConstruction::SetVerboseLevel ( G4int  val)
inline

Definition at line 61 of file GB03DetectorConstruction.hh.

View newest version in sPHENIX GitHub at line 61 of file GB03DetectorConstruction.hh

References fVerboseLevel.

Referenced by GB03DetectorMessenger::SetNewValue().

+ Here is the caller graph for this function:

Member Data Documentation

G4Material* GB03DetectorConstruction::fAbsorberMaterial
private

Definition at line 81 of file GB03DetectorConstruction.hh.

View newest version in sPHENIX GitHub at line 81 of file GB03DetectorConstruction.hh

Referenced by DefineMaterials(), GetAbsorberMaterial(), PrintCalorParameters(), SetAbsorberMaterial(), and SetupGeometry().

G4String GB03DetectorConstruction::fCalName
private

Definition at line 78 of file GB03DetectorConstruction.hh.

View newest version in sPHENIX GitHub at line 78 of file GB03DetectorConstruction.hh

Referenced by GB03DetectorConstruction(), SetNumberOfLayers(), SetupDetectors(), and SetupGeometry().

G4LogicalVolume* GB03DetectorConstruction::fCalorLogical
private

Definition at line 88 of file GB03DetectorConstruction.hh.

View newest version in sPHENIX GitHub at line 88 of file GB03DetectorConstruction.hh

Referenced by SetAbsorberMaterial(), SetNumberOfLayers(), and SetupGeometry().

G4VPhysicalVolume* GB03DetectorConstruction::fCalorPhysical
private

Definition at line 93 of file GB03DetectorConstruction.hh.

View newest version in sPHENIX GitHub at line 93 of file GB03DetectorConstruction.hh

Referenced by SetupGeometry().

G4bool GB03DetectorConstruction::fConstructed
private

= fTotalThickness / fNumberOfLayers

Definition at line 75 of file GB03DetectorConstruction.hh.

View newest version in sPHENIX GitHub at line 75 of file GB03DetectorConstruction.hh

Referenced by Construct(), SetAbsorberMaterial(), SetGapMaterial(), and SetNumberOfLayers().

G4ThreadLocal G4bool GB03DetectorConstruction::fConstructedSDandField = false
staticprivate

Definition at line 76 of file GB03DetectorConstruction.hh.

View newest version in sPHENIX GitHub at line 76 of file GB03DetectorConstruction.hh

Referenced by ConstructSDandField().

GB03DetectorMessenger* GB03DetectorConstruction::fDetectorMessenger
private

Definition at line 97 of file GB03DetectorConstruction.hh.

View newest version in sPHENIX GitHub at line 97 of file GB03DetectorConstruction.hh

Referenced by GB03DetectorConstruction(), and ~GB03DetectorConstruction().

G4LogicalVolume* GB03DetectorConstruction::fGapLogical
private

Definition at line 90 of file GB03DetectorConstruction.hh.

View newest version in sPHENIX GitHub at line 90 of file GB03DetectorConstruction.hh

Referenced by SetGapMaterial(), SetupDetectors(), and SetupGeometry().

G4Material* GB03DetectorConstruction::fGapMaterial
private

Definition at line 82 of file GB03DetectorConstruction.hh.

View newest version in sPHENIX GitHub at line 82 of file GB03DetectorConstruction.hh

Referenced by DefineMaterials(), GetGapMaterial(), PrintCalorParameters(), SetGapMaterial(), and SetupGeometry().

G4VPhysicalVolume* GB03DetectorConstruction::fGapPhysical
private

Definition at line 95 of file GB03DetectorConstruction.hh.

View newest version in sPHENIX GitHub at line 95 of file GB03DetectorConstruction.hh

Referenced by SetNumberOfLayers(), and SetupGeometry().

G4Box* GB03DetectorConstruction::fGapSolid
private

Definition at line 85 of file GB03DetectorConstruction.hh.

View newest version in sPHENIX GitHub at line 85 of file GB03DetectorConstruction.hh

Referenced by SetNumberOfLayers(), and SetupGeometry().

G4LogicalVolume* GB03DetectorConstruction::fLayerLogical
private

Definition at line 89 of file GB03DetectorConstruction.hh.

View newest version in sPHENIX GitHub at line 89 of file GB03DetectorConstruction.hh

Referenced by SetAbsorberMaterial(), SetNumberOfLayers(), SetupBiasing(), SetupDetectors(), and SetupGeometry().

G4PVReplica* GB03DetectorConstruction::fLayerPhysical
private

Definition at line 94 of file GB03DetectorConstruction.hh.

View newest version in sPHENIX GitHub at line 94 of file GB03DetectorConstruction.hh

Referenced by SetNumberOfLayers(), and SetupGeometry().

G4Box* GB03DetectorConstruction::fLayerSolid
private

Definition at line 84 of file GB03DetectorConstruction.hh.

View newest version in sPHENIX GitHub at line 84 of file GB03DetectorConstruction.hh

Referenced by SetNumberOfLayers(), and SetupGeometry().

G4double GB03DetectorConstruction::fLayerThickness
private

total thinkness of one calorimeter

Definition at line 73 of file GB03DetectorConstruction.hh.

View newest version in sPHENIX GitHub at line 73 of file GB03DetectorConstruction.hh

Referenced by GB03DetectorConstruction(), SetNumberOfLayers(), and SetupGeometry().

G4int GB03DetectorConstruction::fNumberOfLayers = 40
staticprivate

Definition at line 70 of file GB03DetectorConstruction.hh.

View newest version in sPHENIX GitHub at line 70 of file GB03DetectorConstruction.hh

Referenced by GB03DetectorConstruction(), GetNumberOfLayers(), SetNumberOfLayers(), and SetupGeometry().

G4double GB03DetectorConstruction::fTotalThickness
private

Definition at line 72 of file GB03DetectorConstruction.hh.

View newest version in sPHENIX GitHub at line 72 of file GB03DetectorConstruction.hh

Referenced by GB03DetectorConstruction(), SetNumberOfLayers(), and SetupGeometry().

G4int GB03DetectorConstruction::fVerboseLevel
private

Definition at line 99 of file GB03DetectorConstruction.hh.

View newest version in sPHENIX GitHub at line 99 of file GB03DetectorConstruction.hh

Referenced by GetVerboseLevel(), and SetVerboseLevel().

G4LogicalVolume* GB03DetectorConstruction::fWorldLogical
private

Definition at line 87 of file GB03DetectorConstruction.hh.

View newest version in sPHENIX GitHub at line 87 of file GB03DetectorConstruction.hh

Referenced by SetupGeometry().

G4Material* GB03DetectorConstruction::fWorldMaterial
private

Definition at line 80 of file GB03DetectorConstruction.hh.

View newest version in sPHENIX GitHub at line 80 of file GB03DetectorConstruction.hh

Referenced by DefineMaterials(), and SetupGeometry().

G4VPhysicalVolume* GB03DetectorConstruction::fWorldPhysical
private

Definition at line 92 of file GB03DetectorConstruction.hh.

View newest version in sPHENIX GitHub at line 92 of file GB03DetectorConstruction.hh

Referenced by Construct(), and SetupGeometry().


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