Analysis Software
Documentation for
sPHENIX
simulation software
Home page
Related Pages
Modules
Namespaces
Classes
Files
Examples
External Links
File List
File Members
Analysis Software
Deprecated List
Modules
Namespaces
Classes
Files
File List
acts
acts-fatras
analysis
blob
master
A_N
Ana
AndersonAnalysisModules
AntiSigma
BBCStudy
Calo_Validation_Package
Calo_waveform_sim
Calorimeter
CalorimeterEmbedding
CalorimeterJets
cdbEMCalExample
cemcRecoAna
Centrality_Validation_Package
dNdEta_Run2023
EIC-IR
EIC-SynRad
EICAnalysis
EICMCAnalysis
EICTrigger
ElectronID
EMCal-analysis
EMCal-calibration
EMCal-commissioning
EMCal-LEDs
EMCal-position-dependent-calibration
EMCal-QA
EMCal_pi0_Calib_2023
EMCTemplateFitting
EpFinder
Event-Display
EventMix
FilterEvents
FilterEventsUpsilon
Fluence
ForwardCalo
ForwardTracking
FrawleyTrackEvalMacros
hbcup
HCal-analysis
HCalCosmicCalib
HCalHotTowerFinder
HCalib
HcalSingleHadronCalib
HF-Jet
HF-Particle
AntiTrigger
D0
HFTrigger
KFParticle_sPHENIX
b_hadron_generator
Fun4All_BHG.C
G4Setup_sPHENIX.C
D0-D0bar-Separation
D0EffScan.C
Fun4All_MDC2reco.C
HFReco.C
makeCondorJobs.py
Lambda_c
isoCluster
IsolatedTrackAnalysis
JS-Jet
mbdAnalysis
MBDStudy
MultiDetectorMultiplicity
MvtxTelescope
mybuild
ParticleID
PHFlowJetMaker
PhotonConversion
PhotonJet
pi0ClusterAna
pi0Efficiency
Pi0MassAnalysis
Prototype2
Prototype3
Prototype4
psTOF
pythiaEMCalAna
pythiaInfo
QuarkoniaBG
quickHIJING
ResonanceJetTaggingOutputs
runTrackingDiagnostics
Shift_emcal_g4hits
SimpleTrackingAnalysis
singlePhotonClusterAna
sPhenixAj
SvtxSimPerformanceCheckReco
TemplateCreation
Test
TowerInfoExample
TPC
TPC-ClusterAnimation
TPC-GemGain
Tracking
TrackPid
TreeMaker
ZDC-CALIB
analysis_tpc_prototype
coresoftware
Doxygen_Assist
g4exampledetector
GenFit
JETSCAPE
KFParticle
macros
online_distribution
OnlMon
prototype
pythia6
rcdaq
RDBC
tutorials
doxygen_mainpage.h
File Members
Examples
External Links
•
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Groups
Pages
Fun4All_BHG.C
Go to the documentation of this file.
Or view
the newest version in sPHENIX GitHub for file Fun4All_BHG.C
1
#ifndef MACRO_FUN4ALLG4SPHENIX_C
2
#define MACRO_FUN4ALLG4SPHENIX_C
3
4
#include <
G4_Input.C
>
5
#include <G4_Global.C>
6
#include <
G4Setup_sPHENIX.C
>
7
8
#include <
Trkr_RecoInit.C
>
9
#include <
Trkr_Clustering.C
>
10
#include <
Trkr_TruthTables.C
>
11
#include <
Trkr_Reco.C
>
12
13
#include <phpythia8/PHPy8ParticleTrigger.h>
14
15
#include <
decayfinder/DecayFinder.h
>
16
#include <hftrackefficiency/HFTrackEfficiency.h>
17
18
#include <
ffamodules/FlagHandler.h
>
19
#include <
ffamodules/HeadReco.h
>
20
#include <
ffamodules/SyncReco.h
>
21
#include <
ffamodules/CDBInterface.h
>
22
#include <
phool/PHRandomSeed.h
>
23
#include <
phool/recoConsts.h
>
24
25
#include <
fun4all/Fun4AllDstOutputManager.h
>
26
#include <
fun4all/Fun4AllOutputManager.h
>
27
#include <
fun4all/Fun4AllServer.h
>
28
29
R__LOAD_LIBRARY(libfun4all.so)
30
R__LOAD_LIBRARY(libffamodules.so)
31
R__LOAD_LIBRARY(libdecayfinder.so)
32
R__LOAD_LIBRARY(libhftrackefficiency.so)
33
34
int
Fun4All_BHG
(std::
string
processID = "0")
35
{
36
int
nEvents
= 5e2;
37
//F4A setup
38
39
Fun4AllServer
*se =
Fun4AllServer::instance
();
40
se->
Verbosity
(1);
41
42
PHRandomSeed::Verbosity
(1);
43
recoConsts
*rc =
recoConsts::instance
();
44
45
//Generator setup
46
47
Input::PYTHIA8
=
true
;
48
49
PYTHIA8::config_file
=
"pythia8_bs.cfg"
;
50
EVTGENDECAYER::DecayFile
=
"Bs2JpsiKS0.DEC"
;
51
52
Input::BEAM_CONFIGURATION
=
Input::pp_COLLISION
;
53
54
InputInit
();
55
56
PHPy8ParticleTrigger
* p8_hf_signal_trigger =
new
PHPy8ParticleTrigger
();
57
p8_hf_signal_trigger->
AddParticles
(531);
58
p8_hf_signal_trigger->
AddParticles
(-531);
59
p8_hf_signal_trigger->
SetPtLow
(2.);
60
p8_hf_signal_trigger->
SetEtaHighLow
(0.9, -0.9);
// sample a rapidity range higher than the sPHENIX tracking pseudorapidity
61
p8_hf_signal_trigger->
SetStableParticleOnly
(
false
);
// process unstable particles that include quarks
62
p8_hf_signal_trigger->
PrintConfig
();
63
INPUTGENERATOR::Pythia8
->
register_trigger
(p8_hf_signal_trigger);
64
INPUTGENERATOR::Pythia8
->
set_trigger_OR
();
65
66
Input::ApplysPHENIXBeamParameter
(
INPUTGENERATOR::Pythia8
);
67
68
InputRegister
();
69
70
//CDB flags and such
71
72
rc->
set_IntFlag
(
"RUNNUMBER"
,1);
73
74
SyncReco
*sync =
new
SyncReco
();
75
se->
registerSubsystem
(sync);
76
77
HeadReco
*head =
new
HeadReco
();
78
se->
registerSubsystem
(head);
79
80
FlagHandler
*flag =
new
FlagHandler
();
81
se->
registerSubsystem
(flag);
82
83
84
DecayFinder
*myFinder =
new
DecayFinder
(
"myFinder"
);
85
myFinder->
Verbosity
(INT_MAX);
86
myFinder->
setDecayDescriptor
(
"[B_s0 -> {J/psi -> e^+ e^-} {K_S0 -> pi^+ pi^-}]cc"
);
87
myFinder->
saveDST
(1);
88
myFinder->
allowPi0
(1);
89
myFinder->
allowPhotons
(1);
90
myFinder->
triggerOnDecay
(1);
91
myFinder->
setPTmin
(0.16);
//Note: sPHENIX min pT is 0.2 GeV for tracking
92
myFinder->
setEtaRange
(-2,2);
//Note: sPHENIX acceptance is |eta| <= 1.1
93
myFinder->
useDecaySpecificEtaRange
(
false
);
94
se->
registerSubsystem
(myFinder);
95
96
//Simulation setup
97
98
Enable::MBDFAKE
=
true
;
99
Enable::PIPE
=
true
;
100
Enable::PIPE_ABSORBER
=
true
;
101
Enable::MVTX
=
true
;
102
Enable::INTT
=
true
;
103
Enable::TPC
=
true
;
104
Enable::MICROMEGAS
=
true
;
105
106
//Tracking setup
107
108
Enable::CDB
=
true
;
109
rc->
set_StringFlag
(
"CDB_GLOBALTAG"
,
CDB::global_tag
);
110
rc->
set_uint64Flag
(
"TIMESTAMP"
,
CDB::timestamp
);
111
112
MagnetInit
();
113
MagnetFieldInit
();
114
115
G4Init
();
116
G4Setup
();
117
118
Mbd_Reco
();
119
Mvtx_Cells
();
120
Intt_Cells
();
121
TPC_Cells
();
122
Micromegas_Cells
();
123
124
TrackingInit
();
125
126
Mvtx_Clustering
();
127
Intt_Clustering
();
128
TPC_Clustering
();
129
Micromegas_Clustering
();
130
131
Tracking_Reco
();
132
Global_Reco
();
133
134
build_truthreco_tables
();
135
136
//HF stuff
137
138
HFTrackEfficiency
*myTrackEff =
new
HFTrackEfficiency
(
"myTrackEff"
);
139
myTrackEff->
Verbosity
(INT_MAX);
140
myTrackEff->
setDFNodeName
(
"myFinder"
);
141
myTrackEff->
triggerOnDecay
(1);
142
myTrackEff->
writeSelectedTrackMap
(
true
);
143
myTrackEff->
writeOutputFile
(
false
);
144
se->
registerSubsystem
(myTrackEff);
145
146
//Output file handling
147
148
string
FullOutFile =
"./Bs2JpsiKS0_DST_"
+ processID +
".root"
;
149
Fun4AllDstOutputManager
*
out
=
new
Fun4AllDstOutputManager
(
"DSTOUT"
, FullOutFile);
150
out->
StripNode
(
"G4HIT_PIPE"
);
151
out->
StripNode
(
"G4HIT_SVTXSUPPORT"
);
152
out->
StripNode
(
"PHG4INEVENT"
);
153
out->
StripNode
(
"Sync"
);
154
out->
StripNode
(
"myFinder_DecayMap"
);
155
out->
StripNode
(
"G4HIT_PIPE"
);
156
out->
StripNode
(
"G4HIT_MVTX"
);
157
out->
StripNode
(
"G4HIT_INTT"
);
158
out->
StripNode
(
"G4HIT_TPC"
);
159
out->
StripNode
(
"G4HIT_MICROMEGAS"
);
160
out->
StripNode
(
"TRKR_HITSET"
);
161
out->
StripNode
(
"TRKR_HITTRUTHASSOC"
);
162
out->
StripNode
(
"TRKR_CLUSTER"
);
163
out->
StripNode
(
"TRKR_CLUSTERHITASSOC"
);
164
out->
StripNode
(
"TRKR_CLUSTERCROSSINGASSOC"
);
165
out->
StripNode
(
"TRAINING_HITSET"
);
166
out->
StripNode
(
"TRKR_TRUTHTRACKCONTAINER"
);
167
out->
StripNode
(
"TRKR_TRUTHCLUSTERCONTAINER"
);
168
out->
StripNode
(
"alignmentTransformationContainer"
);
169
out->
StripNode
(
"alignmentTransformationContainerTransient"
);
170
out->
StripNode
(
"SiliconTrackSeedContainer"
);
171
out->
StripNode
(
"TpcTrackSeedContainer"
);
172
out->
StripNode
(
"SvtxTrackSeedContainer"
);
173
out->
StripNode
(
"ActsTrajectories"
);
174
out->
StripNode
(
"SvtxTrackMap"
);
175
out->
StripNode
(
"SvtxAlignmentStateMap"
);
176
out->
SaveRunNode
(0);
177
se->
registerOutputManager
(out);
178
179
se->
run
(nEvents);
180
se->
End
();
181
gSystem->Exit(0);
182
183
return
0;
184
}
185
186
#endif
analysis
blob
master
HF-Particle
KFParticle_sPHENIX
b_hadron_generator
Fun4All_BHG.C
Built by
Jin Huang
. updated:
Sat Feb 17 2024 22:17:53
using
1.8.2 with
sPHENIX GitHub integration