16 filterLVL1trigger =
True
17 filterLVL2trigger =
True
18 pTcutLVL1trigger = 6000
19 pTcutLVL2trigger = 4000
21 bQuarksBSignalFilter =
False
23 fastGeneration =
False
24 doNotWritePOOL =
False
25 readRndFromFile =
False
26 outLevelBChains = DEBUG
28 bothLambdaBFinsel =
False
29 forceHadronization =
False
30 repeatHadronization = 20.
38 theApp.setup( MONTECARLO )
40 import AthenaCommon.AtlasUnixGeneratorJob
42 from PartPropSvc.PartPropSvcConf
import PartPropSvc
43 svcMgr += PartPropSvc()
49 svcMgr.AuditorSvc.Auditors = [
"ChronoAuditor" ]
54 from AthenaCommon.AlgSequence
import AlgSequence
57 from PythiaB.PythiaBConf
import PythiaB
59 PythiaB = topAlg.PythiaB
61 from EvtGen_i.EvtGen_iConf
import EvtDecay
63 EvtDecay = topAlg.EvtDecay
65 from GeneratorFilters.GeneratorFiltersConf
import BSignalFilter
67 BSignalFilter = topAlg.BSignalFilter
76 EventSelector = Service (
"EventSelector")
78 theApp.EvtMax = EvtMax
79 svcMgr.EventSelector.RunNumber = 18900
81 svcMgr.EventSelector.FirstEvent = 1
89 print(
"ERROR readRndFromFile not currently supported -- ignoring.")
96 svcMgr.MessageSvc.OutputLevel = INFO
97 svcMgr.MessageSvc.defaultLimit = 9999999
103 include(
"EvtGen_i/StopPytWeakBdecays.py" )
106 PythiaB.ForceDecayChannel =
"LambdabmumuLambda"
108 PythiaB.DecayChannelParameters = [-1.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0]
110 PythiaB.DecayChannelParameters = [+1.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0]
112 if bothLambdaBFinsel:
113 PythiaB.DecayChannelParameters = [ 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0]
123 PythiaB.PythiaCommand += [
"pysubs ckin 3 6.",
"pysubs msel 5"]
125 PythiaB.PythiaCommand += [
"pysubs ckin 3 6.",
"pysubs msel 1"]
128 PythiaB.PythiaCommand += [
"pydat1 mstu 22 1000" ]
132 PythiaB.cutbq = [
"0. 0. or 9. 3.5"]
134 PythiaB.cutbq = [
"9. 3.5 or 0. 0."]
138 PythiaB.mhadr = repeatHadronization
141 if forceHadronization:
142 PythiaB.forceHadronization =
"Lambdab"
144 PythiaB.HadronizationParameters = [-1.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0]
146 PythiaB.HadronizationParameters = [+1.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0]
149 BSignalFilter.OutputLevel = outLevelBChains
150 BSignalFilter.SignaltoNtup = EvtMax
153 BSignalFilter.LVL1MuonCutOn =
False
154 BSignalFilter.LVL1MuonCutPT = pTcutLVL1trigger
155 BSignalFilter.LVL1MuonCutEta = 2.5
158 BSignalFilter.LVL2MuonCutOn =
False
159 BSignalFilter.LVL2MuonCutPT = pTcutLVL2trigger
160 BSignalFilter.LVL2MuonCutEta = 2.5
163 BSignalFilter.Cuts_Final_hadrons_switch =
False
164 BSignalFilter.Cuts_Final_hadrons_pT = 500.0
165 BSignalFilter.Cuts_Final_hadrons_eta = 2.5
168 if filterLVL1trigger:
169 BSignalFilter.LVL1MuonCutOn =
True
170 if filterLVL2trigger:
171 BSignalFilter.LVL2MuonCutOn =
True
173 BSignalFilter.Cuts_Final_hadrons_switch =
True
175 BSignalFilter.BParticle_cuts = -5122
177 BSignalFilter.BParticle_cuts = 5122
179 if bQuarksBSignalFilter:
180 BSignalFilter.StoreBQuarks =
True
188 EvtDecay.OutputLevel = outLevelBChains
190 EvtDecay.userDecayTableName =
"MYDECAY_antiLb2Lll.DEC"
192 EvtDecay.userDecayTableName =
"MYDECAY_Lb2Lll.DEC"
198 if ntupleType ==
"ROOT":
199 theApp.HistogramPersistency =
"ROOT"
200 svcMgr.NTupleSvc = Service(
"NTupleSvc" )
201 svcMgr.NTupleSvc.Output = [
"FILE1 DATAFILE='athena.evgen.ntup' OPT='NEW'" ]
203 if ntupleType ==
"HBOOK":
204 theApp.Dlls += [
"HbookCnv" ]
205 theApp.HistogramPersistency =
"HBOOK"
206 HbookHistSvc = Service(
"HbookHistSvc" )
207 HbookHistSvc.NPAWC = 1500000
210 svcMgr.NTupleSvc = Service(
"NTupleSvc" )
211 svcMgr.NTupleSvc.NPAWC = 15000000
212 svcMgr.NTupleSvc.Output = [
"FILE1 DATAFILE='athena.evgen.ntup' OPT='NEW'" ]
214 if ntupleType ==
"AANT":
215 theApp.Dlls += [
"AnalysisTools" ]
216 THistSvc = Service (
"THistSvc" )
217 THistSvc.Output = [
"AANT DATAFILE='athena.evgen.ntup' OPT='NEW'"]
218 theApp.TopAlg += [
"AANTupleStream" ]
219 AANTupleStream = Algorithm(
"AANTupleStream" )
220 AANTupleStream.ExtraRefNames = [
"" ]
221 AANTupleStream.OutputName =
'athena.evgen.ntup'
222 AANTupleStream.ExistDataHeader =
False
223 AANTupleStream.OutputLevel = VERBOSE
225 HistogramPersistencySvc = Service(
"HistogramPersistencySvc" )
226 HistogramPersistencySvc.OutputFile =
"histo.root"
232 if not doNotWritePOOL:
233 from AthenaPoolCnvSvc.WriteAthenaPool
import AthenaPoolOutputStream
234 include(
"GeneratorObjectsAthenaPool/GeneratorObjectsAthenaPool_joboptions.py" )
237 Stream1.OutputFile =
"athena.evgen.root"
240 Stream1.ItemList += [
"2101#*",
"133273#*" ]
241 Stream1.AcceptAlgs = [
"BSignalFilter" ]
243 include(
"AthenaSealSvc/AthenaSealSvc_joboptions.py" )
244 AthenaSealSvc.CheckDictionary = TRUE