![]() |
|
|||
File indexing completed on 2023-03-17 11:27:17
0001 // -*- C++ -*- 0002 // 0003 // Package: TauNtuple 0004 // Class: TauDecay 0005 // 0006 /**\class TauDecay TauDecay.cc TauDataFormat/TauNtuple/src/TauDecay.cc 0007 0008 Description: This class reconstructs the MODE modes of the Tauola decays and provides a bit mask of the decay structure for the tau 0009 0010 */ 0011 // 0012 // Original Author: Ian Nugent 0013 // Created: Fri Nov 18 13:49:02 CET 2011 0014 // 0015 // 0016 #ifndef TauDecay_h 0017 #define TauDecay_h 0018 0019 #include <string> 0020 0021 class TauDecay { 0022 public: 0023 // TAUOLA list of decay modes avalible presently available in Tauola are (MODE): 0024 // 0025 // * DEC BRTAU NORMAL ROUTINE CHANNEL * 0026 // * 1 0.17810 0.17810 DADMEL ELECTRON * 0027 // * 2 0.17370 0.17370 DADMMU MUON * 0028 // * 3 0.11080 0.11080 DADMPI PION * 0029 // * 4 0.25320 0.25320 DADMRO RHO (->2PI) * 0030 // * 5 0.18250 0.18250 DADMAA A1 (->3PI) * 0031 // * 6 0.00710 0.00710 DADMKK KAON * 0032 // * 7 0.01280 0.01280 DADMKS K* * 0033 // * 8 0.04500 0.04500 DAD4PI 2PI- PI+ PI0 * 0034 // * 9 0.01230 0.01230 DAD4PI PI- 3PI0 * 0035 // * 10 0.00500 0.00500 DADNPI 2PI- PI+ 2PI0 * 0036 // * 11 0.00080 0.00080 DADNPI 3PI- 2PI+ * 0037 // * 12 0.00020 0.00020 DADNPI 3PI- 2PI+ PI0 * 0038 // * 13 0.00030 0.00030 DADNPI 2PI- PI+ 3PI0 * 0039 // * 14 0.00190 0.00190 DADMPK K+ K- PI+ * 0040 // * 15 0.00120 0.00120 DADMPK K0B K0 PI+ * 0041 // * 16 0.00300 0.00300 DADMPK K+ K0B PI0 * 0042 // * 17 0.00100 0.00100 DADMPK K+ PI0 PI0 * 0043 // * 18 0.00230 0.00230 DADMPK K+ PI- PI+ * 0044 // * 19 0.00390 0.00390 DADMPK K0 PI0 PI+ * 0045 // * 20 0.00170 0.00170 DADMPK ET PI- PI0 * 0046 // * 21 0.00160 0.00160 DADMPK PI-PI0 GAM * (obsolete ... merged with 4 do to pythia and photos radiation) 0047 // * 22 0.00160 0.00160 DADMPK K- K0B GAM * (ignore photon?) 0048 ///////////////////////////////////////////////////////////////////////////////////////////// 0049 // List of Pythia8 Modes 0050 // 3 0 0 0.1076825 1521 16 -211 0051 // 6 1 0 0.0069601 1521 16 -321 0052 // 1 2 0 0.1772832 1531 16 11 -12 0053 // 2 3 0 0.1731072 1531 16 13 -14 0054 // 4 4 0 0.2537447 1532 16 111 -211 0055 // 22 5 0 0.0015809 1532 16 311 -321 0056 // Keta 6 0 0.0001511 1532 16 221 -321 0057 // 7 7 0 0.0083521 1533 16 -211 -311 0058 // 7 8 0 0.0042655 1533 16 111 -321 0059 // 5 0 0.0924697 1541 16 111 111 -211 0060 // 5 10 1 0.0925691 1543 16 -211 -211 211 0061 // 19 11 0 0.0039772 1542 16 111 -211 -311 0062 // 18 12 0 0.0034701 1542 16 -211 211 -321 0063 // 14 13 0 0.0014318 1542 16 -211 -321 321 0064 // 16 14 0 0.0015809 1542 16 111 311 -321 0065 // 15 15 0 0.0011932 1542 16 130 -211 310 0066 // 17 16 0 0.0006463 1542 16 111 111 -321 0067 // 15 17 0 0.0002386 1542 16 130 130 -211 0068 // 15 18 0 0.0002386 1542 16 -211 310 310 0069 // 20 19 0 0.0013821 1543 16 111 -211 221 0070 // 21->4 20 0 0.0017520 1544 16 22 111 -211 (obsolete ... merged with 4 do to pythia and photos radiation) 0071 // 8 21 0 0.0459365 1551 16 111 -211 -211 211 0072 // 9 22 0 0.0104401 1551 16 111 111 111 -211 0073 // 10 23 0 0.0049069 1561 16 111 111 -211 -211 211 0074 // 25 24 0 0.0009515 1561 16 111 111 111 111 -211 0075 // 11 25 0 0.0008342 1561 16 -211 -211 -211 211 211 0076 // 26 26 0 0.0001631 0 16 -211 -211 211 221 0077 // 27 27 0 0.0001491 0 16 111 111 -211 221 0078 // 28 28 0 0.0001392 0 16 111 111 -211 223 0079 // 29 29 0 0.0001193 0 16 -211 -211 211 223 0080 // 30 30 0 0.0004077 0 16 223 -321 0081 // 31 31 0 0.0004773 0 16 111 111 111 -321 0082 // 32 32 0 0.0003052 0 16 111 -211 211 -321 0083 // 33 33 0 0.0002784 0 16 221 -323 0084 // 34 34 0 0.0002366 0 16 111 111 -211 -311 0085 // 35 35 0 0.0002237 0 16 -211 -211 211 -311 0086 // 36 36 0 0.0002953 0 16 111 -211 -311 311 0087 // 37 37 0 0.0000590 0 16 111 -211 -321 321 0088 0089 enum MODE { 0090 MODE_UNKNOWN = 0, 0091 MODE_ELECTRON, 0092 MODE_MUON, 0093 MODE_PION, 0094 MODE_PIPI0, 0095 MODE_3PI, 0096 MODE_PI2PI0, 0097 MODE_KAON, 0098 MODE_K0PI, 0099 MODE_KPI0, 0100 MODE_3PIPI0, 0101 MODE_PI3PI0, 0102 MODE_3PI2PI0, 0103 MODE_5PI, 0104 MODE_5PIPI0, 0105 MODE_3PI3PI0, 0106 MODE_KPIK, 0107 MODE_K0BK0PI, 0108 MODE_KK0BPI0, 0109 MODE_K2PI0, 0110 MODE_KPIPI, 0111 MODE_PIK0PI0, 0112 MODE_ETAPIPI0, 0113 MODE_PIPI0GAM, 0114 MODE_KK0B, 0115 MODE_PI4PI0, 0116 MODE_3PIETA, 0117 MODE_PI2PI0ETA, 0118 MODE_PI2PI0OMEGA, 0119 MODE_3PIOMEGA, 0120 MODE_KOMEGA, 0121 MODE_K3PI0, 0122 MODE_K2PIPI0, 0123 MODE_KETA, 0124 MODE_K0PI2PI0, 0125 MODE_K03PI, 0126 MODE_2K0PIPI0, 0127 MODE_KPIKPI0, 0128 NMODEID 0129 }; 0130 0131 enum TauDecayStructure { 0132 other = 0, 0133 OneProng = 1, 0134 ThreeProng = 2, 0135 FiveProng = 4, 0136 OnePi0 = 8, 0137 TwoPi0 = 32, 0138 ThreePi0 = 64, 0139 Res_a1_pm = 128, 0140 Res_a1_0 = 256, 0141 Res_rho_pm = 512, 0142 Res_rho_0 = 1024, 0143 Res_eta = 2048, 0144 Res_omega = 4096, 0145 Res_Kstar_pm = 8192, 0146 Res_Kstar_0 = 16384, 0147 KS0_to_pipi = 32768 0148 }; 0149 0150 TauDecay(); 0151 ~TauDecay(); 0152 0153 void Reset(); 0154 bool isTauFinalStateParticle(int pdgid); 0155 bool isTauParticleCounter(int pdgid); 0156 bool isTauResonanceCounter(int pdgid); 0157 void ClassifyDecayMode(unsigned int &MODE_ID, unsigned int &TauBitMask); 0158 unsigned int nProng(unsigned int &TauBitMask); 0159 unsigned int nPi0(unsigned int &TauBitMask); 0160 bool hasResonance(unsigned int &TauBitMask, int pdgid); 0161 static std::string DecayMode(unsigned int &MODE_ID); 0162 0163 private: 0164 // Functions 0165 void ClassifyDecayResonance(unsigned int &TauBitMask); 0166 0167 //counting varibles 0168 unsigned int n_pi, n_pi0, n_K, n_K0L, n_K0S, n_gamma, n_nu, n_e, n_mu; // particle counters 0169 unsigned int n_a1, n_a10, n_rho, n_rho0, n_eta, n_omega, n_Kstar0, n_Kstar, unknown; // resonance counters 0170 }; 0171 #endif
[ Source navigation ] | [ Diff markup ] | [ Identifier search ] | [ general search ] |
This page was automatically generated by the 2.2.1 LXR engine. The LXR team |
![]() ![]() |