a Code for the Combination of Indirect and Direct Constraints on High Energy Physics Models Logo
EWSUSY Class Reference

A class for SUSY contributions to the EW precision observables. More...

#include <EWSUSY.h>

Detailed Description

A class for SUSY contributions to the EW precision observables.

Author
HEPfit Collaboration

This class is used for the calculations of SUSY contributions to the EW precision observables, where Rosiek's notation is adopted internally. The conversions from Rosiek's notation to SLHA one are implemented in EWSUSY::SetRosiekParameters(), which is called from SUSY::PostUpdate().

References
Chankowski, Dabelstein, Hollik, Mosle, Pokorski and Rosiek, NPB 417 (1994) 101;
Chankowski, Pokorski and Rosiek, NPB 423 (1994) 437;
Rosiek, hep-ph/9511250, where an updated version is available at author's webpage.

Definition at line 36 of file EWSUSY.h.

Public Member Functions

gslpp::complex delta_v (const double mu, const QCD::lepton M, const QCD::lepton J, const double Mw_i) const
 
double DeltaAlphaL5q_SM_EW1 () const
 The SM one-loop leptonic and five-flavour-hadronic corrections to \(\alpha\) at Z-mass scale. More...
 
double DeltaR_boxLL_SUSY (const double Mw_i) const
 The LL SUSY box corrections to \(\Delta r\) in the 't Hooft-Feynman gauge. More...
 
double DeltaR_boxLR_SUSY (const double Mw_i) const
 The LR SUSY box corrections to \(\Delta r\) in the 't Hooft-Feynman gauge. More...
 
double DeltaR_neutrino_SUSY (const double Mw_i) const
 The renormalized SUSY neutrino wave-function contribution to \(\Delta r\) in the 't Hooft-Feynman gauge. More...
 
double DeltaR_rem_SM (const double Mw_i) const
 The SM one-loop renormalized vertex and box corrections to \(\Delta r\) in the 't Hooft-Feynman gauge. More...
 
double DeltaR_SUSY_EW1 (const double Mw_i) const
 The one-loop SUSY contribution to \(\Delta r\). More...
 
double DeltaR_TOTAL_EW1 (const double Mw_i) const
 The total one-loop contribution to \(\Delta r\) in the MSSM. More...
 
double DeltaR_vertex_SUSY (const double Mw_i) const
 The renormalized SUSY vertex corrections to \(\Delta r\) in the 't Hooft-Feynman gauge. More...
 
gslpp::complex dFA (const double mu, const double p2, const double mi, const double mj, const gslpp::complex cV_aij, const gslpp::complex cV_bji, const gslpp::complex cA_aij, const gslpp::complex cA_bji) const
 The derivative of \(F_A^{ab}(p^2,m_i,m_j,c_V^{aij},c_V^{bji},c_A^{aij},c_A^{bji})\) with respect to \(p^2\). More...
 
 EWSUSY (const SUSY &SUSY_in)
 Constructor. More...
 
gslpp::complex FA (const double mu, const double p2, const double mi, const double mj, const gslpp::complex cV_aij, const gslpp::complex cV_bji, const gslpp::complex cA_aij, const gslpp::complex cA_bji) const
 Fermionic contribuiton to the transverse part of a gauge-boson self-energy, \(F_A^{ab}(p^2,m_i,m_j,c_V^{aij},c_V^{bji},c_A^{aij},c_A^{bji})\). More...
 
gslpp::complex PiT_AZ (const double mu, const double p2, const double Mw_i) const
 The transverse part of the self-energy, \(\Pi_{\gamma Z}^T(p^2)\), for the mixing between photon and Z boson in the 't Hooft-Feynman gauge. More...
 
gslpp::complex PiT_W (const double mu, const double p2, const double Mw_i) const
 The transverse part of the W-boson self-energy, \(\Pi_W^T(p^2)\), in the 't Hooft-Feynman gauge. More...
 
gslpp::complex PiT_Z (const double mu, const double p2, const double Mw_i) const
 The transverse part of the Z-boson self-energy, \(\Pi_Z^T(p^2)\), in the 't Hooft-Feynman gauge. More...
 
double PiThat_W_0 (const double Mw_i) const
 The renormalized transverse W-boson self-energy at zero momentum transefer in the 't Hooft-Feynman gauge. More...
 
gslpp::complex PiTp_A (const double mu, const double p2, const double Mw_i) const
 The derivative of the transverse part of the photon self-energy with respect to \(p^2\), \(\Pi_{\gamma}^{T\prime}(p^2)\), in the 't Hooft-Feynman gauge. More...
 
void SetRosiekParameters ()
 Sets parameters in Rosiek's notation. More...
 
gslpp::complex Sigma_nu_0 (const double mu, const QCD::lepton I, const QCD::lepton J, const double Mw_i) const
 The SUSY neutrino self-energy at zero momentum transfer in the 't Hooft-Feynman gauge. More...
 
gslpp::complex v (const double mu, const QCD::lepton M, const QCD::lepton J, const double Mw_i) const
 

Constructor & Destructor Documentation

◆ EWSUSY()

EWSUSY::EWSUSY ( const SUSY SUSY_in)

Constructor.

Parameters
[in]SUSY_inA reference to a SUSY object.

Definition at line 33 of file EWSUSY.cpp.

34: PV(true), mySUSY(SUSY_in),
35 Yu(3,3,0.0), Yd(3,3,0.0), Yl(3,3,0.0),
36 Au(3,3,0.0), Ad(3,3,0.0), Al(3,3,0.0),
37 Zm(2,2,0.), Zp(2,2,0.), ZN(4,4,0.),
38 ZU(6,6,0.), ZD(6,6,0.), ZL(6,6,0.), Zne(6,6,0.),
39 ZR(2,2,0.), ZH(2,2,0.)
40{
41}

Member Function Documentation

◆ delta_v()

gslpp::complex EWSUSY::delta_v ( const double  mu,
const QCD::lepton  M,
const QCD::lepton  J,
const double  Mw_i 
) const
Parameters
[in]muThe renormalization scale \(\mu\).
[in]MA charged lepton.
[in]JA neutrino.
[in]Mw_iThe W-boson mass \(M_W\).
Returns
\(\delta v(M,J)\).
References
Eq. (A.21) in [Chankowski, Dabelstein, Hollik, Mosle, Pokorski and Rosiek, NPB 417 (1994) 101].

Definition at line 1033 of file EWSUSY.cpp.

1035{
1036 int intM, intJ;
1037 switch (M) {
1039 case StandardModel::MU:
1040 case StandardModel::TAU:
1041 intM = ((int)M - StandardModel::ELECTRON)/2;
1042 break;
1043 default:
1044 throw std::runtime_error("EWSUSY::delta_v(): Wrong argument!");
1045 }
1046 switch (J) {
1050 intJ = ((int)J - StandardModel::NEUTRINO_1)/2;
1051 break;
1052 default:
1053 throw std::runtime_error("EWSUSY::delta_v(): Wrong argument!");
1054 }
1055
1056 gslpp::complex delv = gslpp::complex(0.0, 0.0, false);
1057 double muIR = mu; /* fictional scale, since B0p(0,m1^2,m2^2) is IR finite */
1058 gslpp::complex b0p, b0;
1059
1060 /* charged-slepton - neutralino loops */
1061 for (int k=0; k<6; ++k)
1062 for (int j=0; j<4; ++j) {
1063 b0p = PV.B0p(muIR*muIR, 0.0, Mse2[k], mN[j]*mN[j]);
1064 b0 = PV.B0(mu*mu, 0.0, Mse2[k], mN[j]*mN[j]);
1065 delv += 0.5*L_eLN(intM, k, j, Mw_i)*L_eLN(intJ, k, j, Mw_i).conjugate()
1066 *( (Mse2[k] - mN[j]*mN[j])*b0p - b0 );
1067 }
1068
1069 /* sneutrino - chargino loops */
1070 for (int K=0; K<3; ++K) /* K=0-2 for left-handed sneutrinos */
1071 for (int i=0; i<2; ++i) {
1072 b0p = PV.B0p(muIR*muIR, 0.0, Msn2[K], mC[i]*mC[i]);
1073 b0 = PV.B0(mu*mu, 0.0, Msn2[K], mC[i]*mC[i]);
1074 delv += 0.5*L_esnC(intM, K, i, Mw_i)*L_esnC(intJ, K, i, Mw_i).conjugate()
1075 *( (Msn2[K] - mC[i]*mC[i])*b0p - b0 );
1076 }
1077
1078 return ( delv/16.0/M_PI/M_PI );
1079}
@ NEUTRINO_2
Definition: QCD.h:313
@ NEUTRINO_1
Definition: QCD.h:311
@ MU
Definition: QCD.h:314
@ ELECTRON
Definition: QCD.h:312
@ NEUTRINO_3
Definition: QCD.h:315
@ TAU
Definition: QCD.h:316

◆ DeltaAlphaL5q_SM_EW1()

double EWSUSY::DeltaAlphaL5q_SM_EW1 ( ) const

The SM one-loop leptonic and five-flavour-hadronic corrections to \(\alpha\) at Z-mass scale.

Returns
\(\Delta\alpha^{\ell + 5q}(M_Z^2)\) at one-loop level.

Definition at line 1182 of file EWSUSY.cpp.

1183{
1184 /* Renormalization scale (varied for checking the cancellation of UV divergences */
1185 double mu = mySUSY.getMz() * RenormalizationScaleFactor;
1186
1187 double Mz2 = mySUSY.getMz()*mySUSY.getMz();
1188 double e = sqrt(4.0*M_PI*mySUSY.getAle());
1189 double Nc = mySUSY.getNc();
1190
1191 double DelA_l = 0.0, DelA_d = 0.0, DelA_u = 0.0;
1192
1193 /* SM fermion loops */
1194 gslpp::complex cV_Aee = - e;
1195 gslpp::complex cA_Aee = 0.0;
1196 gslpp::complex cV_Add = - e/3.0;
1197 gslpp::complex cA_Add = 0.0;
1198 gslpp::complex cV_Auu = 2.0/3.0*e;
1199 gslpp::complex cA_Auu = 0.0;
1200 for (int I=0; I<3; ++I) {
1201 /* charged leptons */
1202 DelA_l += FA(mu, Mz2, m_l[I], m_l[I], cV_Aee, cV_Aee, cA_Aee, cA_Aee).real()/Mz2;
1203 DelA_l -= dFA(mu, 0.0, m_l[I], m_l[I], cV_Aee, cV_Aee, cA_Aee, cA_Aee).real();
1204
1205 /* down-type quarks */
1206 DelA_d += Nc*FA(mu, Mz2, m_d[I], m_d[I], cV_Add, cV_Add, cA_Add, cA_Add).real()/Mz2;
1207 DelA_d -= Nc*dFA(mu, 0.0, m_d[I], m_d[I], cV_Add, cV_Add, cA_Add, cA_Add).real();
1208
1209 /* up-type quarks, not including top quark */
1210 if (I!=3) {
1211 DelA_u += Nc*FA(mu, Mz2, m_u[I], m_u[I], cV_Auu, cV_Auu, cA_Auu, cA_Auu).real()/Mz2;
1212 DelA_u -= Nc*dFA(mu, 0.0, m_u[I], m_u[I], cV_Auu, cV_Auu, cA_Auu, cA_Auu).real();
1213 }
1214 }
1215
1216 /* Debug */
1217 //std::cout << "EWSUSY(l) " << DelA_l/16.0/M_PI/M_PI << std::endl;
1218 //std::cout << "EWSM(l) " << getMyOneLoopEW()->DeltaAlpha_l(Mz2) << std::endl;
1219 //std::cout << "EWSUSY(q) " << (DelA_d + DelA_u)/16.0/M_PI/M_PI << std::endl;
1220 //std::cout << "EWSM(had) " << getMyOneLoopEW()->DeltaAlpha_5q(Mz2) << std::endl;
1221
1222 return ( (DelA_l + DelA_d + DelA_u)/16.0/M_PI/M_PI );
1223}
gslpp::complex dFA(const double mu, const double p2, const double mi, const double mj, const gslpp::complex cV_aij, const gslpp::complex cV_bji, const gslpp::complex cA_aij, const gslpp::complex cA_bji) const
The derivative of with respect to .
Definition: EWSUSY.cpp:119
gslpp::complex FA(const double mu, const double p2, const double mi, const double mj, const gslpp::complex cV_aij, const gslpp::complex cV_bji, const gslpp::complex cA_aij, const gslpp::complex cA_bji) const
Fermionic contribuiton to the transverse part of a gauge-boson self-energy, .
Definition: EWSUSY.cpp:101

