Belle II Software development
013_first_steering_file.py
1#!/usr/bin/env python3
2
3import sys
4import basf2 as b2
5import modularAnalysis as ma
6import stdV0s
7
8# get input file number from the command line
9filenumber = sys.argv[1]
10
11# create path
12main = b2.Path()
13
14# load input data from mdst/udst file
15ma.inputMdstList(
16 filelist=[b2.find_file(f"starterkit/2021/1111540100_eph3_BGx0_{filenumber}.root", "examples")],
17 path=main,
18)
19
20# fill final state particle lists
21ma.fillParticleList( # [S10]
22 "e+:uncorrected",
23 "electronID > 0.1 and dr < 0.5 and abs(dz) < 2 and thetaInCDCAcceptance",
24 path=main,
25) # [E10]
26stdV0s.stdKshorts(path=main)
27
28# combine final state particles to form composite particles [S20]
29ma.reconstructDecay(
30 "J/psi:ee -> e+:uncorrected e-:uncorrected", cut="abs(dM) < 0.11", path=main
31) # [E20]
32
33# combine J/psi and KS candidates to form B0 candidates
34ma.reconstructDecay(
35 "B0 -> J/psi:ee K_S0:merged",
36 cut="",
37 path=main,
38)
39# [E30]
40# save variables to an output file (ntuple)
41ma.variablesToNtuple(
42 "B0",
43 variables=['Mbc'],
44 filename="Bd2JpsiKS.root",
45 treename="tree",
46 path=main,
47)
48
49# start the event loop (actually start processing things)
50b2.process(main)
51
52# print out the summary
53print(b2.statistics)
def stdKshorts(prioritiseV0=True, fitter='TreeFit', path=None, updateAllDaughters=False, writeOut=False)
Definition: stdV0s.py:17