double get_Yu(int i, int k) const { return Yu(i,k); }
MSSM<Two_scale> setup_MSSM() { const double ALPHASMZ = 0.1176; const double ALPHAMZ = 1.0 / 127.918; const double sinthWsq = 0.23122; const double alpha1 = 5 * ALPHAMZ / (3 * (1 - sinthWsq)); const double alpha2 = ALPHAMZ / sinthWsq; const double g1 = sqrt(4 * Pi * alpha1); const double g2 = sqrt(4 * Pi * alpha2); const double g3 = sqrt(4 * Pi * ALPHASMZ); const double tanBeta = 10; const double sinBeta = sin(atan(tanBeta)); const double cosBeta = cos(atan(tanBeta)); const double M12 = 100.0; const double m0 = 250.0; const double a0 = 50.0; const double root2 = sqrt(2.0); const double vev = 246.0; const double vu = vev * sinBeta; const double vd = vev * cosBeta; const double susyMu = 120.0; const double BMu = Sqr(2.0 * susyMu); Eigen::Matrix<double,3,3> Yu(Eigen::Matrix<double,3,3>::Zero()), Yd(Eigen::Matrix<double,3,3>::Zero()), Ye(Eigen::Matrix<double,3,3>::Zero()), mm0(Eigen::Matrix<double,3,3>::Zero()); Yu(2,2) = 165.0 * root2 / (vev * sinBeta); Yd(2,2) = 2.9 * root2 / (vev * cosBeta); Ye(2,2) = 1.77699 * root2 / (vev * cosBeta); mm0 = Sqr(m0) * Eigen::Matrix<double,3,3>::Identity(); MSSM<Two_scale> m; m.set_scale(91); m.set_loops(1); m.set_g1(g1); m.set_g2(g2); m.set_g3(g3); m.set_Yu(Yu); m.set_Yd(Yd); m.set_Ye(Ye); m.set_MassB(M12); m.set_MassG(M12); m.set_MassWB(M12); m.set_mq2(mm0); m.set_ml2(mm0); m.set_md2(mm0); m.set_mu2(mm0); m.set_me2(mm0); m.set_mHd2(Sqr(m0)); m.set_mHu2(Sqr(m0)); m.set_TYu(a0 * Yu); m.set_TYd(a0 * Yd); m.set_TYe(a0 * Ye); m.set_Mu(susyMu); m.set_BMu(BMu); m.set_vu(vu); m.set_vd(vd); return m; }
void set_Yu(int i, int k, double value) { Yu(i,k) = value; }