◆ DeltaR_boxLL_SUSY()

double EWSUSY::DeltaR_boxLL_SUSY ( const double  Mw_i) const

The LL SUSY box corrections to \(\Delta r\) in the 't Hooft-Feynman gauge.

Parameters
[in]Mw_iThe W-boson mass \(M_W\).
Returns
The LL SUSY box corrections to \(\Delta r\) in the 't Hooft-Feynman gauge.
References
Eqs. (A.5), (A.6), (A.7) and (A.19) in [Chankowski, Dabelstein, Hollik, Mosle, Pokorski and Rosiek, NPB 417 (1994) 101].

Definition at line 778 of file EWSUSY.cpp.

779{
780 int M = 1; // MU
781 int N = 0; // ELECTRON
782 int J = 1; // NEUTRINO_2
783 int I = 0; // NEUTRINO_1
784
785 gslpp::complex a11 = gslpp::complex(0.0, 0.0, false);
786 gslpp::complex a12 = gslpp::complex(0.0, 0.0, false);
787
788 /* charged-lepton - sneutrino - chargino - neutralino loop */
789 for (int k=0; k<6; ++k)
790 for (int K=0; K<3; ++K) /* K=0-2 for left-handed sneutrinos */
791 for (int i=0; i<2; ++i)
792 for (int j=0; j<4; ++j) {
793 gslpp::complex FF = F(sqrt(Mse2[k]), sqrt(Msn2[K]), mC[i], mN[j]);
794 a11 += 0.5
795 *L_esnC(M, K, i, Mw_i)
796 *L_nLC(I, k, i, Mw_i)
797 *L_nsnN(J, K, j, Mw_i).conjugate()
798 *L_eLN(N, k, j, Mw_i).conjugate()
799 *mC[i]*mN[j]*FF;
800 a11 += 0.5
801 *L_eLN(M, k, j, Mw_i)
802 *L_nsnN(I, K, j, Mw_i)
803 *L_nLC(J, k, i, Mw_i).conjugate()
804 *L_esnC(N, K, i, Mw_i).conjugate()
805 *mC[i]*mN[j]*FF;
806 }
807
808 /* charged-lepton - charged-lepton - chargino - neutralino loop */
809 for (int k=0; k<6; ++k)
810 for (int l=0; l<6; ++l)
811 for (int i=0; i<2; ++i)
812 for (int j=0; j<4; ++j) {
813 a11 += L_eLN(M, k, j, Mw_i)
814 *L_nLC(J, k, i, Mw_i).conjugate()
815 *L_nLC(I, l, i, Mw_i)
816 *L_eLN(N, l, j, Mw_i).conjugate()
817 *H(sqrt(Mse2[k]), sqrt(Mse2[l]), mC[i], mN[j]);
818 }
819
820 /* sneutrino - sneutrino - chargino - neutralino loop */
821 for (int K=0; K<3; ++K) /* K=0-2 for left-handed sneutrinos */
822 for (int L=0; L<3; ++L) /* L=0-2 for left-handed sneutrinos */
823 for (int i=0; i<2; ++i)
824 for (int j=0; j<4; ++j) {
825 a11 += L_esnC(M, K, i, Mw_i)
826 *L_nsnN(J, K, j, Mw_i).conjugate()
827 *L_nsnN(I, L, j, Mw_i)
828 *L_esnC(N, L, i, Mw_i).conjugate()
829 *H(sqrt(Msn2[K]), sqrt(Msn2[L]), mC[i], mN[j]);
830 }
831
832 /* charged-lepton - sneutrino - chargino - chargino loop */
833 for (int k=0; k<6; ++k)
834 for (int K=0; K<3; ++K) /* K=0-2 for left-handed sneutrinos */
835 for (int i=0; i<2; ++i)
836 for (int j=0; j<2; ++j) {
837 a12 += 0.5
838 *L_esnC(M, K, i, Mw_i)
839 *L_nLC(I, k, i, Mw_i)
840 *L_nLC(J, k, j, Mw_i).conjugate()
841 *L_esnC(N, K, j, Mw_i).conjugate()
842 *mC[i]*mC[j]*F(sqrt(Mse2[k]), sqrt(Msn2[K]), mC[i], mC[j]);
843 }
844
845 /* charged-lepton - sneutrino - neutralino - neutralino loop */
846 for (int k=0; k<6; ++k)
847 for (int K=0; K<3; ++K) /* K=0-2 for left-handed sneutrinos */
848 for (int i=0; i<4; ++i)
849 for (int j=0; j<4; ++j) {
850 a12 += 0.5
851 *L_eLN(M, k, i, Mw_i)
852 *L_nsnN(I, K, i, Mw_i)
853 *L_nsnN(J, K, j, Mw_i).conjugate()
854 *L_eLN(N, k, j, Mw_i).conjugate()
855 *mN[i]*mN[j]*F(sqrt(Mse2[k]), sqrt(Msn2[K]), mN[i], mN[j]);
856 a12 += L_eLN(M, k, i, Mw_i)
857 *L_nsnN(J, K, i, Mw_i).conjugate()
858 *L_nsnN(I, K, j, Mw_i)
859 *L_eLN(N, k, j, Mw_i).conjugate()
860 *H(sqrt(Mse2[k]), sqrt(Msn2[K]), mN[i], mN[j]);
861 }
862
863 gslpp::complex a1 = (a11 + a12)/16.0/M_PI/M_PI;
864
865 double sW2 = 1.0 - Mw_i*Mw_i/mySUSY.getMz()/mySUSY.getMz();
866 return ( - sW2*Mw_i*Mw_i/2.0/M_PI/mySUSY.getAle()*a1.real() );
867}

◆ DeltaR_boxLR_SUSY()

double EWSUSY::DeltaR_boxLR_SUSY ( const double  Mw_i) const

The LR SUSY box corrections to \(\Delta r\) in the 't Hooft-Feynman gauge.

Parameters
[in]Mw_iThe W-boson mass \(M_W\).
Returns
The LR SUSY box corrections to \(\Delta r\) in the 't Hooft-Feynman gauge.
References
Eqs. (A.8), (A.9) and (A.10) in [Chankowski, Dabelstein, Hollik, Mosle, Pokorski and Rosiek, NPB 417 (1994) 101].

Definition at line 869 of file EWSUSY.cpp.

870{
871 int M = 1; // MU
872 int N = 0; // ELECTRON
873 int J = 1; // NEUTRINO_2
874 int I = 0; // NEUTRINO_1
875
876 gslpp::complex a21 = gslpp::complex(0.0, 0.0, false);
877 gslpp::complex a22 = gslpp::complex(0.0, 0.0, false);
878
879 /* charged-lepton - sneutrino - chargino - neutralino loop */
880 for (int k=0; k<6; ++k)
881 for (int K=0; K<3; ++K) /* K=0-2 for left-handed sneutrinos */
882 for (int i=0; i<2; ++i)
883 for (int j=0; j<4; ++j) {
884 gslpp::complex HH = H(sqrt(Mse2[k]), sqrt(Msn2[K]), mC[i], mN[j]);
885 a21 += - 2.0
886 *R_esnC(M, K, i)
887 *L_nLC(I, k, i, Mw_i)
888 *L_nsnN(J, K, j, Mw_i).conjugate()
889 *R_eLN(N, k, j, Mw_i).conjugate()
890 *HH;
891 a21 += - 2.0
892 *R_eLN(M, k, j, Mw_i)
893 *L_nsnN(I, K, j, Mw_i)
894 *L_nLC(J, k, i, Mw_i).conjugate()
895 *R_esnC(N, K, i).conjugate()
896 *HH;
897 }
898
899 /* charged-lepton - charged-lepton - chargino - neutralino loop */
900 for (int k=0; k<6; ++k)
901 for (int l=0; l<6; ++l)
902 for (int i=0; i<2; ++i)
903 for (int j=0; j<4; ++j) {
904 a21 += - 2.0
905 *R_eLN(M, k, j, Mw_i)
906 *L_nLC(J, k, i, Mw_i).conjugate()
907 *L_nLC(I, l, i, Mw_i)
908 *R_eLN(N, l, j, Mw_i).conjugate()
909 *H(sqrt(Mse2[k]), sqrt(Mse2[l]), mC[i], mN[j]);
910 }
911
912 /* sneutrino - sneutrino - chargino - neutralino loop */
913 for (int K=0; K<3; ++K) /* K=0-2 for left-handed sneutrinos */
914 for (int L=0; L<3; ++L) /* L=0-2 for left-handed sneutrinos */
915 for (int i=0; i<2; ++i)
916 for (int j=0; j<4; ++j) {
917 a21 += - 2.0
918 *R_esnC(M, K, i)
919 *L_nsnN(J, K, j, Mw_i).conjugate()
920 *L_nsnN(I, L, j, Mw_i)
921 *R_esnC(N, L, i).conjugate()
922 *H(sqrt(Msn2[K]), sqrt(Msn2[L]), mC[i], mN[j]);
923 }
924
925 /* charged-lepton - sneutrino - neutralino - neutralino loop */
926 for (int k=0; k<6; ++k)
927 for (int K=0; K<3; ++K) /* K=0-2 for left-handed sneutrinos */
928 for (int i=0; i<4; ++i)
929 for (int j=0; j<4; ++j) {
930 a22 += R_eLN(M, k, i, Mw_i)
931 *L_nsnN(J, K, i, Mw_i).conjugate()
932 *L_nsnN(I, K, j, Mw_i)
933 *R_eLN(N, k, j, Mw_i).conjugate()
934 *mN[i]*mN[j]*F(sqrt(Mse2[k]), sqrt(Msn2[K]), mN[i], mN[j]);
935 a22 += 2.0
936 *R_eLN(M, k, i, Mw_i)
937 *L_nsnN(I, K, i, Mw_i)
938 *L_nsnN(J, K, j, Mw_i).conjugate()
939 *R_eLN(N, k, j, Mw_i).conjugate()
940 *H(sqrt(Mse2[k]), sqrt(Msn2[K]), mN[i], mN[j]);
941 }
942
943 /* charged-lepton - sneutrino - chargino - chargino loop */
944 for (int k=0; k<6; ++k)
945 for (int K=0; K<3; ++K) /* K=0-2 for left-handed sneutrinos */
946 for (int i=0; i<2; ++i)
947 for (int j=0; j<2; ++j) {
948 a22 += 2.0
949 *R_esnC(M, K, i)
950 *L_nLC(I, k, i, Mw_i)
951 *L_nLC(J, k, j, Mw_i).conjugate()
952 *R_esnC(N, K, j).conjugate()
953 *H(sqrt(Mse2[k]), sqrt(Msn2[K]), mC[i], mC[j]);
954 }
955
956 gslpp::complex a2 = (a21 + a22)/16.0/M_PI/M_PI;
957
958 double sW2 = 1.0 - Mw_i*Mw_i/mySUSY.getMz()/mySUSY.getMz();
959 return ( sW2*Mw_i*Mw_i/4.0/M_PI/mySUSY.getAle()*a2.real() );
960}

