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

#include <coresoftware/blob/master/simulation/g4simulation/g4detectors/PHG4CEmcTestBeamDetector.h>

+ Inheritance diagram for PHG4CEmcTestBeamDetector:
+ Collaboration diagram for PHG4CEmcTestBeamDetector:

Public Member Functions

 PHG4CEmcTestBeamDetector (PHG4Subsystem *subsys, PHCompositeNode *Node, const std::string &dnam, const int lyr=0)
 constructor
 
 ~PHG4CEmcTestBeamDetector (void) override
 destructor
 
void ConstructMe (G4LogicalVolume *world) override
 construct
 
void SetPlaceZ (const G4double place_z)
 
void SetPlace (const G4double place_x, const G4double place_y, const G4double place_z)
 
void SetXRot (const G4double angle)
 
void SetYRot (const G4double angle)
 
void SetZRot (const G4double angle)
 
void SetActive (const int i=1)
 
void SetAbsorberActive (const int i=1)
 
int IsActive () const
 
void SuperDetector (const std::string &name)
 
const std::string SuperDetector () const
 
int get_Layer () const
 
void BlackHole (const int i=1)
 
int IsBlackHole () const
 
volume accessors
int IsInCEmcTestBeam (G4VPhysicalVolume *) const
 
- Public Member Functions inherited from PHG4Detector
 PHG4Detector ()=delete
 constructor
 
 PHG4Detector (PHG4Subsystem *subsys, PHCompositeNode *Node, const std::string &nam)
 
virtual ~PHG4Detector (void)
 destructor
 
virtual void Construct (G4LogicalVolume *world) final
 construct method
 
virtual void PostConstruction ()
 Optional PostConstruction call after all geometry is constructed.
 
virtual void Verbosity (const int v)
 
virtual int Verbosity () const
 
virtual G4UserSteppingActionGetSteppingAction ()
 
virtual std::string GetName () const
 
virtual void OverlapCheck (const bool chk)
 
virtual bool OverlapCheck () const
 
virtual void Print (const std::string &="ALL") const
 
virtual int DisplayVolume (G4VSolid *volume, G4LogicalVolume *logvol, G4RotationMatrix *rotm=nullptr)
 
virtual int DisplayVolume (G4LogicalVolume *checksolid, G4LogicalVolume *logvol, G4RotationMatrix *rotm=nullptr)
 
virtual PHCompositeNodetopNode ()
 
virtual PHG4SubsystemGetMySubsystem ()
 

Private Member Functions

void CalculateGeometry ()
 
int ConstructTowerVolume (G4LogicalVolume *tower)
 
int ConstructSandwichVolume (G4LogicalVolume *sandwich)
 

Private Attributes

std::vector< G4VPhysicalVolume * > sandwich_vol
 
G4double w_dimension [3]
 
G4double sc_dimension [3]
 
G4double gap
 
G4double place_in_x
 
G4double place_in_y
 
G4double place_in_z
 
double plate_x
 
double plate_z
 
double sandwich_thickness
 
G4double x_rot
 
G4double y_rot
 
G4double z_rot
 
double alpha
 
double inner_radius
 
double outer_radius
 
double tower_angular_coverage
 
double cemc_angular_coverage
 
double active_scinti_fraction
 
int sandwiches_per_tower
 
int num_towers
 
int active
 
int absorberactive
 
int layer
 
int blackhole
 
std::string detector_type
 
std::string superdetector
 

Additional Inherited Members

- Static Public Member Functions inherited from PHG4Detector
static G4MaterialGetDetectorMaterial (const std::string &name, const bool quit=true)
 
static G4ElementGetDetectorElement (const std::string &name, const bool quit=true)
 

Detailed Description

Definition at line 18 of file PHG4CEmcTestBeamDetector.h.

View newest version in sPHENIX GitHub at line 18 of file PHG4CEmcTestBeamDetector.h

Constructor & Destructor Documentation

PHG4CEmcTestBeamDetector::PHG4CEmcTestBeamDetector ( PHG4Subsystem subsys,
PHCompositeNode Node,
const std::string &  dnam,
const int  lyr = 0 
)

constructor

Definition at line 33 of file PHG4CEmcTestBeamDetector.cc.

View newest version in sPHENIX GitHub at line 33 of file PHG4CEmcTestBeamDetector.cc

References mm, plate_x, plate_z, sandwich_thickness, sandwich_vol, sc_dimension, and w_dimension.

