EpIC 1.1.0
Monte Carlo generator for exclusive processes
Loading...
Searching...
No Matches
Public Member Functions | Static Public Attributes | List of all members
EPIC::GAM2GeneratorService Class Reference

Service used to perform generation of GAM2 MC events. More...

#include <GAM2GeneratorService.h>

Inheritance diagram for EPIC::GAM2GeneratorService:
EPIC::GeneratorService< GAM2KinematicRanges, PARTONS::GAM2ProcessModule, GAM2KinematicModule, GAM2RCModule > EPIC::EventGeneratorInterface

Public Member Functions

virtual ~GAM2GeneratorService ()
 
virtual double getEventDistribution (std::vector< double > &kin) const
 
virtual void run ()
 
- Public Member Functions inherited from EPIC::GeneratorService< GAM2KinematicRanges, PARTONS::GAM2ProcessModule, GAM2KinematicModule, GAM2RCModule >
 GeneratorService (const std::string &className)
 
 GeneratorService (const GeneratorService &other)
 
virtual GeneratorServiceclone () const=0
 
virtual ~GeneratorService ()
 
void computeTask (const MonteCarloTask &task)
 
virtual void run ()=0
 
void printAndSaveGenerationConfiguration ()
 
virtual void addAdditionalGenerationConfiguration (GenerationInformation &generationInformation)
 
const GeneralConfigurationgetGeneralConfiguration () const
 
void setGeneralConfiguration (const GeneralConfiguration &generalConfiguration)
 
const GAM2KinematicRangesgetKinematicRanges () const
 
void setKinematicRanges (const GAM2KinematicRanges &kinematicRanges)
 
const ExperimentalConditionsgetExperimentalConditions () const
 
void setExperimentalConditions (const ExperimentalConditions &experimentalConditions)
 
PARTONS::GAM2ProcessModule * getProcessModule () const
 
void setProcessModule (PARTONS::GAM2ProcessModule *processModule)
 
const std::shared_ptr< EventGeneratorModule > & getEventGeneratorModule () const
 
void setEventGeneratorModule (const std::shared_ptr< EventGeneratorModule > &pEventGeneratorModule)
 
const std::shared_ptr< GAM2KinematicModule > & getKinematicModule () const
 
void setKinematicModule (const std::shared_ptr< GAM2KinematicModule > &pKinematicModule)
 
const std::shared_ptr< GAM2RCModule > & getRCModule () const
 
void setRCModule (const std::shared_ptr< GAM2RCModule > &pRCModule)
 
const std::shared_ptr< WriterModule > & getWriterModule () const
 
void setWriterModule (const std::shared_ptr< WriterModule > &pWriterModule)
 
const std::string & getScenarioDescription () const
 
void setScenarioDescription (const std::string &scenarioDescription)
 
const std::string & getScenarioDate () const
 
void setScenarioDate (const std::string &scenarioDate)
 
- Public Member Functions inherited from EPIC::EventGeneratorInterface
 EventGeneratorInterface ()
 
 EventGeneratorInterface (const EventGeneratorInterface &other)
 
virtual ~EventGeneratorInterface ()
 
virtual double getEventDistribution (std::vector< double > &kin) const =0
 

Static Public Attributes

static const unsigned int classId
 

Additional Inherited Members

- Protected Member Functions inherited from EPIC::GeneratorService< GAM2KinematicRanges, PARTONS::GAM2ProcessModule, GAM2KinematicModule, GAM2RCModule >
void getGeneralConfigurationFromTask (const MonteCarloTask &task)
 
virtual void getAdditionalGeneralConfigurationFromTask (const MonteCarloTask &task)=0
 
void getExperimentalConditionsFromTask (const MonteCarloTask &task)
 
virtual void getKinematicRangesFromTask (const MonteCarloTask &task)=0
 
virtual void getProcessModuleFromTask (const MonteCarloTask &task)=0
 
void getEventGeneratorModuleFromTask (const MonteCarloTask &task)
 
virtual void getKinematicModuleFromTask (const MonteCarloTask &task)=0
 
virtual void getRCModuleFromTask (const MonteCarloTask &task)=0
 
void getWriterModuleFromTask (const MonteCarloTask &task)
 
virtual void isServiceWellConfigured () const
 
std::string getCurrentDate () const
 
void checkTargetPolarisation (ExperimentalConditions &experimentalConditions) const
 
virtual void transformVariables (std::vector< double > &variables) const=0
 
virtual void transformRanges (std::vector< KinematicRange > &ranges) const=0
 
virtual double getJacobian (const std::vector< double > &variables) const=0
 
void openHistogramFile ()
 
virtual void bookHistograms ()
 
void closeHistogramFile ()
 
- Protected Attributes inherited from EPIC::GeneratorService< GAM2KinematicRanges, PARTONS::GAM2ProcessModule, GAM2KinematicModule, GAM2RCModule >
GAM2KinematicRanges m_kinematicRanges
 Kinematic ranges.
 
PARTONS::GAM2ProcessModule * m_pProcessModule
 Process module.
 
std::shared_ptr< GAM2KinematicModulem_pKinematicModule
 Kinematic module.
 
std::shared_ptr< GAM2RCModulem_pRCModule
 Radiative correction module.
 
GeneralConfiguration m_generalConfiguration
 General configuration.
 
ExperimentalConditions m_experimentalConditions
 Experimental conditions.
 
std::shared_ptr< EventGeneratorModulem_pEventGeneratorModule
 Event generator module.
 
std::shared_ptr< WriterModulem_pWriterModule
 Writer module.
 
std::string m_scenarioDate
 Scenario date.
 
std::string m_scenarioDescription
 Scenario description.
 
std::pair< std::chrono::steady_clock::time_point, std::chrono::steady_clock::time_point > m_debugTimeInitialization
 Timer spent for initialization.
 
std::pair< std::chrono::steady_clock::time_point, std::chrono::steady_clock::time_point > m_debugTimeGeneration
 Timer spent for generation.
 
std::shared_ptr< RandomNumberModulem_randomNumberModule
 Random number module.
 
TFile * m_histogramFile
 File containing histograms.
 
std::vector< TH1 * > m_histograms
 

Detailed Description

Service used to perform generation of GAM2 MC events.

This class handles generation process of MC events for GAM2. It is intended to have a unique instance accessed trough GAM2GeneratorService::getInstance() method.

Constructor & Destructor Documentation

◆ ~GAM2GeneratorService()

virtual EPIC::GAM2GeneratorService::~GAM2GeneratorService ( )
virtual

Destructor.

Member Function Documentation

◆ getEventDistribution()

virtual double EPIC::GAM2GeneratorService::getEventDistribution ( std::vector< double > &  kin) const
virtual

This function is used by EventGeneratorModule to probe event distribution during the initialization step.

Implements EPIC::EventGeneratorInterface.

◆ run()

virtual void EPIC::GAM2GeneratorService::run ( )
virtual

Member Data Documentation

◆ classId

const unsigned int EPIC::GAM2GeneratorService::classId
static

Unique ID to automatically register the class in the registry.


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