86 Mpip(
"Mpip",0.1396,
"M_{\\pi^+}",domain::real),
87 Mpi0(
"Mpi0",0.1349766,
"M_{\\pi^0}",domain::real),
88 MBp(
"MBp",5.279,
"M_{B^+}",domain::real),
89 MB0(
"MB0",5.2795,
"M_{B^0}",domain::real),
90 MBs0(
"MBs0",5.3663,
"M_{B_s^0}",domain::real),
91 MKp(
"MKp",0.493677,
"MKp",domain::real),
92 MK0(
"MK0",0.497614,
"MK0",domain::real),
93 MDp(
"MDp",1.86957,
"MDp",domain::real),
94 MD0(
"MD0",1.86480,
"MD0",domain::real),
95 MDsp(
"MDsp",1.96845,
"MDsp",domain::real),
97 Fpi(
"Fpi",0.132,
"Fpi",domain::real),
98 FB(
"FB",0.189,
"FB",domain::real),
99 FBs(
"FBs",0.225,
"FBs",domain::real),
100 FK(
"FK",0.159,
"FK",domain::real),
101 FD(
"FD",0.208,
"FD",domain::real),
102 FDs(
"FDs",0.248,
"FDs",domain::real),
105 g(sqrt(
GF*8/sqrt(ex(2)))*
MW),
135 ex vq3=dirac_slash(q3,4);
138 for(
uint i=0;i<2;i++)
139 for(
uint j=0;j<3;j++)
140 for(
uint k=0;k<3;k++){
180 for(
int b=
bosons.size()-1;b>=0;b--){
181 boson.mass=
bosons[b].mass;
188 boson.C[t][i][j][h]=
bosons[b].C[t][j][i][h].conjugate();
247 Meson Pi0d(down,down,
Mpi0,
Fpi);
248 Meson Pi0u(down,down,
Mpi0,
Fpi);
252 Meson K0(down,strange,
MK0,
FK);
253 Meson Kp(up,strange,
MKp,
FK);
255 Meson D0(charm,up,
MD0,
FD);
256 Meson Dp(charm,down,
MDp,
FD);
257 Meson Dsp(charm,strange,
MDsp,
FDs);
259 Meson B0(down,bottom,
MB0,
FB);
260 Meson Bp(up,bottom,
MBp,
FB);
261 Meson Bs0(strange,bottom,
MBs0,
FBs);
265 sb.append(pow(abs(
mixes.
V[0][2][2]),2)==1-pow(abs(
mixes.
V[0][1][2]),2)-pow(abs(
mixes.
V[0][0][2]),2));
266 sb.append(pow(abs(
mixes.
V[0][2][1]),2)==1-pow(abs(
mixes.
V[0][1][1]),2)-pow(abs(
mixes.
V[0][0][1]),2));
272 ex mutoenunu=
decaywidth(muon,neutrino,electron,neutrino);
286 cout<<
"tautomu_tautoe: "<<1/1.0018<<
"ERROR: "<<0.0014/1.0018<<endl;
290 ex mu3e=
decaywidth(muon,electron,electron,electron);
315 ex pierror=picorrection*0.0001/1.2352;
316 cout<<
"PiRatio "<<picorrection-1<<
" +/- "<<pierror<<endl;
317 piratio*=
mesondw(Pip,neutrino,electron)/
mesondw(Pip,neutrino,muon);
318 add(
"piontoenu_munu",piratio,
new gaussobs(1.230e-4,0.003));
319 cout<<
"piontoenu_munu: "<<1.2352e-4/1.230e-4<<
" ERROR: "<<0.003<<endl;
322 add(
"tautopinu_pitomunu",(1+0.16e-2)*
fermiontomeson(tau,neutrino,Pip)/
mesondw(Pip,neutrino,muon),
new gaussobs((10.83e-2/290.6e-15/(0.9998770/2.6033e-8)),0.06/10.83));
325 cout<<
"tautopinu_pitomunu: "<<10.83e-2/290.6e-15/(0.9998770/2.6033e-8)<<
" +/- "<<0.06e-2/290.6e-15/(0.9998770/2.6033e-8)<<endl;
329 cout<<
"tautoKnu/Ktomunu: "<<(7e-3/290.6e-15)/(0.6355/1.238e-8)<<
" +/- "<<(0.1e-3/290.6e-15)/(0.6355/1.238e-8)<<endl;
337 ex Kerror=Kcorrection*0.001/2.477;
338 cout<<
"KRatio "<<Kcorrection-1<<
" +/- "<<Kerror<<endl;
340 add(
"Ktoenu_munu",Kratio,
new gaussobs(2.488e-5,0.005));
341 cout<<
"Ktoenu_munu: "<<2.477e-5/2.488e-5<<
" ERROR: "<<0.005<<endl;
360 ex D0toee=
mesondw(D0,electron,electron);
362 ex D0tomumu=
mesondw(D0,muon,muon);
405 ex B0toee=
mesondw(B0,electron,electron);
407 ex B0totautau=
mesondw(B0,tau,tau);
411 ex Bs0toemu=
mesondw(Bs0,electron,muon)+
mesondw(Bs0,muon,electron);
413 ex Bs0toee=
mesondw(Bs0,electron,electron);
420 cout<<
"Bs0tomumu: "<<
mesondwtest(Bs0,muon,muon)<<endl;
439 Matrix llgammaH0M,llgammaH0E;
456 for(
uint i=0;i<3;i++)
457 for(
uint j=0;j<3;j++){
462 if(j<i){
for(
uint k=0;k<3;k++){
470 llgamma[i][j]=(A*A.conjugate()+B*B.conjugate())*
alpha*pow(mmuon,5)*
GF*
GF/(128*pow(Pi,4));
473 for(
uint k=0;k<3;k++){
479 llgamma[i][j]=-B*
GF*sqrt(1/2)/(8*pow(Pi,2))*2*mmuon;
524 BR_Htotaunu=(
CHdecaycoupling(chiggs,tau,neutrino)+3*
CHdecaycoupling(chiggs,strange,charm))/factor(
CHdecaycoupling(chiggs,Fermion(
tLepton,
iDown),neutrino)+3*
CHdecaycoupling(chiggs,Fermion(
tQuark,
iDown),charm)+3*
CHdecaycoupling(chiggs,Fermion(
tQuark,
iDown),up));
538 ex BtoDtaunu,BtoD2taunu, BtoDtaunuSM, KtoPi;
539 for(
uint i=0; i<3; i++){
540 ex Wcoup=wboson.couplingL(charm,bottom)*wboson.couplingdaggerL(tau,Fermion(
tLepton,
iUp,
FFlavour(i)));
542 ex chcoup_Wcoup=-pow(
MW/
McH,2)*(chiggs.couplingR(charm,bottom)+chiggs.couplingL(charm,bottom))*chiggs.couplingdaggerL(tau,Fermion(
tLepton,
iUp,
FFlavour(i)))/Wcoup;
543 ex chcoup2_Wcoup=-pow(
MW/
McH,2)*(chiggs.couplingR(charm,bottom)-chiggs.couplingL(charm,bottom))*chiggs.couplingdaggerL(tau,Fermion(
tLepton,
iUp,
FFlavour(i)))/Wcoup;
545 BtoDtaunuSM+=Wcoup*Wcoup.conjugate();
546 BtoDtaunu+=Wcoup*Wcoup.conjugate()*(1+1.5*chcoup_Wcoup.real_part()+chcoup_Wcoup.conjugate()*chcoup_Wcoup);
547 BtoD2taunu+=Wcoup*Wcoup.conjugate()*(1+0.12*chcoup2_Wcoup.real_part()+0.05*chcoup2_Wcoup.conjugate()*chcoup2_Wcoup);
549 lst r2(pow(
mixes.
V[1][1][2].imag_part(),2)==pow(abs(
mixes.
V[1][1][2]),2)-pow(
mixes.
V[1][1][2].real_part(),2));
550 r2.append(pow(
mixes.
V[0][2][2].imag_part(),2)==pow(abs(
mixes.
V[0][2][2]),2)-pow(
mixes.
V[0][2][2].real_part(),2));
552 r2.append(
mixes.
M[1][0][1][1]==0);
553 r2.append(pow(abs(
mixes.
V[0][2][2]),2)==1-pow(abs(
mixes.
V[0][1][2]),2)-pow(abs(
mixes.
V[0][0][2]),2));
554 r2.append(pow(abs(
mixes.
V[0][2][1]),2)==1-pow(abs(
mixes.
V[0][1][1]),2)-pow(abs(
mixes.
V[0][0][1]),2));
555 r2.append(abs(sqrt(ex(2))*
GF)==sqrt(ex(2))*
GF);
557 BtoDtaunuSM=collect_common_factors(BtoDtaunuSM.subs(
conjtoabs).subs(r2));
558 BtoDtaunu=collect_common_factors(BtoDtaunu.subs(
conjtoabs).subs(r2));
562 BtoD2taunu=BtoD2taunu.subs(
conjtoabs).subs(r2);
568 add(
"BtoDtaunu_BtoDtaunuSM",BtoDtaunu/BtoDtaunuSM,
new gaussobs(440.0/296, 1.4*58.0/440));
572 add(
"BtoD2taunu_BtoD2taunuSM",BtoD2taunu/BtoDtaunuSM,
new gaussobs(332.0/252, 1.4*24.0/332.0));
576 for(
uint j=0; j<2; j++){
577 ex KtoPimunu, KtoPimunuSM;
578 for(
uint i=0; i<3; i++){
581 ex chcoup_Wcoup=-pow(
MW/
McH,2)*(chiggs.couplingR(up,strange)+chiggs.couplingL(up,strange))\
584 chcoup_Wcoup=collect_common_factors(expand(chcoup_Wcoup));
585 KtoPimunuSM+=collect_common_factors(expand(Wcoup*Wcoup.conjugate()));
586 KtoPimunu+=collect_common_factors(expand(Wcoup*Wcoup.conjugate()*pow(1+chcoup_Wcoup,2)));
588 KtoPimunuSM=collect_common_factors(expand(KtoPimunuSM.subs(
conjtoabs).subs(r2)));
589 KtoPimunu=collect_common_factors(expand(KtoPimunu.subs(
conjtoabs).subs(r2)));
590 KtoPimunu=expand(KtoPimunu.subs(
replacements).real_part().subs(lst(abs(wild()*pow(
MR,-2))==abs(wild())*pow(
MR,-2))).subs(lst(log(wild()*pow(
MR,-2))==log(wild())-2*log(
MR))));
591 KtoPimunu=expand(KtoPimunu.evalf());
592 KtoPimunuSM=expand(KtoPimunuSM.subs(
replacements).real_part().subs(lst(abs(wild()*pow(
MR,-2))==abs(wild())*pow(
MR,-2))).subs(lst(log(wild()*pow(
MR,-2))==log(wild())-2*log(
MR))));
593 KtoPimunuSM=expand(KtoPimunuSM.evalf());
594 KtoPi+=0.5*log(KtoPimunu/KtoPimunuSM);
604 DDbar=expand(DDbar.subs(
replacements).subs(lst(abs(wild()*pow(
MR,-2))==abs(wild())*pow(
MR,-2))).subs(lst(log(wild()*pow(
MR,-2))==log(wild())-2*log(
MR))));
605 DDbar=expand(DDbar.evalf());
606 ex aDDbar=sqrt(DDbar.real_part()*DDbar.real_part()+DDbar.imag_part()*DDbar.imag_part());
613 KKbar=expand(KKbar.subs(
replacements).subs(lst(abs(wild()*pow(
MR,-2))==abs(wild())*pow(
MR,-2))).subs(lst(log(wild()*pow(
MR,-2))==log(wild())-2*log(
MR))));
614 KKbar=expand(KKbar.evalf());
615 ex aKKbar=sqrt(KKbar.real_part()*KKbar.real_part()+KKbar.imag_part()*KKbar.imag_part());
617 ex eK=0.94*imag_part(KKbar)/3.5e-15/sqrt(2);
620 cout<<abs(KKbar)<<endl;
627 ex BBbar=1+ex(std::pow(fB,2))*
mesonmixing(
MB0,bottom,down)/(3.337e-13*Vtb*Vtd.conjugate());
628 add(
"BBbarimag",imag_part(BBbar),
new gauss2obs(-0.199,0.062));
629 add(
"BBbarreal",real_part(BBbar),
new gauss2obs(0.823,0.143));
631 BBbar=3.337e-13*Vtb*Vtd.conjugate();
632 cout<<
"Bbar "<<(abs(imag_part(BBbar))/abs(BBbar)).subs(
replacements)<<endl;
634 ex BsBsbar=1+ex(std::pow(fBs,2))*
mesonmixing(
MBs0,bottom,strange)/(1.186e-11*Vtb*Vts.conjugate());
635 add(
"BsBsbarimag",imag_part(BsBsbar),
new gauss2obs(0,0.1));
636 add(
"BsBsbarreal",real_part(BsBsbar),
new gauss2obs(0.965,0.133));
638 BsBsbar=1.186e-11*Vtb*Vts.conjugate();
639 cout<<
"Bbar "<<(abs(imag_part(BsBsbar))/abs(BsBsbar)).subs(
replacements)<<endl;
645 ex cu=collect_common_factors(expand(chiggs.couplingL(top,bottom)))/
mixes.
mass(top)/(
g/
MW/sqrt(ex(2)))/
mixes.
V[1][2][2];
646 cout<<
"cu "<<cu<<endl;
647 ex Zbb=(cu-0.72)/
McH;
649 cout<<
"Zbb "<<Zbb<<endl;
650 cout<<
"SIZE "<<size()<<endl;
ex decaywidthtest2(const Fermion &ff1) const
ex tautomu_tautoe() const
ex mesondw(const Meson &meson, const Fermion &ff3, const Fermion &ff4, BSpin s=sAny) const
multivector< Matrix, 2 > N
ex fermiontomesontest(const Fermion &ff4, const Fermion &ff3, const Meson &meson, BSpin s=sAny) const
ex decaywidth(const Fermion &ff1, const Fermion &ff2, const Fermion &ff3, const Fermion &ff4, BSpin s=sAny) const
An experimental measure which is an upper limit on a parameter with a given Confidence Level...
multivector< Matrix, 2 > VN
ex fermiontomeson(const Fermion &ff4, const Fermion &ff3, const Meson &meson, BSpin s=sAny) const
ex CHdecaycoupling(Boson higgs, const Fermion &ff3, const Fermion &ff4) const
An experimental measure of a parameter which is a mean value and a standard deviation.
ex mesondwtest(const Meson &meson, const Fermion &ff3, const Fermion &ff4, BSpin s=sAny) const
void appendtolst(lst &reps) const
ex mass(const Fermion &f) const
ex gRR2(const Fermion &f1, const Fermion &f3) const
the same as gaussobs but with a different initializer, such that the uncertainty sigma is absolute ...
multivector< Matrix, 2 > M
ex mesonmixing(ex mesonmass, const Fermion &f1, const Fermion &f2) const
void add(const char *s, ex pred, observable *ob, bool sb=0)
theoretical expression for an experimental measure