CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
TauDecay.h
Go to the documentation of this file.
1 // -*- C++ -*-
2 //
3 // Package: TauNtuple
4 // Class: TauDecay
5 //
11 //
12 // Original Author: Ian Nugent
13 // Created: Fri Nov 18 13:49:02 CET 2011
14 //
15 //
16 #ifndef TauDecay_h
17 #define TauDecay_h
18 
19 #include <string>
20 
21 class TauDecay {
22  public:
23  // TAUOLA list of decay modes avalible presently available in Tauola are (MODE):
24  //
25  // * DEC BRTAU NORMAL ROUTINE CHANNEL *
26  // * 1 0.17810 0.17810 DADMEL ELECTRON *
27  // * 2 0.17370 0.17370 DADMMU MUON *
28  // * 3 0.11080 0.11080 DADMPI PION *
29  // * 4 0.25320 0.25320 DADMRO RHO (->2PI) *
30  // * 5 0.18250 0.18250 DADMAA A1 (->3PI) *
31  // * 6 0.00710 0.00710 DADMKK KAON *
32  // * 7 0.01280 0.01280 DADMKS K* *
33  // * 8 0.04500 0.04500 DAD4PI 2PI- PI+ PI0 *
34  // * 9 0.01230 0.01230 DAD4PI PI- 3PI0 *
35  // * 10 0.00500 0.00500 DADNPI 2PI- PI+ 2PI0 *
36  // * 11 0.00080 0.00080 DADNPI 3PI- 2PI+ *
37  // * 12 0.00020 0.00020 DADNPI 3PI- 2PI+ PI0 *
38  // * 13 0.00030 0.00030 DADNPI 2PI- PI+ 3PI0 *
39  // * 14 0.00190 0.00190 DADMPK K+ K- PI+ *
40  // * 15 0.00120 0.00120 DADMPK K0B K0 PI+ *
41  // * 16 0.00300 0.00300 DADMPK K+ K0B PI0 *
42  // * 17 0.00100 0.00100 DADMPK K+ PI0 PI0 *
43  // * 18 0.00230 0.00230 DADMPK K+ PI- PI+ *
44  // * 19 0.00390 0.00390 DADMPK K0 PI0 PI+ *
45  // * 20 0.00170 0.00170 DADMPK ET PI- PI0 *
46  // * 21 0.00160 0.00160 DADMPK PI-PI0 GAM * (obsolete ... merged with 4 do to pythia and photos radiation)
47  // * 22 0.00160 0.00160 DADMPK K- K0B GAM * (ignore photon?)
49  // List of Pythia8 Modes
50  // 3 0 0 0.1076825 1521 16 -211
51  // 6 1 0 0.0069601 1521 16 -321
52  // 1 2 0 0.1772832 1531 16 11 -12
53  // 2 3 0 0.1731072 1531 16 13 -14
54  // 4 4 0 0.2537447 1532 16 111 -211
55  // 22 5 0 0.0015809 1532 16 311 -321
56  // Keta 6 0 0.0001511 1532 16 221 -321
57  // 7 7 0 0.0083521 1533 16 -211 -311
58  // 7 8 0 0.0042655 1533 16 111 -321
59  // 5 0 0.0924697 1541 16 111 111 -211
60  // 5 10 1 0.0925691 1543 16 -211 -211 211
61  // 19 11 0 0.0039772 1542 16 111 -211 -311
62  // 18 12 0 0.0034701 1542 16 -211 211 -321
63  // 14 13 0 0.0014318 1542 16 -211 -321 321
64  // 16 14 0 0.0015809 1542 16 111 311 -321
65  // 15 15 0 0.0011932 1542 16 130 -211 310
66  // 17 16 0 0.0006463 1542 16 111 111 -321
67  // 15 17 0 0.0002386 1542 16 130 130 -211
68  // 15 18 0 0.0002386 1542 16 -211 310 310
69  // 20 19 0 0.0013821 1543 16 111 -211 221
70  // 21->4 20 0 0.0017520 1544 16 22 111 -211 (obsolete ... merged with 4 do to pythia and photos radiation)
71  // 8 21 0 0.0459365 1551 16 111 -211 -211 211
72  // 9 22 0 0.0104401 1551 16 111 111 111 -211
73  // 10 23 0 0.0049069 1561 16 111 111 -211 -211 211
74  // 25 24 0 0.0009515 1561 16 111 111 111 111 -211
75  // 11 25 0 0.0008342 1561 16 -211 -211 -211 211 211
76  // 26 26 0 0.0001631 0 16 -211 -211 211 221
77  // 27 27 0 0.0001491 0 16 111 111 -211 221
78  // 28 28 0 0.0001392 0 16 111 111 -211 223
79  // 29 29 0 0.0001193 0 16 -211 -211 211 223
80  // 30 30 0 0.0004077 0 16 223 -321
81  // 31 31 0 0.0004773 0 16 111 111 111 -321
82  // 32 32 0 0.0003052 0 16 111 -211 211 -321
83  // 33 33 0 0.0002784 0 16 221 -323
84  // 34 34 0 0.0002366 0 16 111 111 -211 -311
85  // 35 35 0 0.0002237 0 16 -211 -211 211 -311
86  // 36 36 0 0.0002953 0 16 111 -211 -311 311
87  // 37 37 0 0.0000590 0 16 111 -211 -321 321
88 
128  };
129 
130 
136  TwoPi0=32,
139  Res_a1_0=256,
141  Res_rho_0=1024,
142  Res_eta=2048,
143  Res_omega=4096,
145  Res_Kstar_0=16384,
147  };
148 
149  TauDecay();
150  ~TauDecay();
151 
152  void Reset();
153  bool isTauFinalStateParticle(int pdgid);
154  bool isTauParticleCounter(int pdgid);
155  bool isTauResonanceCounter(int pdgid);
156  void ClassifyDecayMode(unsigned int &MODE_ID,unsigned int &TauBitMask);
157  unsigned int nProng(unsigned int &TauBitMask);
158  unsigned int nPi0(unsigned int &TauBitMask);
159  bool hasResonance(unsigned int &TauBitMask, int pdgid);
160  static std::string DecayMode(unsigned int &MODE_ID);
161 
162  private:
163  // Functions
164  void ClassifyDecayResonance(unsigned int &TauBitMask);
165 
166  //counting varibles
167  unsigned int n_pi,n_pi0,n_K,n_K0L,n_K0S,n_gamma,n_nu,n_e,n_mu; // particle counters
168  unsigned int n_a1,n_a10,n_rho,n_rho0,n_eta,n_omega,n_Kstar0,n_Kstar,unknown; // resonance counters
169 
170 };
171 #endif
unsigned int n_pi
Definition: TauDecay.h:167
void Reset()
Definition: TauDecay.cc:15
bool hasResonance(unsigned int &TauBitMask, int pdgid)
Definition: TauDecay.cc:231
unsigned int unknown
Definition: TauDecay.h:168
unsigned int n_nu
Definition: TauDecay.h:167
~TauDecay()
Definition: TauDecay.cc:11
unsigned int n_omega
Definition: TauDecay.h:168
unsigned int n_K
Definition: TauDecay.h:167
bool isTauFinalStateParticle(int pdgid)
Definition: TauDecay.cc:36
unsigned int n_mu
Definition: TauDecay.h:167
unsigned int n_eta
Definition: TauDecay.h:168
TauDecayStructure
Definition: TauDecay.h:131
unsigned int n_rho0
Definition: TauDecay.h:168
unsigned int n_K0S
Definition: TauDecay.h:167
unsigned int n_a10
Definition: TauDecay.h:168
TauDecay()
Definition: TauDecay.cc:7
bool isTauResonanceCounter(int pdgid)
Definition: TauDecay.cc:75
unsigned int n_a1
Definition: TauDecay.h:168
void ClassifyDecayMode(unsigned int &MODE_ID, unsigned int &TauBitMask)
Definition: TauDecay.cc:89
static std::string DecayMode(unsigned int &MODE_ID)
Definition: TauDecay.cc:258
unsigned int n_e
Definition: TauDecay.h:167
unsigned int n_Kstar0
Definition: TauDecay.h:168
void ClassifyDecayResonance(unsigned int &TauBitMask)
Definition: TauDecay.cc:246
unsigned int n_rho
Definition: TauDecay.h:168
unsigned int n_Kstar
Definition: TauDecay.h:168
unsigned int n_K0L
Definition: TauDecay.h:167
unsigned int n_pi0
Definition: TauDecay.h:167
unsigned int nPi0(unsigned int &TauBitMask)
Definition: TauDecay.cc:224
unsigned int n_gamma
Definition: TauDecay.h:167
bool isTauParticleCounter(int pdgid)
Definition: TauDecay.cc:55
unsigned int nProng(unsigned int &TauBitMask)
Definition: TauDecay.cc:218