PHG4CEmcTestBeamDetector::~PHG4CEmcTestBeamDetector ( void  )
inlineoverride

destructor

Definition at line 25 of file PHG4CEmcTestBeamDetector.h.

View newest version in sPHENIX GitHub at line 25 of file PHG4CEmcTestBeamDetector.h

Member Function Documentation

void PHG4CEmcTestBeamDetector::BlackHole ( const int  i = 1)
inline

Definition at line 54 of file PHG4CEmcTestBeamDetector.h.

View newest version in sPHENIX GitHub at line 54 of file PHG4CEmcTestBeamDetector.h

References blackhole.

Referenced by PHG4CEmcTestBeamSubsystem::Init().

+ Here is the caller graph for this function:

void PHG4CEmcTestBeamDetector::CalculateGeometry ( )
private

Definition at line 273 of file PHG4CEmcTestBeamDetector.cc.

View newest version in sPHENIX GitHub at line 273 of file PHG4CEmcTestBeamDetector.cc

References alpha, cemc_angular_coverage, deg, gap, inner_radius, num_towers, outer_radius, plate_x, sandwich_thickness, sandwiches_per_tower, and tower_angular_coverage.

Referenced by ConstructMe().

+ Here is the caller graph for this function:

void PHG4CEmcTestBeamDetector::ConstructMe ( G4LogicalVolume world)
overridevirtual

construct

Implements PHG4Detector.

Definition at line 90 of file PHG4CEmcTestBeamDetector.cc.

View newest version in sPHENIX GitHub at line 90 of file PHG4CEmcTestBeamDetector.cc

References CalculateGeometry(), cemc_angular_coverage, ConstructTowerVolume(), PHFlag::get_StringFlag(), PHG4Detector::GetDetectorMaterial(), inner_radius, recoConsts::instance(), no_overlap, outer_radius, PHG4Detector::OverlapCheck(), phi, place_in_x, place_in_y, place_in_z, rad, CLHEP::HepRotation::rotateX(), CLHEP::HepRotation::rotateY(), CLHEP::HepRotation::rotateZ(), tower_angular_coverage, w_dimension, x_rot, y_rot, and z_rot.

+ Here is the call graph for this function:

int PHG4CEmcTestBeamDetector::ConstructSandwichVolume ( G4LogicalVolume sandwich)
private

Definition at line 171 of file PHG4CEmcTestBeamDetector.cc.

View newest version in sPHENIX GitHub at line 171 of file PHG4CEmcTestBeamDetector.cc

References active_scinti_fraction, G4Colour::Blue(), PHG4Detector::GetDetectorMaterial(), G4Colour::Green(), PHG4Detector::OverlapCheck(), G4Colour::Red(), sandwich_vol, sc_dimension, G4VisAttributes::SetColour(), G4VisAttributes::SetForceSolid(), G4VisAttributes::SetVisibility(), and w_dimension.

Referenced by ConstructTowerVolume().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

int PHG4CEmcTestBeamDetector::ConstructTowerVolume ( G4LogicalVolume tower)
private

Definition at line 130 of file PHG4CEmcTestBeamDetector.cc.

View newest version in sPHENIX GitHub at line 130 of file PHG4CEmcTestBeamDetector.cc

References alpha, ConstructSandwichVolume(), PHFlag::get_StringFlag(), PHG4Detector::GetDetectorMaterial(), inner_radius, recoConsts::instance(), outer_radius, PHG4Detector::OverlapCheck(), phi, rad, CLHEP::HepRotation::rotateZ(), sandwich_thickness, G4VisAttributes::SetColour(), G4VisAttributes::SetForceSolid(), G4LogicalVolume::SetVisAttributes(), G4VisAttributes::SetVisibility(), w_dimension, and G4Colour::White().

Referenced by ConstructMe().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

int PHG4CEmcTestBeamDetector::get_Layer ( ) const
inline

Definition at line 52 of file PHG4CEmcTestBeamDetector.h.

View newest version in sPHENIX GitHub at line 52 of file PHG4CEmcTestBeamDetector.h

References layer.

int PHG4CEmcTestBeamDetector::IsActive ( ) const
inline

Definition at line 49 of file PHG4CEmcTestBeamDetector.h.

View newest version in sPHENIX GitHub at line 49 of file PHG4CEmcTestBeamDetector.h

References active.

