Possible to extract Branching Ratios from the PDG in ROOT?

Hi everyone,

I need use branching ratios for my analysis and I wanted to know if there is a way to extract them from the PDG instead of doing it manually. And if it is possible, how ? From DECFILES or TObject I created with all the information of the decay ?

Thanks !

Hi,

I am doing some guesswork here, but I hope this snippet gets you started. It prints all the decay modes of the W boson and accesses programmatically their branching ratios. The online documentation for the various classes (e.g. TParticlePDG or TDatabasePDG) is very informative. I hope this helps!

   auto db     = TDatabasePDG();
   auto wboson = db.GetParticle("W+");
   wboson->Print();
   for (auto decay_idx : ROOT::TSeqI(wboson->NDecayChannels())) {
      auto decayChannel = wboson->DecayChannel(decay_idx);
      std::cout << "Branching ration for decay channel " << decay_idx << " is " << decayChannel->BranchingRatio()
                << std::endl;
   }

output

W+                        24	Mass:  80.3770 Width (GeV): 2.0800e+00	Charge:   3.0
 Channel Code BranchingRatio Nd   ...................Daughters.................... 
      0    32  3.21502e-01     2             d_bar(      -1)               u(       2)
      1    32  1.65020e-02     2             d_bar(      -1)               c(       4)
      2    32  0.00000e+00     2             d_bar(      -1)               t(       6)
      3    32  0.00000e+00     2             d_bar(      -1)              t'(       8)
      4    32  1.65090e-02     2             s_bar(      -3)               u(       2)
      5    32  3.20778e-01     2             s_bar(      -3)               c(       4)
      6    32  0.00000e+00     2             s_bar(      -3)               t(       6)
      7    32  0.00000e+00     2             s_bar(      -3)              t'(       8)
      8    32  1.00000e-05     2             b_bar(      -5)               u(       2)
      9    32  5.91000e-04     2             b_bar(      -5)               c(       4)
     10    32  0.00000e+00     2             b_bar(      -5)               t(       6)
     11    32  0.00000e+00     2             b_bar(      -5)              t'(       8)
     12    32  0.00000e+00     2            b'_bar(      -7)               u(       2)
     13    32  0.00000e+00     2            b'_bar(      -7)               c(       4)
     14    32  0.00000e+00     2            b'_bar(      -7)               t(       6)
     15    32  0.00000e+00     2            b'_bar(      -7)              t'(       8)
     16     0  1.08062e-01     2                e+(     -11)            nu_e(      12)
     17     0  1.08062e-01     2               mu+(     -13)           nu_mu(      14)
     18     0  1.07983e-01     2              tau+(     -15)          nu_tau(      16)
     19     0  0.00000e+00     2             tau'+(     -17)         nu'_tau(      18)
Branching ration for decay channel 0 is 0.321502
Branching ration for decay channel 1 is 0.016502
Branching ration for decay channel 2 is 0
Branching ration for decay channel 3 is 0
Branching ration for decay channel 4 is 0.016509
Branching ration for decay channel 5 is 0.320778
Branching ration for decay channel 6 is 0
Branching ration for decay channel 7 is 0
Branching ration for decay channel 8 is 1e-05
Branching ration for decay channel 9 is 0.000591
Branching ration for decay channel 10 is 0
Branching ration for decay channel 11 is 0
Branching ration for decay channel 12 is 0
Branching ration for decay channel 13 is 0
Branching ration for decay channel 14 is 0
Branching ration for decay channel 15 is 0
Branching ration for decay channel 16 is 0.108062
Branching ration for decay channel 17 is 0.108062
Branching ration for decay channel 18 is 0.107983
Branching ration for decay channel 19 is 0

Thanks for the answer ! However I have difficulties to understand how I can create a DecayChannel from an event type or by constraining the decay products.

I’m sorry, but I am struggling with the C++ structure of the ROOT documentation.

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.