◆ DeltaR_neutrino_SUSY()

double EWSUSY::DeltaR_neutrino_SUSY ( const double  Mw_i) const

The renormalized SUSY neutrino wave-function contribution to \(\Delta r\) in the 't Hooft-Feynman gauge.

Parameters
[in]Mw_iThe W-boson mass \(M_W\).
Returns
The renormalized SUSY neutrino wave-function contribution to \(\Delta r\) in the 't Hooft-Feynman gauge.
References
Eqs. (A.21), (A.24) and (A.25) in [Chankowski, Dabelstein, Hollik, Mosle, Pokorski and Rosiek, NPB 417 (1994) 101].

Definition at line 1140 of file EWSUSY.cpp.

1141{
1142 /* Renormalization scale (varied for checking the cancellation of UV divergences */
1143 double mu = Mw_i * RenormalizationScaleFactor;
1144
1145 return ( ( Sigma_nu_0(mu, mySUSY.NEUTRINO_1, mySUSY.NEUTRINO_1, Mw_i).real()
1146 - delta_v(mu, mySUSY.ELECTRON, mySUSY.NEUTRINO_1, Mw_i).real()
1147 + Sigma_nu_0(mu, mySUSY.NEUTRINO_2, mySUSY.NEUTRINO_2, Mw_i).real()
1148 - delta_v(mu, mySUSY.MU, mySUSY.NEUTRINO_2, Mw_i).real() )/2.0 );
1149}
gslpp::complex Sigma_nu_0(const double mu, const QCD::lepton I, const QCD::lepton J, const double Mw_i) const
The SUSY neutrino self-energy at zero momentum transfer in the 't Hooft-Feynman gauge.
Definition: EWSUSY.cpp:1092
gslpp::complex delta_v(const double mu, const QCD::lepton M, const QCD::lepton J, const double Mw_i) const
Definition: EWSUSY.cpp:1033

◆ DeltaR_rem_SM()

double EWSUSY::DeltaR_rem_SM ( const double  Mw_i) const

The SM one-loop renormalized vertex and box corrections to \(\Delta r\) in the 't Hooft-Feynman gauge.

Parameters
[in]Mw_iThe W-boson mass \(M_W\).
Returns
The SM one-loop renormalized vertex and box corrections to \(\Delta r\) in the 't Hooft-Feynman gauge.
References
Eq. (4) in [Chankowski, Dabelstein, Hollik, Mosle, Pokorski and Rosiek, NPB 417 (1994) 101].

Definition at line 768 of file EWSUSY.cpp.

769{
770 double cW2 = Mw_i*Mw_i/mySUSY.getMz()/mySUSY.getMz();
771 double sW2 = 1.0 - cW2;
772
773 /* renormalized vertex corrections + box */
774 return ( mySUSY.getAle()/4.0/M_PI/sW2
775 *(6.0 + (7.0 - 4.0*sW2)/2.0/sW2*log(cW2)) );
776}

◆ DeltaR_SUSY_EW1()

double EWSUSY::DeltaR_SUSY_EW1 ( const double  Mw_i) const

The one-loop SUSY contribution to \(\Delta r\).

Returns
\(\Delta r_{\rm SUSY}^{\alpha}\).

Definition at line 1225 of file EWSUSY.cpp.

1226{
1227 double cW2 = Mw_i*Mw_i/mySUSY.getMz()/mySUSY.getMz();
1228 double sW2 = 1.0 - cW2;
1229
1230 /* SM one-loop contributions */
1231 double DeltaAlphaL5q_EW1 = DeltaAlphaL5q_SM_EW1();
1232 double DeltaRho_EW1 = mySUSY.getMyOneLoopEW()->DeltaRho(Mw_i);
1233 double DeltaR_rem_EW1 = mySUSY.getMyOneLoopEW()->DeltaR_rem(Mw_i);
1234 double DeltaR_SM_EW1 = DeltaAlphaL5q_EW1 - cW2/sW2*DeltaRho_EW1 + DeltaR_rem_EW1;
1235
1236 /* Debug */
1237 //std::cout << std::endl;
1238 //std::cout << "DeltaAlphaL5q_EW1 = " << DeltaAlphaL5q_EW1 << std::endl;
1239 //std::cout << "-cW2/sW2*DeltaRho_EW1 = " << - cW2/sW2*DeltaRho_EW1 << std::endl;
1240 //std::cout << "DeltaR_rem_EW1 = " << DeltaR_rem_EW1 << std::endl;
1241 //std::cout << "DeltaR_SM_EW1 = " << DeltaR_SM_EW1 << std::endl;
1242
1243 return ( DeltaR_TOTAL_EW1(Mw_i) - DeltaR_SM_EW1 );
1244}
double DeltaR_TOTAL_EW1(const double Mw_i) const
The total one-loop contribution to in the MSSM.
Definition: EWSUSY.cpp:1151
double DeltaAlphaL5q_SM_EW1() const
The SM one-loop leptonic and five-flavour-hadronic corrections to at Z-mass scale.
Definition: EWSUSY.cpp:1182

◆ DeltaR_TOTAL_EW1()

double EWSUSY::DeltaR_TOTAL_EW1 ( const double  Mw_i) const

The total one-loop contribution to \(\Delta r\) in the MSSM.

Returns
\(\Delta r_{\rm MSSM}^{\alpha} = \Delta r_{\rm SM}^{\alpha} + \Delta r_{\rm SUSY}^{\alpha}\).

Definition at line 1151 of file EWSUSY.cpp.

1152{
1153 double DeltaR = 0.0;
1154
1155 /* SM+SUSY renormalized W self energy */
1156 DeltaR += - PiThat_W_0(Mw_i)/Mw_i/Mw_i;
1157
1158 /* SM renormalized vertex + box */
1159 DeltaR += DeltaR_rem_SM(Mw_i);
1160
1161 /* SUSY box corrections */
1162 DeltaR += DeltaR_boxLL_SUSY(Mw_i);
1163 DeltaR += DeltaR_boxLR_SUSY(Mw_i);
1164
1165 /* SUSY renormalized vertex corrections */
1166 DeltaR += DeltaR_vertex_SUSY(Mw_i);
1167
1168 /* SUSY renormalized neutrino wave function */
1169 DeltaR += DeltaR_neutrino_SUSY(Mw_i);
1170
1171 /* Debug */
1172 //std::cout << "MSSM WSE = " << - PiThat_W_0(Mw_i)/Mw_i/Mw_i << std::endl;
1173 //std::cout << "SM VC+Box = " << DeltaR_rem_SM(Mw_i) << std::endl;
1174 //std::cout << "SUSY BoxLL = " << DeltaR_boxLL_SUSY(Mw_i) << std::endl;
1175 //std::cout << "SUSY BoxLR = " << DeltaR_boxLR_SUSY(Mw_i) << std::endl;
1176 //std::cout << "SUSY VC = " << DeltaR_vertex_SUSY(Mw_i) << std::endl;
1177 //std::cout << "SUSY nuSE = " << DeltaR_neutrino_SUSY(Mw_i) << std::endl;
1178
1179 return DeltaR;
1180}
double DeltaR_rem_SM(const double Mw_i) const
The SM one-loop renormalized vertex and box corrections to in the 't Hooft-Feynman gauge.
Definition: EWSUSY.cpp:768
double DeltaR_neutrino_SUSY(const double Mw_i) const
The renormalized SUSY neutrino wave-function contribution to in the 't Hooft-Feynman gauge.
Definition: EWSUSY.cpp:1140
double PiThat_W_0(const double Mw_i) const
The renormalized transverse W-boson self-energy at zero momentum transefer in the 't Hooft-Feynman ga...
Definition: EWSUSY.cpp:730
double DeltaR_vertex_SUSY(const double Mw_i) const
The renormalized SUSY vertex corrections to in the 't Hooft-Feynman gauge.
Definition: EWSUSY.cpp:1081
double DeltaR_boxLL_SUSY(const double Mw_i) const
The LL SUSY box corrections to in the 't Hooft-Feynman gauge.
Definition: EWSUSY.cpp:778
double DeltaR_boxLR_SUSY(const double Mw_i) const
The LR SUSY box corrections to in the 't Hooft-Feynman gauge.
Definition: EWSUSY.cpp:869

◆ DeltaR_vertex_SUSY()

double EWSUSY::DeltaR_vertex_SUSY ( const double  Mw_i) const

The renormalized SUSY vertex corrections to \(\Delta r\) in the 't Hooft-Feynman gauge.

Parameters
[in]Mw_iThe W-boson mass \(M_W\).
Returns
The renormalized SUSY vertex corrections to \(\Delta r\) in the 't Hooft-Feynman gauge.
References
Eqs. (A.19), (A.21) and (A.23) in [Chankowski, Dabelstein, Hollik, Mosle, Pokorski and Rosiek, NPB 417 (1994) 101].

Definition at line 1081 of file EWSUSY.cpp.

1082{
1083 /* Renormalization scale (varied for checking the cancellation of UV divergences */
1084 double mu = Mw_i * RenormalizationScaleFactor;
1085
1086 return ( v(mu, mySUSY.ELECTRON, mySUSY.NEUTRINO_1, Mw_i).real()
1087 + delta_v(mu, mySUSY.ELECTRON, mySUSY.NEUTRINO_1, Mw_i).real()
1088 + v(mu, mySUSY.MU, mySUSY.NEUTRINO_2, Mw_i).real()
1089 + delta_v(mu, mySUSY.MU, mySUSY.NEUTRINO_2, Mw_i).real() );
1090}
gslpp::complex v(const double mu, const QCD::lepton M, const QCD::lepton J, const double Mw_i) const
Definition: EWSUSY.cpp:962

◆ dFA()

gslpp::complex EWSUSY::dFA ( const double  mu,
const double  p2,
const double  mi,
const double  mj,
const gslpp::complex  cV_aij,
const gslpp::complex  cV_bji,
const gslpp::complex  cA_aij,
const gslpp::complex  cA_bji 
) const

The derivative of \(F_A^{ab}(p^2,m_i,m_j,c_V^{aij},c_V^{bji},c_A^{aij},c_A^{bji})\) with respect to \(p^2\).

