14 from simulation
import add_simulation
15 from optparse
import OptionParser
16 from L1trigger
import add_trigger_simulation
17 from reconstruction
import add_cdst_output, add_reconstruction
20 background_files = glob.glob(
'/group/belle2/BGFile/OfficialBKG/phase2/pseudorandom/BGOverlay.physics.0003.*.root')
25 parser = OptionParser()
26 parser.add_option(
'-n',
'--nevents', dest=
'nevents', default=200000,
27 help=
'Number of events to process')
28 parser.add_option(
'-f',
'--file', dest=
'filename',
29 default=
'Bhabha_Prod5_MC.root')
30 parser.add_option(
'-o',
'--output', dest=
'cdstname',
31 default=
'Bhabha_Prod5_MC_cdst.root')
32 (options, args) = parser.parse_args()
34 home = os.environ[
'BELLE2_LOCAL_DIR']
37 b2.set_log_level(b2.LogLevel.ERROR)
40 b2.use_database_chain()
41 b2.use_central_database(
"data_reprocessing_prod5", b2.LogLevel.WARNING)
44 main = b2.create_path()
45 empty = b2.create_path()
48 eventinfosetter = b2.register_module(
'EventInfoSetter')
49 eventinfosetter.param({
'evtNumList': [int(options.nevents)],
'runList': [1]})
50 main.add_module(eventinfosetter)
53 histo = b2.register_module(
'HistoManager')
54 histo.param(
'histoFileName',
'DQMhistograms.root')
55 main.add_module(histo)
58 gearbox = b2.register_module(
'Gearbox', fileName=
"geometry/Beast2_phase2.xml")
59 main.add_module(gearbox)
62 geometry = b2.register_module(
'Geometry')
70 main.add_module(geometry)
73 generator = b2.register_module(
'BabayagaNLOInput')
74 generator.param(
'FinalState',
'ee')
75 generator.param(
'MaxAcollinearity', 180.0)
76 generator.param(
'ScatteringAngleRange', [15., 165.])
77 generator.param(
'FMax', 75000)
78 generator.param(
'MinEnergy', 0.01)
79 generator.param(
'Order',
'exp')
80 generator.param(
'DebugEnergySpread', 0.01)
81 generator.param(
'Epsilon', 0.00005)
82 generatorpreselection = b2.register_module(
'GeneratorPreselection')
83 generatorpreselection.param(
'nChargedMin', 1)
84 generatorpreselection.param(
'nChargedMax', 999)
85 generatorpreselection.param(
'MinChargedP', 4.)
87 generatorpreselection.param(
'MinChargedTheta', 17.)
88 generatorpreselection.param(
'MaxChargedTheta', 36.)
89 generatorpreselection.param(
'applyInCMS',
False)
90 main.add_module(generator)
91 main.add_module(generatorpreselection)
92 generatorpreselection.if_value(
'!=11', empty)
102 allowed_components = [
'PXD',
'SVD',
'CDC',
'ECL',
'TOP',
'ARICH',
'KLM']
103 add_simulation(main, components=allowed_components, bkgfiles=background_files, bkgOverlay=
True)
106 arich_digitizer = b2.register_module(
'ARICHDigitizer')
107 arich_digitizer.param(
'MagneticFieldDistorsion', 1)
108 main.add_module(arich_digitizer)
111 add_trigger_simulation(main, shortTracks=
True, Belle2Phase=
"Phase2")
115 add_reconstruction(main)
118 arichHits = b2.register_module(
'ARICHFillHits')
119 arichHits.param(
'MagFieldCorrection', 1)
120 main.add_module(arichHits)
124 arichreco = b2.register_module(
'ARICHReconstructor')
126 arichreco.param(
'storePhotons', 1)
127 arichreco.param(
'useAlignment', 0)
128 main.add_module(arichreco)
132 arichNtuple = b2.register_module(
'ARICHNtuple')
133 arichNtuple.param(
'outputFile', options.filename)
134 main.add_module(arichNtuple)
138 arichdqm = b2.register_module(
'ARICHDQM')
139 main.add_module(arichdqm)
141 add_cdst_output(main,
True,
'/ghi/fs01/belle2/bdata/users/sachit/' + options.cdstname)
155 progress = b2.register_module(
'Progress')
156 main.add_module(progress)