ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
Generators
Hijing_i
Hijing_i
Hijing.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2022 CERN for the benefit of the ATLAS collaboration
3
*/
4
5
#ifndef GENERATORMODULESHIJING_H
6
#define GENERATORMODULESHIJING_H
7
8
#include "
GeneratorModules/GenModule.h
"
9
#include "CLHEP/Vector/LorentzVector.h"
10
11
#include "
Hijing_i/HiParnt.h
"
12
#include "
Hijing_i/RanSeed.h
"
13
#include "
Hijing_i/HiMain1.h
"
14
#include "
Hijing_i/HiMain2.h
"
15
#include "
Hijing_i/HijJet1.h
"
16
#include "
Hijing_i/HijJet2.h
"
17
#include "
Hijing_i/HijJet4.h
"
18
#include "
Hijing_i/HiStrng.h
"
19
#include "
Hijing_i/HijCrdn.h
"
20
21
typedef
std::vector<std::string>
CommandVector
;
22
23
// new to store hijing event parameters
24
#include "
GeneratorObjects/HijingEventParams.h
"
25
42
43
class
Hijing
:
public
GenModule
{
44
public
:
45
Hijing
(
const
std::string& name, ISvcLocator* pSvcLocator);
46
virtual
~Hijing
() =
default
;
47
48
virtual
StatusCode
genInitialize
()
override
;
49
virtual
StatusCode
callGenerator
()
override
;
50
virtual
StatusCode
genFinalize
()
override
;
51
virtual
StatusCode
fillEvt
(
HepMC::GenEvent
* evt)
override
;
52
53
protected
:
54
virtual
CLHEP::HepLorentzVector
randomizeVertex
(CLHEP::HepRandomEngine* engine);
55
56
//Gen_tf run args.
57
IntegerProperty
m_dsid
{
this
,
"Dsid"
, 999999};
58
59
// inputs to HIJSET (Hijing initialization) ...
60
float
m_efrm
{0.};
61
std::string
m_frame
;
62
std::string
m_proj
;
63
std::string
m_targ
;
64
int
m_iap
{0};
65
int
m_iat
{0};
66
int
m_izp
{0};
67
int
m_izt
{0};
68
// ... and HIJING (event generation)
69
float
m_bmin
{0.};
70
float
m_bmax
{0.};
71
72
// Vertex shifting
73
74
float
m_x
{0.};
75
float
m_y
{0.};
76
float
m_z
{0.};
77
bool
m_sel
{
false
};
// Vertex shifting on or off
78
bool
m_spec
{
true
};
// TRUE will keep specator information (default)
79
80
//Set internal randomization of vertices for beam gas gen (on or off).
81
bool
m_rand
{
false
};
82
bool
m_wide
{
false
};
// True allows particles with x,y distributions
83
bool
m_prand
{
false
};
//BPK mirror event randomly
84
bool
m_keepAllDecayVertices
{
true
};
85
86
// Limit settings
87
double
m_partonStoreMinPt
{5.0};
88
double
m_vertexOffsetCut
{1.0E-7};
89
90
// Random numbers seed
91
int
m_randomseed
{0};
92
std::vector<long int>
m_seeds
;
93
94
// event counter
95
int
m_events
{0};
96
97
// Commands to setup hijing
98
CommandVector
m_InitializeVector
;
99
100
// Accessor to HIJING Options and parameters COMMON
101
HiParnt
m_hiparnt
;
102
103
// Accessor to HIJING Random number seed COMMON
104
RanSeed
m_ranseed
;
105
106
// Accessors to HIJING Event information COMMONS
107
HiMain1
m_himain1
;
108
HiMain2
m_himain2
;
109
HijJet1
m_hijjet1
;
110
HijJet2
m_hijjet2
;
111
HijJet4
m_hijjet4
;
112
HiStrng
m_histrng
;
113
HijCrdn
m_hijcrdn
;
114
115
void
set_user_params
(
void
);
116
117
SG::WriteHandleKey<HijingEventParams>
m_event_paramsKey
{
this
,
"HijingOutputKey"
,
"Hijing_event_params"
};
118
};
119
120
#endif
GenModule.h
HiMain1.h
HiMain2.h
HiParnt.h
HiStrng.h
HijCrdn.h
HijJet1.h
HijJet2.h
HijJet4.h
HijingEventParams.h
CommandVector
std::vector< std::string > CommandVector
Definition
Hijing.h:21
RanSeed.h
GenModule::GenModule
GenModule(const std::string &name, ISvcLocator *pSvcLocator)
Constructor.
Definition
GenModule.cxx:14
HiMain1
Class definition for HiMain1, which is used to modify the Hijing HIMAIN1 common.
Definition
HiMain1.h:19
HiMain2
Class definition for HiMain2, which is used to modify the Hijing HIMAIN2 common.
Definition
HiMain2.h:17
HiParnt
Class definition for HiParnt, which is used to modify the Hijing HIPARNT common.
Definition
HiParnt.h:18
HiStrng
Class definition for HiStrng, which is used to modify the Hijing HISTRNG common.
Definition
HiStrng.h:17
HijCrdn
Class definition for HijCrdn, which is used to modify the Hijing HIJCRDN common.
Definition
HijCrdn.h:17
HijJet1
Class definition for HijJet1, which is used to modify the Hijing HIJJET1 common.
Definition
HijJet1.h:16
HijJet2
Class definition for HijJet2, which is used to modify the Hijing HIJJET2 common.
Definition
HijJet2.h:18
HijJet4
Class definition for HijJet4, which is used to modify the Hijing HIJJET4 common.
Definition
HijJet4.h:19
Hijing::m_hiparnt
HiParnt m_hiparnt
Definition
Hijing.h:101
Hijing::m_wide
bool m_wide
Definition
Hijing.h:82
Hijing::m_targ
std::string m_targ
Definition
Hijing.h:63
Hijing::m_hijcrdn
HijCrdn m_hijcrdn
Definition
Hijing.h:113
Hijing::m_hijjet4
HijJet4 m_hijjet4
Definition
Hijing.h:111
Hijing::m_proj
std::string m_proj
Definition
Hijing.h:62
Hijing::m_sel
bool m_sel
Definition
Hijing.h:77
Hijing::m_randomseed
int m_randomseed
Definition
Hijing.h:91
Hijing::m_bmax
float m_bmax
Definition
Hijing.h:70
Hijing::m_himain1
HiMain1 m_himain1
Definition
Hijing.h:107
Hijing::m_iat
int m_iat
Definition
Hijing.h:65
Hijing::m_hijjet1
HijJet1 m_hijjet1
Definition
Hijing.h:109
Hijing::m_prand
bool m_prand
Definition
Hijing.h:83
Hijing::m_y
float m_y
Definition
Hijing.h:75
Hijing::Hijing
Hijing(const std::string &name, ISvcLocator *pSvcLocator)
Definition
Hijing.cxx:116
Hijing::m_vertexOffsetCut
double m_vertexOffsetCut
Definition
Hijing.h:88
Hijing::set_user_params
void set_user_params(void)
Definition
Hijing.cxx:798
Hijing::m_ranseed
RanSeed m_ranseed
Definition
Hijing.h:104
Hijing::m_hijjet2
HijJet2 m_hijjet2
Definition
Hijing.h:110
Hijing::genFinalize
virtual StatusCode genFinalize() override
For finalising the generator, if required.
Definition
Hijing.cxx:236
Hijing::m_spec
bool m_spec
Definition
Hijing.h:78
Hijing::m_himain2
HiMain2 m_himain2
Definition
Hijing.h:108
Hijing::m_x
float m_x
Definition
Hijing.h:74
Hijing::m_z
float m_z
Definition
Hijing.h:76
Hijing::m_dsid
IntegerProperty m_dsid
Definition
Hijing.h:57
Hijing::m_efrm
float m_efrm
Definition
Hijing.h:60
Hijing::m_bmin
float m_bmin
Definition
Hijing.h:69
Hijing::m_iap
int m_iap
Definition
Hijing.h:64
Hijing::m_events
int m_events
Definition
Hijing.h:95
Hijing::m_seeds
std::vector< long int > m_seeds
Definition
Hijing.h:92
Hijing::m_izt
int m_izt
Definition
Hijing.h:67
Hijing::genInitialize
virtual StatusCode genInitialize() override
For initializing the generator, if required.
Definition
Hijing.cxx:133
Hijing::m_event_paramsKey
SG::WriteHandleKey< HijingEventParams > m_event_paramsKey
Definition
Hijing.h:117
Hijing::randomizeVertex
virtual CLHEP::HepLorentzVector randomizeVertex(CLHEP::HepRandomEngine *engine)
Definition
Hijing.cxx:759
Hijing::m_izp
int m_izp
Definition
Hijing.h:66
Hijing::fillEvt
virtual StatusCode fillEvt(HepMC::GenEvent *evt) override
For filling the HepMC event object.
Definition
Hijing.cxx:243
Hijing::callGenerator
virtual StatusCode callGenerator() override
For calling the generator on each iteration of the event loop.
Definition
Hijing.cxx:177
Hijing::m_partonStoreMinPt
double m_partonStoreMinPt
Definition
Hijing.h:87
Hijing::m_rand
bool m_rand
Definition
Hijing.h:81
Hijing::m_frame
std::string m_frame
Definition
Hijing.h:61
Hijing::m_histrng
HiStrng m_histrng
Definition
Hijing.h:112
Hijing::m_keepAllDecayVertices
bool m_keepAllDecayVertices
Definition
Hijing.h:84
Hijing::~Hijing
virtual ~Hijing()=default
Hijing::m_InitializeVector
CommandVector m_InitializeVector
Definition
Hijing.h:98
RanSeed
Class definition for RanSeed, which is used to modify the Hijing RANSEED common.
Definition
RanSeed.h:19
SG::WriteHandleKey
Property holding a SG store/key/clid from which a WriteHandle is made.
Definition
StoreGate/StoreGate/WriteHandleKey.h:40
HepMC::GenEvent
HepMC3::GenEvent GenEvent
Definition
GenEvent.h:39
Generated on
for ATLAS Offline Software by
1.17.0