Parameters
[in]muThe renormalization scale \(\mu\).
[in]p2The momentum squared \(p^2\).
[in]miThe mass of a fermion \((i)\) running in the loop.
[in]mjThe mass of a fermion \((j)\) running in the loop.
[in]cV_aijThe vector coupling \(c_V^{aij}\) for a vertex with an incoming vector meson \((a)\), an incoming fermion \((i)\) and an outgoing fermion \((j)\).
[in]cV_bjiThe vector coupling \(c_V^{bji}\) for a vertex with an incoming vector meson \((b)\), an incoming fermion \((j)\) and an outgoing fermion \((i)\).
[in]cA_aijThe axial-vector coupling \(c_A^{aij}\) for a vertex with an incoming vector meson \((a)\), an incoming fermion \((i)\) and an outgoing fermion \((j)\).
[in]cA_bjiThe axial-vector coupling \(c_A^{bji}\) for a vertex with an incoming vector meson \((b)\), an incoming fermion \((j)\) and an outgoing fermion \((i)\).
Returns
The derivative of \(F_A^{ab}(p^2,m_i,m_j,c_V^{aij},c_V^{bji},c_A^{aij},c_A^{bji})\) with respect to \(p^2\) renormalized at the scale \(\mu\).
References
Eq. (A.7) in [Chankowski, Pokorski and Rosiek, NPB 423 (1994) 437].

Definition at line 119 of file EWSUSY.cpp.

123{
124 double mu2 = mu*mu, mi2 = mi*mi, mj2 = mj*mj;
125
126 /* PV functions */
127 gslpp::complex B0 = PV.B0(mu2, p2, mi2, mj2);
128 gslpp::complex B0p = PV.B0p(mu2, p2, mi2, mj2);
129 gslpp::complex B00p = PV.B00p(mu2, p2, mi2, mj2);
130
131 if (mi == mj && cA_aij == 0.0 && cA_bji == 0.0)
132 return ( -2.0*cV_aij*cV_bji*(4.0*B00p + p2*B0p + B0) );
133 else
134 return ( -2.0*(cV_aij*cV_bji + cA_aij*cA_bji)
135 *(4.0*B00p + (p2 - mi*mi - mj*mj)*B0p + B0)
136 -4.0*(cV_aij*cV_bji - cA_aij*cA_bji)*mi*mj*B0p );
137}

◆ FA()

gslpp::complex EWSUSY::FA ( const double  mu,
const double  p2,
const double  mi,
const double  mj,
const gslpp::complex  cV_aij,
const gslpp::complex  cV_bji,
const gslpp::complex  cA_aij,
const gslpp::complex  cA_bji 
) const

Fermionic contribuiton to the transverse part of a gauge-boson self-energy, \(F_A^{ab}(p^2,m_i,m_j,c_V^{aij},c_V^{bji},c_A^{aij},c_A^{bji})\).

Parameters
[in]muThe renormalization scale \(\mu\).
[in]p2The momentum squared \(p^2\).
[in]miThe mass of a fermion \((i)\) running in the loop.
[in]mjThe mass of a fermion \((j)\) running in the loop.
[in]cV_aijThe vector coupling \(c_V^{aij}\) for a vertex with an incoming vector meson \((a)\), an incoming fermion \((i)\) and an outgoing fermion \((j)\).
[in]cV_bjiThe vector coupling \(c_V^{bji}\) for a vertex with an incoming vector meson \((b)\), an incoming fermion \((j)\) and an outgoing fermion \((i)\).
[in]cA_aijThe axial-vector coupling \(c_A^{aij}\) for a vertex with an incoming vector meson \((a)\), an incoming fermion \((i)\) and an outgoing fermion \((j)\).
[in]cA_bjiThe axial-vector coupling \(c_A^{bji}\) for a vertex with an incoming vector meson \((b)\), an incoming fermion \((j)\) and an outgoing fermion \((i)\).
Returns
\(F_A^{ab}(p^2,m_i,m_j,c_V^{aij},c_V^{bji},c_A^{aij},c_A^{bji})\) renormalized at the scale \(\mu\).
References
Eq. (A.7) in [Chankowski, Pokorski and Rosiek, NPB 423 (1994) 437].

Definition at line 101 of file EWSUSY.cpp.

105{
106 double mu2 = mu*mu, mi2 = mi*mi, mj2 = mj*mj;
107
108 /* PV functions */
109 double A0i = PV.A0(mu2, mi2);
110 double A0j = PV.A0(mu2, mj2);
111 gslpp::complex B0 = PV.B0(mu2, p2, mi2, mj2);
112 gslpp::complex B00 = PV.B00(mu2, p2, mi2, mj2);
113
114 return ( -2.0*(cV_aij*cV_bji + cA_aij*cA_bji)
115 *(4.0*B00 + A0i + A0j + (p2 - mi*mi - mj*mj)*B0)
116 -4.0*(cV_aij*cV_bji - cA_aij*cA_bji)*mi*mj*B0 );
117}

◆ PiT_AZ()

gslpp::complex EWSUSY::PiT_AZ ( const double  mu,
const double  p2,
const double  Mw_i 
) const

The transverse part of the self-energy, \(\Pi_{\gamma Z}^T(p^2)\), for the mixing between photon and Z boson in the 't Hooft-Feynman gauge.

Parameters
[in]muThe renormalization scale \(\mu\).
[in]p2The momentum squared \(p^2\).
[in]Mw_iThe W-boson mass \(M_W\).
Returns
\(\Pi_{\gamma Z}^T(p^2)\) renormalized at the scale \(\mu\) in the 't Hooft-Feynman gauge.
References
Eq. (A.18) in [Chankowski, Pokorski and Rosiek, NPB 423 (1994) 437].

Definition at line 503 of file EWSUSY.cpp.

504{
505 double mu2 = mu*mu;
506 double e2 = 4.0*M_PI*mySUSY.getAle();
507 double e = sqrt(e2);
508 double Mz = mySUSY.getMz();
509 double Nc = mySUSY.getNc();
510
511 /* variables depending on Mw_i */
512 double Mw2 = Mw_i*Mw_i;
513 double mHp2[2] = {mySUSY.getMHp()*mySUSY.getMHp(), Mw2}; /* H^+_i = (H^+, G^+) */
514 double cW = Mw_i/Mz;
515 double cW2 = cW*cW;
516 double sW2 = 1.0 - cW2;
517 double sW = sqrt(sW2);
518 double g2 = e/sW;
519 double e_4sc = e/4.0/sW/cW;
520 double e_2sc = 2.0*e_4sc;
521 double e2_sc = e2/sW/cW;
522
523 gslpp::complex PiT_f = gslpp::complex(0.0, 0.0, false);
524 gslpp::complex PiT_sf = gslpp::complex(0.0, 0.0, false);
525 gslpp::complex PiT_ch = gslpp::complex(0.0, 0.0, false);
526 gslpp::complex PiT_WZH = gslpp::complex(0.0, 0.0, false);
527 double a0;
528 gslpp::complex b0, b00;
529
530 /* SM fermion loops */
531 gslpp::complex cV_Aee = - e;
532 gslpp::complex cA_Aee = 0.0;
533 gslpp::complex cV_Add = - e/3.0;
534 gslpp::complex cA_Add = 0.0;
535 gslpp::complex cV_Auu = 2.0/3.0*e;
536 gslpp::complex cA_Auu = 0.0;
537 gslpp::complex cV_Zee = - e_4sc*(1.0 - 4.0*sW2);
538 gslpp::complex cA_Zee = - e_4sc;
539 gslpp::complex cV_Zdd = - e_4sc*(1.0 - 4.0/3.0*sW2);
540 gslpp::complex cA_Zdd = - e_4sc;
541 gslpp::complex cV_Zuu = e_4sc*(1.0 - 8.0/3.0*sW2);
542 gslpp::complex cA_Zuu = e_4sc;
543 for (int I=0; I<3; ++I) {
544 /* charged leptons */
545 PiT_f += FA(mu, p2, m_l[I], m_l[I], cV_Aee, cV_Zee, cA_Aee, cA_Zee);
546
547 /* down-type quarks */
548 PiT_f += Nc*FA(mu, p2, m_d[I], m_d[I], cV_Add, cV_Zdd, cA_Add, cA_Zdd);
549
550 /* up-type quarks */
551 PiT_f += Nc*FA(mu, p2, m_u[I], m_u[I], cV_Auu, cV_Zuu, cA_Auu, cA_Zuu);
552 }
553
554 /* charged-slepton loops */
555 gslpp::complex VZLL_nn, VAZLL_nn;
556 for (int n=0; n<6; ++n) {
557 VZLL_nn = gslpp::complex(0.0, 0.0, false);
558 for (int I=0; I<3; ++I) /* sum over left-handed sleptons */
559 VZLL_nn += - e_2sc*ZL(I,n)*ZL(I,n).conjugate();
560 VZLL_nn += - e_2sc*(- 2.0*sW2);
561 b00 = PV.B00(mu2, p2, Mse2[n], Mse2[n]);
562 /* typo in the paper: e^2 --> e */
563 PiT_sf += - 4.0*e*VZLL_nn*b00;
564
565 VAZLL_nn = gslpp::complex(0.0, 0.0, false);
566 for (int I=0; I<3; ++I) /* sum over left-handed sleptons */
567 VAZLL_nn += e2_sc*ZL(I,n)*ZL(I,n).conjugate();
568 VAZLL_nn += e2_sc*(- 2.0*sW2);
569 a0 = PV.A0(mu2, Mse2[n]);
570 PiT_sf += VAZLL_nn*a0;
571 }
572
573 /* down-type squark loops */
574 gslpp::complex VZDD_nn, VAZDD_nn;
575 for (int n=0; n<6; ++n) {
576 VZDD_nn = gslpp::complex(0.0, 0.0, false);
577 for (int I=0; I<3; ++I) /* sum over left-handed squarks */
578 VZDD_nn += - e_2sc*ZD(I,n)*ZD(I,n).conjugate();
579 VZDD_nn += - e_2sc*(- 2.0/3.0*sW2);
580 b00 = PV.B00(mu2, p2, Msd2[n], Msd2[n]);
581 /* typo in the paper: e^2 --> e */
582 PiT_sf += - 4.0*e*Nc/3.0*VZDD_nn*b00;
583
584 VAZDD_nn = gslpp::complex(0.0, 0.0, false);
585 for (int I=0; I<3; ++I) /* sum over left-handed squarks */
586 VAZDD_nn += e2_sc/3.0*ZD(I,n)*ZD(I,n).conjugate();
587 VAZDD_nn += e2_sc/3.0*(- 2.0/3.0*sW2);
588 a0 = PV.A0(mu2, Msd2[n]);
589 PiT_sf += Nc*VAZDD_nn*a0;
590 }
591
592 /* up-type squark loops */
593 gslpp::complex VZUU_nn, VAZUU_nn;
594 for (int n=0; n<6; ++n) {
595 VZUU_nn = gslpp::complex(0.0, 0.0, false);
596 for (int I=0; I<3; ++I) /* sum over left-handed squarks */
597 VZUU_nn += e_2sc*ZU(I,n).conjugate()*ZU(I,n);
598 VZUU_nn += e_2sc*(- 4.0/3.0*sW2);
599 b00 = PV.B00(mu2, p2, Msu2[n], Msu2[n]);
600 /* typo in the paper: e^2 --> e */
601 PiT_sf += 4.0*e*Nc*2.0/3.0*VZUU_nn*b00;
602
603 VAZUU_nn = gslpp::complex(0.0, 0.0, false);
604 for (int I=0; I<3; ++I) /* sum over left-handed squarks */
605 VAZUU_nn += 2.0*e2_sc/3.0*ZU(I,n).conjugate()*ZU(I,n);
606 VAZUU_nn += 2.0*e2_sc/3.0*(- 4.0/3.0*sW2);
607 a0 = PV.A0(mu2, Msu2[n]);
608 PiT_sf += Nc*VAZUU_nn*a0;
609 }
610
611 /* chargino loops */
612 gslpp::complex cV_Aii = e;
613 gslpp::complex cA_Aii = 0.0;
614 gslpp::complex cV_Zii, cA_Zii;
615 for (int i=0; i<2; ++i) {
616 cV_Zii = e_4sc*( Zp(0,i).conjugate()*Zp(0,i)
617 + Zm(0,i)*Zm(0,i).conjugate() + 2.0*(cW2 - sW2) );
618 cA_Zii = e_4sc*( Zp(0,i).conjugate()*Zp(0,i)
619 - Zm(0,i)*Zm(0,i).conjugate() );
620 PiT_ch += FA(mu, p2, mC[i], mC[i], cV_Aii, cV_Zii, cA_Aii, cA_Zii);
621 }
622
623 /* W-boson - charged-Goldstone-boson loops */
624 b0 = PV.B0(mu2, p2, Mw2, Mw2);
625 PiT_WZH += 2.0*e2*cW*sW*Mz*Mz*b0;
626
627 /* W-boson loops */
628 a0 = PV.A0(mu2, Mw2);
629 //b0 = PV.B0(mu2, p2, Mw2, Mw2); /* same as the above */
630 b00 = PV.B00(mu2, p2, Mw2, Mw2);
631 PiT_WZH += 2.0*e*g2*cW*(2.0*a0 + (2.0*p2 + Mw2)*b0 + 4.0*b00);
632
633 /* charged-Higgs loops */
634 double cot_2thW = (cW2 - sW2)/(2.0*sW*cW);
635 for (int i=0; i<2; ++i) {
636 a0 = PV.A0(mu2, mHp2[i]);
637 b00 = PV.B00(mu2, p2, mHp2[i], mHp2[i]);
638 PiT_WZH += 2.0*e2*cot_2thW*(2.0*b00 + a0);
639 }
640
641 /* Sum of all contributions */
642 gslpp::complex PiT = PiT_f + PiT_sf + PiT_ch + PiT_WZH;
643
644 return ( PiT/16.0/M_PI/M_PI );
645}

