Id.hh
Go to the documentation of this file.
1 
4 #pragma once
5 
6 #include <string>
7 #include <vector>
8 
10 
16 namespace boca
17 {
18 
23 enum class Id
24 {
25  none = 0,
26  down = 1,
27  up = 2,
28  strange = 3,
29  charm = 4,
30  bottom = 5,
31  top = 6,
32  bottom_partner = 7,
33  top_partner = 8,
34  electron = 11,
35  electron_neutrino = 12,
36  muon = 13,
37  muon_neutrino = 14,
38  tau = 15,
39  tau_neutrino = 16,
40  tau_partner = 17,
42  gluon = 21,
43  photon = 22,
44  Z = 23,
45  W = 24,
46  higgs = 25,
47  Z_partner = 32,
48  Z_partner_2 = 33,
49  W_partner = 34,
50  heavy_higgs = 35,
51  CP_odd_higgs = 36,
52  charged_higgs = 37,
53  any = 86,
54  isr = 87,
55  marker = 88,
56  mixed_jet = 90,
57  cluster = 91,
58  string = 92,
59  pi0 = 111,
60  rho0 = 113,
61  K0l = 130,
62  pion = 211,
63  rho = 213,
64  eta = 221,
65  omega = 223,
66  K0s = 310,
67  K0 = 311,
68  K0S = 313,
69  K = 321,
70  KS = 323,
71  etaP = 331,
72  Dpm = 411,
73  DS = 413,
74  DS2 = 415,
75  D0 = 421,
76  DS0 = 423,
77  etac = 441,
78  B0 = 511,
79  B0S = 513,
80  Bpm = 521,
81  BS = 523,
82  BS0 = 531,
83  BsS0 = 533,
84  ypsilon = 553,
85  down_down_1 = 1103,
86  up_down_0 = 2101,
87  up_down_1 = 2103,
88  Delta = 1114,
89  neutron = 2112,
90  up_up_1 = 2203,
91  proton = 2212,
92  Delta_2 = 2224,
93  CP_violating_higgs = 5000000,
94  higgs_coupling = 9010221
95 };
96 
101 std::string Name(int id);
102 
107 std::string Name(Id id);
108 
113 std::ostream& operator<<(std::ostream & stream, Id id);
114 
119 Mass MassOf(Id id);
120 
125 enum class MultiId
126 {
127  quark,
128  five_quark,
130  neutrino,
131  neutral_boson,
132  bosons
133 };
134 
139 std::string Name(MultiId multi_id);
140 
145 std::ostream& operator<<(std::ostream & stream, MultiId id);
146 
151 Mass MassOf(MultiId multi_id);
152 
157 std::vector<Id> Resolve(MultiId multi_id);
158 
163 Id Lightest(MultiId multi_id);
164 
169 Id Heavyest(MultiId multi_id);
170 
171 }
Higgs boson.
Bottom Quark.
Strange Quark.
Id
PDG particle naming conventions.
Definition: Id.hh:23
std::ostream & operator<<(std::ostream &stream, Relative relative)
Stream the name of a family relative.
Definition: Family.cpp:27
Down Quark.
MultiId
Groups of PDG particles.
Definition: Id.hh:125
Multi particle containing neutral bosons.
Top Partner Quark.
Boosted Collider Analysis.
Definition: Analysis.hh:15
Bottom Partner Quark.
Mass MassOf(Id id)
Mass of particle with given Id.
Definition: Id.cpp:103
Charm Quark.
Up Quark.
Top Quark.
Id Lightest(MultiId multi_id)
Lightest particle of a given MultiID.
Definition: Id.cpp:172
Id Heavyest(MultiId multi_id)
Heaviest particle of a given MultiId.
Definition: Id.cpp:179
std::string Name(Output output)
Definition: Base.cpp:23
std::vector< Id > Resolve(MultiId multi_id)
Vector if PDG particle Ids for a given MultiId.
Definition: Id.cpp:159
Energy Mass
Mass measured in electronvolt.
Definition: ElectronVolt.hh:62
Multi particle containing bosons.