33 from background
import add_output
47 sad =
'phase2.1.4_collimators_1'
56 sad =
'phase2.1.4_collimators_1'
65 sad =
'phase2.1.4_collimators_1'
87 print(
'basf2', argvs[0],
88 '(Touschek,Coulomb,Brems) (HER,LER) equivTime_us num [(study,usual,ECL,PXD) phase outdir]')
92 inputSAD =
"/group/belle2/BGcampaigns/SAD/forG4/"
93 bgType = bgType +
'_' + accRing
94 sadFile = inputSAD + bgType +
'_' + sad +
'.root'
95 realTime = float(equivTime) * 1000
96 fname = bgType +
'_' + sampleType +
'-phase' + str(phase) +
'-' + num
97 outputFile = outdir +
'/' + fname +
'.root'
101 if not os.path.exists(sadFile):
102 b2.B2ERROR(
'SAD file ' + sadFile +
' not found')
107 if not os.path.exists(outdir):
111 b2.B2RESULT(
'Output file: ' + outputFile)
112 b2.B2RESULT(
'Corresponds to ' + equivTime +
' us of running phase ' + str(phase))
115 b2.set_log_level(b2.LogLevel.RESULT)
118 main = b2.create_path()
122 eventinfosetter = b2.register_module(
'EventInfoSetter')
123 eventinfosetter.param(
'evtNumList', [10000000])
124 main.add_module(eventinfosetter)
127 gearbox = b2.register_module(
'Gearbox')
129 gearbox.param(
'fileName',
'geometry/Beast2_phase2.xml')
131 gearbox.param(
'fileName',
'geometry/Belle2_earlyPhase3.xml')
132 if sampleType ==
'study':
133 gearbox.param(
'override', [
134 (
"/DetectorComponent[@name='PXD']//ActiveChips",
'true',
''),
135 (
"/DetectorComponent[@name='PXD']//SeeNeutrons",
'true',
''),
136 (
"/DetectorComponent[@name='SVD']//ActiveChips",
'true',
''),
137 (
"/DetectorComponent[@name='SVD']//SeeNeutrons",
'true',
''),
138 (
"/DetectorComponent[@name='TOP']//BeamBackgroundStudy",
'1',
''),
139 (
"/DetectorComponent[@name='ARICH']//BeamBackgroundStudy",
'1',
''),
140 (
"/DetectorComponent[@name='ECL']//BeamBackgroundStudy",
'1',
''),
141 (
"/DetectorComponent[@name='KLM']//BeamBackgroundStudy",
'1',
''),
143 main.add_module(gearbox)
146 generator = b2.register_module(
'BeamBkgGenerator')
147 generator.param(
'fileName', sadFile)
148 generator.param(
'ringName', accRing)
149 generator.param(
'realTime', realTime)
150 main.add_module(generator)
153 geometry = b2.register_module(
'Geometry')
154 geometry.param(
'useDB',
False)
156 geometry.param(
'additionalComponents', [
'BEAMABORT',
'MICROTPC',
'CLAWS',
'HE3TUBE'])
157 main.add_module(geometry)
160 fullsim = b2.register_module(
'FullSim')
161 if sampleType ==
'study':
162 fullsim.param(
'PhysicsList',
'FTFP_BERT_HP')
163 fullsim.param(
'UICommandsAtIdle', [
'/process/inactivate nKiller'])
164 fullsim.param(
'StoreAllSecondaries',
True)
165 fullsim.param(
'SecondariesEnergyCut', 0.000001)
166 main.add_module(fullsim)
169 progress = b2.register_module(
'Progress')
170 main.add_module(progress)
177 excludeBranch = [
'MCParticles']
178 add_output(main, bgType, realTime, sampleType, phase, fileName=outputFile, excludeBranches=excludeBranch)