33 trueSM.setSliced(
true);
38 if (!trueSM.Update(
DPars))
return (
false);
42int NPbase::OutputOrder()
const {
66 double myAlphaMz = trueSM.alphaMz();
73 double myMw = trueSM.Mw();
75 double alpha = trueSM.alphaMz();
76 double c2 = trueSM.cW2();
77 double s2 = trueSM.sW2();
79 myMw *= 1.0 - alpha / 4.0 / (c2 - s2)
81 - s2 / 2.0 / (c2 - s2) *
DeltaGF();
92 double Gamma_Wij = trueSM.GammaW(fi, fj);
94 double alpha = trueSM.alphaMz();
95 double c2 = trueSM.cW2();
96 double s2 = trueSM.sW2();
98 Gamma_Wij *= 1.0 - 3.0 * alpha / 4.0 / (c2 - s2)
100 - (1.0 + c2) / 2.0 / (c2 - s2) *
DeltaGF();
111 double Gamma_W = trueSM.GammaW();
113 double alpha = trueSM.alphaMz();
114 double c2 = trueSM.cW2();
115 double s2 = trueSM.sW2();
117 Gamma_W *= 1.0 - 3.0 * alpha / 4.0 / (c2 - s2)
119 - (1.0 + c2) / 2.0 / (c2 - s2) *
DeltaGF();
131 double GammWij =
GammaW(fi, fj);
133 return GammWij/GammW;
139 double GammWli, GammWlj;
141 if (li.
is(
"ELECTRON"))
143 else if (li.
is(
"MU"))
145 else if (li.
is(
"TAU"))
148 throw std::runtime_error(
"Error in NPbase::RWlilj. li must be a charged lepton");
150 if (lj.
is(
"ELECTRON"))
152 else if (lj.
is(
"MU"))
154 else if (lj.
is(
"TAU"))
157 throw std::runtime_error(
"Error in NPbase::RWlilj. lj must be a charged lepton");
159 return GammWli/GammWlj;
164 double GammWcX, GammWhad;
178 return GammWcX/GammWhad;
183 if (f.
is(
"TOP"))
return 0.;
186 double alpha = trueSM.alphaMz();
187 double sW2SM = trueSM.sW2();
188 double cW2SM = trueSM.cW2();
189 double gVSM = trueSM.gV_f(f).real();
190 double gASM = trueSM.gA_f(f).real();
193 + (gVSM - gASM) / 4.0 / sW2SM / (cW2SM - sW2SM)
195 + 4.0 * cW2SM * sW2SM *
DeltaGF()));
206 if (f.
is(
"TOP"))
return 0.;
208 double alpha = trueSM.alphaMz();
209 double gASM = trueSM.gA_f(f).real();
259 double DeltaGamma_Zf_2=0.0;
266 bool nonZeroNP =
false;
267 if (delGVf2!=0.0 || delGAf2!=0.0) {nonZeroNP =
true;}
271 if (f.
is(
"LEPTON")) {
277 double gVf = trueSM.gV_f(f).real();
278 double gAf = trueSM.gA_f(f).real();
281 DelGammaZf2 =
Nf * ( 2.0*(gVf*delGVf2 + gAf*delGAf2) + delGVf*delGVf + delGAf*delGAf );
283 DeltaGamma_Zf_2 =
alphaMz()*
Mz / 12.0 / trueSM.sW2()/trueSM.cW2() * DelGammaZf2;
286 return DeltaGamma_Zf_2;
292 bool nonZeroNP =
false;
297 double gVf = trueSM.gV_f(f).real();
298 double gAf = trueSM.gA_f(f).real();
302 if (f.
is(
"LEPTON")) {
308 double alpha = trueSM.alphaMz();
309 double sW2_SM = trueSM.sW2();
310 double cW2_SM = trueSM.cW2();
312 if (delGVf != 0.0 || delGAf != 0.0)
316 double delGammaZf = 0.0;
317 delGammaZf = 2.0 *
Nf * (gVf * delGVf + gAf * delGAf);
328 if(OutputOrder()==0){
return (trueSM.GammaZ(f) ); }
329 if(OutputOrder()==1){
return (trueSM.GammaZ(f) + deltaGamma_Zf(f)); }
330 if(OutputOrder()==2){
return (trueSM.GammaZ(f) + deltaGamma_Zf(f) + deltaGamma_Zf_2(f) ); }
331 if(OutputOrder()==3){
return (trueSM.GammaZ(f) + deltaGamma_Zf_2(f) ); }
335 return (trueSM.GammaZ(f) + deltaGamma_Zf(f) + deltaGamma_Zf_2(f));
343 bool nonZeroNP =
false;
344 double delGVl2[6], delGAl2[6], delGVq2[6], delGAq2[6];
345 for (
int p = 0; p < 6; ++p) {
350 if (delGVq2[p]!=0.0 or delGAq2[p]!=0.0 or delGVl2[p]!=0.0 or delGAl2[p]!=0.0)
355 for(
int p=0; p<6; p++){
366 bool nonZeroNP =
false;
368 double delGVl[6], delGAl[6], delGVq[6], delGAq[6];
369 for (
int p = 0; p < 6; ++p) {
374 if (delGVl[p] != 0.0 || delGAl[p] != 0.0
375 || delGVq[p] != 0.0 || delGAq[p] != 0.0)
381 double deltaGl[6], deltaGq[6];
383 for (
int p = 0; p < 6; ++p) {
384 gVf = trueSM.gV_f(
leptons[p]).real();
385 gAf = trueSM.gA_f(
leptons[p]).real();
386 deltaGl[p] = 2.0 * (gVf * delGVl[p] + gAf * delGAl[p]);
388 gVf = trueSM.gV_f(
quarks[p]).real();
389 gAf = trueSM.gA_f(
quarks[p]).real();
390 deltaGq[p] = 2.0 * (gVf * delGVq[p] + gAf * delGAq[p]);
392 delGammaZ += deltaGl[p] + 3.0 * deltaGq[p];
395 double alpha = trueSM.alphaMz();
396 double sW2_SM = trueSM.sW2();
397 double cW2_SM = trueSM.cW2();
408 if(OutputOrder()==0){
return (trueSM.Gamma_Z() ); }
409 if(OutputOrder()==1){
return (trueSM.Gamma_Z() +
deltaGamma_Z()); }
411 if(OutputOrder()==3){
return (trueSM.Gamma_Z() +
deltaGamma_Z_2() ); }
421 double DeltaRuc_2 = 0.0;
423 bool nonZeroNP=
false;
437 double DeltaRuc = 0.0;
439 bool nonZeroNP=
false;
453 if(OutputOrder()==0){
return (trueSM.Ruc() ); }
454 if(OutputOrder()==1){
return (trueSM.Ruc() +
deltaRuc()); }
456 if(OutputOrder()==3){
return (
deltaRuc_2() ); }
463 double GammZli, GammZlj;
465 if ( li.
is(
"ELECTRON") || li.
is(
"MU") || li.
is(
"TAU") )
468 throw std::runtime_error(
"Error in NPbase::RZlilj. li must be a charged lepton");
470 if ( lj.
is(
"ELECTRON") || lj.
is(
"MU") || lj.
is(
"TAU") )
473 throw std::runtime_error(
"Error in NPbase::RZlilj. lj must be a charged lepton");
475 return GammZli/GammZlj;
481 double DeltaGamma_Zhad_2 = 0.;
482 bool nonZeroNP =
false;
483 double delGVq2[6], delGAq2[6];
484 for (
int p = 0; p < 6; ++p) {
487 if (delGVq2[p] != 0.0 || delGAq2[p] != 0.0) {nonZeroNP =
true;}
491 for(
int p=0; p<6; p++){
496 return DeltaGamma_Zhad_2;
502 bool nonZeroNP =
false;
504 double delGVq[6], delGAq[6];
505 for (
int p = 0; p < 6; ++p) {
508 if (delGVq[p] != 0.0 || delGAq[p] != 0.0)
515 double delGammaZhad = 0.0;
516 for (
int p = 0; p < 6; ++p) {
518 gVf = trueSM.gV_f(
quarks[p]).real();
519 gAf = trueSM.gA_f(
quarks[p]).real();
520 deltaGq[p] = 2.0 * (gVf * delGVq[p] + gAf * delGAq[p]);
522 delGammaZhad += 3.0 * deltaGq[p];
525 double alpha = trueSM.alphaMz();
526 double sW2_SM = trueSM.sW2();
527 double cW2_SM = trueSM.cW2();
546 double GammaZTotSM = trueSM.Gamma_Z();
547 double GammaZfSM = trueSM.GammaZ(f);
549 return (GammaZfSM/GammaZTotSM + delGammaZf/GammaZTotSM - GammaZfSM * delGammaZTot /GammaZTotSM/GammaZTotSM);
555 double sigma_had_2 = 0.;
557 bool nonZeroNP =
false;
558 double delGVl2[6], delGAl2[6], delGVq2[6], delGAq2[6];
559 for (
int p = 0; p < 6; ++p) {
564 if (delGVl2[p]!=0.0 || delGAl2[p]!=0.0 || delGVq2[p]!=0.0 || delGAq2[p]!=0.0)
570 double prefactor =
alphaMz()*
Mz / 12.0 / trueSM.sW2()/trueSM.cW2();
575 double Gamma_lep_SM = 0.0;
576 double Gamma_had_SM = 0.0;
577 for (
int p = 0; p < 6; ++p) {
578 Gamma_lep_SM += 1.0 * prefactor * ( pow(trueSM.gV_f(
leptons[p]).real(),2.0) + pow(trueSM.gA_f(
leptons[p]).real(),2.0) );
579 if (
quarks[p].getName()!=
"TOP") {
580 Gamma_had_SM += 3.0 * prefactor * ( pow(trueSM.gV_f(
quarks[p]).real(),2.0) + pow(trueSM.gA_f(
quarks[p]).real(),2.0) );
583 double Gamma_Z_SM = Gamma_had_SM + Gamma_lep_SM;
594 sigma_had_2 = 12.0*M_PI/pow(
Mz,2.0) * Gamma_e_SM*Gamma_had_SM/pow(Gamma_Z_SM,2.0) * (
595 dGamma_e_2/Gamma_e_SM
596 + dGamma_had_2/Gamma_had_SM
597 - 2.0*dGamma_Z_2/Gamma_Z_SM
598 + dGamma_e*dGamma_had/Gamma_e_SM/Gamma_had_SM
599 - 2.0*dGamma_e*dGamma_Z/Gamma_e_SM/Gamma_Z_SM
600 - 2.0*dGamma_had*dGamma_Z/Gamma_had_SM/Gamma_Z_SM
601 + 3.0*pow(dGamma_Z,2.0)/pow(Gamma_Z_SM,2.0)
610 double sigma_had = 0.;
611 bool nonZeroNP =
false;
613 double delGVl[6], delGAl[6], delGVq[6], delGAq[6];
614 for (
int p = 0; p < 6; ++p) {
619 if (delGVl[p] != 0.0 || delGAl[p] != 0.0
620 || delGVq[p] != 0.0 || delGAq[p] != 0.0)
626 double Gl[6], deltaGl[6], Gq[6], deltaGq[6];
627 double Gq_sum = 0.0, delGq_sum = 0.0;
628 double Gf_sum = 0.0, delGf_sum = 0.0;
629 for (
int p = 0; p < 6; ++p) {
630 gVf = trueSM.gV_f(
leptons[p]).real();
631 gAf = trueSM.gA_f(
leptons[p]).real();
632 Gl[p] = gVf * gVf + gAf*gAf;
633 deltaGl[p] = 2.0 * (gVf * delGVl[p] + gAf * delGAl[p]);
635 gVf = trueSM.gV_f(
quarks[p]).real();
636 gAf = trueSM.gA_f(
quarks[p]).real();
637 Gq[p] = gVf * gVf + gAf*gAf;
638 deltaGq[p] = 2.0 * (gVf * delGVq[p] + gAf * delGAq[p]);
640 Gq_sum += 3.0 * Gq[p];
641 Gf_sum += Gl[p] + 3.0 * Gq[p];
642 delGq_sum += 3.0 * deltaGq[p];
643 delGf_sum += deltaGl[p] + 3.0 * deltaGq[p];
646 sigma_had = 12.0 * M_PI /
Mz /
Mz
647 * Gl[
ELECTRON] * Gq_sum / Gf_sum / Gf_sum
649 + delGq_sum / Gq_sum - 2.0 * delGf_sum / Gf_sum);
658 if(OutputOrder()==0){
return (trueSM.sigma0_had() ); }
671 double sin2_theta_eff_2=0.0;
677 bool nonZeroNP =
false;
678 if (delGVf2!=0.0 || delGAf2!=0.0) {nonZeroNP =
true;}
683 sin2_theta_eff_2 = 1.0/4.0 * delGVf * delGAf / pow(gAf,2.0)
684 - 1.0/4.0 * gVf * pow(delGAf,2.0) / pow(gAf,3.0)
685 - 1.0/4.0 * ( gAf*delGVf2 - gVf*delGAf2) / pow(gAf,2.0) ;
688 return sin2_theta_eff_2;
693 double sin2_theta_eff = 0.;
696 if (delGVf != 0.0 || delGAf != 0.0) {
699 double delGVfOverGAf = (gAf * delGVf - gVf * delGAf) / gAf / gAf;
701 sin2_theta_eff = -delGVfOverGAf / 4.0;
703 return sin2_theta_eff;
709 double sin2_theta_eff_2=0.0;
715 bool nonZeroNP =
false;
716 if (delGVf2!=0.0 || delGAf2!=0.0) {nonZeroNP =
true;}
719 double gVf = trueSM.gV_f(
leptons[
MU]).real();
720 double gAf = trueSM.gA_f(
leptons[
MU]).real();
721 sin2_theta_eff_2 = 1.0/4.0 * delGVf * delGAf / pow(gAf,2.0)
722 - 1.0/4.0 * gVf * pow(delGAf,2.0) / pow(gAf,3.0)
723 - 1.0/4.0 * ( gAf*delGVf2 - gVf*delGAf2) / pow(gAf,2.0) ;
726 return sin2_theta_eff_2;
731 double sin2_theta_eff = 0.;
734 if (delGVf != 0.0 || delGAf != 0.0) {
735 double gVf = trueSM.gV_f(
leptons[
MU]).real();
736 double gAf = trueSM.gA_f(
leptons[
MU]).real();
737 double delGVfOverGAf = (gAf * delGVf - gVf * delGAf) / gAf / gAf;
739 sin2_theta_eff = -delGVfOverGAf / 4.0;
741 return sin2_theta_eff;
746 if (f.is(
"ELECTRON")){
748 if(OutputOrder()==0){
return (trueSM.sin2thetaEff(f)); }
749 if(OutputOrder()==1){
return (trueSM.sin2thetaEff(f) + deltaSin2thetaEff_e()); }
750 if(OutputOrder()==2){
return (trueSM.sin2thetaEff(f) + deltaSin2thetaEff_e() + deltaSin2thetaEff_e_2() ); }
751 if(OutputOrder()==3){
return ( deltaSin2thetaEff_e_2() ); }
755 return (trueSM.sin2thetaEff(f) + deltaSin2thetaEff_e() + deltaSin2thetaEff_e_2());
757 else if (f.is(
"MU")){
759 if(OutputOrder()==0){
return (trueSM.sin2thetaEff(f) ); }
760 if(OutputOrder()==1){
return (trueSM.sin2thetaEff(f) + deltaSin2thetaEff_mu()); }
761 if(OutputOrder()==2){
return (trueSM.sin2thetaEff(f) + deltaSin2thetaEff_mu() + deltaSin2thetaEff_mu_2() ); }
762 if(OutputOrder()==3){
return (deltaSin2thetaEff_mu_2() ); }
766 return (trueSM.sin2thetaEff(f) + deltaSin2thetaEff_mu() + deltaSin2thetaEff_mu_2());
769 return (trueSM.sin2thetaEff(f));
777 bool nonZeroNP =
false;
782 if (delGVf2!=0.0 || delGAf2!=0.0) {nonZeroNP =
true;}
785 double gVf = trueSM.gV_f(f).real();
786 double gAf = trueSM.gA_f(f).real();
787 double Gf = gVf*gVf + gAf*gAf;
789 double f2 = -2.0 * ( gVf*gVf - gAf*gAf ) * ( gAf*delGVf2 - gVf*delGAf2) / Gf / Gf;
790 double f1 = 2.0 * ( gVf*gAf*( gAf*gAf - 3.0*gVf*gVf )*delGAf*delGAf
791 + gVf*gAf*( gVf*gVf - 3.0*gAf*gAf )*delGVf*delGVf
792 - ( pow(gAf,4.0) - 6.0*pow(gAf,2.0)*pow(gVf,2.0) + pow(gVf,4.0) )*delGVf*delGAf
805 if (delGVf != 0.0 || delGAf != 0.0) {
806 double gVf = trueSM.gV_f(f).real();
807 double gAf = trueSM.gA_f(f).real();
808 double Gf = gVf * gVf + gAf*gAf;
809 double delGVfOverGAf = (gAf * delGVf - gVf * delGAf) / gAf / gAf;
811 dAf = -2.0 * (gVf * gVf - gAf * gAf) * gAf * gAf / Gf / Gf*delGVfOverGAf;
820 if(OutputOrder()==0){
return (trueSM.A_f(f) ); }
821 if(OutputOrder()==1){
return (trueSM.A_f(f) + deltaA_f(f)); }
822 if(OutputOrder()==2){
return (trueSM.A_f(f) + deltaA_f(f) + deltaA_f_2(f) ); }
823 if(OutputOrder()==3){
return ( deltaA_f_2(f) ); }
827 return (trueSM.A_f(f) + deltaA_f(f) + deltaA_f_2(f));
835 bool nonZeroNP =
false;
838 if (delGVf2!=0.0 || delGAf2!=0.0) {nonZeroNP =
true;}
861 double gVf = trueSM.gV_f(f).real();
862 double gAf = trueSM.gA_f(f).real();
864 double Ae = 2.0*gVe*gAe/(gVe*gVe+gAe*gAe);
867 double Af = 2.0*gVf*gAf/(gVf*gVf+gAf*gAf);
871 if (f.
is(
"ELECTRON"))
872 dAFB_2 = 3.0/4.0 * ( deltaAe*deltaAe + 2.0*Ae*deltaAe2 );
874 dAFB_2 = 3.0/4.0 * ( deltaAe*deltaAf + Ae*deltaAf2 + Af*deltaAe2 );
884 if (f.
is(
"ELECTRON")) {
885 if (delGVf != 0.0 || delGAf != 0.0) {
886 double gVe = trueSM.gV_f(f).real();
887 double gAe = trueSM.gA_f(f).real();
888 double Ge = gVe * gVe + gAe*gAe;
889 double delGVeOverGAe = (gAe * delGVf - gVe * delGAf) / gAe / gAe;
890 dAFB = -6.0 * gVe * gAe * (gVe * gVe - gAe * gAe) * gAe * gAe / Ge / Ge / Ge*delGVeOverGAe;
895 if (delGVe != 0.0 || delGAe != 0.0 || delGVf != 0.0 || delGAf != 0.0) {
898 double Ge = gVe * gVe + gAe*gAe;
899 double delGVeOverGAe = (gAe * delGVe - gVe * delGAe) / gAe / gAe;
901 double gVf = trueSM.gV_f(f).real();
902 double gAf = trueSM.gA_f(f).real();
903 double Gf = gVf * gVf + gAf*gAf;
904 double delGVfOverGAf = (gAf * delGVf - gVf * delGAf) / gAf / gAf;
906 dAFB = -(3.0 * gVf * gAf * (gVe * gVe - gAe * gAe) * gAe * gAe / Gf / Ge / Ge * delGVeOverGAe
907 + 3.0 * gVe * gAe * (gVf * gVf - gAf * gAf) * gAf * gAf / Ge / Gf / Gf * delGVfOverGAf);
917 if(OutputOrder()==0){
return (trueSM.AFB(f) ); }
918 if(OutputOrder()==1){
return (trueSM.AFB(f) + deltaAFB(f)); }
919 if(OutputOrder()==2){
return (trueSM.AFB(f) + deltaAFB(f) + deltaAFB_2(f) ); }
920 if(OutputOrder()==3){
return ( deltaAFB_2(f) ); }
924 return (trueSM.AFB(f) + deltaAFB(f) + deltaAFB_2(f));
931 double delGVl2=0.0, delGAl2=0.0, delGVq2[6], delGAq2[6];
932 bool nonZeroNP =
false;
933 if (f.
is(
"LEPTON")) {
936 if (delGVl2!=0.0 || delGAl2!=0.0) {nonZeroNP =
true;}
938 for (
int q = 0; q < 6; ++q) {
941 if (delGVq2[q]!=0.0 || delGAq2[q]!=0.0) {nonZeroNP =
true;}
946 double prefactor =
alphaMz()*
Mz / 12.0 / trueSM.sW2()/trueSM.cW2();
948 double Gamma_l_SMtree = 1.0 * prefactor * ( pow(trueSM.gV_f(f).real(),2.0) + pow(trueSM.gA_f(f).real(),2.0) );
949 double Gamma_q_SMtree = 3.0 * prefactor * ( pow(trueSM.gV_f(f).real(),2.0) + pow(trueSM.gA_f(f).real(),2.0) );
951 double Gamma_had_SMtree = 0.0;
952 for (
int q = 0; q < 6; ++q) {
953 Gamma_had_SMtree += 3.0 * prefactor * ( pow(trueSM.gV_f(
quarks[q]).real(),2.0) + pow(trueSM.gA_f(
quarks[q]).real(),2.0) );
963 if(f.
is(
"ELECTRON") || f.
is(
"MU") || f.
is(
"TAU")){
964 dR0_f_2 = Gamma_had_SMtree*pow(deltaGamma_f,2.0) / pow(Gamma_l_SMtree,3.0)
965 - deltaGamma_had*deltaGamma_f / pow(Gamma_l_SMtree,2.0)
966 + (Gamma_l_SMtree*deltaGamma_had_2-Gamma_had_SMtree*deltaGamma_f_2) / pow(Gamma_l_SMtree,2.0);
968 if(f.
is(
"NEUTRINO_1") || f.
is(
"NEUTRINO_2") || f.
is(
"NEUTRINO_3")){
969 dR0_f_2 = Gamma_l_SMtree*pow(deltaGamma_had,2.0) / pow(Gamma_had_SMtree,3.0)
970 - deltaGamma_f*deltaGamma_had / pow(Gamma_had_SMtree,2.0)
971 + (Gamma_had_SMtree*deltaGamma_f_2-Gamma_l_SMtree*deltaGamma_had_2) / pow(Gamma_had_SMtree,2.0);
974 dR0_f_2 = Gamma_q_SMtree*pow(deltaGamma_had,2.0) / pow(Gamma_had_SMtree,3.0)
975 - deltaGamma_f*deltaGamma_had / pow(Gamma_had_SMtree,2.0)
976 + (Gamma_had_SMtree*deltaGamma_f_2-Gamma_q_SMtree*deltaGamma_had_2) / pow(Gamma_had_SMtree,2.0);
985 double dR0_f = 0., delGVl = 0., delGAl = 0., deltaGl = 0., Gl = 0.;
986 bool nonZeroNP =
false;
987 if (f.
is(
"LEPTON")) {
990 if (delGVl != 0.0 || delGAl != 0.0) nonZeroNP =
true;
993 double delGVq[6], delGAq[6];
994 for (
int q = 0; q < 6; ++q) {
997 if (delGVq[q] != 0.0 || delGAq[q] != 0.0) nonZeroNP =
true;
1002 if (f.
is(
"LEPTON")) {
1003 double gVl = trueSM.gV_f(f).real();
1004 double gAl = trueSM.gA_f(f).real();
1005 Gl = gVl * gVl + gAl*gAl;
1006 deltaGl = 2.0 * (gVl * delGVl + gAl * delGAl);
1009 double Gq[6], deltaGq[6];
1011 double Gq_sum = 0.0, delGq_sum = 0.0;
1012 for (
int q = 0; q < 6; ++q) {
1013 gVq = trueSM.gV_f(
quarks[q]).real();
1014 gAq = trueSM.gA_f(
quarks[q]).real();
1015 Gq[q] = gVq * gVq + gAq*gAq;
1016 deltaGq[q] = 2.0 * (gVq * delGVq[q] + gAq * delGAq[q]);
1018 Gq_sum +=
CF * Gq[q];
1019 delGq_sum +=
CF * deltaGq[q];
1022 if ( f.
is(
"NEUTRINO_1") || f.
is(
"NEUTRINO_2") || f.
is(
"NEUTRINO_3") ) {
1023 dR0_f = deltaGl / Gq_sum - Gl * delGq_sum / Gq_sum / Gq_sum;
1025 dR0_f = delGq_sum / Gl - Gq_sum * deltaGl / Gl / Gl;
1028 dR0_f = deltaGq[f.
getIndex() - 6] / Gq_sum
1029 - Gq[f.
getIndex() - 6] * delGq_sum / Gq_sum / Gq_sum;
1037 if(OutputOrder()==0){
return (trueSM.R0_f(f) ); }
1038 if(OutputOrder()==1){
return (trueSM.R0_f(f) + deltaR0_f(f)); }
1039 if(OutputOrder()==2){
return (trueSM.R0_f(f) + deltaR0_f(f) + deltaR0_f_2(f) ); }
1040 if(OutputOrder()==3){
return ( deltaR0_f_2(f) ); }
1044 return (trueSM.R0_f(f) + deltaR0_f(f) + deltaR0_f_2(f));
1049 double dR_inv = 0., delGVe = 0., delGAe = 0., deltaGe = 0., Ge = 0.;
1050 bool nonZeroNP =
false;
1054 if (delGVe != 0.0 || delGAe != 0.0) nonZeroNP =
true;
1056 double delGVnu[3], delGAnu[3];
1057 for (
int p = 0; p < 3; ++p) {
1060 if (delGVnu[p] != 0.0 || delGAnu[p] != 0.0 ) nonZeroNP =
true;
1067 Ge = gVe * gVe + gAe * gAe;
1068 deltaGe = 2.0 * (gVe * delGVe + gAe * delGAe);
1070 double Gnu[3], deltaGnu[3];
1072 double Gnu_sum = 0.0, delGnu_sum = 0.0;
1073 for (
int p = 0; p < 3; ++p) {
1074 gVnu = trueSM.gV_f(
leptons[2*p]).real();
1075 gAnu = trueSM.gA_f(
leptons[2*p]).real();
1078 Gnu[p] = gVnu * gVnu + gAnu * gAnu;
1080 deltaGnu[p] = 2.0 * (gVnu * delGVnu[p] + gAnu * delGAnu[p]);
1083 delGnu_sum += deltaGnu[p];
1086 dR_inv = delGnu_sum / Ge - Gnu_sum * deltaGe / Ge / Ge;
1100 double dGl1, dGl2, dGl3, dGl, dGinv;
1101 double Gl1, Gl2, Gl3, Gl, Ginv;
1102 double dRl1, dRl2, dRl3, dRl;
1103 double Rl1, Rl2, Rl3, Rl;
1110 dGl = (1.0/3.0) * (dGl1 + dGl2 + dGl3);
1116 Gl = (1.0/3.0) * (Gl1 + Gl2 + Gl3);
1130 dRl = (1.0/3.0) * (dRl1 + dRl2 + dRl3);
1136 Rl = (1.0/3.0) * (Rl1 + Rl2 + Rl3);
1138 shad0 = trueSM.sigma0_had();
1140 dNnu = (trueSM.N_nu())*( dGl/Gl - dGinv/Ginv ) -
1157const double NPbase::delta_Dsigma_f(
const Particle f,
const double pol_e,
const double pol_p,
const double s,
const double cos)
const
1162const 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
1167const double NPbase::delta_sigma_had(
const double s,
const double pol_e,
const double pol_p,
const double cosmin,
const double cosmax)
const
1173const double NPbase::delta_sigmaTot_f(
const Particle f,
const double pol_e,
const double pol_p,
const double s)
const
1179const double NPbase::delta_AFB_f(
const Particle f,
const double pol_e,
const double pol_p,
const double s)
const
1186const double NPbase::sigmaSM_ee(
const double pol_e,
const double pol_p,
const double s,
const double cosmin,
const double cosmax)
const
1191const double NPbase::delta_sigma_ee(
const double pol_e,
const double pol_p,
const double s,
const double cosmin,
const double cosmax)
const
1196const double NPbase::delta_sigmaTot_ee(
const double pol_e,
const double pol_p,
const double s)
const
1201const double NPbase::delta_AFB_ee(
const double pol_e,
const double pol_p,
const double s)
const
1209const double NPbase::eeffsigma(
const Particle f,
const double pol_e,
const double pol_p,
const double s,
const double cosmin,
const double cosmax)
const
1211 return (trueSM.eeffsigma(f, pol_e, pol_p,
s, cosmin, cosmax) + delta_sigma_f(f, pol_e, pol_p,
s, cosmin, cosmax));
1215const double NPbase::eeffsigmaE(
const double pol_e,
const double pol_p,
const double s)
const
1217 return (trueSM.eeffsigmaE(pol_e, pol_p,
s) + delta_sigmaTot_ee(pol_e, pol_p,
s));
1221 return (trueSM.eeffsigmaEtsub(pol_e, pol_p,
s) + delta_sigmaTot_ee(pol_e, pol_p,
s));
1225 return (trueSM.eeffsigmaMu(pol_e, pol_p,
s) + delta_sigmaTot_f(
leptons[
MU], pol_e, pol_p,
s));
1229 return (trueSM.eeffsigmaTau(pol_e, pol_p,
s) + delta_sigmaTot_f(
leptons[
TAU], pol_e, pol_p,
s));
1233 return (trueSM.eeffsigmaHadron(pol_e, pol_p,
s) + delta_sigma_had(pol_e, pol_p,
s, -1.0, 1.0));
1237 return (trueSM.eeffsigmaStrange(pol_e, pol_p,
s) + delta_sigmaTot_f(
quarks[
STRANGE], pol_e, pol_p,
s));
1241 return (trueSM.eeffsigmaCharm(pol_e, pol_p,
s) + delta_sigmaTot_f(
quarks[
CHARM], pol_e, pol_p,
s));
1245 return (trueSM.eeffsigmaBottom(pol_e, pol_p,
s) + delta_sigmaTot_f(
quarks[
BOTTOM], pol_e, pol_p,
s));
1251 double sigmaHadSM = trueSM.eeffsigmaHadron(pol_e, pol_p,
s);
1252 double sigmaffSM = trueSM.eeffsigmaE(pol_e, pol_p,
s);
1255 Rf = trueSM.eeffRelectron(pol_e, pol_p,
s)
1256 + delta_sigma_had(pol_e, pol_p,
s, -1.0, 1.0) / sigmaffSM
1257 - delta_sigmaTot_ee(pol_e, pol_p,
s) * sigmaHadSM / sigmaffSM / sigmaffSM;
1263 double sigmaHadSM = trueSM.eeffsigmaHadron(pol_e, pol_p,
s);
1264 double sigmaffSM = trueSM.eeffsigmaEtsub(pol_e, pol_p,
s);
1267 Rf = trueSM.eeffRelectrontsub(pol_e, pol_p,
s)
1268 + delta_sigma_had(pol_e, pol_p,
s, -1.0, 1.0) / sigmaffSM
1269 - delta_sigmaTot_ee(pol_e, pol_p,
s) * sigmaHadSM / sigmaffSM / sigmaffSM;
1273const double NPbase::eeffRmuon(
const double pol_e,
const double pol_p,
const double s)
const
1275 double sigmaHadSM = trueSM.eeffsigmaHadron(pol_e, pol_p,
s);
1276 double sigmaffSM = trueSM.eeffsigmaMu(pol_e, pol_p,
s);
1279 Rf = trueSM.eeffRmuon(pol_e, pol_p,
s)
1280 + delta_sigma_had(pol_e, pol_p,
s, -1.0, 1.0) / sigmaffSM
1281 - delta_sigmaTot_f(
leptons[
MU], pol_e, pol_p,
s) * sigmaHadSM / sigmaffSM / sigmaffSM;
1285const double NPbase::eeffRtau(
const double pol_e,
const double pol_p,
const double s)
const
1287 double sigmaHadSM = trueSM.eeffsigmaHadron(pol_e, pol_p,
s);
1288 double sigmaffSM = trueSM.eeffsigmaTau(pol_e, pol_p,
s);
1291 Rf = trueSM.eeffRtau(pol_e, pol_p,
s)
1292 + delta_sigma_had(pol_e, pol_p,
s, -1.0, 1.0) / sigmaffSM
1293 - delta_sigmaTot_f(
leptons[
TAU], pol_e, pol_p,
s) * sigmaHadSM / sigmaffSM / sigmaffSM;
1299 double sigmaHadSM = trueSM.eeffsigmaHadron(pol_e, pol_p,
s);
1300 double sigmaffSM = trueSM.eeffsigmaStrange(pol_e, pol_p,
s);
1303 Rf = trueSM.eeffRstrange(pol_e, pol_p,
s)
1304 + delta_sigmaTot_f(
quarks[
STRANGE], pol_e, pol_p,
s) / sigmaHadSM
1305 - delta_sigma_had(pol_e, pol_p,
s, -1.0, 1.0) * sigmaffSM / sigmaHadSM / sigmaHadSM;
1309const double NPbase::eeffRcharm(
const double pol_e,
const double pol_p,
const double s)
const
1311 double sigmaHadSM = trueSM.eeffsigmaHadron(pol_e, pol_p,
s);
1312 double sigmaffSM = trueSM.eeffsigmaCharm(pol_e, pol_p,
s);
1315 Rf = trueSM.eeffRcharm(pol_e, pol_p,
s)
1316 + delta_sigmaTot_f(
quarks[
CHARM], pol_e, pol_p,
s) / sigmaHadSM
1317 - delta_sigma_had(pol_e, pol_p,
s, -1.0, 1.0) * sigmaffSM / sigmaHadSM / sigmaHadSM;
1323 double sigmaHadSM = trueSM.eeffsigmaHadron(pol_e, pol_p,
s);
1324 double sigmaffSM = trueSM.eeffsigmaBottom(pol_e, pol_p,
s);
1327 Rf = trueSM.eeffRbottom(pol_e, pol_p,
s)
1328 + delta_sigmaTot_f(
quarks[
BOTTOM], pol_e, pol_p,
s) / sigmaHadSM
1329 - delta_sigma_had(pol_e, pol_p,
s, -1.0, 1.0) * sigmaffSM / sigmaHadSM / sigmaHadSM;
1336const double NPbase::eeffAFBe(
const double pol_e,
const double pol_p,
const double s)
const
1338 return (trueSM.eeffAFBe(pol_e, pol_p,
s) + delta_AFB_ee(pol_e, pol_p,
s));
1342 return (trueSM.eeffAFBetsub(pol_e, pol_p,
s) + delta_AFB_ee(pol_e, pol_p,
s));
1344const double NPbase::eeffAFBmu(
const double pol_e,
const double pol_p,
const double s)
const
1346 return (trueSM.eeffAFBmu(pol_e, pol_p,
s) + delta_AFB_f(
leptons[
MU], pol_e, pol_p,
s));
1348const double NPbase::eeffAFBtau(
const double pol_e,
const double pol_p,
const double s)
const
1350 return (trueSM.eeffAFBtau(pol_e, pol_p,
s) + delta_AFB_f(
leptons[
TAU], pol_e, pol_p,
s));
1354 return (trueSM.eeffAFBstrange(pol_e, pol_p,
s) + delta_AFB_f(
quarks[
STRANGE], pol_e, pol_p,
s));
1358 return (trueSM.eeffAFBcharm(pol_e, pol_p,
s) + delta_AFB_f(
quarks[
CHARM], pol_e, pol_p,
s));
1362 return (trueSM.eeffAFBbottom(pol_e, pol_p,
s) + delta_AFB_f(
quarks[
BOTTOM], pol_e, pol_p,
s));
1369 return (trueSM.LEP2sigmaE(
s) + delta_sigmaTot_ee(0., 0.,
s));
1374 return (trueSM.LEP2sigmaMu(
s) + delta_sigmaTot_f(
leptons[
MU], 0., 0.,
s));
1379 return (trueSM.LEP2sigmaTau(
s) + delta_sigmaTot_f(
leptons[
TAU], 0., 0.,
s));
1384 return (trueSM.LEP2sigmaHadron(
s) + delta_sigma_had(0., 0.,
s, -1.0, 1.0));
1389 return (trueSM.LEP2sigmaCharm(
s) + delta_sigmaTot_f(
quarks[
CHARM], 0., 0.,
s));
1394 return (trueSM.LEP2sigmaBottom(
s) + delta_sigmaTot_f(
quarks[
BOTTOM], 0., 0.,
s));
1399 return (trueSM.LEP2AFBe(
s) + delta_AFB_ee(0., 0.,
s));
1404 return (trueSM.LEP2AFBmu(
s) + delta_AFB_f(
leptons[
MU], 0., 0.,
s));
1409 return (trueSM.LEP2AFBtau(
s) + delta_AFB_f(
leptons[
TAU], 0., 0.,
s));
1414 return (trueSM.LEP2AFBcharm(
s) + delta_AFB_f(
quarks[
CHARM], 0., 0.,
s));
1419 return (trueSM.LEP2AFBbottom(
s) + delta_AFB_f(
quarks[
BOTTOM], 0., 0.,
s));
1424 return (trueSM.LEP2Rcharm(
s));
1429 return (trueSM.LEP2Rbottom(
s));
1434 return (trueSM.LEP2dsigmadcosE(
s,cos) + delta_Dsigma_f(
leptons[
ELECTRON], 0., 0.,
s, cos));
1439 return (trueSM.LEP2dsigmadcosMu(
s,cos) + delta_Dsigma_f(
leptons[
MU], 0., 0.,
s, cos) );
1444 return (trueSM.LEP2dsigmadcosTau(
s,cos) + delta_Dsigma_f(
leptons[
TAU], 0., 0.,
s, cos) );
1449 double Deltacos = fabs(cosmax-cosmin);
1452 return (trueSM.LEP2dsigmadcosBinE(
s,cos,cosmin,cosmax) + delta_sigma_ee(0., 0.,
s, cosmin, cosmax) / Deltacos );
1457 double Deltacos = fabs(cosmax-cosmin);
1460 return (trueSM.LEP2dsigmadcosBinMu(
s,cos,cosmin,cosmax) + delta_sigma_f(
leptons[
MU], 0., 0.,
s, cosmin, cosmax) / Deltacos );
1465 double Deltacos = fabs(cosmax-cosmin);
1468 return (trueSM.LEP2dsigmadcosBinTau(
s,cos,cosmin,cosmax) + delta_sigma_f(
leptons[
TAU], 0., 0.,
s, cosmin, cosmax) / Deltacos );
1474const double NPbase::delta_amuon()
const
1481const double NPbase::delta_Qwemoller(
const double q2,
const double y)
const
1487const double NPbase::delta_alrmoller(
const double q2,
const double y)
const
1493const double NPbase::delta_Qwp()
const
1499const double NPbase::delta_Qwn()
const
1504const double NPbase::delta_gLnuN2()
const
1509const double NPbase::delta_gRnuN2()
const
1514const double NPbase::delta_gVnue()
const
1519const double NPbase::delta_gAnue()
const
1528 return (trueSM.amuon() + delta_amuon());
1533 return (trueSM.Qwemoller(q2,y) + delta_Qwemoller(q2,y));
1538 return (trueSM.alrmoller(q2,y) + delta_alrmoller(q2,y));
1543 return (trueSM.Qwp() + delta_Qwp());
1548 return (trueSM.Qwn() + delta_Qwn());
1553 return (trueSM.gLnuN2() + delta_gLnuN2());
1558 return (trueSM.gRnuN2() + delta_gRnuN2());
1563 return (trueSM.gVnue() + delta_gVnue());
1568 return (trueSM.gAnue() + delta_gAnue());
1576const double NPbase::delta_TauLFU_gmuge()
const
1581const double NPbase::delta_TauLFU_gtaugmu()
const
1586const double NPbase::delta_TauLFU_gtauge()
const
1591const double NPbase::delta_TauLFU_gtaugmuPi()
const
1596const double NPbase::delta_TauLFU_gtaugmuK()
const
1604 return (trueSM.TauLFU_gmuge() + delta_TauLFU_gmuge());
1609 return (trueSM.TauLFU_gtaugmu() + delta_TauLFU_gtaugmu());
1614 return (trueSM.TauLFU_gtauge() + delta_TauLFU_gtauge());
1619 return (trueSM.TauLFU_gtaugmuPi() + delta_TauLFU_gtaugmuPi());
1624 return (trueSM.TauLFU_gtaugmuK() + delta_TauLFU_gtaugmuK());
1630const double NPbase::C1Htot()
const
1632 return ( (trueSM.computeBrHtogg() * C1Hgg) + (trueSM.computeBrHtoWW() * C1HWW) + (trueSM.computeBrHtoZZ() * C1HZZ) + (trueSM.computeBrHtogaga() * C1Hgaga) );
1640 if (sqrt_s <= 0.240) {
1644 }
else if (sqrt_s == 0.250) {
1648 }
else if (sqrt_s == 0.350) {
1652 }
else if (sqrt_s == 0.365) {
1656 }
else if (sqrt_s == 0.380) {
1660 }
else if ((sqrt_s == 0.500)||(sqrt_s == 0.550) ) {
1664 }
else if (sqrt_s == 1.0) {
1668 }
else if (sqrt_s == 1.4) {
1672 }
else if (sqrt_s == 1.5) {
1676 }
else if (sqrt_s == 3.0) {
1681 throw std::runtime_error(
"Bad argument in NPbase::C1eeZH");
1690 if (sqrt_s == 0.240) {
1694 }
else if (sqrt_s == 0.250) {
1698 }
else if (sqrt_s == 0.350) {
1702 }
else if (sqrt_s == 0.365) {
1706 }
else if (sqrt_s == 0.380) {
1710 }
else if (sqrt_s == 0.500) {
1714 }
else if (sqrt_s == 1.0) {
1718 }
else if (sqrt_s == 1.4) {
1722 }
else if (sqrt_s == 1.5) {
1726 }
else if (sqrt_s == 3.0) {
1731 throw std::runtime_error(
"Bad argument in NPbase::C1eeWBF");
1740 if (sqrt_s == 0.240) {
1744 }
else if (sqrt_s == 0.250) {
1748 }
else if (sqrt_s == 0.350) {
1752 }
else if (sqrt_s == 0.365) {
1756 }
else if (sqrt_s == 0.380) {
1760 }
else if (sqrt_s == 0.500) {
1764 }
else if (sqrt_s == 1.0) {
1768 }
else if (sqrt_s == 1.4) {
1772 }
else if (sqrt_s == 1.5) {
1776 }
else if (sqrt_s == 3.0) {
1781 throw std::runtime_error(
"Bad argument in NPbase::C1eeHvv");
1790 if (sqrt_s == 0.240) {
1794 }
else if (sqrt_s == 0.250) {
1798 }
else if (sqrt_s == 0.350) {
1802 }
else if (sqrt_s == 0.365) {
1806 }
else if (sqrt_s == 0.380) {
1810 }
else if (sqrt_s == 0.500) {
1814 }
else if (sqrt_s == 1.0) {
1818 }
else if (sqrt_s == 1.4) {
1822 }
else if (sqrt_s == 1.5) {
1826 }
else if (sqrt_s == 3.0) {
1831 throw std::runtime_error(
"Bad argument in NPbase::C1eeZBF");
1840 if (sqrt_s == 0.500) {
1844 }
else if (sqrt_s == 1.0) {
1848 }
else if (sqrt_s == 1.4) {
1852 }
else if (sqrt_s == 1.5) {
1856 }
else if (sqrt_s == 3.0) {
1861 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.
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