Belle II Software development
KLongGenSimNoBkg.py
1#!/usr/bin/env python3
2
3
10
11"""
12<header>
13 <output>KLongGenSimNoBkg.root</output>
14 <contact>arul.prakash@physik.uni-muenchen.de</contact>
15 <cacheable/>
16 <description>This steering file produces 1000 events with one KLong each
17 and runs the detector simulation without mixing in background.</description>
18</header>
19"""
20
21from basf2 import (
22 set_random_seed,
23 create_path,
24 process,
25 register_module,
26)
27from simulation import add_simulation
28from beamparameters import add_beamparameters
29from validation import statistics_plots, event_timing_plot
30
31set_random_seed(12345)
32
33main = create_path()
34
35# specify number of events to be generated
36eventinfosetter = register_module("EventInfoSetter")
37eventinfosetter.param("evtNumList", [1000])
38eventinfosetter.param("runList", [1])
39eventinfosetter.param("expList", [0])
40main.add_module(eventinfosetter)
41
42# beam parameters
43beamparameters = add_beamparameters(main, "Y4S")
44# beamparameters.param("smearVertex", False)
45
46# generate Klong events
47# Particle gun
48particlegun = register_module("ParticleGun")
49particlegun.param("nTracks", 1)
50particlegun.param("pdgCodes", [130])
51particlegun.param("momentumGeneration", "uniform")
52particlegun.param("momentumParams", [1, 1])
53particlegun.param("thetaGeneration", "uniform")
54particlegun.param("thetaParams", [30, 30])
55particlegun.param("phiGeneration", "uniform")
56particlegun.param("phiParams", [0, 360])
57main.add_module(particlegun)
58
59# detector simulation, no background files
60add_simulation(main)
61
62# memory profile
63main.add_module(register_module("Profile"))
64
65# output
66output = register_module("RootOutput")
67output.param("outputFileName", "../KLongGenSimNoBkg.root")
68main.add_module(output)
69
70main.add_module('Progress')
71process(main, calculateStatistics=True)
72
73statistics_plots(
74 "KLongGenSimNoBkg_statistics.root",
75 contact="arul.prakash@physik.uni-muenchen.de",
76 job_desc="a standard simulation job with generic KLongGenSimNoBkg events",
77 prefix="KLongGenSimNoBkg",
78)
79event_timing_plot(
80 "../KLongGenSimNoBkg.root",
81 "KLongGenSimNoBkg_statistics.root",
82 contact="arul.prakash@physik.uni-muenchen.de",
83 job_desc="a standard simulation job with Klong events",
84 prefix="KLongGenSimNoBkg",
85)