ATLAS Offline Software
BsJpsiphi.py
Go to the documentation of this file.
1 
24 import AthenaCommon.AtlasUnixGeneratorJob
25 
26 from PartPropSvc.PartPropSvcConf import PartPropSvc
27 svcMgr += PartPropSvc()
28 
29 
30 #--------------------------------------------------------------
31 # Private Application Configuration options
32 #--------------------------------------------------------------
33 svcMgr.AuditorSvc.Auditors = [ "ChronoAuditor" ]
34 
35 #--------------------------------------------------------------
36 # Algorithms
37 #--------------------------------------------------------------
38 from AthenaCommon.AlgSequence import AlgSequence
39 topAlg=AlgSequence()
40 
41 from PythiaB.PythiaBConf import PythiaB
42 topAlg += PythiaB()
43 PythiaB = topAlg.PythiaB
44 
45 from EvtGen_i.EvtGen_iConf import EvtDecay
46 topAlg += EvtDecay()
47 EvtDecay = topAlg.EvtDecay
48 
49 from GeneratorFilters.GeneratorFiltersConf import BSignalFilter
50 topAlg += BSignalFilter()
51 BSignalFilter = topAlg.BSignalFilter
52 
53 #--------------------------------------------------------------
54 # Number of events to be accepted !! (default is 10)
55 # re-written if use B job submition script
56 # RunNumber, FirstEvent re-written if use B job submition script
57 #--------------------------------------------------------------
58 # Set output level threshold (2=DEBUG, 3=INFO, 4=WARNING, 5=ERROR, 6=FATAL )
59 svcMgr.MessageSvc.OutputLevel = 2
60 #--------------------------------------------------------------
61 # Number of events to be accepted !! (default is 10)
62 # re-written if use B job submition script
63 # RunNumber, FirstEvent re-written if use B job submition script
64 #--------------------------------------------------------------
65 theApp.EvtMax = 500
66 svcMgr.EventSelector.RunNumber = 1
67 svcMgr.EventSelector.FirstEvent = 1
68 #--------------------------------------------------------------
69 # PARAMETERS SPECIFIC TO PYTHIAB
70 #--------------------------------------------------------------
71 include( "EvtGen_i/StopPytWeakBdecays.py" )
72 #--------------------------------------------------------------
73 # -------- PYTHIA PARAMETERS OPTIMAL FOR BEAUTY PRODUCTION --
74 #--------------------------------------------------------------
75 # 'msel 5' is only for fast tests!
76 # for correct b-producion you should use 'msel 1'
77 #include( "PythiaB/Btune.py" )
78 
79 PythiaB.PythiaCommand += ["pysubs ckin 3 15.",
80  "pysubs msel 1"]
81 # ------------- Selections on b quarks -------------
82 PythiaB.cutbq = ["0. 102.5 and 10. 2.5"]
83 # ------------- Number of repeated hadronization mhadr -------------
84 PythiaB.mhadr = 14.
85 # ------------- For how many events store B-chain in NTUPLE -------------
86 BSignalFilter.SignaltoNtup = 10
87 BSignalFilter.LVL1MuonCutOn = TRUE
88 BSignalFilter.LVL1MuonCutPT = 6000.0
89 BSignalFilter.LVL1MuonCutEta = 2.5
90 BSignalFilter.LVL2MuonCutOn = TRUE
91 BSignalFilter.LVL2ElectronCutOn = FALSE
92 BSignalFilter.LVL2MuonCutPT = 3000.0
93 BSignalFilter.LVL2MuonCutEta = 2.5
94 BSignalFilter.Cuts_Final_hadrons_switch = TRUE
95 BSignalFilter.Cuts_Final_hadrons_pT = 500.0
96 BSignalFilter.Cuts_Final_hadrons_eta = 2.5
97 #--------------------------------------------------------------
98 # YOUR CONTROL OF EVTGEN
99 #--------------------------------------------------------------
100 # If you do not define a name to your Decay-table file here
101 # then EvtGen will work with a default decay table DECAY.DEC
102 EvtDecay.userDecayTableName = "Bs2Jpsiphi.DEC"
103 
104 # EvtGen random seed interface. Does not affect PYTHIA seeds.
105 # This is a TEMPORARY FIX as it does not abide by ATLAS software rules.
106 # James R Catmore, 16/2/2004
107 # Followign line commented 17.April 2006 to allow AtRndmGenSvc
108 # EvtDecay.EvtGenRandomSeed = 645754;
109 
110 #--------------------------------------------------------------
111 # Histogram & Ntuple Persistency
112 #--------------------------------------------------------------
113 # Change the following line to "RootHistCnv" for ROOT persistency
114 #theApp.Dlls += [ "RootHistCnv" ]
115 # Change the following line to "ROOT" for ROOT persistency
116 theApp.HistogramPersistency = "ROOT"
117 #--------------------------------------------------------------
118 # NTuple output file
119 #--------------------------------------------------------------
120 #RootHistSvc = Service( "RootHistSvc" )
121 #HbookHistSvc.NPAWC = 1500000
122 #HistogramPersistencySvc = Service( "HistogramPersistencySvc" )
123 #HistogramPersistencySvc.OutputFile = "histo.root"
124 svcMgr.NTupleSvc.Output = [ "FILE1 DATAFILE='pythiaB.root' OPT='NEW' TYP='ROOT'" ]
125 
126 
128 from AthenaPoolCnvSvc.WriteAthenaPool import AthenaPoolOutputStream
129 include( "GeneratorObjectsAthenaPool/GeneratorObjectsAthenaPool_joboptions.py" )
130 
131 Stream1 = AthenaPoolOutputStream( "Stream1" )
132 Stream1.OutputFile = "pythiaB.pool.root"
133 # 2101 = EventInfo
134 # 133273 = MCTruth (HepMC)
135 Stream1.ItemList += [ "2101#*", "133273#*" ]
136 Stream1.AcceptAlgs = ["BSignalFilter"]
137 
138 include("AthenaSealSvc/AthenaSealSvc_joboptions.py" )
139 AthenaSealSvc.CheckDictionary = TRUE
140 
141 
142 #==============================================================
143 #
144 # End of job options file
145 #
146 
BSignalFilter
Definition: BSignalFilter.py:1
python.AlgSequence.AlgSequence
AlgSequence
Definition: PhysicsAnalysis/D3PDTools/AnaAlgorithm/python/AlgSequence.py:7
BsJpsiphi.PythiaB
PythiaB
Definition: BsJpsiphi.py:43
BsJpsiphi.EvtDecay
EvtDecay
Definition: BsJpsiphi.py:47
python.Include.include
include
Definition: Include.py:319
python.CreateOutputStreams.AthenaPoolOutputStream
def AthenaPoolOutputStream
backward compat
Definition: CreateOutputStreams.py:144