◆ PiT_W()

gslpp::complex EWSUSY::PiT_W ( const double  mu,
const double  p2,
const double  Mw_i 
) const

The transverse part of the W-boson self-energy, \(\Pi_W^T(p^2)\), in the 't Hooft-Feynman gauge.

Parameters
[in]muThe renormalization scale \(\mu\).
[in]p2The momentum squared \(p^2\).
[in]Mw_iThe W-boson mass \(M_W\).
Returns
\(\Pi_W^T(p^2)\) renormalized at the scale \(\mu\) in the 't Hooft-Feynman gauge.
References
Eq. (A.20) in [Chankowski, Pokorski and Rosiek, NPB 423 (1994) 437].

Definition at line 337 of file EWSUSY.cpp.

338{
339 double mu2 = mu*mu;
340 double e2 = 4.0*M_PI*mySUSY.getAle();
341 double e = sqrt(e2);
342 double Mz = mySUSY.getMz();
343 double Nc = mySUSY.getNc();
344
345 /* variables depending on Mw_i */
346 double Mw2 = Mw_i*Mw_i;
347 double mHp2[2] = {mySUSY.getMHp()*mySUSY.getMHp(), Mw2}; /* H^+_i = (H^+, G^+) */
348 double cW = Mw_i/Mz;
349 double cW2 = cW*cW;
350 double sW2 = 1.0 - cW2;
351 double sW = sqrt(sW2);
352 double g2sq = e2/sW2; /* g2 squared */
353 double e_2s = e/2.0/sW;
354 double e_sq2s = e/sqrt(2.0)/sW;
355 double e_2sq2s = e_sq2s/2.0;
356 double e2_2s2 = e2/2.0/sW2;
357
358 gslpp::complex PiT_f = gslpp::complex(0.0, 0.0, false);
359 gslpp::complex PiT_sf = gslpp::complex(0.0, 0.0, false);
360 gslpp::complex PiT_ch = gslpp::complex(0.0, 0.0, false);
361 gslpp::complex PiT_WZH = gslpp::complex(0.0, 0.0, false);
362 double a0;
363 gslpp::complex b0, b00;
364
365 /* SM fermion loops */
366 gslpp::complex cV_Wen = e_2sq2s;
367 gslpp::complex cA_Wen = e_2sq2s;
368 gslpp::complex cV_Wne = cV_Wen.conjugate();
369 gslpp::complex cA_Wne = cA_Wen.conjugate();
370 gslpp::complex cV_Wdu = e_2sq2s; /* no CKM */
371 gslpp::complex cA_Wdu = e_2sq2s; /* no CKM */
372 gslpp::complex cV_Wud = cV_Wdu.conjugate();
373 gslpp::complex cA_Wud = cA_Wdu.conjugate();
374 for (int I=0; I<3; ++I) {
375 /* leptons */
376 PiT_f += FA(mu, p2, m_l[I], 0.0, cV_Wen, cV_Wne, cA_Wen, cA_Wne);
377
378 /* quarks (no CKM) */
379 PiT_f += Nc*FA(mu, p2, m_d[I], m_u[I], cV_Wdu, cV_Wud, cA_Wdu, cA_Wud);
380 }
381
382 /* slepton loops */
383 gslpp::complex VWsnL_In, VWWsnsn_II, VWWLL_nn;
384 for (int I=0; I<3; ++I) { /* I=0-2 for left-handed sneutrinos */
385 for (int n=0; n<6; ++n) {
386 VWsnL_In = gslpp::complex(0.0, 0.0, false);
387 for (int J=0; J<3; ++J) /* sum over left-handed sleptons */
388 VWsnL_In += e_sq2s*Zne(J,I)*ZL(J,n);
389 b00 = PV.B00(mu2, p2, Msn2[I], Mse2[n]);
390 PiT_sf += 4.0*VWsnL_In.abs2()*b00;
391 }
392 VWWsnsn_II = e2_2s2;
393 a0 = PV.A0(mu2, Msn2[I]);
394 PiT_sf += VWWsnsn_II*a0;
395 }
396 for (int n=0; n<6; ++n) {
397 VWWLL_nn = gslpp::complex(0.0, 0.0, false);
398 for (int I=0; I<3; ++I) /* sum over left-handed sleptons */
399 VWWLL_nn += e2_2s2*ZL(I,n)*ZL(I,n).conjugate();
400 a0 = PV.A0(mu2, Mse2[n]);
401 PiT_sf += VWWLL_nn*a0;
402 }
403
404 /* squark loops (no CKM) */
405 gslpp::complex VWDU_nm, VWWDD_nn, VWWUU_nn;
406 for (int n=0; n<6; ++n) {
407 for (int m=0; m<6; ++m) {
408 VWDU_nm = gslpp::complex(0.0, 0.0, false);
409 for (int I=0; I<3; ++I) /* sum over left-handed squarks */
410 VWDU_nm += e_sq2s*ZD(I,n).conjugate()*ZU(I,m).conjugate();
411 b00 = PV.B00(mu2, p2, Msd2[n], Msu2[m]);
412 PiT_sf += 4.0*Nc*VWDU_nm.abs2()*b00;
413 }
414 VWWDD_nn = gslpp::complex(0.0, 0.0, false);
415 for (int I=0; I<3; ++I) /* sum over left-handed squarks */
416 VWWDD_nn += e2_2s2*ZD(I,n)*ZD(I,n).conjugate();
417 a0 = PV.A0(mu2, Msd2[n]);
418 PiT_sf += Nc*VWWDD_nn*a0;
419 VWWUU_nn = gslpp::complex(0.0, 0.0, false);
420 for (int I=0; I<3; ++I) /* sum over left-handed squarks */
421 VWWUU_nn += e2_2s2*ZU(I,n).conjugate()*ZU(I,n);
422 a0 = PV.A0(mu2, Msu2[n]);
423 PiT_sf += Nc*VWWUU_nn*a0;
424 }
425
426 /* chargino - neutralino loops */
427 gslpp::complex cV_Wij, cV_Wji, cA_Wij, cA_Wji;
428 for (int i=0; i<2; ++i)
429 for (int j=0; j<4; ++j) {
430 /* W^+ + neutralino(j) -> chi^+(i) */
431 /* W^+ + chi^-(i) -> neutralino(j) */
432 cV_Wji = - e_2s*( ZN(1,j)*Zp(0,i).conjugate()
433 - ZN(3,j)*Zp(1,i).conjugate()/sqrt(2.0)
434 + ZN(1,j).conjugate()*Zm(0,i)
435 + ZN(2,j).conjugate()*Zm(1,i)/sqrt(2.0) );
436 cV_Wij = cV_Wji.conjugate();
437 cA_Wji = - e_2s*( ZN(1,j)*Zp(0,i).conjugate()
438 - ZN(3,j)*Zp(1,i).conjugate()/sqrt(2.0)
439 - ZN(1,j).conjugate()*Zm(0,i)
440 - ZN(2,j).conjugate()*Zm(1,i)/sqrt(2.0) );
441 cA_Wij = cA_Wji.conjugate();
442 PiT_ch += FA(mu, p2, mC[i], mN[j], cV_Wij, cV_Wji, cA_Wij, cA_Wji);
443 }
444
445 /* Higgs loops */
446 double AM_ij;
447 for (int i=0; i<2; ++i) {
448 for (int j=0; j<2; ++j) {
449 AM_ij = ZR(0,i)*ZH(0,j) - ZR(1,i)*ZH(1,j);
450 b00 = PV.B00(mu2, p2, mH02[i], mHp2[j]);
451 PiT_WZH += g2sq*AM_ij*AM_ij*b00;
452 }
453 b00 = PV.B00(mu2, p2, mH02[i+2], mHp2[i]);
454 PiT_WZH += g2sq*b00;
455 }
456 for (int i=0; i<4; ++i) {
457 a0 = PV.A0(mu2, mH02[i]);
458 PiT_WZH += g2sq/4.0*a0;
459 }
460 for (int i=0; i<2; ++i) {
461 a0 = PV.A0(mu2, mHp2[i]);
462 PiT_WZH += g2sq/2.0*a0;
463 }
464
465 /* photon - charged-Goldstone-boson loops */
466 b0 = PV.B0(mu2, p2, Mw2, 0.0);
467 PiT_WZH += - e2*Mw2*b0;
468
469 /* W-boson - Higgs loops */
470 double CR_i;
471 for (int i=0; i<2; ++i) {
472 CR_i = mySUSY.v1()*ZR(0,i) + mySUSY.v2()*ZR(1,i);
473 b0 = PV.B0(mu2, p2, Mw2, mH02[i]);
474 /* Mw^2/v^2 is substituted for g2^2/4 compared to the expression in the
475 * paper, in order to ensure the cancellation of the UV divergences in
476 * the case where Mw is not the tree-level value. */
477 PiT_WZH += - g2sq*Mw2/mySUSY.v()/mySUSY.v()*CR_i*CR_i*b0;
478 }
479
480 /* Z-boson - charged-Goldstone-boson loops */
481 b0 = PV.B0(mu2, p2, Mw2, Mz*Mz);
482 PiT_WZH += - e2*sW2*Mz*Mz*b0;
483
484 /* gauge-boson loops */
485 a0 = PV.A0(mu2, Mw2);
486 b0 = PV.B0(mu2, p2, Mw2, Mz*Mz);
487 b00 = PV.B00(mu2, p2, Mz*Mz, Mw2);
488 PiT_WZH += g2sq*cW2*(2.0*PV.A0(mu2, Mz*Mz) - a0
489 + (4.0*p2 + Mz*Mz + Mw2)*b0 + 8.0*b00);
490 //
491 PiT_WZH += 3.0*g2sq*a0;
492 //
493 b0 = PV.B0(mu2, p2, Mw2, 0.0);
494 b00 = PV.B00(mu2, p2, Mw2, 0.0);
495 PiT_WZH += e2*((4.0*p2 + Mw2)*b0 - a0 + 8.0*b00);
496
497 /* Sum of all contributions */
498 gslpp::complex PiT = PiT_f + PiT_sf + PiT_ch + PiT_WZH;
499
500 return ( PiT/16.0/M_PI/M_PI );
501}

