ATLAS Offline Software
Loading...
Searching...
No Matches
Hydjet_i.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
3*/
4
5// --------------------------------------------------
6//
7// File: Generators/Hydjet.h
8// Description:
9// This code is used to get a HYDJET Monte Carlo event.
10// genInitialize() is used to read parameters
11// callGenerator() makes the event
12// genFinalize() writes log files etc
13// fillEvt(GeneratorEvent* evt) passes the event to HepMC
14//
15// The output will be stored in the transient event store so it can be
16// passed to the simulation.
17//
18// AuthorList:
19// Andrzej Olszewski, February 2007
20// Andrzej Olszewski, March 2008
21
22#ifndef GENERATORMODULESHYDJET_H
23#define GENERATORMODULESHYDJET_H
24
26
27#include "Hydjet_i/HyiPar.h"
28#include "Hydjet_i/HyFlow.h"
29#include "Hydjet_i/HyfPar.h"
30#include "Hydjet_i/HyJets.h"
31#include "Hydjet_i/HyjPar.h"
32#include "Hydjet_i/LuJets.h"
33#include "Hydjet_i/LuDatr.h"
34#include "Hydjet_i/PyDat1.h"
35#include "Hydjet_i/PyPars.h"
36#include "Hydjet_i/PySubs.h"
37#include "Hydjet_i/PyqPar.h"
38
39typedef std::vector<std::string> CommandVector;
40
41// new to store hydjet event parameters
43
44class Hydjet:public GenModule {
45public:
46 Hydjet(const std::string& name, ISvcLocator* pSvcLocator);
47 virtual ~Hydjet() = default;
48
49 virtual StatusCode genInitialize();
50 virtual StatusCode callGenerator();
51 virtual StatusCode genFinalize();
52 virtual StatusCode fillEvt(HepMC::GenEvent* evt);
53
54protected:
55
56 // inputs to HYINIT (Hydjet event generation)
57 double m_e{0.};
58 double m_a{0.};
59 int m_ifb{0};
60 double m_bmin{0.};
61 double m_bmax{0.};
62 double m_bfix{0.};
63 int m_nh{0};
64
65 // Random numbers seed
66 std::vector<long int> m_seeds;
67
68 // event counter
69 int m_events{0};
70
71 // Commands to setup hydjet
73
74 // Accessor to HYDJET Options and parameters COMMONs
79
80 // Accessor to PYTHIA parameters COMMON
84
85 // Accessor to PYQUEN parameters COMMON
87
88 // Accessor to JETSET Random number seed COMMON
90
91 // Accessors to Event information COMMONS
94
95 void set_user_params(void);
96
97 SG::WriteHandleKey<HijingEventParams> m_event_paramsKey{this, "HijingOutputKey", "Hijing_event_params"};
98 //--------------------------------
99};
100
101#endif
std::vector< std::string > CommandVector
Definition Hijing.h:21
std::vector< std::string > CommandVector
Definition Hydjet_i.h:39
GenModule(const std::string &name, ISvcLocator *pSvcLocator)
Constructor.
Definition GenModule.cxx:14
virtual StatusCode callGenerator()
For calling the generator on each iteration of the event loop.
Definition Hydjet_i.cxx:135
int m_events
Definition Hydjet_i.h:69
double m_bmax
Definition Hydjet_i.h:61
HyfPar m_hyfpar
Definition Hydjet_i.h:77
CommandVector m_InitializeVector
Definition Hydjet_i.h:72
PyDat1 m_pydat1
Definition Hydjet_i.h:83
virtual StatusCode fillEvt(HepMC::GenEvent *evt)
For filling the HepMC event object.
Definition Hydjet_i.cxx:204
PySubs m_pysubs
Definition Hydjet_i.h:82
HyJets m_hyjets
Definition Hydjet_i.h:93
PyqPar m_pyqpar
Definition Hydjet_i.h:86
Hydjet(const std::string &name, ISvcLocator *pSvcLocator)
Definition Hydjet_i.cxx:40
double m_a
Definition Hydjet_i.h:58
HyjPar m_hyjpar
Definition Hydjet_i.h:76
double m_bfix
Definition Hydjet_i.h:62
HyFlow m_hyflow
Definition Hydjet_i.h:78
virtual StatusCode genInitialize()
For initializing the generator, if required.
Definition Hydjet_i.cxx:46
virtual StatusCode genFinalize()
For finalising the generator, if required.
Definition Hydjet_i.cxx:197
double m_bmin
Definition Hydjet_i.h:60
double m_e
Definition Hydjet_i.h:57
virtual ~Hydjet()=default
std::vector< long int > m_seeds
Definition Hydjet_i.h:66
LuDatr m_ludatr
Definition Hydjet_i.h:89
void set_user_params(void)
Definition Hydjet_i.cxx:249
LuJets m_lujets
Definition Hydjet_i.h:92
int m_ifb
Definition Hydjet_i.h:59
HyiPar m_hyipar
Definition Hydjet_i.h:75
PyPars m_pypars
Definition Hydjet_i.h:81
int m_nh
Definition Hydjet_i.h:63
SG::WriteHandleKey< HijingEventParams > m_event_paramsKey
Definition Hydjet_i.h:97
Property holding a SG store/key/clid from which a WriteHandle is made.