Referenced by PHG4CEmcTestBeamSteppingAction::UserSteppingAction().

+ Here is the caller graph for this function:

int PHG4CEmcTestBeamDetector::IsBlackHole ( ) const
inline

Definition at line 55 of file PHG4CEmcTestBeamDetector.h.

View newest version in sPHENIX GitHub at line 55 of file PHG4CEmcTestBeamDetector.h

References blackhole.

Referenced by PHG4CEmcTestBeamSteppingAction::UserSteppingAction().

+ Here is the caller graph for this function:

int PHG4CEmcTestBeamDetector::IsInCEmcTestBeam ( G4VPhysicalVolume volume) const

Definition at line 73 of file PHG4CEmcTestBeamDetector.cc.

View newest version in sPHENIX GitHub at line 73 of file PHG4CEmcTestBeamDetector.cc

References absorberactive, active, and sandwich_vol.

Referenced by PHG4CEmcTestBeamSteppingAction::UserSteppingAction().

+ Here is the caller graph for this function:

void PHG4CEmcTestBeamDetector::SetAbsorberActive ( const int  i = 1)
inline

Definition at line 48 of file PHG4CEmcTestBeamDetector.h.

View newest version in sPHENIX GitHub at line 48 of file PHG4CEmcTestBeamDetector.h

References absorberactive.

Referenced by PHG4CEmcTestBeamSubsystem::Init().

+ Here is the caller graph for this function:

void PHG4CEmcTestBeamDetector::SetActive ( const int  i = 1)
inline

Definition at line 47 of file PHG4CEmcTestBeamDetector.h.

View newest version in sPHENIX GitHub at line 47 of file PHG4CEmcTestBeamDetector.h

References active.

Referenced by PHG4CEmcTestBeamSubsystem::Init().

+ Here is the caller graph for this function:

void PHG4CEmcTestBeamDetector::SetPlace ( const G4double  place_x,
const G4double  place_y,
const G4double  place_z 
)
inline

Definition at line 38 of file PHG4CEmcTestBeamDetector.h.

View newest version in sPHENIX GitHub at line 38 of file PHG4CEmcTestBeamDetector.h

References place_in_x, place_in_y, place_in_z, and G4PLUGDOOR::place_z.

Referenced by PHG4CEmcTestBeamSubsystem::Init().

+ Here is the caller graph for this function:

void PHG4CEmcTestBeamDetector::SetPlaceZ ( const G4double  place_z)
inline

Definition at line 37 of file PHG4CEmcTestBeamDetector.h.

View newest version in sPHENIX GitHub at line 37 of file PHG4CEmcTestBeamDetector.h

References place_in_z, and G4PLUGDOOR::place_z.

void PHG4CEmcTestBeamDetector::SetXRot ( const G4double  angle)
inline

Definition at line 44 of file PHG4CEmcTestBeamDetector.h.

View newest version in sPHENIX GitHub at line 44 of file PHG4CEmcTestBeamDetector.h

References angle, and x_rot.

Referenced by PHG4CEmcTestBeamSubsystem::Init().

+ Here is the caller graph for this function:

void PHG4CEmcTestBeamDetector::SetYRot ( const G4double  angle)
inline

Definition at line 45 of file PHG4CEmcTestBeamDetector.h.

View newest version in sPHENIX GitHub at line 45 of file PHG4CEmcTestBeamDetector.h

References angle, and y_rot.

Referenced by PHG4CEmcTestBeamSubsystem::Init().

+ Here is the caller graph for this function:

void PHG4CEmcTestBeamDetector::SetZRot ( const G4double  angle)
inline

Definition at line 46 of file PHG4CEmcTestBeamDetector.h.

View newest version in sPHENIX GitHub at line 46 of file PHG4CEmcTestBeamDetector.h

References angle, and z_rot.

Referenced by PHG4CEmcTestBeamSubsystem::Init().

+ Here is the caller graph for this function:

void PHG4CEmcTestBeamDetector::SuperDetector ( const std::string &  name)
inline

Definition at line 50 of file PHG4CEmcTestBeamDetector.h.

View newest version in sPHENIX GitHub at line 50 of file PHG4CEmcTestBeamDetector.h

References superdetector.

Referenced by PHG4CEmcTestBeamSubsystem::Init(), and PHG4CEmcTestBeamSteppingAction::SetInterfacePointers().

+ Here is the caller graph for this function:

const std::string PHG4CEmcTestBeamDetector::SuperDetector ( ) const
inline

Definition at line 51 of file PHG4CEmcTestBeamDetector.h.

View newest version in sPHENIX GitHub at line 51 of file PHG4CEmcTestBeamDetector.h

References superdetector.

Member Data Documentation

int PHG4CEmcTestBeamDetector::absorberactive
private

Definition at line 85 of file PHG4CEmcTestBeamDetector.h.

View newest version in sPHENIX GitHub at line 85 of file PHG4CEmcTestBeamDetector.h

Referenced by IsInCEmcTestBeam(), and SetAbsorberActive().

int PHG4CEmcTestBeamDetector::active
private

Definition at line 84 of file PHG4CEmcTestBeamDetector.h.

View newest version in sPHENIX GitHub at line 84 of file PHG4CEmcTestBeamDetector.h

Referenced by IsActive(), IsInCEmcTestBeam(), and SetActive().

double PHG4CEmcTestBeamDetector::active_scinti_fraction
private

Definition at line 80 of file PHG4CEmcTestBeamDetector.h.

View newest version in sPHENIX GitHub at line 80 of file PHG4CEmcTestBeamDetector.h

Referenced by ConstructSandwichVolume().

double PHG4CEmcTestBeamDetector::alpha
private

Definition at line 75 of file PHG4CEmcTestBeamDetector.h.

View newest version in sPHENIX GitHub at line 75 of file PHG4CEmcTestBeamDetector.h

Referenced by CalculateGeometry(), and ConstructTowerVolume().

int PHG4CEmcTestBeamDetector::blackhole
private

Definition at line 87 of file PHG4CEmcTestBeamDetector.h.

View newest version in sPHENIX GitHub at line 87 of file PHG4CEmcTestBeamDetector.h

Referenced by BlackHole(), and IsBlackHole().

double PHG4CEmcTestBeamDetector::cemc_angular_coverage
private

Definition at line 79 of file PHG4CEmcTestBeamDetector.h.

View newest version in sPHENIX GitHub at line 79 of file PHG4CEmcTestBeamDetector.h

Referenced by CalculateGeometry(), and ConstructMe().

std::string PHG4CEmcTestBeamDetector::detector_type
private

Definition at line 88 of file PHG4CEmcTestBeamDetector.h.

View newest version in sPHENIX GitHub at line 88 of file PHG4CEmcTestBeamDetector.h

G4double PHG4CEmcTestBeamDetector::gap
private

Definition at line 65 of file PHG4CEmcTestBeamDetector.h.

View newest version in sPHENIX GitHub at line 65 of file PHG4CEmcTestBeamDetector.h

Referenced by CalculateGeometry().

double PHG4CEmcTestBeamDetector::inner_radius
private

Definition at line 76 of file PHG4CEmcTestBeamDetector.h.

View newest version in sPHENIX GitHub at line 76 of file PHG4CEmcTestBeamDetector.h

Referenced by CalculateGeometry(), ConstructMe(), and ConstructTowerVolume().

int PHG4CEmcTestBeamDetector::layer
private

Definition at line 86 of file PHG4CEmcTestBeamDetector.h.

View newest version in sPHENIX GitHub at line 86 of file PHG4CEmcTestBeamDetector.h

Referenced by get_Layer().

int PHG4CEmcTestBeamDetector::num_towers
private

Definition at line 82 of file PHG4CEmcTestBeamDetector.h.

View newest version in sPHENIX GitHub at line 82 of file PHG4CEmcTestBeamDetector.h

Referenced by CalculateGeometry().

double PHG4CEmcTestBeamDetector::outer_radius
private

Definition at line 77 of file PHG4CEmcTestBeamDetector.h.

View newest version in sPHENIX GitHub at line 77 of file PHG4CEmcTestBeamDetector.h

Referenced by CalculateGeometry(), ConstructMe(), and ConstructTowerVolume().

G4double PHG4CEmcTestBeamDetector::place_in_x
private

Definition at line 66 of file PHG4CEmcTestBeamDetector.h.

View newest version in sPHENIX GitHub at line 66 of file PHG4CEmcTestBeamDetector.h

Referenced by ConstructMe(), and SetPlace().

G4double PHG4CEmcTestBeamDetector::place_in_y
private

Definition at line 67 of file PHG4CEmcTestBeamDetector.h.

View newest version in sPHENIX GitHub at line 67 of file PHG4CEmcTestBeamDetector.h