◆ PiT_Z()

gslpp::complex EWSUSY::PiT_Z ( const double  mu,
const double  p2,
const double  Mw_i 
) const

The transverse part of the Z-boson self-energy, \(\Pi_Z^T(p^2)\), in the 't Hooft-Feynman gauge.

Parameters
[in]muThe renormalization scale \(\mu\).
[in]p2The momentum squared \(p^2\).
[in]Mw_iThe W-boson mass \(M_W\).
Returns
\(\Pi_Z^T(p^2)\) renormalized at the scale \(\mu\) in the 't Hooft-Feynman gauge.
References
Eq. (A.15) in [Chankowski, Pokorski and Rosiek, NPB 423 (1994) 437].

Definition at line 139 of file EWSUSY.cpp.

140{
141 double mu2 = mu*mu;
142 double e2 = 4.0*M_PI*mySUSY.getAle();
143 double e = sqrt(e2);
144 double Mz = mySUSY.getMz();
145 double Nc = mySUSY.getNc();
146
147 /* variables depending on Mw_i */
148 double Mw2 = Mw_i*Mw_i;
149 double mHp2[2] = {mySUSY.getMHp()*mySUSY.getMHp(), Mw2}; /* H^+_i = (H^+, G^+) */
150 double cW = Mw_i/Mz;
151 double cW2 = cW*cW;
152 double sW2 = 1.0 - cW2;
153 double sW = sqrt(sW2);
154 double g2sq = e2/sW2; /* g2 squared */
155 double e_4sc = e/4.0/sW/cW;
156 double e_2sc = 2.0*e_4sc;
157
158 gslpp::complex PiT_f = gslpp::complex(0.0, 0.0, false);
159 gslpp::complex PiT_sf = gslpp::complex(0.0, 0.0, false);
160 gslpp::complex PiT_ch = gslpp::complex(0.0, 0.0, false);
161 gslpp::complex PiT_WZH = gslpp::complex(0.0, 0.0, false);
162 double a0;
163 gslpp::complex b0, b00;
164 gslpp::complex cV_Zij, cV_Zji, cA_Zij, cA_Zji;
165 gslpp::matrix<double> Id6 = gslpp::matrix<double>::Id(6);
166 gslpp::matrix<double> Id2 = gslpp::matrix<double>::Id(2);
167
168 /* neutrino loops */
169 b0 = PV.B0(mu2, p2, 0.0, 0.0);
170 b00 = PV.B00(mu2, p2, 0.0, 0.0);
171 PiT_f += - 3.0/4.0*g2sq/cW2*(4.0*b00 + p2*b0);
172
173 /* other SM fermion loops */
174 gslpp::complex cV_Zee = - e_4sc*(1.0 - 4.0*sW2);
175 gslpp::complex cA_Zee = - e_4sc;
176 gslpp::complex cV_Zdd = - e_4sc*(1.0 - 4.0/3.0*sW2);
177 gslpp::complex cA_Zdd = - e_4sc;
178 gslpp::complex cV_Zuu = e_4sc*(1.0 - 8.0/3.0*sW2);
179 gslpp::complex cA_Zuu = e_4sc;
180 for (int I=0; I<3; ++I) {
181 /* charged leptons */
182 PiT_f += FA(mu, p2, m_l[I], m_l[I], cV_Zee, cV_Zee, cA_Zee, cA_Zee);
183
184 /* down-type quarks */
185 PiT_f += Nc*FA(mu, p2, m_d[I], m_d[I], cV_Zdd, cV_Zdd, cA_Zdd, cA_Zdd);
186
187 /* up-type quarks */
188 PiT_f += Nc*FA(mu, p2, m_u[I], m_u[I], cV_Zuu, cV_Zuu, cA_Zuu, cA_Zuu);
189 }
190
191 /* sneutrino loops */
192 gslpp::complex VZsnsn_II = e_2sc;
193 gslpp::complex VZZsnsn_II = e2/2.0/sW2/cW2;
194 for (int I=0; I<3; ++I) { /* I=0-2 for left-handed sneutrinos */
195 b00 = PV.B00(mu2, p2, Msn2[I], Msn2[I]);
196 PiT_sf += 4.0*VZsnsn_II.abs2()*b00;
197 a0 = PV.A0(mu2, Msn2[I]);
198 PiT_sf += VZZsnsn_II*a0;
199 }
200
201 /* charged-slepton loops */
202 gslpp::complex VZLL_mn, VZZLL_nn;
203 for (int n=0; n<6; ++n) {
204 for (int m=0; m<6; ++m) {
205 VZLL_mn = gslpp::complex(0.0, 0.0, false);
206 for (int I=0; I<3; ++I) /* sum over left-handed sleptons */
207 VZLL_mn += - e_2sc*ZL(I,n)*ZL(I,m).conjugate();
208 VZLL_mn += - e_2sc*(- 2.0*sW2*Id6(m,n));
209 b00 = PV.B00(mu2, p2, Mse2[m], Mse2[n]);
210 PiT_sf += 4.0*VZLL_mn.abs2()*b00;
211 }
212 VZZLL_nn = gslpp::complex(0.0, 0.0, false);
213 VZZLL_nn += 2.0*e2/cW2*sW2;
214 for (int I=0; I<3; ++I) /* sum over left-handed sleptons */
215 VZZLL_nn += 2.0*e2/cW2*(1.0 - 4.0*sW2)/4.0/sW2*ZL(I,n)*ZL(I,n).conjugate();
216 a0 = PV.A0(mu2, Mse2[n]);
217 PiT_sf += VZZLL_nn*a0;
218 }
219
220 /* down-type squark loops */
221 gslpp::complex VZDD_mn, VZZDD_nn;
222 for (int n=0; n<6; ++n) {
223 for (int m=0; m<6; ++m) {
224 VZDD_mn = gslpp::complex(0.0, 0.0, false);
225 for (int I=0; I<3; ++I) /* sum over left-handed squarks */
226 VZDD_mn += - e_2sc*ZD(I,n)*ZD(I,m).conjugate();
227 VZDD_mn += - e_2sc*(- 2.0/3.0*sW2*Id6(m,n));
228 b00 = PV.B00(mu2, p2, Msd2[m], Msd2[n]);
229 PiT_sf += 4.0*Nc*VZDD_mn.abs2()*b00;
230 }
231 VZZDD_nn = gslpp::complex(0.0, 0.0, false);
232 VZZDD_nn += 2.0*e2/3.0/cW2*sW2/3.0;
233 for (int I=0; I<3; ++I) /* sum over left-handed squarks */
234 VZZDD_nn += 2.0*e2/3.0/cW2*(3.0 - 4.0*sW2)/4.0/sW2*ZD(I,n)*ZD(I,n).conjugate();
235 a0 = PV.A0(mu2, Msd2[n]);
236 PiT_sf += Nc*VZZDD_nn*a0;
237 }
238
239 /* up-type squark loops */
240 gslpp::complex VZUU_mn, VZZUU_nn;
241 for (int n=0; n<6; ++n) {
242 for (int m=0; m<6; ++m) {
243 VZUU_mn = gslpp::complex(0.0, 0.0, false);
244 for (int I=0; I<3; ++I) /* sum over left-handed squarks */
245 VZUU_mn += e_2sc*ZU(I,m).conjugate()*ZU(I,n);
246 VZUU_mn += e_2sc*(- 4.0/3.0*sW2*Id6(m,n));
247 b00 = PV.B00(mu2, p2, Msu2[m], Msu2[n]);
248 PiT_sf += 4.0*Nc*VZUU_mn.abs2()*b00;
249 }
250 VZZUU_nn = gslpp::complex(0.0, 0.0, false);
251 VZZUU_nn += 2.0*e2/3.0/cW2*4.0*sW2/3.0;
252 for (int I=0; I<3; ++I) /* sum over left-handed squarks */
253 VZZUU_nn += 2.0*e2/3.0/cW2*(3.0 - 8.0*sW2)/4.0/sW2*ZU(I,n).conjugate()*ZU(I,n);
254 a0 = PV.A0(mu2, Msu2[n]);
255 PiT_sf += Nc*VZZUU_nn*a0;
256 }
257
258 /* chargino loops */
259 for (int i=0; i<2; ++i)
260 for (int j=0; j<2; ++j) {
261 cV_Zij = e_4sc*( Zp(0,j).conjugate()*Zp(0,i)
262 + Zm(0,j)*Zm(0,i).conjugate()
263 + 2.0*(cW2 - sW2)*Id2(j,i) );
264 cV_Zji = cV_Zij.conjugate();
265 cA_Zij = e_4sc*( Zp(0,j).conjugate()*Zp(0,i)
266 - Zm(0,j)*Zm(0,i).conjugate() );
267 cA_Zji = cA_Zij.conjugate();
268 PiT_ch += FA(mu, p2, mC[i], mC[j], cV_Zij, cV_Zji, cA_Zij, cA_Zji);
269 }
270
271 /* neutralino loops */
272 for (int i=0; i<4; ++i)
273 for (int j=0; j<4; ++j) {
274 cV_Zij = - e_4sc*( ZN(3,j).conjugate()*ZN(3,i)
275 - ZN(2,j).conjugate()*ZN(2,i)
276 - ZN(3,j)*ZN(3,i).conjugate()
277 + ZN(2,j)*ZN(2,i).conjugate() );
278 cV_Zji = cV_Zij.conjugate();
279 cA_Zij = - e_4sc*( ZN(3,j).conjugate()*ZN(3,i)
280 - ZN(2,j).conjugate()*ZN(2,i)
281 + ZN(3,j)*ZN(3,i).conjugate()
282 - ZN(2,j)*ZN(2,i).conjugate() );
283 cA_Zji = cA_Zij.conjugate();
284 PiT_ch += 0.5*FA(mu, p2, mN[i], mN[j], cV_Zij, cV_Zji, cA_Zij, cA_Zji);
285 }
286
287 /* charged-Higgs loops */
288 double cot_2thW = (cW2 - sW2)/(2.0*sW*cW);
289 for (int i=0; i<2; ++i) {
290 b00 = PV.B00(mu2, p2, mHp2[i], mHp2[i]);
291 a0 = PV.A0(mu2, mHp2[i]);
292 PiT_WZH += 2.0*e2*cot_2thW*cot_2thW*(2.0*b00 + a0);
293 }
294
295 /* neutral-Higgs loops */
296 double AM_ij;
297 for (int i=0; i<2; ++i)
298 for (int j=0; j<2; ++j) {
299 AM_ij = ZR(0,i)*ZH(0,j) - ZR(1,i)*ZH(1,j);
300 b00 = PV.B00(mu2, p2, mH02[i], mH02[j+2]);
301 PiT_WZH += g2sq/cW2*AM_ij*AM_ij*b00;
302 }
303 for (int j=0; j<4; ++j) {
304 a0 = PV.A0(mu2, mH02[j]);
305 PiT_WZH += g2sq/4.0/cW2*a0;
306 }
307
308 /* W-boson - charged-Goldstone-boson loop*/
309 b0 = PV.B0(mu2, p2, Mw2, Mw2);
310 PiT_WZH += - 2.0*g2sq*sW2*sW2*Mz*Mz*b0;
311
312 /* Z-boson - Higgs loops */
313 double CR_i;
314 for (int i=0; i<2; ++i) {
315 CR_i = mySUSY.v1()*ZR(0,i) + mySUSY.v2()*ZR(1,i);
316 b0 = PV.B0(mu2, p2, Mz*Mz, mH02[i]);
317 /* Mw^2/v^2 is substituted for g2^2/4 compared to the expression in the
318 * paper, in order to ensure the cancellation of the UV divergences in
319 * the case where Mw is not the tree-level value. */
320 PiT_WZH += - g2sq*Mw2/mySUSY.v()/mySUSY.v()/cW2/cW2*CR_i*CR_i*b0;
321 }
322
323 /* W-boson loops */
324 a0 = PV.A0(mu2, Mw2);
325 b0 = PV.B0(mu2, p2, Mw2, Mw2);
326 b00 = PV.B00(mu2, p2, Mw2, Mw2);
327 /* typo in the paper: a0^2 --> a0 in the first term */
328 PiT_WZH += 2.0*g2sq*cW2*(2.0*a0 + (2.0*p2 + Mw2)*b0 + 4.0*b00);
329
330 /* Sum of all contributions */
331 gslpp::complex PiT = PiT_f + PiT_sf + PiT_ch + PiT_WZH;
332
333 return ( PiT/16.0/M_PI/M_PI );
334}

