|
ATLAS Offline Software
|
Go to the documentation of this file.
6 #ifndef GENERATOR_PYTHIA8_H
7 #define GENERATOR_PYTHIA8_H
12 #include "CLHEP/Random/RandFlat.h"
13 #include "GaudiKernel/ToolHandle.h"
19 #include "Pythia8Plugins/HepMC3.h"
21 typedef HepMC3::Pythia8ToHepMC3 Pythia8ToHepMC;
24 #include "Pythia8Plugins/HepMC2.h"
48 return CLHEP::RandFlat::shoot(
m_engine);
96 BooleanProperty
m_useRndmGenSvc{
this,
"useRndmGenSvc",
true,
"the max number of consecutive failures"};
101 IntegerProperty
m_dsid{
this,
"Dsid", 999999,
"Dataset ID number"};
125 StringProperty
m_beam1{
this,
"Beam1",
"PROTON"};
126 StringProperty
m_beam2{
this,
"Beam2",
"PROTON"};
170 PublicToolHandle<IPythia8Custom>
m_athenaTool{
this,
"CustomInterface",
""};
172 BooleanProperty
m_saveLHE{
this,
"SaveLHERecord",
false};
UnsignedIntegerProperty m_maxFailures
BooleanProperty m_saveLHE
virtual StatusCode fillWeights(HepMC::GenEvent *evt)
std::shared_ptr< Pythia8::Sigma2Process > m_procPtr
static std::string xmlpath()
StringProperty m_particleDataFile
std::vector< std::string > m_weightNames
BooleanProperty m_useReseed
unsigned int m_failureCount
PublicToolHandle< IPythia8Custom > m_athenaTool
void init(CLHEP::HepRandomEngine *engine)
double pythiaVersion() const
StringArrayProperty m_userHooks
DoubleProperty m_pt0timesMPI
StringArrayProperty m_showerWeightNamesProp
std::vector< UserHooksPtrType > m_userHooksPtrs
BooleanProperty m_doFxFxXS
Author: James Monk (jmonk@cern.ch)
Base class for common behaviour of generator interfaces.
std::vector< std::shared_ptr< Pythia8::ResonanceWidths > > m_userResonancePtrs
virtual StatusCode fillEvt(HepMC::GenEvent *evt)
For filling the HepMC event object.
DoubleProperty m_numberAlphaS
std::vector< std::string > m_showerWeightNames
::StatusCode StatusCode
StatusCode definition for legacy code.
std::shared_ptr< customRndm > m_atlasRndmEngine
virtual StatusCode callGenerator()
For calling the generator on each iteration of the event loop.
virtual StatusCode genFinalize()
For finalising the generator, if required.
CLHEP::HepRandomEngine * m_engine
static std::string findValue(const std::string &command, const std::string &key)
BooleanProperty m_useLHAPDF
std::vector< std::string > m_userModes
Pythia8::SuppressSmallPT * m_SuppressSmallPT
std::vector< std::string > m_weightIDs
std::vector< std::string > m_weightCommands
CLHEP::HepRandomEngine * getEngine()
Pythia8_i(const std::string &name, ISvcLocator *pSvcLocator)
StringProperty m_userProcess
std::vector< long int > m_seeds
unsigned long long int getRNCalls()
std::map< std::string, PDGID > m_particleIDs
bool useRndmGenSvc() const
StringProperty m_outputParticleDataFile
CommandException(const std::string &cmd)
bool m_override_transform_beamenergy
std::vector< std::string > m_userParams
BooleanProperty m_sameAlphaSAsMPI
StringProperty m_userResonances
BooleanProperty m_doCKKWLAcceptance
static int s_allowedTunes(double version)
StringArrayProperty m_commands
DoubleProperty m_collisionEnergy
unsigned long long int m_RNC
BooleanProperty m_useRndmGenSvc
virtual StatusCode genInitialize()
For initializing the generator, if required.
int m_internal_event_number
static const std::string & pythia_stream()
std::unique_ptr< Pythia8::Pythia > m_pythia
BooleanProperty m_computeEfficiency
HepMC::Pythia8ToHepMC m_pythiaToHepMC