int SUMO_SetTestModel3 (void) { Q = 1185.2958500; gp = 0.3618578; g = 0.6372790; g3 = 1.0407687; ytop = 0.8418495; ybot = 0.3855710; ytau = 0.3024594; vu = 172.3771469; vd = 5.9095630; tanbeta = 29.1691869; mu = 1991.0474400; b = 269580.4222518; m2Hu = -3973340.2400000; m2Hd = 2119124.6100000; M1 = 262.5403450; M2 = 482.4322400; M3 = 1318.0386700; atop = -2296.7082491; abot = -1957.5889206; atau = -1334.6813211; m2Q[2] = pow(1758.2342000,2); m2u[2] = pow(817.2576430,2); m2d[2] = pow(2295.1127400,2); m2L[2] = pow(2297.6521100,2); m2e[2] = pow(2029.3275800,2); m2Q[1] = pow(2717.5845000,2); m2u[1] = pow(2705.5160100,2); m2d[1] = pow(2704.4123800,2); m2L[1] = pow(2519.6745100,2); m2e[1] = pow(2505.0860100,2); m2Q[0] = pow(2717.5845000,2); m2u[0] = pow(2705.5160100,2); m2d[0] = pow(2704.4123800,2); m2L[0] = pow(2519.6745100,2); m2e[0] = pow(2505.0860100,2); SUMO_Update (); SUMO_Tree_Masses (); SUMO_Tree_Couplings (); return 0; }
int SUMO_SetTestModel2 (void) { Q = 1192.9812400; gp = 0.3618556; g = 0.6377560; g3 = 1.0443837; ytop = 0.8405106; ybot = 0.3727013; ytau = 0.3042641; vu = 172.0511758; vd = 5.8975940; tanbeta = 29.1731131; mu = 1997.7883300; b = 274833.6174415; m2Hu = -4000758.9500000; m2Hd = 2282924.3500000; M1 = 260.3053070; M2 = 481.0945230; M3 = 1326.7861500; atop = -2324.4248712; abot = -1913.4992102; atau = -1348.9331542; m2Q[2] = pow(1778.4864000,2); m2u[2] = pow(818.4605890,2); m2d[2] = pow(2325.6185000,2); m2L[2] = pow(2293.6290200,2); m2e[2] = pow(2020.6285100,2); m2Q[1] = pow(2720.9045100,2); m2u[1] = pow(2708.9807700,2); m2d[1] = pow(2707.6696400,2); m2L[1] = pow(2518.9490200,2); m2e[1] = pow(2503.5243300,2); m2Q[0] = pow(2721.0360800,2); m2u[0] = pow(2709.0064100,2); m2d[0] = pow(2707.9107700,2); m2L[0] = pow(2519.6904000,2); m2e[0] = pow(2505.0246300,2); SUMO_Update (); SUMO_Tree_Masses (); SUMO_Tree_Couplings (); return 0; }
int SUMO_SetTestModel (void) { Q = 640.L; /* For testing, these are the 1-loop values including strong contribs only: */ /* vu = 172.610120L; */ /* vd = 17.415145L; */ /* For testing, these are the 2-loop values including strong contribs only: */ /* vu = 177.040132L; */ /* vd = 17.765925L; */ vu = 172.L; vd = 17.2L; gp = 0.36L; g = 0.65L; g3 = 1.06L; ytop = 0.90L; ybot = 0.13L; ytau = 0.10L; M1 = 150.L; M2 = 280.L; M3 = 800.L; atop = -600.L; abot = -150.L; atau = -40.L; m2Q[1] = m2Q[0] = 780.L*780.L; m2u[1] = m2u[0] = 740.L*740.L; m2d[1] = m2d[0] = 735.L*735.L; m2L[1] = m2L[0] = 280.L*280.L; m2e[1] = m2e[0] = 200.L*200.L; m2Q[2] = 700.L*700.L; m2u[2] = 580.L*580.L; m2d[2] = 725.L*725.L; m2L[2] = 270.L*270.L; m2e[2] = 195.L*195.L; m2Hu = -500.L*500.L; m2Hd = 270.L*270.L; mu = 504.1811202L; b = 33937.10367865087L; LambdaVacuum = 0.L; tanbeta = vu/vd; SUMO_Update (); SUMO_Tree_Masses (); SUMO_Tree_Couplings (); /* Implement status code eventually... */ return 0; }
int SUMO_SetTestModel4 (void) { gp = 3.625155e-01; g = 6.430183e-01; g3 = 1.065820e+00; ytop = 8.354106e-01; ybot = 1.315183e-01; ytau = 1.006065e-01; M1 = 2.092662e+02; M2 = 3.881985e+02; M3 = 1.117739e+03; atop = -7.680666e+02; abot = -1.734235e+02; atau = -2.996008e+01; m2Hu = -3.659024e+05; m2Hd = 1.096987e+05; mu = 6.145860e+02; b = 5.268885e+04; Q = 8.844737e+02; m2Q[0] = 1.046745e+06; m2u[0] = 9.710204e+05; m2d[0] = 9.620489e+05; m2L[0] = 1.253124e+05; m2e[0] = 4.925768e+04; m2Q[1] = 1.046740e+06; m2u[1] = 9.710151e+05; m2d[1] = 9.620436e+05; m2L[1] = 1.253100e+05; m2e[1] = 4.925288e+04; m2Q[2] = 8.960003e+05; m2u[2] = 6.720852e+05; m2d[2] = 9.527687e+05; m2L[2] = 1.246002e+05; m2e[2] = 4.780542e+04; /* These are the Softsusy values... */ vu = 1.718402e+02; vd = 1.773515e+01; SUMO_Update (); SUMO_Tree_Masses (); SUMO_Tree_Couplings (); /* SUMO_Minimize_Veff (2); */ return 0; }
void higherorder (supermodel *smodel) { int i; /* Disable annoying warning messages */ fclose (stderr); #ifdef TSIL_SIZE_DOUBLE vu = smodel->vu; vd = smodel->vd; gp = smodel->gp; g = smodel->g; g3 = smodel->g3; ytop = smodel->ytop; ybot = smodel->ybot; ytau = smodel->ytau; M1 = smodel->m1; M2 = smodel->m2; M3 = smodel->m3; atop = smodel->atop; abot = smodel->abot; atau = smodel->atau; // for(i=0; i<3; i++) { m2Q[i] = smodel->m2Q[i]; m2u[i] = smodel->m2u[i]; m2d[i] = smodel->m2d[i]; m2L[i] = smodel->m2L[i]; m2e[i] = smodel->m2e[i]; } // m2Hu = smodel->m2Hu; m2Hd = smodel->m2Hd; mu = smodel->mu; b = smodel->b; //renormalization scale Q = smodel->Q; #else vu = (long double) smodel->vu; vd = (long double) smodel->vd; gp = (long double) smodel->gp; g = (long double) smodel->g; g3 = (long double) smodel->g3; ytop = (long double) smodel->ytop; ybot = (long double) smodel->ybot; ytau = (long double) smodel->ytau; M1 = (long double) smodel->m1; M2 = (long double) smodel->m2; M3 = (long double) smodel->m3; atop = (long double) smodel->atop; abot = (long double) smodel->abot; atau = (long double) smodel->atau; // for(i=0; i<3; i++) { m2Q[i] = (long double) smodel->m2Q[i]; m2u[i] = (long double) smodel->m2u[i]; m2d[i] = (long double) smodel->m2d[i]; m2L[i] = (long double) smodel->m2L[i]; m2e[i] = (long double) smodel->m2e[i]; } // m2Hu = (long double) smodel->m2Hu; m2Hd = (long double) smodel->m2Hd; mu = (long double) smodel->mu; b = (long double) smodel->b; //renormalization scale Q = (long double) smodel->Q; #endif /* Transfering information */ /* vu = 172.L; vd = 17.2L; gp = 0.36L; g = 0.65L; g3 = 1.06L; ytop = 0.90L; ybot = 0.13L; ytau = 0.10L; M1 = 150.L; M2 = 280.L; M3 = 800.L; atop = -600.L; abot = -150.L; atau = -40.L; m2Q[1] = m2Q[0] = 780.L*780.L; m2u[1] = m2u[0] = 740.L*740.L; m2d[1] = m2d[0] = 735.L*735.L; m2L[1] = m2L[0] = 280.L*280.L; m2e[1] = m2e[0] = 200.L*200.L; m2Q[2] = 700.L*700.L; m2u[2] = 580.L*580.L; m2d[2] = 725.L*725.L; m2L[2] = 270.L*270.L; m2e[2] = 195.L*195.L; m2Hu = -500.L*500.L; m2Hd = 270.L*270.L; mu = 504.1811202L; b = 33937.10367865087L; */ //Check this /* DGR can safely be ignored */ /* LambdaVacuum = 0.L; */ tanbeta = vu/vd; SUMO_Update (); SUMO_Tree_Masses (); SUMO_Tree_Couplings (); /* Minimize 2-loop Veff, to set correct vu,vd,tanbeta: */ /* printf("Before minimizing (vu, vd) = (%Lf, %Lf)\n", vu, vd); */ SUMO_Minimize_Veff (2); /* printf("After minimizing (vu, vd) = (%Lf, %Lf)\n", vu, vd); */ // For debugging purposes printf("Tree-level gluino mass: %Lf \n",SUMO_SQRT(M2_gluino)); SUMO_GluinoPole (1); printf("One-loop gluino mass: %Lf \n",SUMO_SQRT(M2_gluino)); SUMO_GluinoPole (2); printf("Two-loop gluino mass: %Lf \n", SUMO_SQRT(M2_gluino)); #ifdef TSIL_SIZE_DOUBLE smodel->mgluino = SUMO_SQRT(M2_gluino); #else smodel->mgluino = (double) SUMO_SQRT(M2_gluino); #endif }
void higherorder (supermodel *smodel) { int i; /* Disable annoying warning messages */ fclose (stderr); #ifdef TSIL_SIZE_DOUBLE vu = smodel->vu; vd = smodel->vd; gp = smodel->gp; g = smodel->g; g3 = smodel->g3; ytop = smodel->ytop; ybot = smodel->ybot; ytau = smodel->ytau; M1 = smodel->m1; M2 = smodel->m2; M3 = smodel->m3; atop = smodel->atop; abot = smodel->abot; atau = smodel->atau; // for(i=0; i<3; i++) { m2Q[i] = smodel->m2Q[i]; m2u[i] = smodel->m2u[i]; m2d[i] = smodel->m2d[i]; m2L[i] = smodel->m2L[i]; m2e[i] = smodel->m2e[i]; } // m2Hu = smodel->m2Hu; m2Hd = smodel->m2Hd; mu = smodel->mu; b = smodel->b; //renormalization scale Q = smodel->Q; // DGR added: M_top = smodel->mtop; #else vu = (long double) smodel->vu; vd = (long double) smodel->vd; gp = (long double) smodel->gp; g = (long double) smodel->g; g3 = (long double) smodel->g3; ytop = (long double) smodel->ytop; ybot = (long double) smodel->ybot; ytau = (long double) smodel->ytau; M1 = (long double) smodel->m1; M2 = (long double) smodel->m2; M3 = (long double) smodel->m3; atop = (long double) smodel->atop; abot = (long double) smodel->abot; atau = (long double) smodel->atau; // for(i=0; i<3; i++) { m2Q[i] = (long double) smodel->m2Q[i]; m2u[i] = (long double) smodel->m2u[i]; m2d[i] = (long double) smodel->m2d[i]; m2L[i] = (long double) smodel->m2L[i]; m2e[i] = (long double) smodel->m2e[i]; } // m2Hu = (long double) smodel->m2Hu; m2Hd = (long double) smodel->m2Hd; mu = (long double) smodel->mu; b = (long double) smodel->b; //renormalization scale Q = (long double) smodel->Q; // DGR added: M_top = (long double) smodel->mtop; #endif tanbeta = vu/vd; /// DEBUG: Ben has added for checking // TSIL_REAL m2Ztree, mztree; // TSIL_REAL cos2bet; // TSIL_REAL primer818; // TSIL_REAL primer819; // Following uses normalization where VEV is about 175 GeV // vu = vu/sqrt(2.); // vd = vd/sqrt(2.); // printf("Softsusy (vu, vd, tanbeta) = (%Lf, %Lf, %Lf)\n", vu, vd, tanbeta); // SUMO_Update (); // SUMO_Tree_Masses (); // SUMO_Tree_Couplings (); // printf("Supermodel 0-loop (vu, vd) = (%Lf, %Lf)\n", vu, vd); // SUMO_Minimize_Veff (1); // printf("Supermodel 1-loop (vu, vd) = (%Lf, %Lf)\n", vu, vd); // SUMO_Minimize_Veff (2); // printf("Supermodel 2-loop (vu, vd) = (%Lf, %Lf)\n", vu, vd); // m2Ztree = (g*g + gp*gp)*(vu*vu + vd*vd)/2.0; // mztree = sqrt(m2Ztree); // cos2bet = (vd*vd - vu*vu)/(vd*vd + vu*vu); // primer818 = TSIL_CREAL(m2Hu + mu*mu - b*vd/vu - m2Ztree*cos2bet/2.0); // primer819 = TSIL_CREAL(m2Hd + mu*mu - b*vu/vd + m2Ztree*cos2bet/2.0); // printf("Primer eq. (8.1.8) = %Lf\n", primer818); // printf("Primer eq. (8.1.9) = %Lf\n", primer819); // printf("Primer eq. (8.1.8)/mu^2 = %Lf\n", primer818/(mu*mu)); // printf("Primer eq. (8.1.9)/mu^2 = %Lf\n", primer819/(mu*mu)); /// end of DEBUG SUMO_Update (); SUMO_Tree_Masses (); SUMO_Tree_Couplings (); /* Minimize 2-loop Veff, to set correct vu,vd,tanbeta: */ /* printf("Before minimizing (vu, vd) = (%Lf, %Lf)\n", vu, vd); SUMO_Minimize_Veff (0); printf("After minimizing (vu, vd) = (%Lf, %Lf)\n", vu, vd); */ // DGR top pole mass needs to be set before gluino calculation: // M_top = 173.5; M2_top = M_top * M_top; int which = 0; int loops = 2; for (which = 0; which < 2; which++) { /* loops = 1; SUMO_StopPole (which, loops); printf("Loops=%i Which=%i stop mass: %Lf \n",loops,which,SUMO_SQRT(M2_stop[which])); loops = 2; */ SUMO_StopPole (which, loops); // printf("Loops=%i Which=%i stop mass: %Lf \n",loops,which,SUMO_SQRT(M2_stop[which])); /* loops = 1; SUMO_SbotPole (which, loops); printf("Loops=%i Which=%i sbot mass: %Lf \n",loops,which,SUMO_SQRT(M2_sbot[which])); loops = 2;*/ SUMO_SbotPole (which, loops); // printf("Loops=%i Which=%i sbot mass: %Lf \n",loops,which,SUMO_SQRT(M2_sbot[which])); /* loops = 1; SUMO_SuLPole (which, loops); printf("Loops=%i Which=%i suL mass: %Lf \n",loops,which,SUMO_SQRT(M2_suL[which])); loops = 2;*/ SUMO_SuLPole (which, loops); // printf("Loops=%i Which=%i suL mass: %Lf \n",loops,which,SUMO_SQRT(M2_suL[which])); /* loops = 1; SUMO_SuRPole (which, loops); printf("Loops=%i Which=%i suR mass: %Lf \n",loops,which,SUMO_SQRT(M2_suR[which])); loops = 2; */ SUMO_SuRPole (which, loops); // printf("Loops=%i Which=%i suR mass: %Lf \n",loops,which,SUMO_SQRT(M2_suR[which])); /*loops = 1; SUMO_SdLPole (which, loops); printf("Loops=%i Which=%i sdL mass: %Lf \n",loops,which,SUMO_SQRT(M2_sdL[which])); loops = 2; */ SUMO_SdLPole (which, loops); // printf("Loops=%i Which=%i sdL mass: %Lf \n",loops,which,SUMO_SQRT(M2_sdL[which])); /* loops = 1; SUMO_SdRPole (which, loops); printf("Loops=%i Which=%i sdR mass: %Lf \n",loops,which,SUMO_SQRT(M2_sdR[which])); loops = 2;*/ SUMO_SdRPole (which, loops); // printf("Loops=%i Which=%i sdR mass: %Lf \n",loops,which,SUMO_SQRT(M2_sdR[which])); } // DGR Moved this *after* top and squark pole mass calculation // (necessary when expanding gluino around pole masses). // For debugging purposes, we print // SUMO_GluinoPole (0,1); // printf("Tree-level gluino mass: %Lf \n",SUMO_SQRT(M2_gluino)); // SUMO_GluinoPole (1, 1); // printf("One-loop gluino mass 0: %Lf \n",SUMO_SQRT(M2_gluino)); SUMO_GluinoPole (2, 0); /* printf("Two-loop gluino mass 0: %Lf \n",SUMO_SQRT(M2_gluino)); SUMO_GluinoPole (2, 1); printf("Two-loop gluino mass 1: %Lf \n",SUMO_SQRT(M2_gluino)); SUMO_GluinoPole (2, 2); printf("Two-loop gluino mass 2: %Lf \n",SUMO_SQRT(M2_gluino)); // printf("Two-loop gluino mass: %Lf \n", SUMO_SQRT(M2_gluino)); exit(0);*/ /* SUMO_h0Pole (loops); SUMO_H0Pole (loops); SUMO_G0Pole (loops); SUMO_A0Pole (loops); */ #ifdef TSIL_SIZE_DOUBLE smodel->mgluino = SUMO_SQRT(M2_gluino); smodel->mstop1 = SUMO_SQRT(M2_stop[0]); smodel->mstop2 = SUMO_SQRT(M2_stop[1]); smodel->msbot1 = SUMO_SQRT(M2_sbot[0]); smodel->msbot2 = SUMO_SQRT(M2_sbot[1]); smodel->muL = SUMO_SQRT(M2_suL[0]); smodel->mcL = SUMO_SQRT(M2_suL[1]); smodel->mdL = SUMO_SQRT(M2_sdL[0]); smodel->msL = SUMO_SQRT(M2_sdL[1]); smodel->muR = SUMO_SQRT(M2_suR[0]); smodel->mcR = SUMO_SQRT(M2_suR[1]); smodel->mdR = SUMO_SQRT(M2_sdR[0]); smodel->msR = SUMO_SQRT(M2_sdR[1]); #else smodel->mgluino = (double) SUMO_SQRT(M2_gluino); smodel->mstop1 = (double) SUMO_SQRT(M2_stop[0]); smodel->mstop2 = (double) SUMO_SQRT(M2_stop[1]); smodel->msbot1 = (double) SUMO_SQRT(M2_sbot[0]); smodel->msbot2 = (double) SUMO_SQRT(M2_sbot[1]); smodel->muL = (double) SUMO_SQRT(M2_suL[0]); smodel->mcL = (double) SUMO_SQRT(M2_suL[1]); smodel->mdL = (double) SUMO_SQRT(M2_sdL[0]); smodel->msL = (double) SUMO_SQRT(M2_sdL[1]); smodel->muR = (double) SUMO_SQRT(M2_suR[0]); smodel->mcR = (double) SUMO_SQRT(M2_suR[1]); smodel->mdR = (double) SUMO_SQRT(M2_sdR[0]); smodel->msR = (double) SUMO_SQRT(M2_sdR[1]); #endif }