a Code for the Combination of Indirect and Direct Constraints on High Energy Physics Models Logo
li_3lj.cpp
Go to the documentation of this file.
1 /*
2  * Copyright (C) 2015 HEPfit Collaboration
3  *
4  *
5  * For the licensing terms see doc/COPYING.
6  */
7 
8 #include "li_3lj.h"
9 #include "LeptonFlavour.h"
10 
11 //li_3lj::li_3lj(const StandardModel& SM_i): ThObservable(SM_i)
12 //{
13 //};
14 //
15 //double li_3lj::computeThValue()
16 //{
17 // return 0.0;
18 //}
19 
21 : ThObservable(SM_i)
22 {}
23 
25 {
26  double alph = SM.getAle();
28  double mMU = SM.getLeptons(StandardModel::MU).getMass();
29  double GammaMU = 2.99598e-19;
31 // C_7 = (*(allcoeff_m3e[LO]))(0);
32 // C_7p = (*(allcoeff_m3e[LO]))(1);
33 // C_9 = (*(allcoeff_m3e[LO]))(2);
34 // C_9p = (*(allcoeff_m3e[LO]))(3);
35 // C_10 = (*(allcoeff_m3e[LO]))(4);
36 // C_10p = (*(allcoeff_m3e[LO]))(5);
37 // C_S = (*(allcoeff_m3e[LO]))(6);
38 // C_Sp = (*(allcoeff_m3e[LO]))(7);
39 // C_P = (*(allcoeff_m3e[LO]))(8);
40 // C_Pp = (*(allcoeff_m3e[LO]))(9);
41 // C_T = (*(allcoeff_m3e[LO]))(10);
42 // C_T5 = (*(allcoeff_m3e[LO]))(11);
43 
44 //std::cout<<"0"<< (*(allcoeff_m3e[LO]))(0)<<std::endl;
45 //std::cout<<"1"<< (*(allcoeff_m3e[LO]))(1)<<std::endl;
46 //std::cout<<"2"<< (*(allcoeff_m3e[LO]))(2)<<std::endl;
47 //std::cout<<"3"<< (*(allcoeff_m3e[LO]))(3)<<std::endl;
48 //std::cout<<"4"<< (*(allcoeff_m3e[LO]))(4)<<std::endl;
49 //std::cout<<"5"<< (*(allcoeff_m3e[LO]))(5)<<std::endl;
50 //std::cout<<"6"<< (*(allcoeff_m3e[LO]))(6)<<std::endl;
51 //std::cout<<"7"<< (*(allcoeff_m3e[LO]))(7)<<std::endl;
52 //std::cout<<"8"<< (*(allcoeff_m3e[LO]))(8)<<std::endl;
53 //std::cout<<"9"<< (*(allcoeff_m3e[LO]))(9)<<std::endl;
54 //std::cout<<"10"<< (*(allcoeff_m3e[LO]))(10)<<std::endl;
55 //std::cout<<"11"<< (*(allcoeff_m3e[LO]))(11)<<std::endl;
56 //std::cout<<"12"<< (*(allcoeff_m3e[LO]))(12)<<std::endl;
57 //std::cout<<"13"<< (*(allcoeff_m3e[LO]))(13)<<std::endl;
58 //std::cout<<"14"<< (*(allcoeff_m3e[LO]))(14)<<std::endl;
59 //std::cout<<"15"<< (*(allcoeff_m3e[LO]))(15)<<std::endl;
60 //std::cout<<"16"<< (*(allcoeff_m3e[LO]))(16)<<std::endl;
61 //std::cout<<"17"<< (*(allcoeff_m3e[LO]))(17)<<std::endl;
62 //std::cout<<"18"<< (*(allcoeff_m3e[LO]))(18)<<std::endl;
63 //std::cout<<"19"<< (*(allcoeff_m3e[LO]))(19)<<std::endl;
64 
65 // double Brmu3e = ((*(allcoeff_m3e[LO]))(0)* (*(allcoeff_m3e[LO]))(0).conjugate()).abs();
66  double Brmu3e = alph*alph/(32.0*M_PI) * pow(mMU,5.0)
67  * ((*(allcoeff_m3e[LO]))(1).abs2()+(*(allcoeff_m3e[LO]))(0).abs2()
68  -4.0*((*(allcoeff_m3e[LO]))(1)*(*(allcoeff_m3e[LO]))(2).conjugate()+(*(allcoeff_m3e[LO]))(3)*(*(allcoeff_m3e[LO]))(0).conjugate()).real()
69  +((*(allcoeff_m3e[LO]))(3).abs2()+(*(allcoeff_m3e[LO]))(2).abs2())*(16.0*log(mMU/mE)-22.0)/3.0
70  +((*(allcoeff_m3e[LO]))(5).abs2()+(*(allcoeff_m3e[LO]))(4).abs2())/6.0
71  +(((*(allcoeff_m3e[LO]))(7)+(*(allcoeff_m3e[LO]))(13)).abs2()+((*(allcoeff_m3e[LO]))(6)+(*(allcoeff_m3e[LO]))(12)).abs2())/3.0
72  +(((*(allcoeff_m3e[LO]))(9)+(*(allcoeff_m3e[LO]))(15)).abs2()+((*(allcoeff_m3e[LO]))(8)+(*(allcoeff_m3e[LO]))(14)).abs2())/24.0
73  +((*(allcoeff_m3e[LO]))(11).abs2()+(*(allcoeff_m3e[LO]))(10).abs2())*6.0
74  -(((*(allcoeff_m3e[LO]))(9)+(*(allcoeff_m3e[LO]))(15))*(*(allcoeff_m3e[LO]))(11).conjugate()+((*(allcoeff_m3e[LO]))(8)+(*(allcoeff_m3e[LO]))(14))*(*(allcoeff_m3e[LO]))(10).conjugate()).real()
75  +((*(allcoeff_m3e[LO]))(1)*(*(allcoeff_m3e[LO]))(5).conjugate()+(*(allcoeff_m3e[LO]))(0)*(*(allcoeff_m3e[LO]))(4).conjugate()
76  +(*(allcoeff_m3e[LO]))(1)*((*(allcoeff_m3e[LO]))(7)+(*(allcoeff_m3e[LO]))(13)).conjugate()+(*(allcoeff_m3e[LO]))(0)*((*(allcoeff_m3e[LO]))(6)+(*(allcoeff_m3e[LO]))(12)).conjugate()).real()*2.0/3.0
77  -4.0*((*(allcoeff_m3e[LO]))(2)*(*(allcoeff_m3e[LO]))(5).conjugate()+(*(allcoeff_m3e[LO]))(3)*(*(allcoeff_m3e[LO]))(4).conjugate()
78  +(*(allcoeff_m3e[LO]))(3)*((*(allcoeff_m3e[LO]))(6)+(*(allcoeff_m3e[LO]))(12)).conjugate()+(*(allcoeff_m3e[LO]))(2)*((*(allcoeff_m3e[LO]))(7)+(*(allcoeff_m3e[LO]))(13)).conjugate()).real()/3.0
79  +2.0*((*(allcoeff_m3e[LO]))(19).abs2()+(*(allcoeff_m3e[LO]))(16).abs2())/3.0
80  +((*(allcoeff_m3e[LO]))(18).abs2()+(*(allcoeff_m3e[LO]))(17).abs2())/3.0
81  +((*(allcoeff_m3e[LO]))(5)*(*(allcoeff_m3e[LO]))(19).conjugate()+(*(allcoeff_m3e[LO]))(4)*(*(allcoeff_m3e[LO]))(16).conjugate()
82  +((*(allcoeff_m3e[LO]))(7)+(*(allcoeff_m3e[LO]))(13))*(*(allcoeff_m3e[LO]))(18).conjugate()+((*(allcoeff_m3e[LO]))(6)+(*(allcoeff_m3e[LO]))(12))*(*(allcoeff_m3e[LO]))(17).conjugate()).real()*2.0/3.0
83  +((*(allcoeff_m3e[LO]))(1)*(*(allcoeff_m3e[LO]))(19).conjugate()+(*(allcoeff_m3e[LO]))(0)*(*(allcoeff_m3e[LO]))(16).conjugate()).real()*4.0/3.0
84  +((*(allcoeff_m3e[LO]))(1)*(*(allcoeff_m3e[LO]))(18).conjugate()+(*(allcoeff_m3e[LO]))(0)*(*(allcoeff_m3e[LO]))(17).conjugate()).real()*2.0/3.0
85  -((*(allcoeff_m3e[LO]))(2)*(*(allcoeff_m3e[LO]))(19).conjugate()+(*(allcoeff_m3e[LO]))(3)*(*(allcoeff_m3e[LO]))(16).conjugate()).real()*8.0/3.0
86  -((*(allcoeff_m3e[LO]))(3)*(*(allcoeff_m3e[LO]))(17).conjugate()+(*(allcoeff_m3e[LO]))(2)*(*(allcoeff_m3e[LO]))(18).conjugate()).real()*4.0/3.0) / GammaMU;
87 
88 // double Mu3Erate = (alph*alph/(32.0*M_PI))*(pow(mMU,5.0))*
89 // (VLMuE**2.0 + VRMuE**2.0 - 4.0*(VLMuE*ARMuE + VRMuE*ALMuE)
90 // + (ALMuE**2.0 + ARMuE**2.0)*((16.0/3.0)*log(mMU/(2.0*mE))-14.0/9.0)
91 // + (1.d0/6.0)*(B1LMu3E**2.0 + B1RMu3E**2.0)
92 // + (1.d0/3.0)*(B2LMu3E**2.0 + B2RMu3E**2.0)
93 // + (1.d0/24.0)*(B3LMu3E**2.0 + B3RMu3E**2.0)
94 // + 6.0*(B4LMu3E**2.0 + B4RMu3E**2.0)
95 // - (B3LMu3E*B4LMu3E + B3RMu3E*B4RMu3E)
96 // + (2.0/3.0)*(VLMuE*B1LMu3E + VRMuE*B1RMu3E + VLMuE*B2LMu3E + VRMuE*B2RMu3E)
97 // - (4.0/3.0)*(ARMuE*B1LMu3E + ALMuE*B1RMu3E + ARMuE*B2LMu3E + ALMuE*B2RMu3E)
98 // + (1.0/3.0)*(2.0*(FLLMu3E**2.0 + FRRMu3E**2.0)
99 // + FLRMu3E**2.0 + FRLMu3E**2.0
100 // + 2.0*(B1LMu3E*FLLMu3E + B1RMu3E*FRRMu3E + B2LMu3E*FLRMu3E + B2RMu3E*FRLMu3E)
101 // + 4.0*(VLMuE*FLLMu3E + VRMuE*FRRMu3E)
102 // + 2.0*(VLMuE*FLRMu3E + VRMuE*FRLMu3E)
103 // - 8.0*(ARMuE*FLLMu3E + ALMuE*FRRMu3E)
104 // - 4.0*(ALMuE*FRLMu3E + ARMuE*FLRMu3E)))
105 //
106 // double Brmu3e = Mu3Erate/(3.0*(pow(10.0,-19.0)))
107 
108 
109 //
110 // C_1 = ((*(allcoeff[LO]))(0) + (*(allcoeff[NLO]))(0));
111 // C_2 = ((*(allcoeff[LO]))(1) + (*(allcoeff[NLO]))(1));
112 // C_2L = (*(allcoeff[LO]))(1);
113 // C_3 = ((*(allcoeff[LO]))(2) + (*(allcoeff[NLO]))(2));
114 // C_4 = ((*(allcoeff[LO]))(3) + (*(allcoeff[NLO]))(3));
115 // C_5 = ((*(allcoeff[LO]))(4) + (*(allcoeff[NLO]))(4));
116 // C_6 = ((*(allcoeff[LO]))(5) + (*(allcoeff[NLO]))(5));
117 // C_7 = ((*(allcoeff[LO]))(6) + (*(allcoeff[NLO]))(6));
118 // C_8L = (*(allcoeff[LO]))(7);
119 // C_9 = ((*(allcoeff[LO]))(8) + (*(allcoeff[NLO]))(8));
120 // C_10 = ((*(allcoeff[LO]))(9) + (*(allcoeff[NLO]))(9));
121 // C_S = ((*(allcoeff[LO]))(10) + (*(allcoeff[NLO]))(10));
122 // C_P = ((*(allcoeff[LO]))(11) + (*(allcoeff[NLO]))(11));
123 //
124  return Brmu3e;
125 }
126 
128 : ThObservable(SM_i)
129 {}
130 
132 {
133  double alph = SM.getAle();
135  double mMU = SM.getLeptons(StandardModel::MU).getMass();
136  double GammaMU = 2.99598e-19;
138 
139  double Brmu3e = alph*alph/(32.0*M_PI) * pow(mMU,5.0)
140  * ((*(allcoeff_m3e[LO]))(1).abs2()+(*(allcoeff_m3e[LO]))(0).abs2()
141  -4.0*((*(allcoeff_m3e[LO]))(1)*(*(allcoeff_m3e[LO]))(2).conjugate()+(*(allcoeff_m3e[LO]))(3)*(*(allcoeff_m3e[LO]))(0).conjugate()).real()
142  +((*(allcoeff_m3e[LO]))(3).abs2()+(*(allcoeff_m3e[LO]))(2).abs2())*(16.0*log(mMU/mE)-22.0)/3.0
143  +((*(allcoeff_m3e[LO]))(5).abs2()+(*(allcoeff_m3e[LO]))(4).abs2())/6.0
144  +(((*(allcoeff_m3e[LO]))(7)+(*(allcoeff_m3e[LO]))(13)).abs2()+((*(allcoeff_m3e[LO]))(6)+(*(allcoeff_m3e[LO]))(12)).abs2())/3.0
145  +(((*(allcoeff_m3e[LO]))(9)+(*(allcoeff_m3e[LO]))(15)).abs2()+((*(allcoeff_m3e[LO]))(8)+(*(allcoeff_m3e[LO]))(14)).abs2())/24.0
146  +((*(allcoeff_m3e[LO]))(11).abs2()+(*(allcoeff_m3e[LO]))(10).abs2())*6.0
147  -(((*(allcoeff_m3e[LO]))(9)+(*(allcoeff_m3e[LO]))(15))*(*(allcoeff_m3e[LO]))(11).conjugate()+((*(allcoeff_m3e[LO]))(8)+(*(allcoeff_m3e[LO]))(14))*(*(allcoeff_m3e[LO]))(10).conjugate()).real()
148  +((*(allcoeff_m3e[LO]))(1)*(*(allcoeff_m3e[LO]))(5).conjugate()+(*(allcoeff_m3e[LO]))(0)*(*(allcoeff_m3e[LO]))(4).conjugate()
149  +(*(allcoeff_m3e[LO]))(1)*((*(allcoeff_m3e[LO]))(7)+(*(allcoeff_m3e[LO]))(13)).conjugate()+(*(allcoeff_m3e[LO]))(0)*((*(allcoeff_m3e[LO]))(6)+(*(allcoeff_m3e[LO]))(12)).conjugate()).real()*2.0/3.0
150  -4.0*((*(allcoeff_m3e[LO]))(2)*(*(allcoeff_m3e[LO]))(5).conjugate()+(*(allcoeff_m3e[LO]))(3)*(*(allcoeff_m3e[LO]))(4).conjugate()
151  +(*(allcoeff_m3e[LO]))(3)*((*(allcoeff_m3e[LO]))(6)+(*(allcoeff_m3e[LO]))(12)).conjugate()+(*(allcoeff_m3e[LO]))(2)*((*(allcoeff_m3e[LO]))(7)+(*(allcoeff_m3e[LO]))(13)).conjugate()).real()/3.0
152  +2.0*((*(allcoeff_m3e[LO]))(19).abs2()+(*(allcoeff_m3e[LO]))(16).abs2())/3.0
153  +((*(allcoeff_m3e[LO]))(18).abs2()+(*(allcoeff_m3e[LO]))(17).abs2())/3.0
154  +((*(allcoeff_m3e[LO]))(5)*(*(allcoeff_m3e[LO]))(19).conjugate()+(*(allcoeff_m3e[LO]))(4)*(*(allcoeff_m3e[LO]))(16).conjugate()
155  +((*(allcoeff_m3e[LO]))(7)+(*(allcoeff_m3e[LO]))(13))*(*(allcoeff_m3e[LO]))(18).conjugate()+((*(allcoeff_m3e[LO]))(6)+(*(allcoeff_m3e[LO]))(12))*(*(allcoeff_m3e[LO]))(17).conjugate()).real()*2.0/3.0
156  +((*(allcoeff_m3e[LO]))(1)*(*(allcoeff_m3e[LO]))(19).conjugate()+(*(allcoeff_m3e[LO]))(0)*(*(allcoeff_m3e[LO]))(16).conjugate()).real()*4.0/3.0
157  +((*(allcoeff_m3e[LO]))(1)*(*(allcoeff_m3e[LO]))(18).conjugate()+(*(allcoeff_m3e[LO]))(0)*(*(allcoeff_m3e[LO]))(17).conjugate()).real()*2.0/3.0
158  -((*(allcoeff_m3e[LO]))(2)*(*(allcoeff_m3e[LO]))(19).conjugate()+(*(allcoeff_m3e[LO]))(3)*(*(allcoeff_m3e[LO]))(16).conjugate()).real()*8.0/3.0
159  -((*(allcoeff_m3e[LO]))(3)*(*(allcoeff_m3e[LO]))(17).conjugate()+(*(allcoeff_m3e[LO]))(2)*(*(allcoeff_m3e[LO]))(18).conjugate()).real()*4.0/3.0) / GammaMU;
160  double Brmu3e_obs=1.; //from ?
161  double Brmu3e_exp=1.; //from ?
162  double ntos=1.64485362695147;
163 
164  return (1+(Brmu3e-Brmu3e_obs)/Brmu3e_exp)*ntos;
165 }
166 
168 : ThObservable(SM_i)
169 {}
170 
171 //double tau_3mu::computeThValue()
172 //{
177 // return 0.0;
178 //}
179 
181 {
182  double alph = SM.getAle();
183  double mMU = SM.getLeptons(StandardModel::MU).getMass();
184  double mTAU = SM.getLeptons(StandardModel::TAU).getMass();
185  double GammaTAU = 2.26735e-12;
186 
188 
189  double Brtau3mu = alph*alph/(32.0*M_PI) * pow(mTAU,5.0)
190  * ((*(allcoeff_t3m[LO]))(1).abs2()+(*(allcoeff_t3m[LO]))(0).abs2()
191  -4.0*((*(allcoeff_t3m[LO]))(1)*(*(allcoeff_t3m[LO]))(2).conjugate()+(*(allcoeff_t3m[LO]))(3)*(*(allcoeff_t3m[LO]))(0).conjugate()).real()
192  +((*(allcoeff_t3m[LO]))(3).abs2()+(*(allcoeff_t3m[LO]))(2).abs2())*(16.0*log(mTAU/mMU)-22.0)/3.0
193  +((*(allcoeff_t3m[LO]))(5).abs2()+(*(allcoeff_t3m[LO]))(4).abs2())/6.0
194  +(((*(allcoeff_t3m[LO]))(7)+(*(allcoeff_t3m[LO]))(13)).abs2()+((*(allcoeff_t3m[LO]))(6)+(*(allcoeff_t3m[LO]))(12)).abs2())/3.0
195  +(((*(allcoeff_t3m[LO]))(9)+(*(allcoeff_t3m[LO]))(15)).abs2()+((*(allcoeff_t3m[LO]))(8)+(*(allcoeff_t3m[LO]))(14)).abs2())/24.0
196  +((*(allcoeff_t3m[LO]))(11).abs2()+(*(allcoeff_t3m[LO]))(10).abs2())*6.0
197  -(((*(allcoeff_t3m[LO]))(9)+(*(allcoeff_t3m[LO]))(15))*(*(allcoeff_t3m[LO]))(11).conjugate()+((*(allcoeff_t3m[LO]))(8)+(*(allcoeff_t3m[LO]))(14))*(*(allcoeff_t3m[LO]))(10).conjugate()).real()
198  +((*(allcoeff_t3m[LO]))(1)*(*(allcoeff_t3m[LO]))(5).conjugate()+(*(allcoeff_t3m[LO]))(0)*(*(allcoeff_t3m[LO]))(4).conjugate()
199  +(*(allcoeff_t3m[LO]))(1)*((*(allcoeff_t3m[LO]))(7)+(*(allcoeff_t3m[LO]))(13)).conjugate()+(*(allcoeff_t3m[LO]))(0)*((*(allcoeff_t3m[LO]))(6)+(*(allcoeff_t3m[LO]))(12)).conjugate()).real()*2.0/3.0
200  -4.0*((*(allcoeff_t3m[LO]))(2)*(*(allcoeff_t3m[LO]))(5).conjugate()+(*(allcoeff_t3m[LO]))(3)*(*(allcoeff_t3m[LO]))(4).conjugate()
201  +(*(allcoeff_t3m[LO]))(3)*((*(allcoeff_t3m[LO]))(6)+(*(allcoeff_t3m[LO]))(12)).conjugate()+(*(allcoeff_t3m[LO]))(2)*((*(allcoeff_t3m[LO]))(7)+(*(allcoeff_t3m[LO]))(13)).conjugate()).real()/3.0
202  +2.0*((*(allcoeff_t3m[LO]))(19).abs2()+(*(allcoeff_t3m[LO]))(16).abs2())/3.0
203  +((*(allcoeff_t3m[LO]))(18).abs2()+(*(allcoeff_t3m[LO]))(17).abs2())/3.0
204  +((*(allcoeff_t3m[LO]))(5)*(*(allcoeff_t3m[LO]))(19).conjugate()+(*(allcoeff_t3m[LO]))(4)*(*(allcoeff_t3m[LO]))(16).conjugate()
205  +((*(allcoeff_t3m[LO]))(7)+(*(allcoeff_t3m[LO]))(13))*(*(allcoeff_t3m[LO]))(18).conjugate()+((*(allcoeff_t3m[LO]))(6)+(*(allcoeff_t3m[LO]))(12))*(*(allcoeff_t3m[LO]))(17).conjugate()).real()*2.0/3.0
206  +((*(allcoeff_t3m[LO]))(1)*(*(allcoeff_t3m[LO]))(19).conjugate()+(*(allcoeff_t3m[LO]))(0)*(*(allcoeff_t3m[LO]))(16).conjugate()).real()*4.0/3.0
207  +((*(allcoeff_t3m[LO]))(1)*(*(allcoeff_t3m[LO]))(18).conjugate()+(*(allcoeff_t3m[LO]))(0)*(*(allcoeff_t3m[LO]))(17).conjugate()).real()*2.0/3.0
208  -((*(allcoeff_t3m[LO]))(2)*(*(allcoeff_t3m[LO]))(19).conjugate()+(*(allcoeff_t3m[LO]))(3)*(*(allcoeff_t3m[LO]))(16).conjugate()).real()*8.0/3.0
209  -((*(allcoeff_t3m[LO]))(3)*(*(allcoeff_t3m[LO]))(17).conjugate()+(*(allcoeff_t3m[LO]))(2)*(*(allcoeff_t3m[LO]))(18).conjugate()).real()*4.0/3.0) / GammaTAU;
210 
211  return Brtau3mu;
212 }
213 
215 : ThObservable(SM_i)
216 {}
217 
219 {
220  double alph = SM.getAle();
221  double mMU = SM.getLeptons(StandardModel::MU).getMass();
222  double mTAU = SM.getLeptons(StandardModel::TAU).getMass();
223  double GammaTAU = 2.26735e-12;
224 
226 
227  double Brtau3mu = alph*alph/(32.0*M_PI) * pow(mTAU,5.0)
228  * ((*(allcoeff_t3m[LO]))(1).abs2()+(*(allcoeff_t3m[LO]))(0).abs2()
229  -4.0*((*(allcoeff_t3m[LO]))(1)*(*(allcoeff_t3m[LO]))(2).conjugate()+(*(allcoeff_t3m[LO]))(3)*(*(allcoeff_t3m[LO]))(0).conjugate()).real()
230  +((*(allcoeff_t3m[LO]))(3).abs2()+(*(allcoeff_t3m[LO]))(2).abs2())*(16.0*log(mTAU/mMU)-22.0)/3.0
231  +((*(allcoeff_t3m[LO]))(5).abs2()+(*(allcoeff_t3m[LO]))(4).abs2())/6.0
232  +(((*(allcoeff_t3m[LO]))(7)+(*(allcoeff_t3m[LO]))(13)).abs2()+((*(allcoeff_t3m[LO]))(6)+(*(allcoeff_t3m[LO]))(12)).abs2())/3.0
233  +(((*(allcoeff_t3m[LO]))(9)+(*(allcoeff_t3m[LO]))(15)).abs2()+((*(allcoeff_t3m[LO]))(8)+(*(allcoeff_t3m[LO]))(14)).abs2())/24.0
234  +((*(allcoeff_t3m[LO]))(11).abs2()+(*(allcoeff_t3m[LO]))(10).abs2())*6.0
235  -(((*(allcoeff_t3m[LO]))(9)+(*(allcoeff_t3m[LO]))(15))*(*(allcoeff_t3m[LO]))(11).conjugate()+((*(allcoeff_t3m[LO]))(8)+(*(allcoeff_t3m[LO]))(14))*(*(allcoeff_t3m[LO]))(10).conjugate()).real()
236  +((*(allcoeff_t3m[LO]))(1)*(*(allcoeff_t3m[LO]))(5).conjugate()+(*(allcoeff_t3m[LO]))(0)*(*(allcoeff_t3m[LO]))(4).conjugate()
237  +(*(allcoeff_t3m[LO]))(1)*((*(allcoeff_t3m[LO]))(7)+(*(allcoeff_t3m[LO]))(13)).conjugate()+(*(allcoeff_t3m[LO]))(0)*((*(allcoeff_t3m[LO]))(6)+(*(allcoeff_t3m[LO]))(12)).conjugate()).real()*2.0/3.0
238  -4.0*((*(allcoeff_t3m[LO]))(2)*(*(allcoeff_t3m[LO]))(5).conjugate()+(*(allcoeff_t3m[LO]))(3)*(*(allcoeff_t3m[LO]))(4).conjugate()
239  +(*(allcoeff_t3m[LO]))(3)*((*(allcoeff_t3m[LO]))(6)+(*(allcoeff_t3m[LO]))(12)).conjugate()+(*(allcoeff_t3m[LO]))(2)*((*(allcoeff_t3m[LO]))(7)+(*(allcoeff_t3m[LO]))(13)).conjugate()).real()/3.0
240  +2.0*((*(allcoeff_t3m[LO]))(19).abs2()+(*(allcoeff_t3m[LO]))(16).abs2())/3.0
241  +((*(allcoeff_t3m[LO]))(18).abs2()+(*(allcoeff_t3m[LO]))(17).abs2())/3.0
242  +((*(allcoeff_t3m[LO]))(5)*(*(allcoeff_t3m[LO]))(19).conjugate()+(*(allcoeff_t3m[LO]))(4)*(*(allcoeff_t3m[LO]))(16).conjugate()
243  +((*(allcoeff_t3m[LO]))(7)+(*(allcoeff_t3m[LO]))(13))*(*(allcoeff_t3m[LO]))(18).conjugate()+((*(allcoeff_t3m[LO]))(6)+(*(allcoeff_t3m[LO]))(12))*(*(allcoeff_t3m[LO]))(17).conjugate()).real()*2.0/3.0
244  +((*(allcoeff_t3m[LO]))(1)*(*(allcoeff_t3m[LO]))(19).conjugate()+(*(allcoeff_t3m[LO]))(0)*(*(allcoeff_t3m[LO]))(16).conjugate()).real()*4.0/3.0
245  +((*(allcoeff_t3m[LO]))(1)*(*(allcoeff_t3m[LO]))(18).conjugate()+(*(allcoeff_t3m[LO]))(0)*(*(allcoeff_t3m[LO]))(17).conjugate()).real()*2.0/3.0
246  -((*(allcoeff_t3m[LO]))(2)*(*(allcoeff_t3m[LO]))(19).conjugate()+(*(allcoeff_t3m[LO]))(3)*(*(allcoeff_t3m[LO]))(16).conjugate()).real()*8.0/3.0
247  -((*(allcoeff_t3m[LO]))(3)*(*(allcoeff_t3m[LO]))(17).conjugate()+(*(allcoeff_t3m[LO]))(2)*(*(allcoeff_t3m[LO]))(18).conjugate()).real()*4.0/3.0) / GammaTAU;
248  double Brtau3mu_obs=4.6e-8; //from JHEP 02 (2015) 121
249  double Brtau3mu_exp=5.0e-8; //from JHEP 02 (2015) 121
250  double ntos=1.64485362695147;
251 
252  return (1+(Brtau3mu-Brtau3mu_obs)/Brtau3mu_exp)*ntos;
253 }
254 
256 : ThObservable(SM_i)
257 {}
258 
259 //double tau_3e::computeThValue()
260 //{
265 // return 0.0;
266 //}
267 
269 {
270  double alph = SM.getAle();
272  double mTAU = SM.getLeptons(StandardModel::TAU).getMass();
273  double GammaTAU = 2.26735e-12;
274 
276 
277  double Brtau3e = alph*alph/(32.0*M_PI) * pow(mTAU,5.0)
278  * ((*(allcoeff_t3e[LO]))(1).abs2()+(*(allcoeff_t3e[LO]))(0).abs2()
279  -4.0*((*(allcoeff_t3e[LO]))(1)*(*(allcoeff_t3e[LO]))(2).conjugate()+(*(allcoeff_t3e[LO]))(3)*(*(allcoeff_t3e[LO]))(0).conjugate()).real()
280  +((*(allcoeff_t3e[LO]))(3).abs2()+(*(allcoeff_t3e[LO]))(2).abs2())*(16.0*log(mTAU/mE)-22.0)/3.0
281  +((*(allcoeff_t3e[LO]))(5).abs2()+(*(allcoeff_t3e[LO]))(4).abs2())/6.0
282  +(((*(allcoeff_t3e[LO]))(7)+(*(allcoeff_t3e[LO]))(13)).abs2()+((*(allcoeff_t3e[LO]))(6)+(*(allcoeff_t3e[LO]))(12)).abs2())/3.0
283  +(((*(allcoeff_t3e[LO]))(9)+(*(allcoeff_t3e[LO]))(15)).abs2()+((*(allcoeff_t3e[LO]))(8)+(*(allcoeff_t3e[LO]))(14)).abs2())/24.0
284  +((*(allcoeff_t3e[LO]))(11).abs2()+(*(allcoeff_t3e[LO]))(10).abs2())*6.0
285  -(((*(allcoeff_t3e[LO]))(9)+(*(allcoeff_t3e[LO]))(15))*(*(allcoeff_t3e[LO]))(11).conjugate()+((*(allcoeff_t3e[LO]))(8)+(*(allcoeff_t3e[LO]))(14))*(*(allcoeff_t3e[LO]))(10).conjugate()).real()
286  +((*(allcoeff_t3e[LO]))(1)*(*(allcoeff_t3e[LO]))(5).conjugate()+(*(allcoeff_t3e[LO]))(0)*(*(allcoeff_t3e[LO]))(4).conjugate()
287  +(*(allcoeff_t3e[LO]))(1)*((*(allcoeff_t3e[LO]))(7)+(*(allcoeff_t3e[LO]))(13)).conjugate()+(*(allcoeff_t3e[LO]))(0)*((*(allcoeff_t3e[LO]))(6)+(*(allcoeff_t3e[LO]))(12)).conjugate()).real()*2.0/3.0
288  -4.0*((*(allcoeff_t3e[LO]))(2)*(*(allcoeff_t3e[LO]))(5).conjugate()+(*(allcoeff_t3e[LO]))(3)*(*(allcoeff_t3e[LO]))(4).conjugate()
289  +(*(allcoeff_t3e[LO]))(3)*((*(allcoeff_t3e[LO]))(6)+(*(allcoeff_t3e[LO]))(12)).conjugate()+(*(allcoeff_t3e[LO]))(2)*((*(allcoeff_t3e[LO]))(7)+(*(allcoeff_t3e[LO]))(13)).conjugate()).real()/3.0
290  +2.0*((*(allcoeff_t3e[LO]))(19).abs2()+(*(allcoeff_t3e[LO]))(16).abs2())/3.0
291  +((*(allcoeff_t3e[LO]))(18).abs2()+(*(allcoeff_t3e[LO]))(17).abs2())/3.0
292  +((*(allcoeff_t3e[LO]))(5)*(*(allcoeff_t3e[LO]))(19).conjugate()+(*(allcoeff_t3e[LO]))(4)*(*(allcoeff_t3e[LO]))(16).conjugate()
293  +((*(allcoeff_t3e[LO]))(7)+(*(allcoeff_t3e[LO]))(13))*(*(allcoeff_t3e[LO]))(18).conjugate()+((*(allcoeff_t3e[LO]))(6)+(*(allcoeff_t3e[LO]))(12))*(*(allcoeff_t3e[LO]))(17).conjugate()).real()*2.0/3.0
294  +((*(allcoeff_t3e[LO]))(1)*(*(allcoeff_t3e[LO]))(19).conjugate()+(*(allcoeff_t3e[LO]))(0)*(*(allcoeff_t3e[LO]))(16).conjugate()).real()*4.0/3.0
295  +((*(allcoeff_t3e[LO]))(1)*(*(allcoeff_t3e[LO]))(18).conjugate()+(*(allcoeff_t3e[LO]))(0)*(*(allcoeff_t3e[LO]))(17).conjugate()).real()*2.0/3.0
296  -((*(allcoeff_t3e[LO]))(2)*(*(allcoeff_t3e[LO]))(19).conjugate()+(*(allcoeff_t3e[LO]))(3)*(*(allcoeff_t3e[LO]))(16).conjugate()).real()*8.0/3.0
297  -((*(allcoeff_t3e[LO]))(3)*(*(allcoeff_t3e[LO]))(17).conjugate()+(*(allcoeff_t3e[LO]))(2)*(*(allcoeff_t3e[LO]))(18).conjugate()).real()*4.0/3.0) / GammaTAU;
298 
299  return Brtau3e;
300 }
301 
303 : ThObservable(SM_i)
304 {}
305 
307 {
308  double alph = SM.getAle();
310  double mTAU = SM.getLeptons(StandardModel::TAU).getMass();
311  double GammaTAU = 2.26735e-12;
312 
314 
315  double Brtau3e = alph*alph/(32.0*M_PI) * pow(mTAU,5.0)
316  * ((*(allcoeff_t3e[LO]))(1).abs2()+(*(allcoeff_t3e[LO]))(0).abs2()
317  -4.0*((*(allcoeff_t3e[LO]))(1)*(*(allcoeff_t3e[LO]))(2).conjugate()+(*(allcoeff_t3e[LO]))(3)*(*(allcoeff_t3e[LO]))(0).conjugate()).real()
318  +((*(allcoeff_t3e[LO]))(3).abs2()+(*(allcoeff_t3e[LO]))(2).abs2())*(16.0*log(mTAU/mE)-22.0)/3.0
319  +((*(allcoeff_t3e[LO]))(5).abs2()+(*(allcoeff_t3e[LO]))(4).abs2())/6.0
320  +(((*(allcoeff_t3e[LO]))(7)+(*(allcoeff_t3e[LO]))(13)).abs2()+((*(allcoeff_t3e[LO]))(6)+(*(allcoeff_t3e[LO]))(12)).abs2())/3.0
321  +(((*(allcoeff_t3e[LO]))(9)+(*(allcoeff_t3e[LO]))(15)).abs2()+((*(allcoeff_t3e[LO]))(8)+(*(allcoeff_t3e[LO]))(14)).abs2())/24.0
322  +((*(allcoeff_t3e[LO]))(11).abs2()+(*(allcoeff_t3e[LO]))(10).abs2())*6.0
323  -(((*(allcoeff_t3e[LO]))(9)+(*(allcoeff_t3e[LO]))(15))*(*(allcoeff_t3e[LO]))(11).conjugate()+((*(allcoeff_t3e[LO]))(8)+(*(allcoeff_t3e[LO]))(14))*(*(allcoeff_t3e[LO]))(10).conjugate()).real()
324  +((*(allcoeff_t3e[LO]))(1)*(*(allcoeff_t3e[LO]))(5).conjugate()+(*(allcoeff_t3e[LO]))(0)*(*(allcoeff_t3e[LO]))(4).conjugate()
325  +(*(allcoeff_t3e[LO]))(1)*((*(allcoeff_t3e[LO]))(7)+(*(allcoeff_t3e[LO]))(13)).conjugate()+(*(allcoeff_t3e[LO]))(0)*((*(allcoeff_t3e[LO]))(6)+(*(allcoeff_t3e[LO]))(12)).conjugate()).real()*2.0/3.0
326  -4.0*((*(allcoeff_t3e[LO]))(2)*(*(allcoeff_t3e[LO]))(5).conjugate()+(*(allcoeff_t3e[LO]))(3)*(*(allcoeff_t3e[LO]))(4).conjugate()
327  +(*(allcoeff_t3e[LO]))(3)*((*(allcoeff_t3e[LO]))(6)+(*(allcoeff_t3e[LO]))(12)).conjugate()+(*(allcoeff_t3e[LO]))(2)*((*(allcoeff_t3e[LO]))(7)+(*(allcoeff_t3e[LO]))(13)).conjugate()).real()/3.0
328  +2.0*((*(allcoeff_t3e[LO]))(19).abs2()+(*(allcoeff_t3e[LO]))(16).abs2())/3.0
329  +((*(allcoeff_t3e[LO]))(18).abs2()+(*(allcoeff_t3e[LO]))(17).abs2())/3.0
330  +((*(allcoeff_t3e[LO]))(5)*(*(allcoeff_t3e[LO]))(19).conjugate()+(*(allcoeff_t3e[LO]))(4)*(*(allcoeff_t3e[LO]))(16).conjugate()
331  +((*(allcoeff_t3e[LO]))(7)+(*(allcoeff_t3e[LO]))(13))*(*(allcoeff_t3e[LO]))(18).conjugate()+((*(allcoeff_t3e[LO]))(6)+(*(allcoeff_t3e[LO]))(12))*(*(allcoeff_t3e[LO]))(17).conjugate()).real()*2.0/3.0
332  +((*(allcoeff_t3e[LO]))(1)*(*(allcoeff_t3e[LO]))(19).conjugate()+(*(allcoeff_t3e[LO]))(0)*(*(allcoeff_t3e[LO]))(16).conjugate()).real()*4.0/3.0
333  +((*(allcoeff_t3e[LO]))(1)*(*(allcoeff_t3e[LO]))(18).conjugate()+(*(allcoeff_t3e[LO]))(0)*(*(allcoeff_t3e[LO]))(17).conjugate()).real()*2.0/3.0
334  -((*(allcoeff_t3e[LO]))(2)*(*(allcoeff_t3e[LO]))(19).conjugate()+(*(allcoeff_t3e[LO]))(3)*(*(allcoeff_t3e[LO]))(16).conjugate()).real()*8.0/3.0
335  -((*(allcoeff_t3e[LO]))(3)*(*(allcoeff_t3e[LO]))(17).conjugate()+(*(allcoeff_t3e[LO]))(2)*(*(allcoeff_t3e[LO]))(18).conjugate()).real()*4.0/3.0) / GammaTAU;
336  double Brtau3e_obs=0.; //from ?
337  double Brtau3e_exp=0.; //from ?
338  double ntos=1.64485362695147;
339 
340  return (1+(Brtau3e-Brtau3e_obs)/Brtau3e_exp)*ntos;
341 }
QCD::TAU
Definition: QCD.h:316
mu_3e::computeThValue
double computeThValue()
Definition: li_3lj.cpp:24
tau_3e::tau_3e
tau_3e(const StandardModel &SM_i)
Calculates the value of the process .
Definition: li_3lj.cpp:255
Robs_tau_3mu::Robs_tau_3mu
Robs_tau_3mu(const StandardModel &SM_i)
Calculates the upper limit ratio of the process .
Definition: li_3lj.cpp:214
StandardModel::getMyLeptonFlavour
LeptonFlavour * getMyLeptonFlavour() const
Definition: StandardModel.h:1011
LeptonFlavour.h
tau_3mu::tau_3mu
tau_3mu(const StandardModel &SM_i)
Calculates the value of the process .
Definition: li_3lj.cpp:167
LO
Definition: OrderScheme.h:33
gslpp::log
complex log(const complex &z)
Definition: gslpp_complex.cpp:342
Robs_tau_3mu::computeThValue
double computeThValue()
Definition: li_3lj.cpp:218
QCD::ELECTRON
Definition: QCD.h:312
StandardModel
A model class for the Standard Model.
Definition: StandardModel.h:474
tau_3e::computeThValue
double computeThValue()
Definition: li_3lj.cpp:268
Robs_mu_3e::Robs_mu_3e
Robs_mu_3e(const StandardModel &SM_i)
Calculates the upper limit ratio of the process .
Definition: li_3lj.cpp:127
Particle::getMass
const double & getMass() const
A get method to access the particle mass.
Definition: Particle.h:61
LeptonFlavour::ComputeCoeffli_3lj
gslpp::vector< gslpp::complex > ** ComputeCoeffli_3lj(int li_lj)
Computes the Wilson coefficient for the process .
Definition: LeptonFlavour.h:71
gslpp::pow
complex pow(const complex &z1, const complex &z2)
Definition: gslpp_complex.cpp:395
tau_3mu::computeThValue
double computeThValue()
Definition: li_3lj.cpp:180
ThObservable::SM
const StandardModel & SM
A reference to an object of StandardMode class.
Definition: ThObservable.h:121
Robs_mu_3e::computeThValue
double computeThValue()
Definition: li_3lj.cpp:131
li_3lj.h
ThObservable
A class for a model prediction of an observable.
Definition: ThObservable.h:25
mu_3e::mu_3e
mu_3e(const StandardModel &SM_i)
Calculates the value of the process .
Definition: li_3lj.cpp:20
Robs_tau_3e::computeThValue
double computeThValue()
Definition: li_3lj.cpp:306
Robs_tau_3e::Robs_tau_3e
Robs_tau_3e(const StandardModel &SM_i)
Calculates the upper limit ratio of the process .
Definition: li_3lj.cpp:302
StandardModel::getAle
double getAle() const
A get method to retrieve the fine-structure constant .
Definition: StandardModel.h:745
gslpp::vector< gslpp::complex >
QCD::MU
Definition: QCD.h:314
StandardModel::getLeptons
Particle getLeptons(const QCD::lepton p) const
A get method to retrieve the member object of a lepton.
Definition: StandardModel.h:709