allpix::DepositionGeant4Module
Module: Modules
Module to simulate the particle beam and generating the charge deposits in the sensor. More…
#include <DepositionGeant4Module.hpp>
Inherits from allpix::SequentialModule, allpix::Module
Inherited by allpix::DepositionCosmicsModule, allpix::DepositionGeneratorModule
Public Functions
Name | |
---|---|
DepositionGeant4Module(Configuration & config, Messenger * messenger, GeometryManager * geo_manager) Constructor for this unique module. |
|
virtual void | initialize() override Initializes the physics list of processes and constructs the particle source. |
virtual void | initializeThread() override Prepare thread-local instances of worker run managers. |
virtual void | run(Event * event) override Deposit charges for a single event. |
virtual void | finalizeThread() override Cleanup RunManager for each thread. |
virtual void | finalize() override Display statistical summary. |
Protected Functions
Name | |
---|---|
virtual void | initialize_g4_action() |
Protected Attributes
Name | |
---|---|
Messenger * | messenger_ |
GeometryManager * | geo_manager_ |
G4RunManager * | run_manager_g4_ |
Friends
Name | |
---|---|
class | SDAndFieldConstruction |
class | SetTrackInfoUserHookG4 |
Additional inherited members
Public Functions inherited from allpix::SequentialModule
Name | |
---|---|
SequentialModule(Configuration & config) | |
SequentialModule(Configuration & config, std::shared_ptr< Detector > detector) |
Protected Functions inherited from allpix::SequentialModule
Name | |
---|---|
void | waive_sequence_requirement(bool waive =true) Release strict sequence processing requirement. |
Friends inherited from allpix::SequentialModule
Name | |
---|---|
class | Event |
class | ModuleManager |
class | Messenger |
Public Functions inherited from allpix::Module
Name | |
---|---|
Module(const Module & ) =delete Copying a module is not allowed. |
|
Module & | operator=(const Module & ) =delete Copying a module is not allowed. |
Module(Module && ) =delete Disallow move behaviour (not possible with references) |
|
Module & | operator=(Module && ) =delete Disallow move behaviour (not possible with references) |
Module(Configuration & config) Base constructor for unique modules. |
|
Module(Configuration & config, std::shared_ptr< Detector > detector) Base constructor for detector modules. |
|
virtual | ~Module() Essential virtual destructor. |
std::shared_ptr< Detector > | getDetector() const Get the detector linked to this module. |
std::string | getUniqueName() const Get the unique name of this module. |
std::string | createOutputFile(const std::string & pathname, const std::string & extension ="", bool global =false, bool delete_file =false) Create and return an absolute path to be used for output from a relative path. |
TDirectory * | getROOTDirectory() const Get ROOT directory which should be used to output histograms et cetera. |
ConfigManager * | getConfigManager() const Get the config manager object to allow to read the global and other module configurations. |
bool | multithreadingEnabled() const Returns if multithreading of this module is enabled. |
Protected Functions inherited from allpix::Module
Name | |
---|---|
void | allow_multithreading() Enable multithreading for this module. |
Configuration & | get_configuration() Get the module configuration for internal use. |
Protected Attributes inherited from allpix::Module
Name | |
---|---|
Configuration & | config_ |
Friends inherited from allpix::Module
Name | |
---|---|
class | Event |
class | ModuleManager |
class | Messenger |
class | LocalMessenger |
Detailed Description
class allpix::DepositionGeant4Module;
Module to simulate the particle beam and generating the charge deposits in the sensor.
A beam is defined at a certain position that propagates a particular particle in a certain direction. When the beam hits the sensor the energy loss is converted to charge deposits using the electron-hole creation energy. The energy deposits are specific for a detector. The module also returns the information of the real particle passage (the MCParticle).
Public Functions Documentation
function DepositionGeant4Module
DepositionGeant4Module(
Configuration & config,
Messenger * messenger,
GeometryManager * geo_manager
)
Constructor for this unique module.
Parameters:
- config Configuration object for this module as retrieved from the steering file
- messenger Pointer to the messenger object to allow binding to messages on the bus
- geo_manager Pointer to the geometry manager, containing the detectors
Includes the particle source point to the geometry using GeometryManager::addPoint.
function initialize
virtual void initialize() override
Initializes the physics list of processes and constructs the particle source.
Reimplements: allpix::Module::initialize
Reimplemented by: allpix::DepositionGeneratorModule::initialize
Module depends on GeometryBuilderGeant4Module loaded first, because it owns the pointer to the Geant4 run manager.
function initializeThread
virtual void initializeThread() override
Prepare thread-local instances of worker run managers.
Reimplements: allpix::Module::initializeThread
function run
virtual void run(
Event * event
) override
Deposit charges for a single event.
Reimplements: allpix::Module::run
Reimplemented by: allpix::DepositionGeneratorModule::run
function finalizeThread
virtual void finalizeThread() override
Cleanup RunManager for each thread.
Reimplements: allpix::Module::finalizeThread
function finalize
virtual void finalize() override
Display statistical summary.
Reimplements: allpix::Module::finalize
Protected Functions Documentation
function initialize_g4_action
virtual void initialize_g4_action()
Reimplemented by: allpix::DepositionCosmicsModule::initialize_g4_action, allpix::DepositionGeneratorModule::initialize_g4_action
Protected Attributes Documentation
variable messenger_
Messenger * messenger_;
variable geo_manager_
GeometryManager * geo_manager_;
variable run_manager_g4_
G4RunManager * run_manager_g4_ {nullptr};
Friends
friend SDAndFieldConstruction
friend class SDAndFieldConstruction(
SDAndFieldConstruction
);
friend SetTrackInfoUserHookG4
friend class SetTrackInfoUserHookG4(
SetTrackInfoUserHookG4
);
Updated on 2024-12-13 at 08:31:37 +0000