Combitorial Events
One key feature of chanser is the ability to automatically generate combitorial events out of single DST events. This removes the need for the users to write specific loops which can often complicate code and become a source for hard to track errors. In fact the user is not required to write any extra code, but should be aware of what is going on. The need for combitorial events arises when your event topology does not have a clear unambigous selection of particles. This can occur when,
there are more particles of a particular type than you require
there is no clear particle identification for a particle/track (or you want to try you own)
In theses cases you may either reject the event or try all possible combinations of particles which fit your event hypothesis, chanser does the latter.
Combitorials of the first kind
If there are multiple particles in an event that meet the requirements of a particle you ask for in you final state topology then a combitorial event wil be made for each candidate and written as a seperate event in the output files.
Examples,
final state contains 1 electron, but event has 3 => create 3 events
- final state contains 1 electron and 1 proton, but event has 3 e- and 2 p => create 3x2=6 events
both cases must subtract false combinations via exclusivity variables
Combitorials of the second kind
If there are multiple particles in your final state of the same particle species. This now depends on whether the particles came from a common intermediate parent or not. i.e. If they came from the same parent only 1 combitorial event is produced. If they came from no parents then only 1 combitorial event is produced. If 1 or more came from an parent which subsequently decayed then multiple combitorial events are produced.
Examples
final state contains 2 photons from pi0 (parent) decay => 1 combitorial event
- final state contains 3 photons from omega->pi0+gamma decay => 3 comitorial event
must subtract false combinations via pi0 mass distribution
- final state contains 2pi+ and 2pi- from omega->pi+pi0pi- and additional pi+pi => 4 combitorial events
must subtract background via omega mass distribution
- final state contains 2pi+1pi- from decay of broad meson resonaces => 1 combitorial event
as this must be dealt with at amplitude level by symmetrising pions, even if there is a isobar intermediate state
Combitorials of the third kind
If you do not have full particle identification for you tracks you can make hypothesis based on their assigned charge. The leads to making combitorial events based on the actual type of the particles in your final state.
Examples
If identifying particles by charge
- final state contains proton and pi+ => 2 combitorial events from 2 +ve tracks
can reject combitorials based on DeltaTime or some other track ID variables
Combining Combitorials of different kinds
It may be your final state and data contain two or three of these types of combitorial. chanser will combine these and write out however many events they create.
Examples
Final state is e-,pi+pi-proton, event contains 3 -ve and 4 +ve tracks, how many combitorial events should be produced?
1 There are 3 type 1 combinations of -ve particles, for each there are 2 type 3 combinations
2 There are 4 type 1 combinations of +ve particles, for each there are 3 type 3 combinations
3 Total combinations = 3 x 2 x 4 x 3 = 72
4 For this event chanser will create 72 possible combitorial events which the user can reduce
5 through cuts on particle ID variables and exclusivity variables.
You can ask chanser to print the final state particles for each combitorial event to allow you to check it is doing what you woud like. To do this in your Run.C script call FinalStateManger::CheckCombitorials()
{
...
FinalStateManager fsm;
fsm.SetBaseOutDir("/hdd/dump/Test");
////Connect the data to the manager
fsm.LoadData(&hdata);
////load one or more FinalStates
fsm.LoadFinalState("Pi2","example.root");
...
fsm.CheckCombitorials();
fsm.ProcessAll(100); //show first 100 events
}
To see an example chanser print out of these combitorials for one hipo event click here
1 Printing Perm 1 of topology
2 PDG(11)Th(0.356374)E( 2.24458) PDG(2212)Th(0.202987)E( 2.63672) PDG(211)Th(0.73788)E( 0.714648) PDG(-211)Th(0.0451417)E( 2.9292)
3 Printing Perm 2 of topology
4 PDG(11)Th(0.356374)E( 2.24458) PDG(2212)Th(0.73788)E( 1.17115) PDG(211)Th(0.202987)E( 2.46808) PDG(-211)Th(0.0451417)E( 2.9292)
5 Printing Perm 3 of topology
6 PDG(11)Th(0.0451417)E( 3.0794) PDG(2212)Th(0.202987)E( 2.63672) PDG(211)Th(0.73788)E( 0.714648) PDG(-211)Th(0.356374)E( 2.24891)
7 Printing Perm 4 of topology
8 PDG(11)Th(0.0451417)E( 3.0794) PDG(2212)Th(0.73788)E( 1.17115) PDG(211)Th(0.202987)E( 2.46808) PDG(-211)Th(0.356374)E( 2.24891)
9 Printing Perm 5 of topology
10 PDG(11)Th(0.356374)E( 2.24458) PDG(2212)Th(0.202987)E( 2.63672) PDG(211)Th(0.589328)E( 0.702326) PDG(-211)Th(0.0451417)E( 2.9292)
11 Printing Perm 6 of topology
12 PDG(11)Th(0.356374)E( 2.24458) PDG(2212)Th(0.589328)E( 1.16367) PDG(211)Th(0.202987)E( 2.46808) PDG(-211)Th(0.0451417)E( 2.9292)
13 Printing Perm 7 of topology
14 PDG(11)Th(0.0451417)E( 3.0794) PDG(2212)Th(0.202987)E( 2.63672) PDG(211)Th(0.589328)E( 0.702326) PDG(-211)Th(0.356374)E( 2.24891)
15 Printing Perm 8 of topology
16 PDG(11)Th(0.0451417)E( 3.0794) PDG(2212)Th(0.589328)E( 1.16367) PDG(211)Th(0.202987)E( 2.46808) PDG(-211)Th(0.356374)E( 2.24891)
17 Printing Perm 9 of topology
18 PDG(11)Th(0.356374)E( 2.24458) PDG(2212)Th(0.202987)E( 2.63672) PDG(211)Th(0.996051)E( 0.454749) PDG(-211)Th(0.0451417)E( 2.9292)
19 Printing Perm 10 of topology
20 PDG(11)Th(0.356374)E( 2.24458) PDG(2212)Th(0.996051)E( 1.03328) PDG(211)Th(0.202987)E( 2.46808) PDG(-211)Th(0.0451417)E( 2.9292)
21 Printing Perm 11 of topology
22 PDG(11)Th(0.0451417)E( 3.0794) PDG(2212)Th(0.202987)E( 2.63672) PDG(211)Th(0.996051)E( 0.454749) PDG(-211)Th(0.356374)E( 2.24891)
23 Printing Perm 12 of topology
24 PDG(11)Th(0.0451417)E( 3.0794) PDG(2212)Th(0.996051)E( 1.03328) PDG(211)Th(0.202987)E( 2.46808) PDG(-211)Th(0.356374)E( 2.24891)
25 Printing Perm 13 of topology
26 PDG(11)Th(0.356374)E( 2.24458) PDG(2212)Th(0.73788)E( 1.17115) PDG(211)Th(0.589328)E( 0.702326) PDG(-211)Th(0.0451417)E( 2.9292)
27 Printing Perm 14 of topology
28 PDG(11)Th(0.356374)E( 2.24458) PDG(2212)Th(0.589328)E( 1.16367) PDG(211)Th(0.73788)E( 0.714648) PDG(-211)Th(0.0451417)E( 2.9292)
29 Printing Perm 15 of topology
30 PDG(11)Th(0.0451417)E( 3.0794) PDG(2212)Th(0.73788)E( 1.17115) PDG(211)Th(0.589328)E( 0.702326) PDG(-211)Th(0.356374)E( 2.24891)
31 Printing Perm 16 of topology
32 PDG(11)Th(0.0451417)E( 3.0794) PDG(2212)Th(0.589328)E( 1.16367) PDG(211)Th(0.73788)E( 0.714648) PDG(-211)Th(0.356374)E( 2.24891)
33 Printing Perm 17 of topology
34 PDG(11)Th(0.356374)E( 2.24458) PDG(2212)Th(0.73788)E( 1.17115) PDG(211)Th(0.996051)E( 0.454749) PDG(-211)Th(0.0451417)E( 2.9292)
35 Printing Perm 18 of topology
36 PDG(11)Th(0.356374)E( 2.24458) PDG(2212)Th(0.996051)E( 1.03328) PDG(211)Th(0.73788)E( 0.714648) PDG(-211)Th(0.0451417)E( 2.9292)
37 Printing Perm 19 of topology
38 PDG(11)Th(0.0451417)E( 3.0794) PDG(2212)Th(0.73788)E( 1.17115) PDG(211)Th(0.996051)E( 0.454749) PDG(-211)Th(0.356374)E( 2.24891)
39 Printing Perm 20 of topology
40 PDG(11)Th(0.0451417)E( 3.0794) PDG(2212)Th(0.996051)E( 1.03328) PDG(211)Th(0.73788)E( 0.714648) PDG(-211)Th(0.356374)E( 2.24891)
41 Printing Perm 21 of topology
42 PDG(11)Th(0.356374)E( 2.24458) PDG(2212)Th(0.589328)E( 1.16367) PDG(211)Th(0.996051)E( 0.454749) PDG(-211)Th(0.0451417)E( 2.9292)
43 Printing Perm 22 of topology
44 PDG(11)Th(0.356374)E( 2.24458) PDG(2212)Th(0.996051)E( 1.03328) PDG(211)Th(0.589328)E( 0.702326) PDG(-211)Th(0.0451417)E( 2.9292)
45 Printing Perm 23 of topology
46 PDG(11)Th(0.0451417)E( 3.0794) PDG(2212)Th(0.589328)E( 1.16367) PDG(211)Th(0.996051)E( 0.454749) PDG(-211)Th(0.356374)E( 2.24891)
47 Printing Perm 24 of topology
48 PDG(11)Th(0.0451417)E( 3.0794) PDG(2212)Th(0.996051)E( 1.03328) PDG(211)Th(0.589328)E( 0.702326) PDG(-211)Th(0.356374)E( 2.24891)
49 Printing Perm 25 of topology
50 PDG(11)Th(0.356374)E( 2.24458) PDG(2212)Th(0.202987)E( 2.63672) PDG(211)Th(0.73788)E( 0.714648) PDG(-211)Th(0.317323)E( 1.27651)
51 Printing Perm 26 of topology
52 PDG(11)Th(0.356374)E( 2.24458) PDG(2212)Th(0.73788)E( 1.17115) PDG(211)Th(0.202987)E( 2.46808) PDG(-211)Th(0.317323)E( 1.27651)
53 Printing Perm 27 of topology
54 PDG(11)Th(0.317323)E( 1.26885) PDG(2212)Th(0.202987)E( 2.63672) PDG(211)Th(0.73788)E( 0.714648) PDG(-211)Th(0.356374)E( 2.24891)
55 Printing Perm 28 of topology
56 PDG(11)Th(0.317323)E( 1.26885) PDG(2212)Th(0.73788)E( 1.17115) PDG(211)Th(0.202987)E( 2.46808) PDG(-211)Th(0.356374)E( 2.24891)
57 Printing Perm 29 of topology
58 PDG(11)Th(0.356374)E( 2.24458) PDG(2212)Th(0.202987)E( 2.63672) PDG(211)Th(0.589328)E( 0.702326) PDG(-211)Th(0.317323)E( 1.27651)
59 Printing Perm 30 of topology
60 PDG(11)Th(0.356374)E( 2.24458) PDG(2212)Th(0.589328)E( 1.16367) PDG(211)Th(0.202987)E( 2.46808) PDG(-211)Th(0.317323)E( 1.27651)
61 Printing Perm 31 of topology
62 PDG(11)Th(0.317323)E( 1.26885) PDG(2212)Th(0.202987)E( 2.63672) PDG(211)Th(0.589328)E( 0.702326) PDG(-211)Th(0.356374)E( 2.24891)
63 Printing Perm 32 of topology
64 PDG(11)Th(0.317323)E( 1.26885) PDG(2212)Th(0.589328)E( 1.16367) PDG(211)Th(0.202987)E( 2.46808) PDG(-211)Th(0.356374)E( 2.24891)
65 Printing Perm 33 of topology
66 PDG(11)Th(0.356374)E( 2.24458) PDG(2212)Th(0.202987)E( 2.63672) PDG(211)Th(0.996051)E( 0.454749) PDG(-211)Th(0.317323)E( 1.27651)
67 Printing Perm 34 of topology
68 PDG(11)Th(0.356374)E( 2.24458) PDG(2212)Th(0.996051)E( 1.03328) PDG(211)Th(0.202987)E( 2.46808) PDG(-211)Th(0.317323)E( 1.27651)
69 Printing Perm 35 of topology
70 PDG(11)Th(0.317323)E( 1.26885) PDG(2212)Th(0.202987)E( 2.63672) PDG(211)Th(0.996051)E( 0.454749) PDG(-211)Th(0.356374)E( 2.24891)
71 Printing Perm 36 of topology
72 PDG(11)Th(0.317323)E( 1.26885) PDG(2212)Th(0.996051)E( 1.03328) PDG(211)Th(0.202987)E( 2.46808) PDG(-211)Th(0.356374)E( 2.24891)
73 Printing Perm 37 of topology
74 PDG(11)Th(0.356374)E( 2.24458) PDG(2212)Th(0.73788)E( 1.17115) PDG(211)Th(0.589328)E( 0.702326) PDG(-211)Th(0.317323)E( 1.27651)
75 Printing Perm 38 of topology
76 PDG(11)Th(0.356374)E( 2.24458) PDG(2212)Th(0.589328)E( 1.16367) PDG(211)Th(0.73788)E( 0.714648) PDG(-211)Th(0.317323)E( 1.27651)
77 Printing Perm 39 of topology
78 PDG(11)Th(0.317323)E( 1.26885) PDG(2212)Th(0.73788)E( 1.17115) PDG(211)Th(0.589328)E( 0.702326) PDG(-211)Th(0.356374)E( 2.24891)
79 Printing Perm 40 of topology
80 PDG(11)Th(0.317323)E( 1.26885) PDG(2212)Th(0.589328)E( 1.16367) PDG(211)Th(0.73788)E( 0.714648) PDG(-211)Th(0.356374)E( 2.24891)
81 Printing Perm 41 of topology
82 PDG(11)Th(0.356374)E( 2.24458) PDG(2212)Th(0.73788)E( 1.17115) PDG(211)Th(0.996051)E( 0.454749) PDG(-211)Th(0.317323)E( 1.27651)
83 Printing Perm 42 of topology
84 PDG(11)Th(0.356374)E( 2.24458) PDG(2212)Th(0.996051)E( 1.03328) PDG(211)Th(0.73788)E( 0.714648) PDG(-211)Th(0.317323)E( 1.27651)
85 Printing Perm 43 of topology
86 PDG(11)Th(0.317323)E( 1.26885) PDG(2212)Th(0.73788)E( 1.17115) PDG(211)Th(0.996051)E( 0.454749) PDG(-211)Th(0.356374)E( 2.24891)
87 Printing Perm 44 of topology
88 PDG(11)Th(0.317323)E( 1.26885) PDG(2212)Th(0.996051)E( 1.03328) PDG(211)Th(0.73788)E( 0.714648) PDG(-211)Th(0.356374)E( 2.24891)
89 Printing Perm 45 of topology
90 PDG(11)Th(0.356374)E( 2.24458) PDG(2212)Th(0.589328)E( 1.16367) PDG(211)Th(0.996051)E( 0.454749) PDG(-211)Th(0.317323)E( 1.27651)
91 Printing Perm 46 of topology
92 PDG(11)Th(0.356374)E( 2.24458) PDG(2212)Th(0.996051)E( 1.03328) PDG(211)Th(0.589328)E( 0.702326) PDG(-211)Th(0.317323)E( 1.27651)
93 Printing Perm 47 of topology
94 PDG(11)Th(0.317323)E( 1.26885) PDG(2212)Th(0.589328)E( 1.16367) PDG(211)Th(0.996051)E( 0.454749) PDG(-211)Th(0.356374)E( 2.24891)
95 Printing Perm 48 of topology
96 PDG(11)Th(0.317323)E( 1.26885) PDG(2212)Th(0.996051)E( 1.03328) PDG(211)Th(0.589328)E( 0.702326) PDG(-211)Th(0.356374)E( 2.24891)
97 Printing Perm 49 of topology
98 PDG(11)Th(0.0451417)E( 3.0794) PDG(2212)Th(0.202987)E( 2.63672) PDG(211)Th(0.73788)E( 0.714648) PDG(-211)Th(0.317323)E( 1.27651)
99 Printing Perm 50 of topology
100 PDG(11)Th(0.0451417)E( 3.0794) PDG(2212)Th(0.73788)E( 1.17115) PDG(211)Th(0.202987)E( 2.46808) PDG(-211)Th(0.317323)E( 1.27651)
101 Printing Perm 51 of topology
102 PDG(11)Th(0.317323)E( 1.26885) PDG(2212)Th(0.202987)E( 2.63672) PDG(211)Th(0.73788)E( 0.714648) PDG(-211)Th(0.0451417)E( 2.9292)
103 Printing Perm 52 of topology
104 PDG(11)Th(0.317323)E( 1.26885) PDG(2212)Th(0.73788)E( 1.17115) PDG(211)Th(0.202987)E( 2.46808) PDG(-211)Th(0.0451417)E( 2.9292)
105 Printing Perm 53 of topology
106 PDG(11)Th(0.0451417)E( 3.0794) PDG(2212)Th(0.202987)E( 2.63672) PDG(211)Th(0.589328)E( 0.702326) PDG(-211)Th(0.317323)E( 1.27651)
107 Printing Perm 54 of topology
108 PDG(11)Th(0.0451417)E( 3.0794) PDG(2212)Th(0.589328)E( 1.16367) PDG(211)Th(0.202987)E( 2.46808) PDG(-211)Th(0.317323)E( 1.27651)
109 Printing Perm 55 of topology
110 PDG(11)Th(0.317323)E( 1.26885) PDG(2212)Th(0.202987)E( 2.63672) PDG(211)Th(0.589328)E( 0.702326) PDG(-211)Th(0.0451417)E( 2.9292)
111 Printing Perm 56 of topology
112 PDG(11)Th(0.317323)E( 1.26885) PDG(2212)Th(0.589328)E( 1.16367) PDG(211)Th(0.202987)E( 2.46808) PDG(-211)Th(0.0451417)E( 2.9292)
113 Printing Perm 57 of topology
114 PDG(11)Th(0.0451417)E( 3.0794) PDG(2212)Th(0.202987)E( 2.63672) PDG(211)Th(0.996051)E( 0.454749) PDG(-211)Th(0.317323)E( 1.27651)
115 Printing Perm 58 of topology
116 PDG(11)Th(0.0451417)E( 3.0794) PDG(2212)Th(0.996051)E( 1.03328) PDG(211)Th(0.202987)E( 2.46808) PDG(-211)Th(0.317323)E( 1.27651)
117 Printing Perm 59 of topology
118 PDG(11)Th(0.317323)E( 1.26885) PDG(2212)Th(0.202987)E( 2.63672) PDG(211)Th(0.996051)E( 0.454749) PDG(-211)Th(0.0451417)E( 2.9292)
119 Printing Perm 60 of topology
120 PDG(11)Th(0.317323)E( 1.26885) PDG(2212)Th(0.996051)E( 1.03328) PDG(211)Th(0.202987)E( 2.46808) PDG(-211)Th(0.0451417)E( 2.9292)
121 Printing Perm 61 of topology
122 PDG(11)Th(0.0451417)E( 3.0794) PDG(2212)Th(0.73788)E( 1.17115) PDG(211)Th(0.589328)E( 0.702326) PDG(-211)Th(0.317323)E( 1.27651)
123 Printing Perm 62 of topology
124 PDG(11)Th(0.0451417)E( 3.0794) PDG(2212)Th(0.589328)E( 1.16367) PDG(211)Th(0.73788)E( 0.714648) PDG(-211)Th(0.317323)E( 1.27651)
125 Printing Perm 63 of topology
126 PDG(11)Th(0.317323)E( 1.26885) PDG(2212)Th(0.73788)E( 1.17115) PDG(211)Th(0.589328)E( 0.702326) PDG(-211)Th(0.0451417)E( 2.9292)
127 Printing Perm 64 of topology
128 PDG(11)Th(0.317323)E( 1.26885) PDG(2212)Th(0.589328)E( 1.16367) PDG(211)Th(0.73788)E( 0.714648) PDG(-211)Th(0.0451417)E( 2.9292)
129 Printing Perm 65 of topology
130 PDG(11)Th(0.0451417)E( 3.0794) PDG(2212)Th(0.73788)E( 1.17115) PDG(211)Th(0.996051)E( 0.454749) PDG(-211)Th(0.317323)E( 1.27651)
131 Printing Perm 66 of topology
132 PDG(11)Th(0.0451417)E( 3.0794) PDG(2212)Th(0.996051)E( 1.03328) PDG(211)Th(0.73788)E( 0.714648) PDG(-211)Th(0.317323)E( 1.27651)
133 Printing Perm 67 of topology
134 PDG(11)Th(0.317323)E( 1.26885) PDG(2212)Th(0.73788)E( 1.17115) PDG(211)Th(0.996051)E( 0.454749) PDG(-211)Th(0.0451417)E( 2.9292)
135 Printing Perm 68 of topology
136 PDG(11)Th(0.317323)E( 1.26885) PDG(2212)Th(0.996051)E( 1.03328) PDG(211)Th(0.73788)E( 0.714648) PDG(-211)Th(0.0451417)E( 2.9292)
137 Printing Perm 69 of topology
138 PDG(11)Th(0.0451417)E( 3.0794) PDG(2212)Th(0.589328)E( 1.16367) PDG(211)Th(0.996051)E( 0.454749) PDG(-211)Th(0.317323)E( 1.27651)
139 Printing Perm 70 of topology
140 PDG(11)Th(0.0451417)E( 3.0794) PDG(2212)Th(0.996051)E( 1.03328) PDG(211)Th(0.589328)E( 0.702326) PDG(-211)Th(0.317323)E( 1.27651)
141 Printing Perm 71 of topology
142 PDG(11)Th(0.317323)E( 1.26885) PDG(2212)Th(0.589328)E( 1.16367) PDG(211)Th(0.996051)E( 0.454749) PDG(-211)Th(0.0451417)E( 2.9292)
143 Printing Perm 72 of topology
144 PDG(11)Th(0.317323)E( 1.26885) PDG(2212)Th(0.996051)E( 1.03328) PDG(211)Th(0.589328)E( 0.702326) PDG(-211)Th(0.0451417)E( 2.9292)
Setting combitorial behaviour for configured FinalState objects
The combitorial behaviour is set when you configure your final state object in the Create.C script before writing an instance to a ROOT file. In this way it is straightforward to create final state objects with different behaviour and save them to different ROOT files which can then be loaded when processing the data resuting in different ouput trees for each combitirial behaviour.
Example code for configuring your final state combitorials :
{
auto useEBPidFor = "ALL"; //or "NONE"
auto useInclusiveFilterFor = "ALL";
auto FS = dglazier::Pi2::Make(useEBPidFor,useInclusiveFilterFor);
...
Where useEBPidFor may be “ALL” or “NONE” and tells the iterator whether to use hipo DST EvenBuilder Pid to determine combitorials (“ALL”) or just use the track charge (“NONE”). See Combitorials of the third kind
And useInclusiveFilterFor specifies which particles do not need an exact numerical match with your reuested topology. So “ALL” means you can have any number of any type of particles and it will produce events for all the possible combinations i.e. Combitorials of the first kind . If it is set to “NONE” then only events with exact particle matches will be processed and there will be no first kind combitorials.
Combitorials of the second kind depend on whether particles in your final state come from common short-lived parents or not and so you must tell your code if this is the case. In general this is setup at the skeleton code stage via the line
s.SetFinalStateParents("Lambda:Lambda0;Proton;Pim");
In this example the final state proton and pi- come from a common Lambda parent. If there was only an additional K+ in this final state then no combitorials wold be required for this. But if there was another pi- additional combinations would be required.
Note this creates the following lines of code in the FinalState class Define() function
//Set final state parents
AddParticle("Lambda",&_lambda,kTRUE,-1);
ConfigParent(&_lambda,&_proton);
ConfigParent(&_lambda,&_pim);
A more common example would be for example 2pi0 production
s.SetFinalStateParts("Electron:e-,Proton:proton,Gamma1:gamma,Gamma2:gamma,Gamma3:gamma,Gamma4:gamma");
s.SetFinalStateTopo("Electron:Proton:Gamma1:Gamma2:Gamma3:Gamma4");
s.SetFinalStateParents("Pi0_1:pi0;gamma1;gamma2,Pi0_2:pi0;gamma3;gamma4");
Now we have 4 gammas to make 2 pi0s which gives 4 permuations. If we did not give the gammas parents then chanser would only produce 1 combitorial event.