Analysis Software
Documentation for sPHENIX simulation software
|
#include <coresoftware/blob/master/simulation/g4simulation/g4ihcal/PHG4IHCalSteppingAction.h>
Public Member Functions | |
PHG4IHCalSteppingAction (PHG4IHCalDetector *, const PHParameters *parameters) | |
constructor | |
~PHG4IHCalSteppingAction () override | |
destructor | |
bool | UserSteppingAction (const G4Step *, bool) override |
stepping action | |
int | InitWithNode (PHCompositeNode *topNode) override |
void | SetInterfacePointers (PHCompositeNode *) override |
reimplemented from base class | |
void | SetHitNodeName (const std::string &type, const std::string &name) override |
Set the G4HIT node names from Subsystem rather than constructing your own. | |
void | CreateNodeTree (PHCompositeNode *topNode) |
Public Member Functions inherited from PHG4SteppingAction | |
PHG4SteppingAction (const std::string &name, const int i=0) | |
virtual | ~PHG4SteppingAction () |
virtual void | Verbosity (const int i) |
virtual int | Verbosity () const |
virtual int | Init () |
virtual double | GetScintLightYield (const G4Step *step) |
get scintillation photon count. It require a custom set SCINTILLATIONYIELD property to work | |
virtual double | GetVisibleEnergyDeposition (const G4Step *step) |
get amount of energy that can make scintillation light, in Unit of GeV. | |
virtual void | StoreLocalCoordinate (PHG4Hit *hit, const G4Step *step, const bool do_prepoint, const bool do_postpoint) |
Extract local coordinate of the hit and save to PHG4Hit. | |
virtual void | Print (const std::string &) const |
std::string | GetName () const |
void | SetName (const std::string &name) |
virtual void | SetLightCorrection (const double inner_radius, const double inner_corr, const double outer_radius, const double outer_corr) |
virtual double | GetLightCorrection (const double r) const |
virtual double | GetLightCorrection (const double xpos, const double ypos) const |
virtual bool | ValidCorrection () const |
Private Member Functions | |
bool | NoHitSteppingAction (const G4Step *aStep) |
Private Attributes | |
PHG4IHCalDetector * | m_Detector = nullptr |
pointer to the detector | |
TH2 * | m_MapCorrHist = nullptr |
efficiency maps from Mephi | |
PHG4HitContainer * | m_HitContainer = nullptr |
pointer to hit container | |
PHG4HitContainer * | m_AbsorberHitContainer = nullptr |
PHG4Hit * | m_Hit = nullptr |
const PHParameters * | m_Params = nullptr |
PHG4HitContainer * | m_SaveHitContainer = nullptr |
PHG4Shower * | m_SaveShower = nullptr |
G4VPhysicalVolume * | m_SaveVolPre = nullptr |
G4VPhysicalVolume * | m_SaveVolPost = nullptr |
int | m_SaveTrackId = -1 |
int | m_SavePreStepStatus = -1 |
int | m_SavePostStepStatus = -1 |
int | m_IsActive = 0 |
int | m_IsBlackHole = 0 |
int | m_LightScintModelFlag = 0 |
bool | m_doG4Hit = true |
double | m_tmin = -20. |
double | m_tmax = 60. |
double | m_dt = 100. |
std::string | m_AbsorberNodeName |
std::string | m_HitNodeName |
TowerInfoContainer * | m_CaloInfoContainer = nullptr |
Definition at line 21 of file PHG4IHCalSteppingAction.h.
View newest version in sPHENIX GitHub at line 21 of file PHG4IHCalSteppingAction.h
PHG4IHCalSteppingAction::PHG4IHCalSteppingAction | ( | PHG4IHCalDetector * | detector, |
const PHParameters * | parameters | ||
) |
constructor
Definition at line 63 of file PHG4IHCalSteppingAction.cc.
View newest version in sPHENIX GitHub at line 63 of file PHG4IHCalSteppingAction.cc
References Acts::UnitConstants::cm, PHParameters::get_double_param(), m_Params, and PHG4SteppingAction::SetLightCorrection().
|
override |
destructor
Definition at line 81 of file PHG4IHCalSteppingAction.cc.
View newest version in sPHENIX GitHub at line 81 of file PHG4IHCalSteppingAction.cc
References m_Hit, and m_MapCorrHist.
void PHG4IHCalSteppingAction::CreateNodeTree | ( | PHCompositeNode * | topNode | ) |
Definition at line 577 of file PHG4IHCalSteppingAction.cc.
View newest version in sPHENIX GitHub at line 577 of file PHG4IHCalSteppingAction.cc
References PHCompositeNode::addNode(), PHNodeIterator::findFirst(), m_CaloInfoContainer, m_Detector, PHCompositeNode::PHCompositeNode(), and PHG4IHCalDetector::SuperDetector().
Referenced by InitWithNode().
|
overridevirtual |
Reimplemented from PHG4SteppingAction.
Definition at line 93 of file PHG4IHCalSteppingAction.cc.
View newest version in sPHENIX GitHub at line 93 of file PHG4IHCalSteppingAction.cc
References Fun4AllReturnCodes::ABORTRUN, CreateNodeTree(), Acts::UnitConstants::e, Acts::Concepts::exists, file, PHParameters::get_string_param(), m_doG4Hit, m_LightScintModelFlag, m_MapCorrHist, m_Params, PHWHERE, PHCompositeNode::print(), and PHG4SteppingAction::Verbosity().
|
private |
Definition at line 137 of file PHG4IHCalSteppingAction.cc.
View newest version in sPHENIX GitHub at line 137 of file PHG4IHCalSteppingAction.cc
References Acts::UnitConstants::cm, TowerInfoDefs::encode_hcal(), TowerInfo::get_energy(), TowerInfoContainer::get_tower_at_key(), PHG4IHCalDetector::GetLayerTowerId(), PHG4SteppingAction::GetLightCorrection(), PHG4SteppingAction::GetVisibleEnergyDeposition(), Acts::UnitConstants::GeV, PHG4IHCalDetector::IsInIHCal(), m_CaloInfoContainer, m_Detector, m_dt, m_IsActive, m_LightScintModelFlag, m_MapCorrHist, m_tmax, merge_hashes::p, and TowerInfo::set_energy().
Referenced by UserSteppingAction().
|
overridevirtual |
Set the G4HIT node names from Subsystem rather than constructing your own.
Reimplemented from PHG4SteppingAction.
Definition at line 560 of file PHG4IHCalSteppingAction.cc.
View newest version in sPHENIX GitHub at line 560 of file PHG4IHCalSteppingAction.cc
References m_AbsorberNodeName, m_HitNodeName, and perf_headwind::name.
|
overridevirtual |
reimplemented from base class
Reimplemented from PHG4SteppingAction.
Definition at line 541 of file PHG4IHCalSteppingAction.cc.
View newest version in sPHENIX GitHub at line 541 of file PHG4IHCalSteppingAction.cc
References m_AbsorberHitContainer, m_AbsorberNodeName, m_HitContainer, m_HitNodeName, and PHG4SteppingAction::Verbosity().
|
overridevirtual |
stepping action
Implements PHG4SteppingAction.
Definition at line 239 of file PHG4IHCalSteppingAction.cc.
View newest version in sPHENIX GitHub at line 239 of file PHG4IHCalSteppingAction.cc
References PHG4Shower::add_g4hit_id(), PHG4HitContainer::AddHit(), Acts::UnitConstants::cm, PHG4Hit::get_edep(), PHG4Hit::get_eion(), PHG4Hit::get_hit_id(), PHG4Hit::get_light_yield(), PHG4Hit::get_raw_light_yield(), PHG4Hit::get_x(), PHG4HitContainer::GetID(), PHG4IHCalDetector::GetLayerTowerId(), PHG4SteppingAction::GetLightCorrection(), PHG4SteppingAction::GetName(), PHG4IHCalDetector::GetSectorId(), PHG4StepStatusDecode::GetStepStatus(), PHG4SteppingAction::GetVisibleEnergyDeposition(), Acts::UnitConstants::GeV, PHG4IHCalDetector::IsInIHCal(), m_AbsorberHitContainer, m_Detector, m_doG4Hit, m_Hit, m_HitContainer, m_IsActive, m_IsBlackHole, m_LightScintModelFlag, m_MapCorrHist, m_SaveHitContainer, m_SavePostStepStatus, m_SavePreStepStatus, m_SaveShower, m_SaveTrackId, m_SaveVolPost, m_SaveVolPre, NoHitSteppingAction(), merge_hashes::p, PHG4Hit::Reset(), PHG4Hit::set_edep(), PHG4Hit::set_eion(), PHG4Hit::set_light_yield(), PHG4Hit::set_raw_light_yield(), PHG4Hit::set_scint_id(), PHG4Hit::set_sector(), PHG4Hit::set_shower_id(), PHG4Hit::set_t(), PHG4Hit::set_trkid(), PHG4Hit::set_x(), PHG4Hit::set_y(), and PHG4Hit::set_z().
|
private |
Definition at line 52 of file PHG4IHCalSteppingAction.h.
View newest version in sPHENIX GitHub at line 52 of file PHG4IHCalSteppingAction.h
Referenced by SetInterfacePointers(), and UserSteppingAction().
|
private |
Definition at line 73 of file PHG4IHCalSteppingAction.h.
View newest version in sPHENIX GitHub at line 73 of file PHG4IHCalSteppingAction.h
Referenced by SetHitNodeName(), and SetInterfacePointers().
|
private |
Definition at line 76 of file PHG4IHCalSteppingAction.h.
View newest version in sPHENIX GitHub at line 76 of file PHG4IHCalSteppingAction.h
Referenced by CreateNodeTree(), and NoHitSteppingAction().
|
private |
pointer to the detector
Definition at line 45 of file PHG4IHCalSteppingAction.h.
View newest version in sPHENIX GitHub at line 45 of file PHG4IHCalSteppingAction.h
Referenced by CreateNodeTree(), NoHitSteppingAction(), and UserSteppingAction().
|
private |
Definition at line 68 of file PHG4IHCalSteppingAction.h.
View newest version in sPHENIX GitHub at line 68 of file PHG4IHCalSteppingAction.h
Referenced by InitWithNode(), and UserSteppingAction().
|
private |
Definition at line 71 of file PHG4IHCalSteppingAction.h.
View newest version in sPHENIX GitHub at line 71 of file PHG4IHCalSteppingAction.h
Referenced by NoHitSteppingAction().
|
private |
Definition at line 53 of file PHG4IHCalSteppingAction.h.
View newest version in sPHENIX GitHub at line 53 of file PHG4IHCalSteppingAction.h
Referenced by UserSteppingAction(), and ~PHG4IHCalSteppingAction().
|
private |
pointer to hit container
Definition at line 51 of file PHG4IHCalSteppingAction.h.
View newest version in sPHENIX GitHub at line 51 of file PHG4IHCalSteppingAction.h
Referenced by SetInterfacePointers(), and UserSteppingAction().
|
private |
Definition at line 74 of file PHG4IHCalSteppingAction.h.
View newest version in sPHENIX GitHub at line 74 of file PHG4IHCalSteppingAction.h
Referenced by SetHitNodeName(), and SetInterfacePointers().
|
private |
Definition at line 65 of file PHG4IHCalSteppingAction.h.
View newest version in sPHENIX GitHub at line 65 of file PHG4IHCalSteppingAction.h
Referenced by NoHitSteppingAction(), and UserSteppingAction().
|
private |
Definition at line 66 of file PHG4IHCalSteppingAction.h.
View newest version in sPHENIX GitHub at line 66 of file PHG4IHCalSteppingAction.h
Referenced by UserSteppingAction().
|
private |
Definition at line 67 of file PHG4IHCalSteppingAction.h.
View newest version in sPHENIX GitHub at line 67 of file PHG4IHCalSteppingAction.h
Referenced by InitWithNode(), NoHitSteppingAction(), and UserSteppingAction().
|
private |
efficiency maps from Mephi
Definition at line 48 of file PHG4IHCalSteppingAction.h.
View newest version in sPHENIX GitHub at line 48 of file PHG4IHCalSteppingAction.h
Referenced by InitWithNode(), NoHitSteppingAction(), UserSteppingAction(), and ~PHG4IHCalSteppingAction().
|
private |
Definition at line 54 of file PHG4IHCalSteppingAction.h.
View newest version in sPHENIX GitHub at line 54 of file PHG4IHCalSteppingAction.h
Referenced by InitWithNode(), and PHG4IHCalSteppingAction().
|
private |
Definition at line 55 of file PHG4IHCalSteppingAction.h.
View newest version in sPHENIX GitHub at line 55 of file PHG4IHCalSteppingAction.h
Referenced by UserSteppingAction().
|
private |
Definition at line 61 of file PHG4IHCalSteppingAction.h.
View newest version in sPHENIX GitHub at line 61 of file PHG4IHCalSteppingAction.h
Referenced by UserSteppingAction().
|
private |
Definition at line 60 of file PHG4IHCalSteppingAction.h.
View newest version in sPHENIX GitHub at line 60 of file PHG4IHCalSteppingAction.h
Referenced by UserSteppingAction().
|
private |
Definition at line 56 of file PHG4IHCalSteppingAction.h.
View newest version in sPHENIX GitHub at line 56 of file PHG4IHCalSteppingAction.h
Referenced by UserSteppingAction().
|
private |
Definition at line 59 of file PHG4IHCalSteppingAction.h.
View newest version in sPHENIX GitHub at line 59 of file PHG4IHCalSteppingAction.h
Referenced by UserSteppingAction().
|
private |
Definition at line 58 of file PHG4IHCalSteppingAction.h.
View newest version in sPHENIX GitHub at line 58 of file PHG4IHCalSteppingAction.h
Referenced by UserSteppingAction().
|
private |
Definition at line 57 of file PHG4IHCalSteppingAction.h.
View newest version in sPHENIX GitHub at line 57 of file PHG4IHCalSteppingAction.h
Referenced by UserSteppingAction().
|
private |
Definition at line 70 of file PHG4IHCalSteppingAction.h.
View newest version in sPHENIX GitHub at line 70 of file PHG4IHCalSteppingAction.h
Referenced by NoHitSteppingAction().
|
private |
Definition at line 69 of file PHG4IHCalSteppingAction.h.
View newest version in sPHENIX GitHub at line 69 of file PHG4IHCalSteppingAction.h