Referenced by ConstructMe(), and SetPlace().

G4double PHG4CEmcTestBeamDetector::place_in_z
private

Definition at line 68 of file PHG4CEmcTestBeamDetector.h.

View newest version in sPHENIX GitHub at line 68 of file PHG4CEmcTestBeamDetector.h

Referenced by ConstructMe(), SetPlace(), and SetPlaceZ().

double PHG4CEmcTestBeamDetector::plate_x
private

Definition at line 69 of file PHG4CEmcTestBeamDetector.h.

View newest version in sPHENIX GitHub at line 69 of file PHG4CEmcTestBeamDetector.h

Referenced by CalculateGeometry(), and PHG4CEmcTestBeamDetector().

double PHG4CEmcTestBeamDetector::plate_z
private

Definition at line 70 of file PHG4CEmcTestBeamDetector.h.

View newest version in sPHENIX GitHub at line 70 of file PHG4CEmcTestBeamDetector.h

Referenced by PHG4CEmcTestBeamDetector().

double PHG4CEmcTestBeamDetector::sandwich_thickness
private

Definition at line 71 of file PHG4CEmcTestBeamDetector.h.

View newest version in sPHENIX GitHub at line 71 of file PHG4CEmcTestBeamDetector.h

Referenced by CalculateGeometry(), ConstructTowerVolume(), and PHG4CEmcTestBeamDetector().

std::vector<G4VPhysicalVolume *> PHG4CEmcTestBeamDetector::sandwich_vol
private

Definition at line 62 of file PHG4CEmcTestBeamDetector.h.

View newest version in sPHENIX GitHub at line 62 of file PHG4CEmcTestBeamDetector.h

Referenced by ConstructSandwichVolume(), IsInCEmcTestBeam(), and PHG4CEmcTestBeamDetector().

int PHG4CEmcTestBeamDetector::sandwiches_per_tower
private

Definition at line 81 of file PHG4CEmcTestBeamDetector.h.

View newest version in sPHENIX GitHub at line 81 of file PHG4CEmcTestBeamDetector.h

Referenced by CalculateGeometry().

G4double PHG4CEmcTestBeamDetector::sc_dimension[3]
private

Definition at line 64 of file PHG4CEmcTestBeamDetector.h.

View newest version in sPHENIX GitHub at line 64 of file PHG4CEmcTestBeamDetector.h

Referenced by ConstructSandwichVolume(), and PHG4CEmcTestBeamDetector().

std::string PHG4CEmcTestBeamDetector::superdetector
private

Definition at line 89 of file PHG4CEmcTestBeamDetector.h.

View newest version in sPHENIX GitHub at line 89 of file PHG4CEmcTestBeamDetector.h

Referenced by SuperDetector().

double PHG4CEmcTestBeamDetector::tower_angular_coverage
private

Definition at line 78 of file PHG4CEmcTestBeamDetector.h.

View newest version in sPHENIX GitHub at line 78 of file PHG4CEmcTestBeamDetector.h

Referenced by CalculateGeometry(), and ConstructMe().

G4double PHG4CEmcTestBeamDetector::w_dimension[3]
private

Definition at line 63 of file PHG4CEmcTestBeamDetector.h.

View newest version in sPHENIX GitHub at line 63 of file PHG4CEmcTestBeamDetector.h

Referenced by ConstructMe(), ConstructSandwichVolume(), ConstructTowerVolume(), and PHG4CEmcTestBeamDetector().

G4double PHG4CEmcTestBeamDetector::x_rot
private

Definition at line 72 of file PHG4CEmcTestBeamDetector.h.

View newest version in sPHENIX GitHub at line 72 of file PHG4CEmcTestBeamDetector.h

Referenced by ConstructMe(), and SetXRot().

G4double PHG4CEmcTestBeamDetector::y_rot
private

Definition at line 73 of file PHG4CEmcTestBeamDetector.h.

View newest version in sPHENIX GitHub at line 73 of file PHG4CEmcTestBeamDetector.h

Referenced by ConstructMe(), and SetYRot().

G4double PHG4CEmcTestBeamDetector::z_rot
private

Definition at line 74 of file PHG4CEmcTestBeamDetector.h.

View newest version in sPHENIX GitHub at line 74 of file PHG4CEmcTestBeamDetector.h

Referenced by ConstructMe(), and SetZRot().


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