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;
30 gslpp::vector<gslpp::complex> ** allcoeff_m3e = SM.getMyLeptonFlavour()->ComputeCoeffli_3lj(1);
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;
137 gslpp::vector<gslpp::complex> ** allcoeff_m3e = SM.getMyLeptonFlavour()->ComputeCoeffli_3lj(1);
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
187 gslpp::vector<gslpp::complex> ** allcoeff_t3m = SM.getMyLeptonFlavour()->ComputeCoeffli_3lj(2);
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
225 gslpp::vector<gslpp::complex> ** allcoeff_t3m = SM.getMyLeptonFlavour()->ComputeCoeffli_3lj(2);
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
275 gslpp::vector<gslpp::complex> ** allcoeff_t3e = SM.getMyLeptonFlavour()->ComputeCoeffli_3lj(3);
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
313 gslpp::vector<gslpp::complex> ** allcoeff_t3e = SM.getMyLeptonFlavour()->ComputeCoeffli_3lj(3);
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}
@ LO
Definition: OrderScheme.h:34
gslpp::vector< gslpp::complex > ** ComputeCoeffli_3lj(int li_lj)
Computes the Wilson coefficient for the process .
Definition: LeptonFlavour.h:71
const double & getMass() const
A get method to access the particle mass.
Definition: Particle.h:61
@ MU
Definition: QCD.h:314
@ ELECTRON
Definition: QCD.h:312
@ TAU
Definition: QCD.h:316
Robs_mu_3e(const StandardModel &SM_i)
Calculates the upper limit ratio of the process .
Definition: li_3lj.cpp:127
double computeThValue()
Definition: li_3lj.cpp:131
double computeThValue()
Definition: li_3lj.cpp:306
Robs_tau_3e(const StandardModel &SM_i)
Calculates the upper limit ratio of the process .
Definition: li_3lj.cpp:302
double computeThValue()
Definition: li_3lj.cpp:218
Robs_tau_3mu(const StandardModel &SM_i)
Calculates the upper limit ratio of the process .
Definition: li_3lj.cpp:214
A model class for the Standard Model.
const Particle & getLeptons(const QCD::lepton p) const
A get method to retrieve the member object of a lepton.
LeptonFlavour * getMyLeptonFlavour() const
const double getAle() const
A get method to retrieve the fine-structure constant .
A class for a model prediction of an observable.
Definition: ThObservable.h:25
const StandardModel & SM
A reference to an object of StandardMode class.
Definition: ThObservable.h:121
double computeThValue()
Definition: li_3lj.cpp:24
mu_3e(const StandardModel &SM_i)
Calculates the value of the process .
Definition: li_3lj.cpp:20
double computeThValue()
Definition: li_3lj.cpp:268
tau_3e(const StandardModel &SM_i)
Calculates the value of the process .
Definition: li_3lj.cpp:255
double computeThValue()
Definition: li_3lj.cpp:180
tau_3mu(const StandardModel &SM_i)
Calculates the value of the process .
Definition: li_3lj.cpp:167