![]() |
DD4hep
1.33.0
Detector Description Toolkit for High Energy Physics
|
Geant4 wrapper for the GFlash shower model. More...
Public Member Functions | |
| Geant4GFlashShowerModel (Geant4Context *context, const std::string &nam) | |
| Standard constructor. More... | |
| virtual | ~Geant4GFlashShowerModel () |
| Default destructor. More... | |
| void | adoptShowerParametrization (Geant4Action *param) |
| Adopt shower parametrization object. More... | |
| virtual void | constructSensitives (Geant4DetectorConstructionContext *ctxt) |
| Sensitive detector construction callback. Called at "ConstructSDandField()". More... | |
Public Member Functions inherited from dd4hep::sim::Geant4FastSimShowerModel | |
| Geant4FastSimShowerModel (Geant4Context *context, const std::string &nam) | |
| Standard constructor. More... | |
| virtual | ~Geant4FastSimShowerModel () |
| Default destructor. More... | |
| virtual void | constructGeo (Geant4DetectorConstructionContext *ctxt) override |
| Geometry construction callback. Called at "Construct()". More... | |
| virtual void | constructField (Geant4DetectorConstructionContext *ctxt) override |
| Electromagnetic field construction callback. Called at "ConstructSDandField()". More... | |
| virtual bool | check_applicability (const G4ParticleDefinition &particle) |
| User callback to determine if the model is applicable for the particle type. More... | |
| virtual bool | check_trigger (const G4FastTrack &track) |
| User callback to determine if the shower creation should be triggered. More... | |
| virtual void | modelShower (const G4FastTrack &track, G4FastStep &step) |
| User callback to model the particle/energy shower. More... | |
Public Member Functions inherited from dd4hep::sim::Geant4DetectorConstruction | |
| Geant4DetectorConstruction (Geant4Context *context, const std::string &nam) | |
| Standard Constructor. More... | |
| virtual | ~Geant4DetectorConstruction () |
| Default destructor. More... | |
| virtual G4VSensitiveDetector * | createSensitiveDetector (const std::string &type, const std::string &name) |
| Create Geant4 sensitive detector object using the factory mechanism. More... | |
Public Member Functions inherited from dd4hep::sim::Geant4Action | |
| Geant4Action (Geant4Context *context, const std::string &nam) | |
| Standard constructor. More... | |
| long | addRef () |
| Increase reference count. More... | |
| long | release () |
| Decrease reference count. Implicit destruction. More... | |
| Geant4Context * | context () const |
| Access the context. More... | |
| virtual void | updateContext (Geant4Context *ctxt) |
| Set or update client context. More... | |
| virtual void | configureFiber (Geant4Context *thread_context) |
| Set or update client for the use in a new thread fiber. More... | |
| const std::string & | name () const |
| Access name of the action. More... | |
| const char * | c_name () const |
| Access name of the action. More... | |
| void | setName (const std::string &new_name) |
| Set the object name. More... | |
| PropertyManager & | properties () |
| Access to the properties of the object. More... | |
| PrintLevel | outputLevel () const |
| Access the output level. More... | |
| PrintLevel | setOutputLevel (PrintLevel new_level) |
| Set the output level; returns previous value. More... | |
| Geant4UIMessenger * | control () const |
| Access to the UI messenger. More... | |
| virtual void | enableUI () |
| Enable and install UI messenger. More... | |
| template<typename T > | |
| Geant4Action & | declareProperty (const std::string &nam, T &val) |
| Declare property. More... | |
| template<typename T > | |
| Geant4Action & | declareProperty (const char *nam, T &val) |
| Declare property. More... | |
| bool | hasProperty (const std::string &name) const |
| Check property for existence. More... | |
| Property & | property (const std::string &name) |
| Access single property. More... | |
| virtual void | installMessengers () |
| Install property control messenger if wanted. More... | |
| virtual void | installCommandMessenger () |
| Install command control messenger if wanted. More... | |
| virtual void | installPropertyMessenger () |
| Install property control messenger if wanted. More... | |
| void | print (const char *fmt,...) const |
| Support for messages with variable output level using output level. More... | |
| void | printM1 (const char *fmt,...) const |
| Support for messages with variable output level using output level-1. More... | |
| void | printM2 (const char *fmt,...) const |
| Support for messages with variable output level using output level-2. More... | |
| void | printP1 (const char *fmt,...) const |
| Support for messages with variable output level using output level+1. More... | |
| void | printP2 (const char *fmt,...) const |
| Support for messages with variable output level using output level+2. More... | |
| void | always (const char *fmt,...) const |
| Support of always printed messages. More... | |
| void | debug (const char *fmt,...) const |
| Support of debug messages. More... | |
| void | info (const char *fmt,...) const |
| Support of info messages. More... | |
| void | warning (const char *fmt,...) const |
| Support of warning messages. More... | |
| void | error (const char *fmt,...) const |
| Support of error messages. More... | |
| bool | return_error (bool return_value, const char *fmt,...) const |
| Action to support error messages. More... | |
| void | fatal (const char *fmt,...) const |
| Support of fatal messages. Throws exception. More... | |
| void | except (const char *fmt,...) const |
| Support of exceptions: Print fatal message and throw runtime_error. More... | |
| void | abortRun (const std::string &exception, const char *fmt,...) const |
| Abort Geant4 Run by throwing a G4Exception with type RunMustBeAborted. More... | |
| Geant4RunActionSequence & | runAction () const |
| Access to the main run action sequence from the kernel object. More... | |
| Geant4EventActionSequence & | eventAction () const |
| Access to the main event action sequence from the kernel object. More... | |
| Geant4SteppingActionSequence & | steppingAction () const |
| Access to the main stepping action sequence from the kernel object. More... | |
| Geant4TrackingActionSequence & | trackingAction () const |
| Access to the main tracking action sequence from the kernel object. More... | |
| Geant4StackingActionSequence & | stackingAction () const |
| Access to the main stacking action sequence from the kernel object. More... | |
| Geant4GeneratorActionSequence & | generatorAction () const |
| Access to the main generator action sequence from the kernel object. More... | |
Protected Member Functions | |
| DDG4_DEFINE_ACTION_CONSTRUCTORS (Geant4GFlashShowerModel) | |
| Define standard assignments and constructors. More... | |
Protected Member Functions inherited from dd4hep::sim::Geant4FastSimShowerModel | |
| DDG4_DEFINE_ACTION_CONSTRUCTORS (Geant4FastSimShowerModel) | |
| Define standard assignments and constructors. More... | |
| G4Material * | getMaterial (const std::string &name) const |
| Get parametrization material. More... | |
| G4ParticleDefinition * | getParticleDefinition (const std::string &name) const |
| Access particle definition from string. More... | |
| G4Region * | getRegion (const std::string &nam) const |
| Access the region from the detector description by name. More... | |
| void | addShowerModel (G4Region *region) |
| Add shower model to region's fast simulation manager. More... | |
| void | killParticle (G4FastStep &step, double deposit, double step_length=0e0) |
| Kill primary particle when creating the shower. More... | |
Protected Member Functions inherited from dd4hep::sim::Geant4Action | |
| DDG4_DEFINE_ACTION_CONSTRUCTORS (Geant4Action) | |
| Define standard assignments and constructors. More... | |
| virtual | ~Geant4Action () |
| Default destructor. More... | |
Protected Attributes | |
| std::string | m_paramName |
| Property: Name of the Geant4Action implementing the parametrization. More... | |
| std::string | m_material |
| Property: Material name for GFlashHomoShowerParameterisation. More... | |
| std::string | m_material_2 |
| Property: Material 2 name for GFlashSamplingShowerParameterisation. More... | |
| double | m_parameter_1 |
| Property: Parameter 1 name for GFlashSamplingShowerParameterisation. More... | |
| double | m_parameter_2 |
| Property: Parameter 2 name for GFlashSamplingShowerParameterisation. More... | |
| int | m_particleContainment { 1 } |
| Property: Defines if particle containment is checked. More... | |
| double | m_stepX0 { 0.1 } |
| Property: Defines step lenght. More... | |
| GVFlashShowerParameterisation * | m_parametrization { nullptr } |
| Reference to the parametrization. More... | |
| GFlashParticleBounds * | m_particleBounds { nullptr } |
| Reference to the particle bounds object. More... | |
| GFlashHitMaker * | m_hitMaker { nullptr } |
| Reference to the hit maker. More... | |
Protected Attributes inherited from dd4hep::sim::Geant4FastSimShowerModel | |
| std::string | m_regionName { "Region-name-not-specified"} |
| Property: Region name to which this parametrization should be applied. More... | |
| std::vector< std::string > | m_applicablePartNames { } |
| Property: Particle names for which this parametrization is applicable. More... | |
| bool | m_enable { false } |
| Property: Parametrisation control: Enable/disable fast simulation. More... | |
| double | m_stepX0 { 0.1 } |
| Property: Defines step length. More... | |
| ParticleConfig | m_eMin { } |
| Property: Set minimum kinetic energy to trigger parametrisation. More... | |
| ParticleConfig | m_eMax { } |
| Property: Set maximum kinetic energy to trigger parametrisation. More... | |
| ParticleConfig | m_eKill { } |
| Property: Set maximum kinetic energy for particles to be killed. More... | |
| ParticleConfig | m_eTriggerNames { } |
| Property: Set minimal kinetic energy for particles to trigger the model. More... | |
| std::set< const G4ParticleDefinition * > | m_applicableParticles { } |
| Particle definitions for which this parametrization is applicable. More... | |
| ParticleCut | m_eTriggerCut { } |
| Particle cut to trigger model simulation indexed by G4ParticleDefinition. More... | |
| G4VFastSimulationModel * | m_model { nullptr } |
| Reference to the G4 fast simulation model. More... | |
| Wrapper | m_wrapper { nullptr } |
| Reference to the shower model. More... | |
Protected Attributes inherited from dd4hep::sim::Geant4Action | |
| Geant4Context * | m_context { nullptr } |
| Reference to the Geant4 context. More... | |
| Geant4UIMessenger * | m_control { nullptr } |
| Control directory of this action. More... | |
| int | m_outputLevel { 3 } |
| Default property: Output level. More... | |
| bool | m_needsControl { false } |
| Default property: Flag to create control instance. More... | |
| std::string | m_name { } |
| Action name. More... | |
| PropertyManager | m_properties { } |
| Property pool. More... | |
| long | m_refCount { 1 } |
| Reference count. Initial value: 1. More... | |
Additional Inherited Members | |
Protected Types inherited from dd4hep::sim::Geant4FastSimShowerModel | |
| typedef std::map< const G4ParticleDefinition *, double > | ParticleCut |
| typedef std::map< std::string, std::string > | ParticleConfig |
| typedef Geant4ShowerModelWrapper * | Wrapper |
Geant4 wrapper for the GFlash shower model.
Geant4 wrapper for the GFlash shower model See e.g. the G4 example examples/extended/parameterisations/gflash/gflash3 for details.
The parametrization is passed as a Geant4Action to be able to configure it, which is polymorph the GVFlashShowerParameterisation.
Definition at line 49 of file Geant4GFlashShowerModel.cpp.
| Geant4GFlashShowerModel::Geant4GFlashShowerModel | ( | Geant4Context * | context, |
| const std::string & | nam | ||
| ) |
Standard constructor.
Definition at line 129 of file Geant4GFlashShowerModel.cpp.
|
virtual |
Default destructor.
Definition at line 144 of file Geant4GFlashShowerModel.cpp.
| void Geant4GFlashShowerModel::adoptShowerParametrization | ( | Geant4Action * | param | ) |
Adopt shower parametrization object.
Definition at line 157 of file Geant4GFlashShowerModel.cpp.
|
virtual |
Sensitive detector construction callback. Called at "ConstructSDandField()".
Now configure the shower model:
Reimplemented from dd4hep::sim::Geant4FastSimShowerModel.
Definition at line 175 of file Geant4GFlashShowerModel.cpp.
|
protected |
Define standard assignments and constructors.
|
protected |
Reference to the hit maker.
Definition at line 72 of file Geant4GFlashShowerModel.cpp.
|
protected |
Property: Material name for GFlashHomoShowerParameterisation.
Definition at line 54 of file Geant4GFlashShowerModel.cpp.
|
protected |
Property: Material 2 name for GFlashSamplingShowerParameterisation.
Definition at line 56 of file Geant4GFlashShowerModel.cpp.
|
protected |
Property: Parameter 1 name for GFlashSamplingShowerParameterisation.
Definition at line 58 of file Geant4GFlashShowerModel.cpp.
|
protected |
Property: Parameter 2 name for GFlashSamplingShowerParameterisation.
Definition at line 60 of file Geant4GFlashShowerModel.cpp.
|
protected |
Reference to the parametrization.
Definition at line 68 of file Geant4GFlashShowerModel.cpp.
|
protected |
Property: Name of the Geant4Action implementing the parametrization.
Definition at line 52 of file Geant4GFlashShowerModel.cpp.
|
protected |
Reference to the particle bounds object.
Definition at line 70 of file Geant4GFlashShowerModel.cpp.
|
protected |
Property: Defines if particle containment is checked.
Definition at line 63 of file Geant4GFlashShowerModel.cpp.
|
protected |
Property: Defines step lenght.
Definition at line 65 of file Geant4GFlashShowerModel.cpp.
1.8.18