PlasmaMLPALLAS
Loading...
Searching...
No Matches
Public Member Functions | Public Attributes | List of all members
PlasmaMLPALLASActionInitialization Class Reference

Class to initialize user actions in the PALLAS simulation. More...

#include <PlasmaMLPALLASActionInitialization.hh>

Inheritance diagram for PlasmaMLPALLASActionInitialization:
Inheritance graph
[legend]
Collaboration diagram for PlasmaMLPALLASActionInitialization:
Collaboration graph
[legend]

Public Member Functions

 PlasmaMLPALLASActionInitialization (const char *name, size_t nEvents, size_t nThreads, bool flagMT, PlasmaMLPALLASGeometryConstruction *geometry)
 Constructor.
 
virtual ~PlasmaMLPALLASActionInitialization ()
 Destructor.
 
virtual void BuildForMaster () const override
 Build actions for master thread (multithreading mode)
 
virtual void Build () const override
 Build actions for worker threads or sequential mode.
 

Public Attributes

char * NEvents
 Pointer to the string storing the number of events.
 
G4String suffixe
 Suffix used for file/output identification.
 
size_t NEventsGenerated
 Total number of events generated.
 
size_t numThreads
 Number of threads in multithreading.
 
G4bool flag_MT = false
 Flag to indicate multithreading mode.
 

Detailed Description

Class to initialize user actions in the PALLAS simulation.

Author
Arnaud HUBER huber.nosp@m.@lp2.nosp@m.ib.in.nosp@m.2p3..nosp@m.fr - Alexei SYTOV sytov.nosp@m.@inf.nosp@m.n.it
Date
2025

This class inherits from G4VUserActionInitialization and defines actions to be performed at the start of the simulation, including primary particle generation and event/run actions. It supports multithreading and keeps track of simulation parameters such as the number of events and thread index.

Constructor & Destructor Documentation

◆ PlasmaMLPALLASActionInitialization()

PlasmaMLPALLASActionInitialization::PlasmaMLPALLASActionInitialization ( const char *  name,
size_t  nEvents,
size_t  nThreads,
bool  flagMT,
PlasmaMLPALLASGeometryConstruction geometry 
)

Constructor.

Constructor for ActionInitialization class.

Parameters
nameName identifier for the simulation run
nEventsNumber of events to generate
nThreadsNumber of threads for multithreading
flagMTTrue if multithreading is enabled
geometryPointer to the geometry construction object
suffSuffix string to append to output files
NNumber of events to generate
NcoresNumber of threads to use in multithreaded mode
pMTFlag indicating whether multithreading is enabled
geometryPointer to the simulation geometry

◆ ~PlasmaMLPALLASActionInitialization()

PlasmaMLPALLASActionInitialization::~PlasmaMLPALLASActionInitialization ( )
virtual

Destructor.

Destructor for ActionInitialization class.

Member Function Documentation

◆ Build()

void PlasmaMLPALLASActionInitialization::Build ( ) const
overridevirtual

Build actions for worker threads or sequential mode.

Build actions for worker threads or single-threaded runs.

This function sets up primary generator actions, run actions, and event actions.

This function creates and assigns all user actions required for the simulation:

  • PrimaryGeneratorAction
  • RunAction
  • EventAction
  • SteppingAction

◆ BuildForMaster()

void PlasmaMLPALLASActionInitialization::BuildForMaster ( ) const
overridevirtual

Build actions for master thread (multithreading mode)

Build actions for the master thread.

In Geant4, the master thread only manages run-level actions.

This function is called in multithreaded mode to define actions that are executed only in the master thread, such as RunAction.

Member Data Documentation

◆ flag_MT

G4bool PlasmaMLPALLASActionInitialization::flag_MT = false

Flag to indicate multithreading mode.

◆ NEvents

char* PlasmaMLPALLASActionInitialization::NEvents

Pointer to the string storing the number of events.

◆ NEventsGenerated

size_t PlasmaMLPALLASActionInitialization::NEventsGenerated

Total number of events generated.

◆ numThreads

size_t PlasmaMLPALLASActionInitialization::numThreads

Number of threads in multithreading.

◆ suffixe

G4String PlasmaMLPALLASActionInitialization::suffixe

Suffix used for file/output identification.


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