ECCE @ EIC Software
Reference for
ECCE @ EIC
simulation and reconstruction software on GitHub
Home page
Related Pages
Modules
Namespaces
Classes
Files
External Links
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Groups
Pages
G4_Jets.C
Go to the documentation of this file.
Or view
the newest version in sPHENIX GitHub for file G4_Jets.C
1
#ifndef MACRO_G4JETS_C
2
#define MACRO_G4JETS_C
3
4
#include <
GlobalVariables.C
>
5
#include <
QA.C
>
6
7
#include <
g4jets/ClusterJetInput.h
>
8
#include <
g4jets/FastJetAlgo.h
>
9
#include <
g4jets/JetReco.h
>
10
#include <
g4jets/TowerJetInput.h
>
11
#include <
g4jets/TrackJetInput.h
>
12
#include <
g4jets/TruthJetInput.h
>
13
14
#include <
g4eval/JetEvaluator.h
>
15
#include <qa_modules/QAG4SimulationJet.h>
16
17
#include <
fun4all/Fun4AllServer.h
>
18
19
R__LOAD_LIBRARY
(libg4jets.so)
20
R__LOAD_LIBRARY
(libg4eval.so)
21
R__LOAD_LIBRARY
(libqa_modules.so)
22
23
namespace Enable
24
{
25
bool
JETS
=
false
;
26
bool
JETS_EVAL
=
false
;
27
bool
JETS_QA
=
false
;
28
int
JETS_VERBOSITY
= 0;
29
}
// namespace Enable
30
31
void
JetInit
() {}
32
33
void
Jet_Reco
()
34
{
35
int
verbosity =
std::max
(
Enable::VERBOSITY
,
Enable::JETS_VERBOSITY
);
36
37
Fun4AllServer
*se =
Fun4AllServer::instance
();
38
39
// truth particle level jets
40
JetReco
*truthjetreco =
new
JetReco
(
"TRUTHJETRECO"
);
41
truthjetreco->
add_input
(
new
TruthJetInput
(
Jet::PARTICLE
));
42
truthjetreco->
add_algo
(
new
FastJetAlgo
(
Jet::ANTIKT
, 0.2),
"AntiKt_Truth_r02"
);
43
truthjetreco->
add_algo
(
new
FastJetAlgo
(
Jet::ANTIKT
, 0.3),
"AntiKt_Truth_r03"
);
44
truthjetreco->
add_algo
(
new
FastJetAlgo
(
Jet::ANTIKT
, 0.4),
"AntiKt_Truth_r04"
);
45
truthjetreco->
add_algo
(
new
FastJetAlgo
(
Jet::ANTIKT
, 0.5),
"AntiKt_Truth_r05"
);
46
truthjetreco->
add_algo
(
new
FastJetAlgo
(
Jet::ANTIKT
, 0.6),
"AntiKt_Truth_r06"
);
47
truthjetreco->
add_algo
(
new
FastJetAlgo
(
Jet::ANTIKT
, 0.7),
"AntiKt_Truth_r07"
);
48
truthjetreco->
add_algo
(
new
FastJetAlgo
(
Jet::ANTIKT
, 0.8),
"AntiKt_Truth_r08"
);
49
truthjetreco->
set_algo_node
(
"ANTIKT"
);
50
truthjetreco->
set_input_node
(
"TRUTH"
);
51
truthjetreco->
Verbosity
(verbosity);
52
se->
registerSubsystem
(truthjetreco);
53
54
// tower jets
55
JetReco
*towerjetreco =
new
JetReco
(
"TOWERJETRECO"
);
56
towerjetreco->
add_input
(
new
TowerJetInput
(
Jet::CEMC_TOWER
));
57
towerjetreco->
add_input
(
new
TowerJetInput
(
Jet::HCALIN_TOWER
));
58
towerjetreco->
add_input
(
new
TowerJetInput
(
Jet::HCALOUT_TOWER
));
59
towerjetreco->
add_algo
(
new
FastJetAlgo
(
Jet::ANTIKT
, 0.2),
"AntiKt_Tower_r02"
);
60
towerjetreco->
add_algo
(
new
FastJetAlgo
(
Jet::ANTIKT
, 0.3),
"AntiKt_Tower_r03"
);
61
towerjetreco->
add_algo
(
new
FastJetAlgo
(
Jet::ANTIKT
, 0.4),
"AntiKt_Tower_r04"
);
62
towerjetreco->
add_algo
(
new
FastJetAlgo
(
Jet::ANTIKT
, 0.5),
"AntiKt_Tower_r05"
);
63
towerjetreco->
add_algo
(
new
FastJetAlgo
(
Jet::ANTIKT
, 0.6),
"AntiKt_Tower_r06"
);
64
towerjetreco->
add_algo
(
new
FastJetAlgo
(
Jet::ANTIKT
, 0.7),
"AntiKt_Tower_r07"
);
65
towerjetreco->
add_algo
(
new
FastJetAlgo
(
Jet::ANTIKT
, 0.8),
"AntiKt_Tower_r08"
);
66
towerjetreco->
set_algo_node
(
"ANTIKT"
);
67
towerjetreco->
set_input_node
(
"TOWER"
);
68
towerjetreco->
Verbosity
(verbosity);
69
se->
registerSubsystem
(towerjetreco);
70
71
// cluster jets
72
JetReco
*clusterjetreco =
new
JetReco
(
"CLUSTERJETRECO"
);
73
clusterjetreco->
add_input
(
new
ClusterJetInput
(
Jet::CEMC_CLUSTER
));
74
clusterjetreco->
add_input
(
new
ClusterJetInput
(
Jet::HCALIN_CLUSTER
));
75
clusterjetreco->
add_input
(
new
ClusterJetInput
(
Jet::HCALOUT_CLUSTER
));
76
clusterjetreco->
add_algo
(
new
FastJetAlgo
(
Jet::ANTIKT
, 0.2),
"AntiKt_Cluster_r02"
);
77
clusterjetreco->
add_algo
(
new
FastJetAlgo
(
Jet::ANTIKT
, 0.3),
"AntiKt_Cluster_r03"
);
78
clusterjetreco->
add_algo
(
new
FastJetAlgo
(
Jet::ANTIKT
, 0.4),
"AntiKt_Cluster_r04"
);
79
clusterjetreco->
add_algo
(
new
FastJetAlgo
(
Jet::ANTIKT
, 0.5),
"AntiKt_Cluster_r05"
);
80
clusterjetreco->
add_algo
(
new
FastJetAlgo
(
Jet::ANTIKT
, 0.6),
"AntiKt_Cluster_r06"
);
81
clusterjetreco->
add_algo
(
new
FastJetAlgo
(
Jet::ANTIKT
, 0.7),
"AntiKt_Cluster_r07"
);
82
clusterjetreco->
add_algo
(
new
FastJetAlgo
(
Jet::ANTIKT
, 0.8),
"AntiKt_Cluster_r08"
);
83
clusterjetreco->
set_algo_node
(
"ANTIKT"
);
84
clusterjetreco->
set_input_node
(
"CLUSTER"
);
85
clusterjetreco->
Verbosity
(verbosity);
86
se->
registerSubsystem
(clusterjetreco);
87
88
// track jets
89
JetReco
*trackjetreco =
new
JetReco
(
"TRACKJETRECO"
);
90
trackjetreco->
add_input
(
new
TrackJetInput
(
Jet::TRACK
,
TRACKING::TrackNodeName
));
91
trackjetreco->
add_algo
(
new
FastJetAlgo
(
Jet::ANTIKT
, 0.2),
"AntiKt_Track_r02"
);
92
trackjetreco->
add_algo
(
new
FastJetAlgo
(
Jet::ANTIKT
, 0.3),
"AntiKt_Track_r03"
);
93
trackjetreco->
add_algo
(
new
FastJetAlgo
(
Jet::ANTIKT
, 0.4),
"AntiKt_Track_r04"
);
94
trackjetreco->
add_algo
(
new
FastJetAlgo
(
Jet::ANTIKT
, 0.5),
"AntiKt_Track_r05"
);
95
trackjetreco->
add_algo
(
new
FastJetAlgo
(
Jet::ANTIKT
, 0.6),
"AntiKt_Track_r06"
);
96
trackjetreco->
add_algo
(
new
FastJetAlgo
(
Jet::ANTIKT
, 0.7),
"AntiKt_Track_r07"
);
97
trackjetreco->
add_algo
(
new
FastJetAlgo
(
Jet::ANTIKT
, 0.8),
"AntiKt_Track_r08"
);
98
trackjetreco->
set_algo_node
(
"ANTIKT"
);
99
trackjetreco->
set_input_node
(
"TRACK"
);
100
trackjetreco->
Verbosity
(verbosity);
101
se->
registerSubsystem
(trackjetreco);
102
103
return
;
104
}
105
106
void
Jet_Eval
(
const
std::string &outfilename =
"g4jets_eval.root"
)
107
{
108
int
verbosity =
std::max
(
Enable::VERBOSITY
,
Enable::JETS_VERBOSITY
);
109
110
Fun4AllServer
*se =
Fun4AllServer::instance
();
111
112
JetEvaluator
*eval =
new
JetEvaluator
(
"JETEVALUATOR"
,
113
"AntiKt_Tower_r03"
,
114
"AntiKt_Truth_r03"
,
115
outfilename);
116
eval->
Verbosity
(verbosity);
117
se->
registerSubsystem
(eval);
118
119
return
;
120
}
121
122
123
void
Jet_QA
()
124
{
125
int
verbosity =
std::max
(
Enable::QA_VERBOSITY
,
Enable::JETS_VERBOSITY
);
126
127
Fun4AllServer
*se =
Fun4AllServer::instance
();
128
129
QAG4SimulationJet
*calo_jet7 =
new
QAG4SimulationJet
(
130
"AntiKt_Truth_r07"
);
131
calo_jet7->
add_reco_jet
(
"AntiKt_Tower_r07"
);
132
calo_jet7->
add_reco_jet
(
"AntiKt_Cluster_r07"
);
133
calo_jet7->
add_reco_jet
(
"AntiKt_Track_r07"
);
134
calo_jet7->
Verbosity
(verbosity);
135
se->
registerSubsystem
(calo_jet7);
136
137
QAG4SimulationJet
*calo_jet4 =
new
QAG4SimulationJet
(
138
"AntiKt_Truth_r04"
);
139
calo_jet4->
add_reco_jet
(
"AntiKt_Tower_r04"
);
140
calo_jet4->
add_reco_jet
(
"AntiKt_Cluster_r04"
);
141
calo_jet4->
add_reco_jet
(
"AntiKt_Track_r04"
);
142
calo_jet4->
Verbosity
(verbosity);
143
se->
registerSubsystem
(calo_jet4);
144
145
QAG4SimulationJet
*calo_jet2 =
new
QAG4SimulationJet
(
146
"AntiKt_Truth_r02"
);
147
calo_jet2->
add_reco_jet
(
"AntiKt_Tower_r02"
);
148
calo_jet2->
add_reco_jet
(
"AntiKt_Cluster_r02"
);
149
calo_jet2->
add_reco_jet
(
"AntiKt_Track_r02"
);
150
calo_jet2->
Verbosity
(verbosity);
151
se->
registerSubsystem
(calo_jet2);
152
153
return
;
154
}
155
156
157
#endif
macros
blob
master
common
G4_Jets.C
Built by
Jin Huang
. updated:
Wed Jun 29 2022 17:25:58
using
1.8.2 with
ECCE GitHub integration