◆ PiThat_W_0()

double EWSUSY::PiThat_W_0 ( const double  Mw_i) const

The renormalized transverse W-boson self-energy at zero momentum transefer in the 't Hooft-Feynman gauge.

Parameters
[in]muThe renormalization scale \(\mu\).
[in]Mw_iThe W-boson mass \(M_W\).
Returns
\(\hat{\Pi}_W^T(0)\) in the 't Hooft-Feynman gauge.

Definition at line 730 of file EWSUSY.cpp.

731{
732 /* Renormalization scale (varied for checking the cancellation of UV divergences */
733 double mu = Mw_i * RenormalizationScaleFactor;
734
735 double Mz = mySUSY.getMz();
736 double cW = Mw_i/Mz;
737 double cW2 = cW*cW;
738 double sW2 = 1.0 - cW2;
739 double sW = sqrt(sW2);
740
741 double PiThat = 0.0;
742
743 /* W self-energy */
744 PiThat += PiT_W(mu, 0.0, Mw_i).real();
745
746 /* W-mass counter term */
747 double delMw2 = PiT_W(mu, Mw_i*Mw_i, Mw_i).real();
748 PiThat -= delMw2;
749
750 /* counter term for e: (del e)/e */
751 double dele_over_e = PiTp_A(mu, 0.0, Mw_i).real()/2.0
752 + sW/cW*PiT_AZ(mu, 0.0, Mw_i).real()/Mz/Mz;
753 PiThat += 2.0*Mw_i*Mw_i*dele_over_e;
754
755 /* counter term for sW: (del sW)/sW */
756 double delSw_overSw = - cW2/2.0/sW2
757 *( PiT_W(mu, Mw_i*Mw_i, Mw_i).real()/Mw_i/Mw_i
758 - PiT_Z(mu, Mz*Mz, Mw_i).real()/Mz/Mz );
759 PiThat -= 2.0*Mw_i*Mw_i*delSw_overSw;
760
761 /* remaining counter terms,
762 * usually denoted by 2/(sW*cW)*PiT_AZ(0)/Mz/Mz. */
763 PiThat += - 2.0*Mw_i*Mw_i/(sW*cW)*PiT_AZ(mu, 0.0, Mw_i).real()/Mz/Mz;
764
765 return PiThat;
766}
gslpp::complex PiTp_A(const double mu, const double p2, const double Mw_i) const
The derivative of the transverse part of the photon self-energy with respect to , ,...
Definition: EWSUSY.cpp:647
gslpp::complex PiT_Z(const double mu, const double p2, const double Mw_i) const
The transverse part of the Z-boson self-energy, , in the 't Hooft-Feynman gauge.
Definition: EWSUSY.cpp:139
gslpp::complex PiT_W(const double mu, const double p2, const double Mw_i) const
The transverse part of the W-boson self-energy, , in the 't Hooft-Feynman gauge.
Definition: EWSUSY.cpp:337
gslpp::complex PiT_AZ(const double mu, const double p2, const double Mw_i) const
The transverse part of the self-energy, , for the mixing between photon and Z boson in the 't Hooft-F...
Definition: EWSUSY.cpp:503

◆ PiTp_A()

gslpp::complex EWSUSY::PiTp_A ( const double  mu,
const double  p2,
const double  Mw_i 
) const

The derivative of the transverse part of the photon self-energy with respect to \(p^2\), \(\Pi_{\gamma}^{T\prime}(p^2)\), in the 't Hooft-Feynman gauge.

Parameters
[in]muThe renormalization scale \(\mu\).
[in]p2The momentum squared \(p^2\).
[in]Mw_iThe W-boson mass \(M_W\).
Returns
\(\Pi_{\gamma}^{T\prime}(p^2)\) renormalized at the scale \(\mu\) in the 't Hooft-Feynman gauge.
References
Eq. (A.17) in [Chankowski, Pokorski and Rosiek, NPB 423 (1994) 437].

Definition at line 647 of file EWSUSY.cpp.

648{
649 double mu2 = mu*mu;
650 double e2 = 4.0*M_PI*mySUSY.getAle();
651 double e = sqrt(e2);
652 double Nc = mySUSY.getNc();
653
654 /* variables depending on Mw_i */
655 double Mw2 = Mw_i*Mw_i;
656 double mHp2[2] = {mySUSY.getMHp()*mySUSY.getMHp(), Mw2}; /* H^+_i = (H^+, G^+) */
657
658 gslpp::complex PiTp_f = gslpp::complex(0.0, 0.0, false);
659 gslpp::complex PiTp_sf = gslpp::complex(0.0, 0.0, false);
660 gslpp::complex PiTp_ch = gslpp::complex(0.0, 0.0, false);
661 gslpp::complex PiTp_WZH = gslpp::complex(0.0, 0.0, false);
662 gslpp::complex b0, b0p, b00p;
663
664 /* SM fermion loops */
665 gslpp::complex cV_Aee = - e;
666 gslpp::complex cA_Aee = 0.0;
667 gslpp::complex cV_Add = - e/3.0;
668 gslpp::complex cA_Add = 0.0;
669 gslpp::complex cV_Auu = 2.0/3.0*e;
670 gslpp::complex cA_Auu = 0.0;
671 for (int I=0; I<3; ++I) {
672 /* charged leptons */
673 PiTp_f += dFA(mu, p2, m_l[I], m_l[I], cV_Aee, cV_Aee, cA_Aee, cA_Aee);
674
675 /* down-type quarks */
676 PiTp_f += Nc*dFA(mu, p2, m_d[I], m_d[I], cV_Add, cV_Add, cA_Add, cA_Add);
677
678 /* up-type quarks */
679 PiTp_f += Nc*dFA(mu, p2, m_u[I], m_u[I], cV_Auu, cV_Auu, cA_Auu, cA_Auu);
680 }
681
682 /* charged-slepton loops */
683 for (int n=0; n<6; ++n) {
684 b00p = PV.B00p(mu2, p2, Mse2[n], Mse2[n]);
685 PiTp_sf += 4.0*e2*b00p;
686 }
687
688 /* down-type squark loops */
689 for (int n=0; n<6; ++n) {
690 b00p = PV.B00p(mu2, p2, Msd2[n], Msd2[n]);
691 PiTp_sf += 4.0*e2*Nc/3.0/3.0*b00p;
692 }
693
694 /* up-type squark loops */
695 for (int n=0; n<6; ++n) {
696 b00p = PV.B00p(mu2, p2, Msu2[n], Msu2[n]);
697 PiTp_sf += 4.0*e2*Nc*2.0/3.0*2.0/3.0*b00p;
698 }
699
700 /* chargino loops */
701 gslpp::complex cV_Aii = e;
702 gslpp::complex cA_Aii = 0.0;
703 for (int i=0; i<2; ++i)
704 PiTp_ch += dFA(mu, p2, mC[i], mC[i], cV_Aii, cV_Aii, cA_Aii, cA_Aii);
705
706 /* charged-Higgs loops */
707 for (int i=0; i<2; ++i) {
708 b00p = PV.B00p(mu2, p2, mHp2[i], mHp2[i]);
709 PiTp_WZH += 4.0*e2*b00p;
710 }
711
712 /* W-boson loops */
713 /* The Mw_i*Mw_i*b0p term, adding the corresponding contribution from
714 * the W-G loop below, differs from the one in the paper. */
715 b0 = PV.B0(mu2, p2, Mw2, Mw2);
716 b0p = PV.B0p(mu2, p2, Mw2, Mw2);
717 b00p = PV.B00p(mu2, p2, Mw2, Mw2);
718 PiTp_WZH += 2.0*e2*( (2.0*p2 + Mw2)*b0p + 2.0*b0 + 4.0*b00p);
719
720 /* W-boson - charged-Goldstone-boson loop */
721 //b0p = PV.B0p(mu2, p2, Mw2, Mw2); /* Same as the above */
722 PiTp_WZH += - 2.0*e2*Mw2*b0p;
723
724 /* Sum of all contributions */
725 gslpp::complex PiTp = PiTp_f + PiTp_sf + PiTp_ch + PiTp_WZH;
726
727 return ( PiTp/16.0/M_PI/M_PI );
728}

◆ SetRosiekParameters()

void EWSUSY::SetRosiekParameters ( )

Sets parameters in Rosiek's notation.

