Belle II Software  release-05-01-25
test2_DstToD0Pi_D0ToHpJm.py
1 #!/usr/bin/env/python3
2 # -*-coding: utf-8-*-
3 
4 """
5 <header>
6  <input>17240100.udst.root</input>
7  <output>DstToD0Pi_D0ToHpJm_Validation.root</output>
8  <contact>gonggd@mail.ustc.edu.cn</contact>
9 </header>
10 """
11 
12 import basf2 as b2
13 import modularAnalysis as ma
14 from stdCharged import stdK, stdPi
15 from variables import variables as vm
16 from validation_tools.metadata import create_validation_histograms
17 
18 
19 c2bhdpath = b2.Path()
20 
21 ma.inputMdst('default', '17240100.udst.root', path=c2bhdpath)
22 
23 # Load particle lists
24 stdPi('loose', path=c2bhdpath)
25 stdK('loose', path=c2bhdpath)
26 stdPi('all', path=c2bhdpath)
27 stdK('all', path=c2bhdpath)
28 
29 ma.reconstructDecay('D0:HpJm0_test -> pi+:loose K-:loose', '1.80 < M < 1.93 and useCMSFrame(p)>2.2', path=c2bhdpath)
30 ma.reconstructDecay('D*+:HpJm0_test -> D0:HpJm0_test pi+:all', '0 < Q < 0.018', path=c2bhdpath)
31 
32 vm.addAlias('M_D0', 'daughter(0,InvM)')
33 vm.addAlias('Pcms_D0', 'daughter(0,useCMSFrame(p))')
34 vm.addAlias('d0_spi', 'daughter(1,d0)')
35 vm.addAlias('z0_spi', 'daughter(1,z0)')
36 vm.addAlias('dr_spi', 'daughter(1,dr)')
37 vm.addAlias('dz_spi', 'daughter(1,dz)')
38 vm.addAlias('Pcms_spi', 'daughter(1,useCMSFrame(p))')
39 vm.addAlias('Pcms_Dst', 'useCMSFrame(p)')
40 
41 
42 histogramFilename = 'DstToD0Pi_D0ToHpJm_Validation.root'
43 myEmail = 'Guanda Gong <gonggd@mail.ustc.edu.cn>'
44 
45 
46 create_validation_histograms(
47  rootfile=histogramFilename,
48  particlelist='D*+:HpJm0_test',
49  variables_1d=[
50  ('M_D0', 100, 1.80, 1., 'Mass distribution of $D^{0}$', myEmail,
51  'mass of D0 (mean=1.86483)', 'Please check agreement of: mean, sigma and ratio of signal and background',
52  'M(D^{0}) [GeV/c^{2}]', 'shifter'),
53  ('Pcms_D0', 100, 2, 6, 'momentum of $D_{0}$ in CMS Frame', myEmail,
54  'CMS momentum of D0', 'Please check agreement of lineshape',
55  '$P_{cms}(D^{0}) [GeV/c^{2}]', 'shifter'),
56  ('d0_spi', 100, -1.2, 1.2, 'd0 of slow pi', myEmail,
57  'd0 of slow pion', 'provided for the SVD and PXD group',
58  'd0_spi [cm]', 'shifter'),
59  ('z0_spi', 100, -3.3, 3.3, 'z0 of slow pi', myEmail,
60  'z0 of slow pion', 'provided for the SVD and PXD group',
61  'z0_spi [cm]', 'shifter'),
62  ('dr_spi', 100, -1.2, 1.2, 'dr of slow pi', myEmail,
63  'dr of slow pion', 'provided for the SVD and PXD group',
64  'dr_spi [cm]', 'shifter'),
65  ('dz_spi', 100, -3.3, 3.3, 'dz of slow pi', myEmail,
66  'dz of slow pion', 'provided for the SVD and PXD group',
67  'dz_spi [cm]', 'shifter'),
68  ('Pcms_spi', 100, 0, 0.8, 'momentum of slow pi in CMS Frame', myEmail,
69  'CMS momentum of slow pion', 'Please check agreement of lineshape',
70  'P_{cms}(#pi_{s}) [GeV/c]', 'shifter'),
71  ('Pcms_Dst', 100, 2, 6, 'momentum of $D_{*}$ in CMS Frame', myEmail,
72  'CMS momentum of slow pion', 'Please check agreement of lineshape',
73  'P_{cms}(D*) {GeV/c}', 'shifter'),
74  ('Q', 100, 0, 0.018, 'Released energy in $D^{*}$ decay', myEmail,
75  'Q = M(D0 pi) - M(D0) - M(pi), and it peaks around 0.006 GeV',
76  'Please check agreement of: mean, sigma and ratio of signal and background',
77  'Q [GeV]', 'shifter'),
78  ],
79  path=c2bhdpath)
80 
81 b2.process(c2bhdpath)
82 print(b2.statistics)
validation_tools.metadata
Definition: metadata.py:1