17 "m1r",
"m1i",
"m2r",
"m2i",
"m3" ,
"muHr",
"muHi",
"mHptree",
"tanb",
"Q_SUSY"
22 msQhat2(3,3,0.), msUhat2(3,3,0.), msDhat2(3,3,0.),msLhat2(3,3,0.), msNhat2(3,3,0.), msEhat2(3,3,0.),
23 TUhat(3,3,0.), TDhat(3,3,0.), TNhat(3,3,0.), TEhat(3,3,0.),
24 mch(2,0.), mneu(4,0.), m_su2(6,0.), m_sd2(6,0.), m_sdresum2(6,0.), m_sn2(6,0.), m_se2(6,0.),
25 U(2,2,0.), V(2,2,0.), N(4,4,0.),
26 Ru(6,6,0.), Rd(6,6,0.), Rdresum(6,6,0.), Rn(6,6,0.), Rl(6,6,0.)
28 ModelParamMap.insert(std::pair<std::string, boost::reference_wrapper<const double> >(
"m1r", boost::cref(
m1.
real())));
29 ModelParamMap.insert(std::pair<std::string, boost::reference_wrapper<const double> >(
"m1i", boost::cref(
m1.
imag())));
30 ModelParamMap.insert(std::pair<std::string, boost::reference_wrapper<const double> >(
"m2r", boost::cref(
m2.
real())));
31 ModelParamMap.insert(std::pair<std::string, boost::reference_wrapper<const double> >(
"m2i", boost::cref(
m2.
imag())));
32 ModelParamMap.insert(std::pair<std::string, boost::reference_wrapper<const double> >(
"m3", boost::cref(
m3)));
33 ModelParamMap.insert(std::pair<std::string, boost::reference_wrapper<const double> >(
"muHr", boost::cref(
muH.
real())));
34 ModelParamMap.insert(std::pair<std::string, boost::reference_wrapper<const double> >(
"muHi", boost::cref(
muH.
imag())));
35 ModelParamMap.insert(std::pair<std::string, boost::reference_wrapper<const double> >(
"mHptree", boost::cref(
mHptree)));
36 ModelParamMap.insert(std::pair<std::string, boost::reference_wrapper<const double> >(
"tanb", boost::cref(
tanb)));
37 ModelParamMap.insert(std::pair<std::string, boost::reference_wrapper<const double> >(
"Q_SUSY", boost::cref(
Q_SUSY)));
62 bool SUSY::Init(
const std::map<std::string, double>& DPars)
80 for (std::map<std::string, double>::const_iterator it = DPars.begin(); it != DPars.end(); it++)
101 for (
int i = 0; i < 6; i++) {
107 for (
int j = 0; j < 6; j++) {
119 for (
int i = 0; i < 2; i++) {
121 for (
int j = 0; j < 2; j++) {
130 for (
int i = 0; i < 4; i++) {
132 for (
int j = 0; j < 4; j++)
153 if (mHl < 10. || mHl > 1000.) {
154 std::cout <<
"WARNING: mh=" <<
mHl <<
" in SUSY::PostUpdate" << std::endl;
170 if (name.compare(
"m1r") == 0)
172 else if (name.compare(
"m1i") == 0)
174 else if (name.compare(
"m2r") == 0)
176 else if (name.compare(
"m2i") == 0)
178 else if (name.compare(
"m3") == 0)
180 else if (name.compare(
"muHr") == 0)
182 else if (name.compare(
"muHi") == 0)
184 else if (name.compare(
"mHptree") == 0)
186 else if (name.compare(
"tanb") == 0)
188 else if (name.compare(
"Q_SUSY") == 0)
197 if(DPars.find(
SUSYvars[i])==DPars.end()) {
198 std::cout <<
"missing mandatory SUSY parameter " <<
SUSYvars[i] << std::endl;
208 throw std::runtime_error(
"SUSY::setTanb(): Negative tanb is not allowed");
211 cosb =
sqrt(1. / (1. + tanb * tanb));
224 double mtbar = Mp2Mbar(mtpole,
FULLNLO);
226 double Q_SUSY_temp =
Q_SUSY;
229 for (
int i = 0; i < 3; i++) {
gslpp::matrix< gslpp::complex > msUhat2
gslpp::matrix< gslpp::complex > Rdresum
gslpp::matrix< gslpp::complex > Ye
The Yukawa matrix of the charged leptons.
gslpp::vector< double > m_se2
virtual bool PostUpdate()
The post-update method for StandardModel.
virtual bool setFlagStr(const std::string name, const std::string value)
A method to set a flag of StandardModel.
gslpp::matrix< gslpp::complex > UPMNS
The PMNS matrix.
virtual bool InitializeModel()
bool CalcChargino(gslpp::matrix< gslpp::complex > &U_i, gslpp::matrix< gslpp::complex > &V_i, gslpp::vector< double > &mch_i)
Computes the chargino spectrum at tree level.
quark
An enum type for quarks.
gslpp::matrix< gslpp::complex > Ru
virtual void setParameter(const std::string name, const double &value)
gslpp::vector< double > mneu
Particle getLeptons(const StandardModel::lepton p) const
A get method to retrieve the member object of a lepton.
bool CalcSelectron(gslpp::matrix< gslpp::complex > &Rl_i, gslpp::vector< double > &m_se2_i)
Computes the charged-slepton spectrum at tree level.
A base class for defining operations on matrices, both real and complex.
gslpp::matrix< gslpp::complex > V
SUSYMatching * mySUSYMatching
gslpp::matrix< gslpp::complex > N
bool CalcSdown(gslpp::matrix< gslpp::complex > &Rd_i, gslpp::vector< double > &m_sd2_i)
Computes the down-type squark spectrum at tree level.
gslpp::matrix< gslpp::complex > Yn
The Yukawa matrix of the neutrinos.
const double & real() const
SUSY()
A SUSY constructor.
gslpp::matrix< gslpp::complex > Rn
virtual void computeYukawas()
bool UpdateError
A boolean set to false if update is successful.
bool CalcHiggs(double mh[4], gslpp::complex &saeff_i)
Computes the Higgs spectrum at tree level.
virtual bool InitializeModel()
A method to initialize the model.
A model class for the Standard Model.
double mHl
The Higgs mass in GeV.
SUSYSpectrum * mySUSYSpectrum
gslpp::matrix< gslpp::complex > Yu
The Yukawa matrix of the up-type quarks.
gslpp::matrix< gslpp::complex > U
void setModelInitialized(bool ModelInitialized)
A set method to fix the failure or success of the initialization of the model.
gslpp::matrix< gslpp::complex > Rl
gslpp::vector< double > m_sn2
bool IsModelInitialized() const
A method to check if the model is initialized.
virtual double v() const
The Higgs vacuum expectation value. where is the Fermi constant, measured through muon decays...
virtual bool Init(const std::map< std::string, double > &DPars)
A method to initialize the model parameters.
virtual void setParameter(const std::string name, const double &value)
A method to set the value of a parameter of StandardModel.
virtual bool PreUpdate()
The pre-update method for StandardModel.
gslpp::matrix< gslpp::complex > Rd
bool CalcSup(gslpp::matrix< gslpp::complex > &Ru_i, gslpp::vector< double > &m_su2_i)
Computes the up-type squark spectrum at tree level.
void SortSfermionMasses(gslpp::vector< double > &m_sf2, gslpp::matrix< gslpp::complex > &Rf) const
Particle getQuarks(const quark q) const
A get method to access a quark as an object of the type Particle.
bool CalcNeutralino(gslpp::matrix< gslpp::complex > &N_i, gslpp::vector< double > &mneu_i)
Computes the neutralino spectrum at tree level.
gslpp::matrix< gslpp::complex > Yd
The Yukawa matrix of the down-type quarks.
virtual bool CheckParameters(const std::map< std::string, double > &DPars)
A method to check if all the mandatory parameters for StandardModel have been provided in model initi...
A class for the matching in the MSSM.
gslpp::vector< double > m_sd2
double getMGl() const
Gets the gluino mass obtained from FHGetPara().
const double & getMass() const
A get method to access the particle mass.
const double & imag() const
virtual bool Update(const std::map< std::string, double > &DPars)
static const int NSUSYvars
virtual bool CheckParameters(const std::map< std::string, double > &DPars)
gslpp::vector< double > m_su2
static const std::string SUSYvars[NSUSYvars]
virtual bool Init(const std::map< std::string, double > &DPars)
~SUSY()
A SUSY destructor.
bool CalcSneutrino(gslpp::matrix< gslpp::complex > &Rn_i, gslpp::vector< double > &m_sn2_i)
Computes the sneutrino spectrum at tree level.
gslpp::matrix< gslpp::complex > msQhat2
gslpp::vector< double > mch
virtual bool setFlag(const std::string name, const bool value)
A method to set a flag of StandardModel.
gslpp::vector< double > m_sdresum2
virtual bool PostUpdate()
std::map< std::string, boost::reference_wrapper< const double > > ModelParamMap
void updateSUSYParameters()
Updates to new SUSY parameter sets.
lepton
An enum type for leptons.
friend class SUSYSpectrum
Friend classes of SUSY class.
virtual bool setFlag(const std::string, const bool)
virtual void SetTanb(const double tanb)
complex sqrt(const complex &z)