Rosiek SLHA
\(Y_u\) \(Y_U\)
\(Y_d\) \(-Y_D\)
\(Y_\ell\) \(-Y_E\)
Rosiek SLHA
\(A_u\) \(-\hat{T}_U^T\)
\(A_d\) \(\hat{T}_D^T\)
\(A_\ell\) \(\hat{T}_E^T\)
Rosiek SLHA
\(Z_-\) \(U^\dagger\)
\(Z_+\) \(V^\dagger\)
\(Z_N\) \(N^\dagger\)
Rosiek SLHA
\(Z_U\) \(R_u^\dagger\)
\(Z_D\) \(R_d^T\)
\(Z_\nu\) \(R_\nu^\dagger\)
\(Z_L\) \(R_e^T\)

\(Z_R=\left(\begin{array}{cc} \cos\alpha & -\sin\alpha \\ \sin\alpha & \cos\alpha \end{array}\right)\), \(Z_H=\left(\begin{array}{cc} \sin\beta & -\cos\beta \\ \cos\beta & \sin\beta \end{array}\right)\).

Definition at line 43 of file EWSUSY.cpp.

44{
45 Yu = mySUSY.getYu();
46 Yd = - mySUSY.getYd();
47 Yl = - mySUSY.getYe();
48
49 Au = - mySUSY.getTUhat().transpose();
50 Ad = mySUSY.getTDhat().transpose();
51 Al = mySUSY.getTEhat().transpose();
52
53 Zm = mySUSY.getU().hconjugate();
54 Zp = mySUSY.getV().hconjugate();
55 ZN = mySUSY.getN().hconjugate();
56
57 ZU = mySUSY.getRu().hconjugate();
58 ZD = mySUSY.getRd().transpose();
59 ZL = mySUSY.getRl().transpose();
60 Zne = mySUSY.getRn().hconjugate();
61
62 double sinAlpha = mySUSY.getSaeff().real(); /* Correct? */
63 double cosAlpha = sqrt(1.0 - sinAlpha*sinAlpha); /* -Pi/2 < alpha < 0 */
64 ZR.assign(0,0, cosAlpha);
65 ZR.assign(0,1, - sinAlpha);
66 ZR.assign(1,0, sinAlpha);
67 ZR.assign(1,1, cosAlpha);
68
69 ZH.assign(0,0, mySUSY.getSinb());
70 ZH.assign(0,1, - mySUSY.getCosb());
71 ZH.assign(1,0, mySUSY.getCosb());
72 ZH.assign(1,1, mySUSY.getSinb());
73
74 /* particle masses */
75 for (int I=0; I<3; ++I) {
76 /* up-type quarks */
77 m_u[I] = mySUSY.getMyEWSMcache()->mf(mySUSY.getQuarks((QCD::quark)(2*I)), mySUSY.getMz(), FULLNNLO);
78 /* down-type quarks */
79 m_d[I] = mySUSY.getMyEWSMcache()->mf(mySUSY.getQuarks((QCD::quark)(2*I + 1)), mySUSY.getMz(), FULLNNLO);
80 /* charged leptons */
81 m_l[I] = mySUSY.getLeptons((QCD::lepton)(2*I + 1)).getMass();
82 }
83 /* H^0_i = (H^0, h^0, A^0, G^0) */
84 mH02[0] = mySUSY.getMHh()*mySUSY.getMHh();
85 mH02[1] = mySUSY.getMHl()*mySUSY.getMHl();
86 mH02[2] = mySUSY.getMHa()*mySUSY.getMHa();
87 mH02[3] = mySUSY.getMz()*mySUSY.getMz(); /* mass squared of the neutral Goldstone boson */
88 for (int k=0; k<6; ++k) {
89 Msu2[k] = mySUSY.getMsu2()(k);
90 Msd2[k] = mySUSY.getMsd2()(k);
91 Mse2[k] = mySUSY.getMse2()(k);
92 }
93 for (int k=0; k<3; ++k)
94 Msn2[k] = mySUSY.getMsn2()(k);
95 for (int i=0; i<2; ++i)
96 mC[i] = mySUSY.getMch()(i);
97 for (int j=0; j<4; ++j)
98 mN[j] = mySUSY.getMneu()(j);
99}
@ FULLNNLO
Definition: OrderScheme.h:39
quark
An enum type for quarks.
Definition: QCD.h:323
lepton
An enum type for leptons.
Definition: QCD.h:310

◆ Sigma_nu_0()

gslpp::complex EWSUSY::Sigma_nu_0 ( const double  mu,
const QCD::lepton  I,
const QCD::lepton  J,
const double  Mw_i 
) const

The SUSY neutrino self-energy at zero momentum transfer in the 't Hooft-Feynman gauge.

Parameters
[in]muThe renormalization scale \(\mu\).
[in]IA neutrino.
[in]JA neutrino.
[in]Mw_iThe W-boson mass \(M_W\).
Returns
\(\Sigma_\nu(0,I,J)\) in the 't Hooft-Feynman gauge.
References
Eq. (A.24) in [Chankowski, Dabelstein, Hollik, Mosle, Pokorski and Rosiek, NPB 417 (1994) 101].

Definition at line 1092 of file EWSUSY.cpp.

1094{
1095 int intI, intJ;
1096 switch (I) {
1100 intI = ((int)I - StandardModel::NEUTRINO_1)/2;
1101 break;
1102 default:
1103 throw std::runtime_error("EWSUSY::Sigma_nu(): Wrong argument!");
1104 }
1105 switch (J) {
1109 intJ = ((int)J - StandardModel::NEUTRINO_1)/2;
1110 break;
1111 default:
1112 throw std::runtime_error("EWSUSY::Sigma_nu(): Wrong argument!");
1113 }
1114
1115 gslpp::complex Sigma = gslpp::complex(0.0, 0.0, false);
1116 double muIR = mu; /* fictional scale, since B0p(0,m1,m2) is IR finite */
1117 gslpp::complex b0p, b0;
1118
1119 /* charged-slepton - chargino loops */
1120 for (int k=0; k<6; ++k)
1121 for (int i=0; i<2; ++i) {
1122 b0p = PV.B0p(muIR*muIR, 0.0, Mse2[k], mC[i]*mC[i]);
1123 b0 = PV.B0(mu*mu, 0.0, Mse2[k], mC[i]*mC[i]);
1124 Sigma += 0.5*L_nLC(intI, k, i, Mw_i)*L_nLC(intJ, k, i, Mw_i).conjugate()
1125 *( (Mse2[k] - mC[i]*mC[i])*b0p - b0 );
1126 }
1127
1128 /* sneutrino - neutralino loops */
1129 for (int K=0; K<3; ++K) /* K=0-2 for left-handed sneutrinos */
1130 for (int j=0; j<4; ++j) {
1131 b0p = PV.B0p(muIR*muIR, 0.0, Msn2[K], mN[j]*mN[j]);
1132 b0 = PV.B0(mu*mu, 0.0, Msn2[K], mN[j]*mN[j]);
1133 Sigma += 0.5*L_nsnN(intI, K, j, Mw_i)*L_nsnN(intJ, K, j, Mw_i).conjugate()
1134 *( (Msn2[K] - mN[j]*mN[j])*b0p - b0 );
1135 }
1136
1137 return ( Sigma/16.0/M_PI/M_PI );
1138}

◆ v()

gslpp::complex EWSUSY::v ( const double  mu,
const QCD::lepton  M,
const QCD::lepton  J,
const double  Mw_i 
) const
Parameters
[in]muThe renormalization scale \(\mu\).
[in]MA charged lepton.
[in]JA neutrino.
[in]Mw_iThe W-boson mass \(M_W\).
Returns
\(v(M,J)\).
References
Eq. (A.19) in [Chankowski, Dabelstein, Hollik, Mosle, Pokorski and Rosiek, NPB 417 (1994) 101].

Definition at line 962 of file EWSUSY.cpp.

964{
965 int intM, intJ;
966 switch (M) {
970 intM = ((int)M - StandardModel::ELECTRON)/2;
971 break;
972 default:
973 throw std::runtime_error("EWSUSY::v(): Wrong argument!");
974 }
975 switch (J) {
979 intJ = ((int)J - StandardModel::NEUTRINO_1)/2;
980 break;
981 default:
982 throw std::runtime_error("EWSUSY::v(): Wrong argument!");
983 }
984
985 gslpp::complex v = gslpp::complex(0.0, 0.0, false);
986 gslpp::complex b0, ff;
987 gslpp::complex CL_ji, CR_ji; /* chargino-neutralino-W couplings */
988
989 /* charged-slepton - chargino - neutralino loops */
990 for (int k=0; k<6; ++k)
991 for (int j=0; j<4; ++j)
992 for (int i=0; i<2; ++i) {
993 CL_ji = ZN(1,j)*Zp(0,i).conjugate()
994 - ZN(3,j)*Zp(1,i).conjugate()/sqrt(2.0);
995 CR_ji = ZN(1,j).conjugate()*Zm(0,i)
996 + ZN(2,j).conjugate()*Zm(1,i)/sqrt(2.0);
997 b0 = PV.B0(mu*mu, 0.0, mC[i]*mC[i], mN[j]*mN[j]);
998 ff = f(sqrt(Mse2[k]), mC[i], mN[j]);
999 v += L_nLC(intJ, k, i, Mw_i).conjugate()*L_eLN(intM, k, j, Mw_i)
1000 *( sqrt(2.0)*CL_ji*mC[i]*mN[j]*ff
1001 - CR_ji/sqrt(2.0)*(b0 - 0.5 + Mse2[k]*ff) );
1002 }
1003
1004 /* sneutrino - neutralino - chargino loops */
1005 for (int K=0; K<3; ++K) /* K=0-2 for left-handed sneutrinos */
1006 for (int j=0; j<4; ++j)
1007 for (int i=0; i<2; ++i) {
1008 CL_ji = ZN(1,j)*Zp(0,i).conjugate()
1009 - ZN(3,j)*Zp(1,i).conjugate()/sqrt(2.0);
1010 CR_ji = ZN(1,j).conjugate()*Zm(0,i)
1011 + ZN(2,j).conjugate()*Zm(1,i)/sqrt(2.0);
1012 b0 = PV.B0(mu*mu, 0.0, mC[i]*mC[i], mN[j]*mN[j]);
1013 ff = f(sqrt(Msn2[K]), mC[i], mN[j]);
1014 v += L_nsnN(intJ, K, j, Mw_i).conjugate()*L_esnC(intM, K, i, Mw_i)
1015 *( - sqrt(2.0)*CR_ji*mC[i]*mN[j]*ff
1016 + CL_ji/sqrt(2.0)*(b0 - 0.5 + Msn2[K]*ff) );
1017 }
1018
1019 /* sneutrino - charged-slepton - neutralino loops */
1020 gslpp::matrix<gslpp::complex> ZneT_ZL = Zne.transpose()*ZL;
1021 for (int i=0; i<6; ++i)
1022 for (int j=0; j<4; ++j)
1023 for (int K=0; K<3; ++K) { /* K=0-2 for left-handed sneutrinos */
1024 b0 = PV.B0(mu*mu, 0.0, Mse2[i], Msn2[K]);
1025 ff = f(mN[j], sqrt(Mse2[i]), sqrt(Msn2[K]));
1026 v += 0.5*L_nsnN(intJ, K, j, Mw_i).conjugate()*L_eLN(intM, i, j, Mw_i)
1027 *ZneT_ZL(K, i).conjugate()*(b0 + 0.5 + mN[j]*mN[j]*ff);
1028 }
1029
1030 return ( v/16.0/M_PI/M_PI );
1031}

The documentation for this class was generated from the following files: