Belle II Software  release-05-01-25
TRGValidationGen.py
1 #!/usr/bin/env python3
2 # -*- coding: utf-8 -*-
3 
4 """
5 <header>
6 <output>TRGValidationGen.root</output>
7 <contact>Yun-Tsung Lai, ytlai@post.kek.jp</contact>
8 <description>This steering file generates 1000 e+/e- particle guns to validate the trg package.</description>
9 </header>
10 """
11 
12 import os
13 from basf2 import *
14 from simulation import add_simulation
15 from L1trigger import add_tsim
16 from modularAnalysis import *
17 
18 import glob
19 
20 main = create_path()
21 eventinfosetter = register_module('EventInfoSetter')
22 eventinfosetter.param({'evtNumList': [1000], 'runList': [1]})
23 main.add_module(eventinfosetter)
24 
25 particlegun = register_module('ParticleGun')
26 particlegun.param('pdgCodes', [11, -11])
27 particlegun.param('nTracks', 1)
28 particlegun.param('momentumGeneration', 'uniformPt')
29 particlegun.param('momentumParams', [0.2, 5.0])
30 particlegun.param('thetaParams', [35, 127])
31 particlegun.param('phiGeneration', 'uniform')
32 particlegun.param('phiParams', [0, 360])
33 particlegun.param('vertexGeneration', 'uniform')
34 particlegun.param('xVertexParams', [0, 0])
35 particlegun.param('yVertexParams', [0, 0])
36 particlegun.param('zVertexParams', [-20.0, 20.0])
37 main.add_module(particlegun)
38 
39 add_simulation(main)
40 
41 # add trigger
42 add_tsim(main, component=["CDC", "ECL", "KLM", "GRL", "GDL"])
43 
44 # output
45 rootoutput = register_module('RootOutput')
46 rootoutput.param('outputFileName', "../TRGValidationGen.root")
47 main.add_module(
48  rootoutput,
49  branchNames=[
50  "TRGCDC2DFinderTracks",
51  "TRGCDC3DFitterTracks",
52  "TRGCDCNeuroTracks",
53  "TRGECLClusters",
54  "MCParticles"])
55 
56 # main
57 process(main)
58 print(statistics)
59 # ===<END>