33 trueSM.setSliced(
true);
38 if (!trueSM.Update(
DPars))
return (
false);
42int NPbase::OutputOrder()
const {
66 double myAlphaMz = trueSM.alphaMz();
74 double myDalpha5hMz = trueSM.Dalpha5hMz();
82 double myMw = trueSM.Mw();
84 double alpha = trueSM.alphaMz();
85 double c2 = trueSM.cW2();
86 double s2 = trueSM.sW2();
88 myMw *= 1.0 - alpha / 4.0 / (c2 - s2)
90 - s2 / 2.0 / (c2 - s2) *
DeltaGF();
101 double Gamma_Wij = trueSM.GammaW(fi, fj);
103 double alpha = trueSM.alphaMz();
104 double c2 = trueSM.cW2();
105 double s2 = trueSM.sW2();
107 Gamma_Wij *= 1.0 - 3.0 * alpha / 4.0 / (c2 - s2)
109 - (1.0 + c2) / 2.0 / (c2 - s2) *
DeltaGF();
120 double Gamma_W = trueSM.GammaW();
122 double alpha = trueSM.alphaMz();
123 double c2 = trueSM.cW2();
124 double s2 = trueSM.sW2();
126 Gamma_W *= 1.0 - 3.0 * alpha / 4.0 / (c2 - s2)
128 - (1.0 + c2) / 2.0 / (c2 - s2) *
DeltaGF();
140 double GammWij =
GammaW(fi, fj);
142 return GammWij/GammW;
148 double GammWli, GammWlj;
150 if (li.
is(
"ELECTRON"))
152 else if (li.
is(
"MU"))
154 else if (li.
is(
"TAU"))
157 throw std::runtime_error(
"Error in NPbase::RWlilj. li must be a charged lepton");
159 if (lj.
is(
"ELECTRON"))
161 else if (lj.
is(
"MU"))
163 else if (lj.
is(
"TAU"))
166 throw std::runtime_error(
"Error in NPbase::RWlilj. lj must be a charged lepton");
168 return GammWli/GammWlj;
173 double GammWcX, GammWhad;
187 return GammWcX/GammWhad;
192 if (f.
is(
"TOP"))
return 0.;
195 double alpha = trueSM.alphaMz();
196 double sW2SM = trueSM.sW2();
197 double cW2SM = trueSM.cW2();
198 double gVSM = trueSM.gV_f(f).real();
199 double gASM = trueSM.gA_f(f).real();
202 + (gVSM - gASM) / 4.0 / sW2SM / (cW2SM - sW2SM)
204 + 4.0 * cW2SM * sW2SM *
DeltaGF()));
215 if (f.
is(
"TOP"))
return 0.;
217 double alpha = trueSM.alphaMz();
218 double gASM = trueSM.gA_f(f).real();
268 double DeltaGamma_Zf_2=0.0;
275 bool nonZeroNP =
false;
276 if (delGVf2!=0.0 || delGAf2!=0.0) {nonZeroNP =
true;}
280 if (f.
is(
"LEPTON")) {
286 double gVf = trueSM.gV_f(f).real();
287 double gAf = trueSM.gA_f(f).real();
290 DelGammaZf2 =
Nf * ( 2.0*(gVf*delGVf2 + gAf*delGAf2) + delGVf*delGVf + delGAf*delGAf );
292 DeltaGamma_Zf_2 =
alphaMz()*
Mz / 12.0 / trueSM.sW2()/trueSM.cW2() * DelGammaZf2;
295 return DeltaGamma_Zf_2;
301 bool nonZeroNP =
false;
306 double gVf = trueSM.gV_f(f).real();
307 double gAf = trueSM.gA_f(f).real();
311 if (f.
is(
"LEPTON")) {
317 double alpha = trueSM.alphaMz();
318 double sW2_SM = trueSM.sW2();
319 double cW2_SM = trueSM.cW2();
321 if (delGVf != 0.0 || delGAf != 0.0)
325 double delGammaZf = 0.0;
326 delGammaZf = 2.0 *
Nf * (gVf * delGVf + gAf * delGAf);
337 if(OutputOrder()==0){
return (trueSM.GammaZ(f) ); }
338 if(OutputOrder()==1){
return (trueSM.GammaZ(f) + deltaGamma_Zf(f)); }
339 if(OutputOrder()==2){
return (trueSM.GammaZ(f) + deltaGamma_Zf(f) + deltaGamma_Zf_2(f) ); }
340 if(OutputOrder()==3){
return (trueSM.GammaZ(f) + deltaGamma_Zf_2(f) ); }
344 return (trueSM.GammaZ(f) + deltaGamma_Zf(f) + deltaGamma_Zf_2(f));
352 bool nonZeroNP =
false;
353 double delGVl2[6], delGAl2[6], delGVq2[6], delGAq2[6];
354 for (
int p = 0; p < 6; ++p) {
359 if (delGVq2[p]!=0.0 or delGAq2[p]!=0.0 or delGVl2[p]!=0.0 or delGAl2[p]!=0.0)
364 for(
int p=0; p<6; p++){
375 bool nonZeroNP =
false;
377 double delGVl[6], delGAl[6], delGVq[6], delGAq[6];
378 for (
int p = 0; p < 6; ++p) {
383 if (delGVl[p] != 0.0 || delGAl[p] != 0.0
384 || delGVq[p] != 0.0 || delGAq[p] != 0.0)
390 double deltaGl[6], deltaGq[6];
392 for (
int p = 0; p < 6; ++p) {
393 gVf = trueSM.gV_f(
leptons[p]).real();
394 gAf = trueSM.gA_f(
leptons[p]).real();
395 deltaGl[p] = 2.0 * (gVf * delGVl[p] + gAf * delGAl[p]);
397 gVf = trueSM.gV_f(
quarks[p]).real();
398 gAf = trueSM.gA_f(
quarks[p]).real();
399 deltaGq[p] = 2.0 * (gVf * delGVq[p] + gAf * delGAq[p]);
401 delGammaZ += deltaGl[p] + 3.0 * deltaGq[p];
404 double alpha = trueSM.alphaMz();
405 double sW2_SM = trueSM.sW2();
406 double cW2_SM = trueSM.cW2();
417 if(OutputOrder()==0){
return (trueSM.Gamma_Z() ); }
418 if(OutputOrder()==1){
return (trueSM.Gamma_Z() +
deltaGamma_Z()); }
420 if(OutputOrder()==3){
return (trueSM.Gamma_Z() +
deltaGamma_Z_2() ); }
430 double DeltaRuc_2 = 0.0;
432 bool nonZeroNP=
false;
446 double DeltaRuc = 0.0;
448 bool nonZeroNP=
false;
462 if(OutputOrder()==0){
return (trueSM.Ruc() ); }
463 if(OutputOrder()==1){
return (trueSM.Ruc() +
deltaRuc()); }
465 if(OutputOrder()==3){
return (
deltaRuc_2() ); }
472 double GammZli, GammZlj;
474 if ( li.
is(
"ELECTRON") || li.
is(
"MU") || li.
is(
"TAU") )
477 throw std::runtime_error(
"Error in NPbase::RZlilj. li must be a charged lepton");
479 if ( lj.
is(
"ELECTRON") || lj.
is(
"MU") || lj.
is(
"TAU") )
482 throw std::runtime_error(
"Error in NPbase::RZlilj. lj must be a charged lepton");
484 return GammZli/GammZlj;
490 double DeltaGamma_Zhad_2 = 0.;
491 bool nonZeroNP =
false;
492 double delGVq2[6], delGAq2[6];
493 for (
int p = 0; p < 6; ++p) {
496 if (delGVq2[p] != 0.0 || delGAq2[p] != 0.0) {nonZeroNP =
true;}
500 for(
int p=0; p<6; p++){
505 return DeltaGamma_Zhad_2;
511 bool nonZeroNP =
false;
513 double delGVq[6], delGAq[6];
514 for (
int p = 0; p < 6; ++p) {
517 if (delGVq[p] != 0.0 || delGAq[p] != 0.0)
524 double delGammaZhad = 0.0;
525 for (
int p = 0; p < 6; ++p) {
527 gVf = trueSM.gV_f(
quarks[p]).real();
528 gAf = trueSM.gA_f(
quarks[p]).real();
529 deltaGq[p] = 2.0 * (gVf * delGVq[p] + gAf * delGAq[p]);
531 delGammaZhad += 3.0 * deltaGq[p];
534 double alpha = trueSM.alphaMz();
535 double sW2_SM = trueSM.sW2();
536 double cW2_SM = trueSM.cW2();
555 double GammaZTotSM = trueSM.Gamma_Z();
556 double GammaZfSM = trueSM.GammaZ(f);
558 return (GammaZfSM/GammaZTotSM + delGammaZf/GammaZTotSM - GammaZfSM * delGammaZTot /GammaZTotSM/GammaZTotSM);
564 double sigma_had_2 = 0.;
566 bool nonZeroNP =
false;
567 double delGVl2[6], delGAl2[6], delGVq2[6], delGAq2[6];
568 for (
int p = 0; p < 6; ++p) {
573 if (delGVl2[p]!=0.0 || delGAl2[p]!=0.0 || delGVq2[p]!=0.0 || delGAq2[p]!=0.0)
579 double prefactor =
alphaMz()*
Mz / 12.0 / trueSM.sW2()/trueSM.cW2();
584 double Gamma_lep_SM = 0.0;
585 double Gamma_had_SM = 0.0;
586 for (
int p = 0; p < 6; ++p) {
587 Gamma_lep_SM += 1.0 * prefactor * ( pow(trueSM.gV_f(
leptons[p]).real(),2.0) + pow(trueSM.gA_f(
leptons[p]).real(),2.0) );
588 if (
quarks[p].getName()!=
"TOP") {
589 Gamma_had_SM += 3.0 * prefactor * ( pow(trueSM.gV_f(
quarks[p]).real(),2.0) + pow(trueSM.gA_f(
quarks[p]).real(),2.0) );
592 double Gamma_Z_SM = Gamma_had_SM + Gamma_lep_SM;
603 sigma_had_2 = 12.0*M_PI/pow(
Mz,2.0) * Gamma_e_SM*Gamma_had_SM/pow(Gamma_Z_SM,2.0) * (
604 dGamma_e_2/Gamma_e_SM
605 + dGamma_had_2/Gamma_had_SM
606 - 2.0*dGamma_Z_2/Gamma_Z_SM
607 + dGamma_e*dGamma_had/Gamma_e_SM/Gamma_had_SM
608 - 2.0*dGamma_e*dGamma_Z/Gamma_e_SM/Gamma_Z_SM
609 - 2.0*dGamma_had*dGamma_Z/Gamma_had_SM/Gamma_Z_SM
610 + 3.0*pow(dGamma_Z,2.0)/pow(Gamma_Z_SM,2.0)
619 double sigma_had = 0.;
620 bool nonZeroNP =
false;
622 double delGVl[6], delGAl[6], delGVq[6], delGAq[6];
623 for (
int p = 0; p < 6; ++p) {
628 if (delGVl[p] != 0.0 || delGAl[p] != 0.0
629 || delGVq[p] != 0.0 || delGAq[p] != 0.0)
635 double Gl[6], deltaGl[6], Gq[6], deltaGq[6];
636 double Gq_sum = 0.0, delGq_sum = 0.0;
637 double Gf_sum = 0.0, delGf_sum = 0.0;
638 for (
int p = 0; p < 6; ++p) {
639 gVf = trueSM.gV_f(
leptons[p]).real();
640 gAf = trueSM.gA_f(
leptons[p]).real();
641 Gl[p] = gVf * gVf + gAf*gAf;
642 deltaGl[p] = 2.0 * (gVf * delGVl[p] + gAf * delGAl[p]);
644 gVf = trueSM.gV_f(
quarks[p]).real();
645 gAf = trueSM.gA_f(
quarks[p]).real();
646 Gq[p] = gVf * gVf + gAf*gAf;
647 deltaGq[p] = 2.0 * (gVf * delGVq[p] + gAf * delGAq[p]);
649 Gq_sum += 3.0 * Gq[p];
650 Gf_sum += Gl[p] + 3.0 * Gq[p];
651 delGq_sum += 3.0 * deltaGq[p];
652 delGf_sum += deltaGl[p] + 3.0 * deltaGq[p];
655 sigma_had = 12.0 * M_PI /
Mz /
Mz
656 * Gl[
ELECTRON] * Gq_sum / Gf_sum / Gf_sum
658 + delGq_sum / Gq_sum - 2.0 * delGf_sum / Gf_sum);
667 if(OutputOrder()==0){
return (trueSM.sigma0_had() ); }
680 double sin2_theta_eff_2=0.0;
686 bool nonZeroNP =
false;
687 if (delGVf2!=0.0 || delGAf2!=0.0) {nonZeroNP =
true;}
692 sin2_theta_eff_2 = 1.0/4.0 * delGVf * delGAf / pow(gAf,2.0)
693 - 1.0/4.0 * gVf * pow(delGAf,2.0) / pow(gAf,3.0)
694 - 1.0/4.0 * ( gAf*delGVf2 - gVf*delGAf2) / pow(gAf,2.0) ;
697 return sin2_theta_eff_2;
702 double sin2_theta_eff = 0.;
705 if (delGVf != 0.0 || delGAf != 0.0) {
708 double delGVfOverGAf = (gAf * delGVf - gVf * delGAf) / gAf / gAf;
710 sin2_theta_eff = -delGVfOverGAf / 4.0;
712 return sin2_theta_eff;
718 double sin2_theta_eff_2=0.0;
724 bool nonZeroNP =
false;
725 if (delGVf2!=0.0 || delGAf2!=0.0) {nonZeroNP =
true;}
728 double gVf = trueSM.gV_f(
leptons[
MU]).real();
729 double gAf = trueSM.gA_f(
leptons[
MU]).real();
730 sin2_theta_eff_2 = 1.0/4.0 * delGVf * delGAf / pow(gAf,2.0)
731 - 1.0/4.0 * gVf * pow(delGAf,2.0) / pow(gAf,3.0)
732 - 1.0/4.0 * ( gAf*delGVf2 - gVf*delGAf2) / pow(gAf,2.0) ;
735 return sin2_theta_eff_2;
740 double sin2_theta_eff = 0.;
743 if (delGVf != 0.0 || delGAf != 0.0) {
744 double gVf = trueSM.gV_f(
leptons[
MU]).real();
745 double gAf = trueSM.gA_f(
leptons[
MU]).real();
746 double delGVfOverGAf = (gAf * delGVf - gVf * delGAf) / gAf / gAf;
748 sin2_theta_eff = -delGVfOverGAf / 4.0;
750 return sin2_theta_eff;
755 if (f.is(
"ELECTRON")){
757 if(OutputOrder()==0){
return (trueSM.sin2thetaEff(f)); }
758 if(OutputOrder()==1){
return (trueSM.sin2thetaEff(f) + deltaSin2thetaEff_e()); }
759 if(OutputOrder()==2){
return (trueSM.sin2thetaEff(f) + deltaSin2thetaEff_e() + deltaSin2thetaEff_e_2() ); }
760 if(OutputOrder()==3){
return ( deltaSin2thetaEff_e_2() ); }
764 return (trueSM.sin2thetaEff(f) + deltaSin2thetaEff_e() + deltaSin2thetaEff_e_2());
766 else if (f.is(
"MU")){
768 if(OutputOrder()==0){
return (trueSM.sin2thetaEff(f) ); }
769 if(OutputOrder()==1){
return (trueSM.sin2thetaEff(f) + deltaSin2thetaEff_mu()); }
770 if(OutputOrder()==2){
return (trueSM.sin2thetaEff(f) + deltaSin2thetaEff_mu() + deltaSin2thetaEff_mu_2() ); }
771 if(OutputOrder()==3){
return (deltaSin2thetaEff_mu_2() ); }
775 return (trueSM.sin2thetaEff(f) + deltaSin2thetaEff_mu() + deltaSin2thetaEff_mu_2());
778 return (trueSM.sin2thetaEff(f));
786 bool nonZeroNP =
false;
791 if (delGVf2!=0.0 || delGAf2!=0.0) {nonZeroNP =
true;}
794 double gVf = trueSM.gV_f(f).real();
795 double gAf = trueSM.gA_f(f).real();
796 double Gf = gVf*gVf + gAf*gAf;
798 double f2 = -2.0 * ( gVf*gVf - gAf*gAf ) * ( gAf*delGVf2 - gVf*delGAf2) / Gf / Gf;
799 double f1 = 2.0 * ( gVf*gAf*( gAf*gAf - 3.0*gVf*gVf )*delGAf*delGAf
800 + gVf*gAf*( gVf*gVf - 3.0*gAf*gAf )*delGVf*delGVf
801 - ( pow(gAf,4.0) - 6.0*pow(gAf,2.0)*pow(gVf,2.0) + pow(gVf,4.0) )*delGVf*delGAf
814 if (delGVf != 0.0 || delGAf != 0.0) {
815 double gVf = trueSM.gV_f(f).real();
816 double gAf = trueSM.gA_f(f).real();
817 double Gf = gVf * gVf + gAf*gAf;
818 double delGVfOverGAf = (gAf * delGVf - gVf * delGAf) / gAf / gAf;
820 dAf = -2.0 * (gVf * gVf - gAf * gAf) * gAf * gAf / Gf / Gf*delGVfOverGAf;
829 if(OutputOrder()==0){
return (trueSM.A_f(f) ); }
830 if(OutputOrder()==1){
return (trueSM.A_f(f) + deltaA_f(f)); }
831 if(OutputOrder()==2){
return (trueSM.A_f(f) + deltaA_f(f) + deltaA_f_2(f) ); }
832 if(OutputOrder()==3){
return ( deltaA_f_2(f) ); }
836 return (trueSM.A_f(f) + deltaA_f(f) + deltaA_f_2(f));
844 bool nonZeroNP =
false;
847 if (delGVf2!=0.0 || delGAf2!=0.0) {nonZeroNP =
true;}
870 double gVf = trueSM.gV_f(f).real();
871 double gAf = trueSM.gA_f(f).real();
873 double Ae = 2.0*gVe*gAe/(gVe*gVe+gAe*gAe);
876 double Af = 2.0*gVf*gAf/(gVf*gVf+gAf*gAf);
880 if (f.
is(
"ELECTRON"))
881 dAFB_2 = 3.0/4.0 * ( deltaAe*deltaAe + 2.0*Ae*deltaAe2 );
883 dAFB_2 = 3.0/4.0 * ( deltaAe*deltaAf + Ae*deltaAf2 + Af*deltaAe2 );
893 if (f.
is(
"ELECTRON")) {
894 if (delGVf != 0.0 || delGAf != 0.0) {
895 double gVe = trueSM.gV_f(f).real();
896 double gAe = trueSM.gA_f(f).real();
897 double Ge = gVe * gVe + gAe*gAe;
898 double delGVeOverGAe = (gAe * delGVf - gVe * delGAf) / gAe / gAe;
899 dAFB = -6.0 * gVe * gAe * (gVe * gVe - gAe * gAe) * gAe * gAe / Ge / Ge / Ge*delGVeOverGAe;
904 if (delGVe != 0.0 || delGAe != 0.0 || delGVf != 0.0 || delGAf != 0.0) {
907 double Ge = gVe * gVe + gAe*gAe;
908 double delGVeOverGAe = (gAe * delGVe - gVe * delGAe) / gAe / gAe;
910 double gVf = trueSM.gV_f(f).real();
911 double gAf = trueSM.gA_f(f).real();
912 double Gf = gVf * gVf + gAf*gAf;
913 double delGVfOverGAf = (gAf * delGVf - gVf * delGAf) / gAf / gAf;
915 dAFB = -(3.0 * gVf * gAf * (gVe * gVe - gAe * gAe) * gAe * gAe / Gf / Ge / Ge * delGVeOverGAe
916 + 3.0 * gVe * gAe * (gVf * gVf - gAf * gAf) * gAf * gAf / Ge / Gf / Gf * delGVfOverGAf);
926 if(OutputOrder()==0){
return (trueSM.AFB(f) ); }
927 if(OutputOrder()==1){
return (trueSM.AFB(f) + deltaAFB(f)); }
928 if(OutputOrder()==2){
return (trueSM.AFB(f) + deltaAFB(f) + deltaAFB_2(f) ); }
929 if(OutputOrder()==3){
return ( deltaAFB_2(f) ); }
933 return (trueSM.AFB(f) + deltaAFB(f) + deltaAFB_2(f));
940 double delGVl2=0.0, delGAl2=0.0, delGVq2[6], delGAq2[6];
941 bool nonZeroNP =
false;
942 if (f.
is(
"LEPTON")) {
945 if (delGVl2!=0.0 || delGAl2!=0.0) {nonZeroNP =
true;}
947 for (
int q = 0; q < 6; ++q) {
950 if (delGVq2[q]!=0.0 || delGAq2[q]!=0.0) {nonZeroNP =
true;}
955 double prefactor =
alphaMz()*
Mz / 12.0 / trueSM.sW2()/trueSM.cW2();
957 double Gamma_l_SMtree = 1.0 * prefactor * ( pow(trueSM.gV_f(f).real(),2.0) + pow(trueSM.gA_f(f).real(),2.0) );
958 double Gamma_q_SMtree = 3.0 * prefactor * ( pow(trueSM.gV_f(f).real(),2.0) + pow(trueSM.gA_f(f).real(),2.0) );
960 double Gamma_had_SMtree = 0.0;
961 for (
int q = 0; q < 6; ++q) {
962 Gamma_had_SMtree += 3.0 * prefactor * ( pow(trueSM.gV_f(
quarks[q]).real(),2.0) + pow(trueSM.gA_f(
quarks[q]).real(),2.0) );
972 if(f.
is(
"ELECTRON") || f.
is(
"MU") || f.
is(
"TAU")){
973 dR0_f_2 = Gamma_had_SMtree*pow(deltaGamma_f,2.0) / pow(Gamma_l_SMtree,3.0)
974 - deltaGamma_had*deltaGamma_f / pow(Gamma_l_SMtree,2.0)
975 + (Gamma_l_SMtree*deltaGamma_had_2-Gamma_had_SMtree*deltaGamma_f_2) / pow(Gamma_l_SMtree,2.0);
977 if(f.
is(
"NEUTRINO_1") || f.
is(
"NEUTRINO_2") || f.
is(
"NEUTRINO_3")){
978 dR0_f_2 = Gamma_l_SMtree*pow(deltaGamma_had,2.0) / pow(Gamma_had_SMtree,3.0)
979 - deltaGamma_f*deltaGamma_had / pow(Gamma_had_SMtree,2.0)
980 + (Gamma_had_SMtree*deltaGamma_f_2-Gamma_l_SMtree*deltaGamma_had_2) / pow(Gamma_had_SMtree,2.0);
983 dR0_f_2 = Gamma_q_SMtree*pow(deltaGamma_had,2.0) / pow(Gamma_had_SMtree,3.0)
984 - deltaGamma_f*deltaGamma_had / pow(Gamma_had_SMtree,2.0)
985 + (Gamma_had_SMtree*deltaGamma_f_2-Gamma_q_SMtree*deltaGamma_had_2) / pow(Gamma_had_SMtree,2.0);
994 double dR0_f = 0., delGVl = 0., delGAl = 0., deltaGl = 0., Gl = 0.;
995 bool nonZeroNP =
false;
996 if (f.
is(
"LEPTON")) {
999 if (delGVl != 0.0 || delGAl != 0.0) nonZeroNP =
true;
1002 double delGVq[6], delGAq[6];
1003 for (
int q = 0; q < 6; ++q) {
1006 if (delGVq[q] != 0.0 || delGAq[q] != 0.0) nonZeroNP =
true;
1011 if (f.
is(
"LEPTON")) {
1012 double gVl = trueSM.gV_f(f).real();
1013 double gAl = trueSM.gA_f(f).real();
1014 Gl = gVl * gVl + gAl*gAl;
1015 deltaGl = 2.0 * (gVl * delGVl + gAl * delGAl);
1018 double Gq[6], deltaGq[6];
1020 double Gq_sum = 0.0, delGq_sum = 0.0;
1021 for (
int q = 0; q < 6; ++q) {
1022 gVq = trueSM.gV_f(
quarks[q]).real();
1023 gAq = trueSM.gA_f(
quarks[q]).real();
1024 Gq[q] = gVq * gVq + gAq*gAq;
1025 deltaGq[q] = 2.0 * (gVq * delGVq[q] + gAq * delGAq[q]);
1027 Gq_sum +=
CF * Gq[q];
1028 delGq_sum +=
CF * deltaGq[q];
1031 if ( f.
is(
"NEUTRINO_1") || f.
is(
"NEUTRINO_2") || f.
is(
"NEUTRINO_3") ) {
1032 dR0_f = deltaGl / Gq_sum - Gl * delGq_sum / Gq_sum / Gq_sum;
1034 dR0_f = delGq_sum / Gl - Gq_sum * deltaGl / Gl / Gl;
1037 dR0_f = deltaGq[f.
getIndex() - 6] / Gq_sum
1038 - Gq[f.
getIndex() - 6] * delGq_sum / Gq_sum / Gq_sum;
1046 if(OutputOrder()==0){
return (trueSM.R0_f(f) ); }
1047 if(OutputOrder()==1){
return (trueSM.R0_f(f) + deltaR0_f(f)); }
1048 if(OutputOrder()==2){
return (trueSM.R0_f(f) + deltaR0_f(f) + deltaR0_f_2(f) ); }
1049 if(OutputOrder()==3){
return ( deltaR0_f_2(f) ); }
1053 return (trueSM.R0_f(f) + deltaR0_f(f) + deltaR0_f_2(f));
1058 double dR_inv = 0., delGVe = 0., delGAe = 0., deltaGe = 0., Ge = 0.;
1059 bool nonZeroNP =
false;
1063 if (delGVe != 0.0 || delGAe != 0.0) nonZeroNP =
true;
1065 double delGVnu[3], delGAnu[3];
1066 for (
int p = 0; p < 3; ++p) {
1069 if (delGVnu[p] != 0.0 || delGAnu[p] != 0.0 ) nonZeroNP =
true;
1076 Ge = gVe * gVe + gAe * gAe;
1077 deltaGe = 2.0 * (gVe * delGVe + gAe * delGAe);
1079 double Gnu[3], deltaGnu[3];
1081 double Gnu_sum = 0.0, delGnu_sum = 0.0;
1082 for (
int p = 0; p < 3; ++p) {
1083 gVnu = trueSM.gV_f(
leptons[2*p]).real();
1084 gAnu = trueSM.gA_f(
leptons[2*p]).real();
1087 Gnu[p] = gVnu * gVnu + gAnu * gAnu;
1089 deltaGnu[p] = 2.0 * (gVnu * delGVnu[p] + gAnu * delGAnu[p]);
1092 delGnu_sum += deltaGnu[p];
1095 dR_inv = delGnu_sum / Ge - Gnu_sum * deltaGe / Ge / Ge;
1109 double dGl1, dGl2, dGl3, dGl, dGinv;
1110 double Gl1, Gl2, Gl3, Gl, Ginv;
1111 double dRl1, dRl2, dRl3, dRl;
1112 double Rl1, Rl2, Rl3, Rl;
1119 dGl = (1.0/3.0) * (dGl1 + dGl2 + dGl3);
1125 Gl = (1.0/3.0) * (Gl1 + Gl2 + Gl3);
1139 dRl = (1.0/3.0) * (dRl1 + dRl2 + dRl3);
1145 Rl = (1.0/3.0) * (Rl1 + Rl2 + Rl3);
1147 shad0 = trueSM.sigma0_had();
1149 dNnu = (trueSM.N_nu())*( dGl/Gl - dGinv/Ginv ) -
1166const double NPbase::delta_Dsigma_f(
const Particle f,
const double pol_e,
const double pol_p,
const double s,
const double cos)
const
1171const double NPbase::delta_sigma_f(
const Particle f,
const double pol_e,
const double pol_p,
const double s,
const double cosmin,
const double cosmax)
const
1176const double NPbase::delta_sigma_had(
const double s,
const double pol_e,
const double pol_p,
const double cosmin,
const double cosmax)
const
1182const double NPbase::delta_sigmaTot_f(
const Particle f,
const double pol_e,
const double pol_p,
const double s)
const
1188const double NPbase::delta_AFB_f(
const Particle f,
const double pol_e,
const double pol_p,
const double s)
const
1195const double NPbase::sigmaSM_ee(
const double pol_e,
const double pol_p,
const double s,
const double cosmin,
const double cosmax)
const
1200const double NPbase::delta_sigma_ee(
const double pol_e,
const double pol_p,
const double s,
const double cosmin,
const double cosmax)
const
1205const double NPbase::delta_sigmaTot_ee(
const double pol_e,
const double pol_p,
const double s)
const
1210const double NPbase::delta_AFB_ee(
const double pol_e,
const double pol_p,
const double s)
const
1218const double NPbase::eeffsigma(
const Particle f,
const double pol_e,
const double pol_p,
const double s,
const double cosmin,
const double cosmax)
const
1220 return (trueSM.eeffsigma(f, pol_e, pol_p,
s, cosmin, cosmax) + delta_sigma_f(f, pol_e, pol_p,
s, cosmin, cosmax));
1224const double NPbase::eeffsigmaE(
const double pol_e,
const double pol_p,
const double s)
const
1226 return (trueSM.eeffsigmaE(pol_e, pol_p,
s) + delta_sigmaTot_ee(pol_e, pol_p,
s));
1230 return (trueSM.eeffsigmaEtsub(pol_e, pol_p,
s) + delta_sigmaTot_ee(pol_e, pol_p,
s));
1234 return (trueSM.eeffsigmaMu(pol_e, pol_p,
s) + delta_sigmaTot_f(
leptons[
MU], pol_e, pol_p,
s));
1238 return (trueSM.eeffsigmaTau(pol_e, pol_p,
s) + delta_sigmaTot_f(
leptons[
TAU], pol_e, pol_p,
s));
1242 return (trueSM.eeffsigmaHadron(pol_e, pol_p,
s) + delta_sigma_had(pol_e, pol_p,
s, -1.0, 1.0));
1246 return (trueSM.eeffsigmaStrange(pol_e, pol_p,
s) + delta_sigmaTot_f(
quarks[
STRANGE], pol_e, pol_p,
s));
1250 return (trueSM.eeffsigmaCharm(pol_e, pol_p,
s) + delta_sigmaTot_f(
quarks[
CHARM], pol_e, pol_p,
s));
1254 return (trueSM.eeffsigmaBottom(pol_e, pol_p,
s) + delta_sigmaTot_f(
quarks[
BOTTOM], pol_e, pol_p,
s));
1260 double sigmaHadSM = trueSM.eeffsigmaHadron(pol_e, pol_p,
s);
1261 double sigmaffSM = trueSM.eeffsigmaE(pol_e, pol_p,
s);
1264 Rf = trueSM.eeffRelectron(pol_e, pol_p,
s)
1265 + delta_sigma_had(pol_e, pol_p,
s, -1.0, 1.0) / sigmaffSM
1266 - delta_sigmaTot_ee(pol_e, pol_p,
s) * sigmaHadSM / sigmaffSM / sigmaffSM;
1272 double sigmaHadSM = trueSM.eeffsigmaHadron(pol_e, pol_p,
s);
1273 double sigmaffSM = trueSM.eeffsigmaEtsub(pol_e, pol_p,
s);
1276 Rf = trueSM.eeffRelectrontsub(pol_e, pol_p,
s)
1277 + delta_sigma_had(pol_e, pol_p,
s, -1.0, 1.0) / sigmaffSM
1278 - delta_sigmaTot_ee(pol_e, pol_p,
s) * sigmaHadSM / sigmaffSM / sigmaffSM;
1282const double NPbase::eeffRmuon(
const double pol_e,
const double pol_p,
const double s)
const
1284 double sigmaHadSM = trueSM.eeffsigmaHadron(pol_e, pol_p,
s);
1285 double sigmaffSM = trueSM.eeffsigmaMu(pol_e, pol_p,
s);
1288 Rf = trueSM.eeffRmuon(pol_e, pol_p,
s)
1289 + delta_sigma_had(pol_e, pol_p,
s, -1.0, 1.0) / sigmaffSM
1290 - delta_sigmaTot_f(
leptons[
MU], pol_e, pol_p,
s) * sigmaHadSM / sigmaffSM / sigmaffSM;
1294const double NPbase::eeffRtau(
const double pol_e,
const double pol_p,
const double s)
const
1296 double sigmaHadSM = trueSM.eeffsigmaHadron(pol_e, pol_p,
s);
1297 double sigmaffSM = trueSM.eeffsigmaTau(pol_e, pol_p,
s);
1300 Rf = trueSM.eeffRtau(pol_e, pol_p,
s)
1301 + delta_sigma_had(pol_e, pol_p,
s, -1.0, 1.0) / sigmaffSM
1302 - delta_sigmaTot_f(
leptons[
TAU], pol_e, pol_p,
s) * sigmaHadSM / sigmaffSM / sigmaffSM;
1308 double sigmaHadSM = trueSM.eeffsigmaHadron(pol_e, pol_p,
s);
1309 double sigmaffSM = trueSM.eeffsigmaStrange(pol_e, pol_p,
s);
1312 Rf = trueSM.eeffRstrange(pol_e, pol_p,
s)
1313 + delta_sigmaTot_f(
quarks[
STRANGE], pol_e, pol_p,
s) / sigmaHadSM
1314 - delta_sigma_had(pol_e, pol_p,
s, -1.0, 1.0) * sigmaffSM / sigmaHadSM / sigmaHadSM;
1318const double NPbase::eeffRcharm(
const double pol_e,
const double pol_p,
const double s)
const
1320 double sigmaHadSM = trueSM.eeffsigmaHadron(pol_e, pol_p,
s);
1321 double sigmaffSM = trueSM.eeffsigmaCharm(pol_e, pol_p,
s);
1324 Rf = trueSM.eeffRcharm(pol_e, pol_p,
s)
1325 + delta_sigmaTot_f(
quarks[
CHARM], pol_e, pol_p,
s) / sigmaHadSM
1326 - delta_sigma_had(pol_e, pol_p,
s, -1.0, 1.0) * sigmaffSM / sigmaHadSM / sigmaHadSM;
1332 double sigmaHadSM = trueSM.eeffsigmaHadron(pol_e, pol_p,
s);
1333 double sigmaffSM = trueSM.eeffsigmaBottom(pol_e, pol_p,
s);
1336 Rf = trueSM.eeffRbottom(pol_e, pol_p,
s)
1337 + delta_sigmaTot_f(
quarks[
BOTTOM], pol_e, pol_p,
s) / sigmaHadSM
1338 - delta_sigma_had(pol_e, pol_p,
s, -1.0, 1.0) * sigmaffSM / sigmaHadSM / sigmaHadSM;
1345const double NPbase::eeffAFBe(
const double pol_e,
const double pol_p,
const double s)
const
1347 return (trueSM.eeffAFBe(pol_e, pol_p,
s) + delta_AFB_ee(pol_e, pol_p,
s));
1351 return (trueSM.eeffAFBetsub(pol_e, pol_p,
s) + delta_AFB_ee(pol_e, pol_p,
s));
1353const double NPbase::eeffAFBmu(
const double pol_e,
const double pol_p,
const double s)
const
1355 return (trueSM.eeffAFBmu(pol_e, pol_p,
s) + delta_AFB_f(
leptons[
MU], pol_e, pol_p,
s));
1357const double NPbase::eeffAFBtau(
const double pol_e,
const double pol_p,
const double s)
const
1359 return (trueSM.eeffAFBtau(pol_e, pol_p,
s) + delta_AFB_f(
leptons[
TAU], pol_e, pol_p,
s));
1363 return (trueSM.eeffAFBstrange(pol_e, pol_p,
s) + delta_AFB_f(
quarks[
STRANGE], pol_e, pol_p,
s));
1367 return (trueSM.eeffAFBcharm(pol_e, pol_p,
s) + delta_AFB_f(
quarks[
CHARM], pol_e, pol_p,
s));
1371 return (trueSM.eeffAFBbottom(pol_e, pol_p,
s) + delta_AFB_f(
quarks[
BOTTOM], pol_e, pol_p,
s));
1378 return (trueSM.LEP2sigmaE(
s) + delta_sigmaTot_ee(0., 0.,
s));
1383 return (trueSM.LEP2sigmaMu(
s) + delta_sigmaTot_f(
leptons[
MU], 0., 0.,
s));
1388 return (trueSM.LEP2sigmaTau(
s) + delta_sigmaTot_f(
leptons[
TAU], 0., 0.,
s));
1393 return (trueSM.LEP2sigmaHadron(
s) + delta_sigma_had(0., 0.,
s, -1.0, 1.0));
1398 return (trueSM.LEP2sigmaCharm(
s) + delta_sigmaTot_f(
quarks[
CHARM], 0., 0.,
s));
1403 return (trueSM.LEP2sigmaBottom(
s) + delta_sigmaTot_f(
quarks[
BOTTOM], 0., 0.,
s));
1408 return (trueSM.LEP2AFBe(
s) + delta_AFB_ee(0., 0.,
s));
1413 return (trueSM.LEP2AFBmu(
s) + delta_AFB_f(
leptons[
MU], 0., 0.,
s));
1418 return (trueSM.LEP2AFBtau(
s) + delta_AFB_f(
leptons[
TAU], 0., 0.,
s));
1423 return (trueSM.LEP2AFBcharm(
s) + delta_AFB_f(
quarks[
CHARM], 0., 0.,
s));
1428 return (trueSM.LEP2AFBbottom(
s) + delta_AFB_f(
quarks[
BOTTOM], 0., 0.,
s));
1433 return (trueSM.LEP2Rcharm(
s));
1438 return (trueSM.LEP2Rbottom(
s));
1443 return (trueSM.LEP2dsigmadcosE(
s,cos) + delta_Dsigma_f(
leptons[
ELECTRON], 0., 0.,
s, cos));
1448 return (trueSM.LEP2dsigmadcosMu(
s,cos) + delta_Dsigma_f(
leptons[
MU], 0., 0.,
s, cos) );
1453 return (trueSM.LEP2dsigmadcosTau(
s,cos) + delta_Dsigma_f(
leptons[
TAU], 0., 0.,
s, cos) );
1458 double Deltacos = fabs(cosmax-cosmin);
1461 return (trueSM.LEP2dsigmadcosBinE(
s,cos,cosmin,cosmax) + delta_sigma_ee(0., 0.,
s, cosmin, cosmax) / Deltacos );
1466 double Deltacos = fabs(cosmax-cosmin);
1469 return (trueSM.LEP2dsigmadcosBinMu(
s,cos,cosmin,cosmax) + delta_sigma_f(
leptons[
MU], 0., 0.,
s, cosmin, cosmax) / Deltacos );
1474 double Deltacos = fabs(cosmax-cosmin);
1477 return (trueSM.LEP2dsigmadcosBinTau(
s,cos,cosmin,cosmax) + delta_sigma_f(
leptons[
TAU], 0., 0.,
s, cosmin, cosmax) / Deltacos );
1483const double NPbase::delta_amuon()
const
1490const double NPbase::delta_Qwemoller(
const double q2,
const double y)
const
1496const double NPbase::delta_alrmoller(
const double q2,
const double y)
const
1502const double NPbase::delta_Qwp()
const
1508const double NPbase::delta_Qwn()
const
1513const double NPbase::delta_gLnuN2()
const
1518const double NPbase::delta_gRnuN2()
const
1523const double NPbase::delta_gVnue()
const
1528const double NPbase::delta_gAnue()
const
1537 return (trueSM.amuon() + delta_amuon());
1542 return (trueSM.Qwemoller(q2,y) + delta_Qwemoller(q2,y));
1547 return (trueSM.alrmoller(q2,y) + delta_alrmoller(q2,y));
1552 return (trueSM.Qwp() + delta_Qwp());
1557 return (trueSM.Qwn() + delta_Qwn());
1562 return (trueSM.gLnuN2() + delta_gLnuN2());
1567 return (trueSM.gRnuN2() + delta_gRnuN2());
1572 return (trueSM.gVnue() + delta_gVnue());
1577 return (trueSM.gAnue() + delta_gAnue());
1585const double NPbase::delta_TauLFU_gmuge()
const
1590const double NPbase::delta_TauLFU_gtaugmu()
const
1595const double NPbase::delta_TauLFU_gtauge()
const
1600const double NPbase::delta_TauLFU_gtaugmuPi()
const
1605const double NPbase::delta_TauLFU_gtaugmuK()
const
1613 return (trueSM.TauLFU_gmuge() + delta_TauLFU_gmuge());
1618 return (trueSM.TauLFU_gtaugmu() + delta_TauLFU_gtaugmu());
1623 return (trueSM.TauLFU_gtauge() + delta_TauLFU_gtauge());
1628 return (trueSM.TauLFU_gtaugmuPi() + delta_TauLFU_gtaugmuPi());
1633 return (trueSM.TauLFU_gtaugmuK() + delta_TauLFU_gtaugmuK());
1639const double NPbase::C1Htot()
const
1641 return ( (trueSM.computeBrHtogg() * C1Hgg) + (trueSM.computeBrHtoWW() * C1HWW) + (trueSM.computeBrHtoZZ() * C1HZZ) + (trueSM.computeBrHtogaga() * C1Hgaga) );
1649 if (sqrt_s <= 0.240) {
1653 }
else if (sqrt_s == 0.250) {
1657 }
else if (sqrt_s == 0.350) {
1661 }
else if (sqrt_s == 0.365) {
1665 }
else if (sqrt_s == 0.380) {
1669 }
else if ((sqrt_s == 0.500)||(sqrt_s == 0.550) ) {
1673 }
else if (sqrt_s == 1.0) {
1677 }
else if (sqrt_s == 1.4) {
1681 }
else if (sqrt_s == 1.5) {
1685 }
else if (sqrt_s == 3.0) {
1690 throw std::runtime_error(
"Bad argument in NPbase::C1eeZH");
1699 if (sqrt_s == 0.240) {
1703 }
else if (sqrt_s == 0.250) {
1707 }
else if (sqrt_s == 0.350) {
1711 }
else if (sqrt_s == 0.365) {
1715 }
else if (sqrt_s == 0.380) {
1719 }
else if (sqrt_s == 0.500) {
1723 }
else if (sqrt_s == 1.0) {
1727 }
else if (sqrt_s == 1.4) {
1731 }
else if (sqrt_s == 1.5) {
1735 }
else if (sqrt_s == 3.0) {
1740 throw std::runtime_error(
"Bad argument in NPbase::C1eeWBF");
1749 if (sqrt_s == 0.240) {
1753 }
else if (sqrt_s == 0.250) {
1757 }
else if (sqrt_s == 0.350) {
1761 }
else if (sqrt_s == 0.365) {
1765 }
else if (sqrt_s == 0.380) {
1769 }
else if (sqrt_s == 0.500) {
1773 }
else if (sqrt_s == 1.0) {
1777 }
else if (sqrt_s == 1.4) {
1781 }
else if (sqrt_s == 1.5) {
1785 }
else if (sqrt_s == 3.0) {
1790 throw std::runtime_error(
"Bad argument in NPbase::C1eeHvv");
1799 if (sqrt_s == 0.240) {
1803 }
else if (sqrt_s == 0.250) {
1807 }
else if (sqrt_s == 0.350) {
1811 }
else if (sqrt_s == 0.365) {
1815 }
else if (sqrt_s == 0.380) {
1819 }
else if (sqrt_s == 0.500) {
1823 }
else if (sqrt_s == 1.0) {
1827 }
else if (sqrt_s == 1.4) {
1831 }
else if (sqrt_s == 1.5) {
1835 }
else if (sqrt_s == 3.0) {
1840 throw std::runtime_error(
"Bad argument in NPbase::C1eeZBF");
1849 if (sqrt_s == 0.500) {
1853 }
else if (sqrt_s == 1.0) {
1857 }
else if (sqrt_s == 1.4) {
1861 }
else if (sqrt_s == 1.5) {
1865 }
else if (sqrt_s == 3.0) {
1870 throw std::runtime_error(
"Bad argument in NPbase::C1eettH");
std::map< std::string, double > DPars
virtual const double BR_Zf(const Particle f) const
The Branching ratio of the boson into a given fermion pair, .
virtual const double deltaSin2thetaEff_mu() const
The new physics contribution to the effective muonic weak angle at the pole.
virtual const double deltaR_inv() const
The new physics contribution to the ratio of invisible and leptonic (electron) decay widths of the b...
virtual const double R_inv() const
The ratio of the invisible and leptonic (electron) decay widths of the boson, .
virtual const double deltaGamma_Z() const
The new physics contribution to the total decay width of the boson, .
virtual const double deltaGamma_Zhad() const
The new physics contribution to the hadronic decay width of the boson, .
virtual const double obliqueT() const
The oblique parameter .
virtual const double deltaGamma_Zf(const Particle f) const
The new physics contribution to the decay width of the boson into a given fermion pair,...
virtual const gslpp::complex gA_f(const Particle f) const
The total (SM+NP) contribution to the neutral-current axial-vector coupling .
virtual const gslpp::complex kappaZ_f(const Particle f) const
The effective neutral-current coupling including SM plus NP contributions.
virtual const double AFB(const Particle f) const
The forward-backward asymmetry in at the -pole, .
virtual bool Update(const std::map< std::string, double > &DPars)
The update method for NPbase.
virtual const double deltaSigmaHadron_2() const
The new physics contribution to the cross section for the process at the pole, .
virtual const double deltaAFB(const Particle f) const
The new physics contribution to the forward-backward asymmetry in at the -pole, .
virtual const double deltaGV_f_2(const Particle f) const
virtual const double Gamma_had() const
The hadronic decay width of the boson, .
virtual const double deltaR0_f_2(const Particle f) const
The new physics contribution to the ratio , and , for charged leptons, quarks and neutrinos:
virtual const double GammaW() const
The total width of the boson, .
virtual gslpp::complex deltaGL_Wff_mu(const Particle pbar, const Particle p, const double mu) const
New physics contribution to the charged current coupling .
virtual const double deltaGamma_Zf_2(const Particle f) const
The new physics contribution to the decay width of the boson into a given fermion pair,...
virtual const double A_f(const Particle f) const
The left-right asymmetry in at the -pole, .
virtual const double alphaMz() const
The electromagnetic coupling at the -mass scale, .
virtual const double deltaSigmaHadron() const
The new physics contribution to the cross section for the process at the pole, .
virtual const double deltaN_nu() const
The new physics contribution to the number of neutrinos dervied from the pole measurements.
virtual const double RZlilj(const Particle li, const Particle lj) const
The lepton universality ratio .
virtual const double Mw() const
The mass of the boson, .
virtual const double C1eeZBF(const double sqrt_s) const
The C1 value controlling linear corrections from the Higgs self-coupling to single-Higgs processes fo...
virtual const double sigma0_had() const
The cross section for the process at the pole, .
virtual const double deltaGV_f(const Particle f) const
New physics contribution to the neutral-current vector coupling .
virtual const double C1eeWBF(const double sqrt_s) const
The C1 value controlling linear corrections from the Higgs self-coupling to single-Higgs processes fo...
virtual const double N_nu() const
The number of neutrinos dervied from the pole measurements, .
virtual const double deltaGamma_Zhad_2() const
The new physics contribution to the hadronic decay width of the boson, .
virtual const double BrW(const Particle fi, const Particle fj) const
The branching ratio of the boson decaying into a SM fermion pair, .
virtual const double RWc() const
The ratio .
virtual const double obliqueU() const
The oblique parameter .
virtual const double deltaGA_f(const Particle f) const
New physics contribution to the neutral-current axial-vector coupling .
virtual const double deltaSin2thetaEff_e() const
The new physics contribution to the effective electron/leptonic weak angle at the pole.
virtual const double deltaGA_f_2(const Particle f) const
virtual const double deltaA_f(const Particle f) const
The new physics contribution to the left-right asymmetry in at the -pole, .
virtual const double C1eettH(const double sqrt_s) const
The C1 value controlling linear corrections from the Higgs self-coupling to single-Higgs processes fo...
virtual const double deltaAFB_2(const Particle f) const
The new physics to the forward-backward asymmetry in at the -pole, .
virtual gslpp::complex deltaGR_Wff_mu(const Particle pbar, const Particle p, const double mu) const
New physics contribution to the charged current coupling .
virtual const double R0_f(const Particle f) const
The ratio , and , for charged leptons, quarks and neutrinos, respectively.
virtual gslpp::complex deltaGL_Wff(const Particle pbar, const Particle p) const
New physics contribution to the charged current coupling .
virtual const double RWlilj(const Particle li, const Particle lj) const
The lepton universality ratio .
virtual const double C1eeZH(const double sqrt_s) const
The C1 value controlling linear corrections from the Higgs self-coupling to single-Higgs processes fo...
virtual gslpp::complex deltaGR_Wff(const Particle pbar, const Particle p) const
New physics contribution to the charged current coupling .
virtual const gslpp::complex gV_f(const Particle f) const
The total (SM+NP) contribution to the neutral-current vector coupling .
virtual const double deltaR0_f(const Particle f) const
The new physics contribution to the ratio , and , for charged leptons, quarks and neutrinos,...
virtual const double deltaRuc_2() const
The new physics contribution to the ratio of the width to the -boson hadronic width:
virtual const double Gamma_Z() const
The total decay width of the boson, .
virtual const double sin2thetaEff(const Particle f) const
The leptonic effective weak mixing angle at the the pole.
virtual const double obliqueS() const
The oblique parameter .
virtual const double C1eeHvv(const double sqrt_s) const
The C1 value controlling linear corrections from the Higgs self-coupling to single-Higgs processes fo...
virtual const double deltaSin2thetaEff_mu_2() const
The new physics contribution to the effective muonic weak angle at the pole.
const double deltaGR_f_mu(const Particle p, const double mu) const
New physics contribution to the neutral-current right-handed coupling .
virtual const gslpp::complex rhoZ_f(const Particle f) const
The effective neutral-current coupling including SM plus NP contributions.
virtual const double Ruc() const
The ratio of the width to the -boson hadronic width.
virtual const double deltaRuc() const
The new physics contribution to the ratio of the width to the -boson hadronic width:
virtual const double DeltaGF() const
New physics contribution to the Fermi constant.
NPbase()
The default constructor.
virtual const double deltaGamma_Z_2() const
The new physics contribution to the total decay width of the boson, .
const double deltaGL_f_mu(const Particle p, const double mu) const
New physics contribution to the neutral-current left-handed coupling .
virtual const double Gamma_Zf(const Particle f) const
The decay width of the boson into a given fermion pair, .
virtual const double deltaA_f_2(const Particle f) const
The new physics contribution to the left-right asymmetry in at the -pole, .
virtual const double deltaSin2thetaEff_e_2() const
The new physics contribution to the effective electron weak angle at the pole.
virtual const double Dalpha5hMz() const
The 5-quark contribution to the running of the em constant to the pole. .
bool is(std::string name_i) const
double getIsospin() const
A get method to access the particle isospin.
double getCharge() const
A get method to access the particle charge.
const double Nf(const double mu) const
The number of active flavour at scale .
Particle quarks[6]
The vector of all SM quarks.
A model class for the Standard Model.
virtual const double LEP2sigmaCharm(const double s) const
virtual const double eeffRelectron(const double pol_e, const double pol_p, const double s) const
virtual const double LEP2sigmaHadron(const double s) const
virtual const double LEP2sigmaTau(const double s) const
virtual const double eeffsigmaCharm(const double pol_e, const double pol_p, const double s) const
double Mz
The mass of the boson in GeV.
virtual const double TauLFU_gtaugmuPi() const
The computation of the LFU ratio .
virtual const double LEP2AFBtau(const double s) const
virtual const double gLnuN2() const
The effective neutrino nucleon LH coupling: gLnuN2.
virtual const double LEP2dsigmadcosBinTau(const double s, const double cos, const double cosmin, const double cosmax) const
virtual const double LEP2Rbottom(const double s) const
virtual const double Qwp() const
The computation of the proton weak charge: Qwp.
virtual const double LEP2AFBe(const double s) const
virtual const double eeffAFBmu(const double pol_e, const double pol_p, const double s) const
virtual const double eeffAFBtau(const double pol_e, const double pol_p, const double s) const
virtual const double eeffsigmaMu(const double pol_e, const double pol_p, const double s) const
virtual const double eeffsigma(const Particle f, const double pol_e, const double pol_p, const double s, const double cosmin, const double cosmax) const
virtual const double eeffRmuon(const double pol_e, const double pol_p, const double s) const
virtual const double LEP2AFBcharm(const double s) const
virtual const double eeffAFBcharm(const double pol_e, const double pol_p, const double s) const
virtual const double eeffRstrange(const double pol_e, const double pol_p, const double s) const
virtual const double alrmoller(const double q2, const double y) const
The computation of the parity violating asymmetry in Moller scattering.
virtual const double eeffsigmaEtsub(const double pol_e, const double pol_p, const double s) const
Particle leptons[6]
An array of Particle objects for the leptons.
virtual const double eeffAFBbottom(const double pol_e, const double pol_p, const double s) const
virtual const double LEP2AFBmu(const double s) const
virtual const double LEP2dsigmadcosMu(const double s, const double cos) const
virtual const double Qwemoller(const double q2, const double y) const
The computation of the electron's weak charge.
virtual const double LEP2dsigmadcosBinE(const double s, const double cos, const double cosmin, const double cosmax) const
virtual const double gRnuN2() const
The effective neutrino nucleon RH coupling: gRnuN2.
virtual const double eeffAFBetsub(const double pol_e, const double pol_p, const double s) const
virtual const double TauLFU_gtaugmuK() const
The computation of the LFU ratio .
virtual const double eeffRbottom(const double pol_e, const double pol_p, const double s) const
virtual const double LEP2sigmaE(const double s) const
virtual const double amuon() const
The computation of the anomalous magnetic moment of the muon .
virtual const double LEP2Rcharm(const double s) const
virtual const double Qwn() const
The computation of the neutron weak charge: Qwn.
virtual const double eeffAFBe(const double pol_e, const double pol_p, const double s) const
virtual const double LEP2sigmaMu(const double s) const
virtual const double eeffRcharm(const double pol_e, const double pol_p, const double s) const
virtual const double TauLFU_gtauge() const
The computation of the LFU ratio .
virtual const double eeffsigmaBottom(const double pol_e, const double pol_p, const double s) const
virtual const double eeffsigmaE(const double pol_e, const double pol_p, const double s) const
virtual const double eeffsigmaStrange(const double pol_e, const double pol_p, const double s) const
virtual const double TauLFU_gtaugmu() const
The computation of the LFU ratio .
virtual const double TauLFU_gmuge() const
The computation of the LFU ratio .
double delGammaZ
The theoretical uncertainty in , denoted as , in GeV.
virtual const double eeffsigmaTau(const double pol_e, const double pol_p, const double s) const
virtual const double eeffsigmaHadron(const double pol_e, const double pol_p, const double s) const
virtual const double eeffAFBstrange(const double pol_e, const double pol_p, const double s) const
virtual const double LEP2dsigmadcosTau(const double s, const double cos) const
virtual const double LEP2sigmaBottom(const double s) const
virtual const double LEP2dsigmadcosE(const double s, const double cos) const
virtual bool Update(const std::map< std::string, double > &DPars)
The update method for StandardModel.
virtual const double eeffRelectrontsub(const double pol_e, const double pol_p, const double s) const
virtual const double gAnue() const
The effective (muon) neutrino-electron axial-vector coupling: gAnue.
virtual bool InitializeModel()
A method to initialize the model.
virtual const double LEP2AFBbottom(const double s) const
virtual const double gVnue() const
The effective (muon) neutrino-electron vector coupling: gVnue.
virtual const double LEP2dsigmadcosBinMu(const double s, const double cos, const double cosmin, const double cosmax) const
virtual const double eeffRtau(const double pol_e, const double pol_p, const double s) const