a Code for the Combination of Indirect and Direct Constraints on High Energy Physics Models Logo
SUSY.cpp
Go to the documentation of this file.
1/*
2 * Copyright (C) 2012 HEPfit Collaboration
3 *
4 *
5 * For the licensing terms see doc/COPYING.
6 */
7
8#include <math.h>
9#include <sstream>
10#include <stdexcept>
12#include "SUSY.h"
13#include "SUSYSpectrum.h"
14#include "EWSUSY.h"
15/* BEGIN: REMOVE FROM THE PACKAGE */
16#if FEYNHIGGS
17#include "FeynHiggsWrapper.h"
18#endif
19/* END: REMOVE FROM THE PACKAGE */
20
21
22const std::string SUSY::SUSYvars[NSUSYvars] = {
23 "m1r", "m1i", "m2r", "m2i", "m3" , "muHr", "muHi", "mHptree", "tanb", "Q_SUSY"
24};
25
27: StandardModel(),
28 msQhat2(3,3,0.), msUhat2(3,3,0.), msDhat2(3,3,0.),msLhat2(3,3,0.), msNhat2(3,3,0.), msEhat2(3,3,0.),
29 TUhat(3,3,0.), TDhat(3,3,0.), TNhat(3,3,0.), TEhat(3,3,0.),
30 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.),
31 U(2,2,0.), V(2,2,0.), N(4,4,0.),
32 Ru(6,6,0.), Rd(6,6,0.), Rdresum(6,6,0.), Rn(6,6,0.), Rl(6,6,0.),SUSYM(*this)
33{
34 SMM.setObj((StandardModelMatching&) SUSYM.getObj());
35 ModelParamMap.insert(std::make_pair("m1r", std::cref(m1.real())));
36 ModelParamMap.insert(std::make_pair("m1i", std::cref(m1.imag())));
37 ModelParamMap.insert(std::make_pair("m2r", std::cref(m2.real())));
38 ModelParamMap.insert(std::make_pair("m2i", std::cref(m2.imag())));
39 ModelParamMap.insert(std::make_pair("m3", std::cref(m3)));
40 ModelParamMap.insert(std::make_pair("muHr", std::cref(muH.real())));
41 ModelParamMap.insert(std::make_pair("muHi", std::cref(muH.imag())));
42 ModelParamMap.insert(std::make_pair("mHptree", std::cref(mHptree)));
43 ModelParamMap.insert(std::make_pair("tanb", std::cref(tanb)));
44 ModelParamMap.insert(std::make_pair("Q_SUSY", std::cref(Q_SUSY)));
45
46 flag_fh = false;
47 flag_h = false;
48 flag_g = false;
49 flag_ch = false;
50 flag_ne = false;
51}
52
54{
55 if (IsModelInitialized()) {
56/* BEGIN: REMOVE FROM THE PACKAGE */
57#if FEYNHIGGS
58 if (myFH != NULL) delete(myFH);
59#endif
60/* END: REMOVE FROM THE PACKAGE */
61 if (mySUSYSpectrum != NULL) delete(mySUSYSpectrum);
62 if (myEWSUSY != NULL) delete(myEWSUSY);
63 }
64}
66// Initialization
67
69{
70 if (!flag_h) mySUSYSpectrum = new SUSYSpectrum(*this);
71 else mySUSYSpectrum = NULL;
72/* BEGIN: REMOVE FROM THE PACKAGE */
73#if FEYNHIGGS
74 if (flag_h) myFH = new FeynHiggsWrapper(*this);
75 else myFH = NULL;
76#endif
77/* END: REMOVE FROM THE PACKAGE */
78 myEWSUSY = new EWSUSY(*this);
79 setFlagStr("Mw", "NORESUM");
82 return(true);
83}
84
86// Parameters
87
88bool SUSY::Init(const std::map<std::string, double>& DPars)
89{
91}
92
94{
95 if(!StandardModel::PreUpdate()) return (false);
96
97 return (true);
98}
99
100bool SUSY::Update(const std::map<std::string, double>& DPars)
101{
102 if(!PreUpdate()) return (false);
103
104 UpdateError = false;
105
106 for (std::map<std::string, double>::const_iterator it = DPars.begin(); it != DPars.end(); it++)
107 setParameter(it->first, it->second);
108
109 if (UpdateError) return (false);
110
111 if(!PostUpdate()) return (false);
112
113 return (true);
114}
115
117{
118 if(!StandardModel::PostUpdate()) return (false);
119 /* Set the squark and slepton mass matrices and the trilinear-coupling matrices */
120 SetSoftTerms();
122
123 /* use approximate GUT relation if M1 & M2 are zero */
124 if(m1.abs() == 0. && m2.abs() == 0.) {
125 m1.real() = m3/6.;
126 m2.real() = m3/3.;
127 }
128
129 /* Compute Higgs and sparticle spectra with FeynHiggs */
130 if (IsFlag_FH()) {
131/* BEGIN: REMOVE FROM THE PACKAGE */
132#if FEYNHIGGS
133 if(!myFH->SetFeynHiggsPars()) return (false);
134 if(!myFH->CalcHiggsSpectrum()) return (false);
135 if(!myFH->CalcSpectrum()) return (false); /* FH does not calculate Sneutrino masses. */
136#endif
137/* END: REMOVE FROM THE PACKAGE */
138 }
139 else {
140 /* Compute Higgs and sparticle spectra without FeynHiggs */
141 /* sfermions */
142 for (int i = 0; i < 6; i++) {
143 m_sn2(i) = 0.;// heavy decoupled masses for i=3-5
144 m_se2(i) = 0.;
145 m_su2(i) = 0.;
146 m_sd2(i) = 0.;
147 m_sdresum2(i) = 0.;
148 for (int j = 0; j < 6; j++) {
149 /* R: first (second) index for mass (gauge) eigenstates */
150 /* UASf: second (third) index for gauge (mass) eigenstates */
151 Rn.assign(i,j, 0.);
152 Rl.assign(i,j, 0.);
153 Ru.assign(i,j, 0.);
154 Rd.assign(i,j, 0.);
155 Rdresum.assign(i,j, 0.);
156 }
157 }
158
159 /* charginos */
160 for (int i = 0; i < 2; i++) {
161 mch(i) = 0.;
162 for (int j = 0; j < 2; j++) {
163 /* U and V: first (second) index for mass (gauge) eigenstates */
164 /* Ucha and VCha: first (second) index for gauge (mass) eigenstates */
165 U.assign(i,j, 0.);
166 V.assign(i,j, 0.);
167 }
168 }
169
170 /* neutralinos */
171 for (int i = 0; i < 4; i++) {
172 mneu(i) = 0.;
173 for (int j = 0; j < 4; j++)
174 /* N: first (second) index for mass (gauge) eigenstates */
175 /* Zneu: first (second) index for gauge (mass) eigenstates */
176 N.assign(i,j, 0.);
177 }
178
179 if(!mySUSYSpectrum->CalcHiggs(mh,saeff)) return (false);
180 if(!mySUSYSpectrum->CalcChargino(U,V,mch)) return (false);
181 if(!mySUSYSpectrum->CalcNeutralino(N,mneu)) return (false);
182 if(!mySUSYSpectrum->CalcSup(Ru,m_su2)) return (false);
184 if(!mySUSYSpectrum->CalcSdown(Rd,m_sd2)) return (false);
186 if(!mySUSYSpectrum->CalcSneutrino(Rn,m_sn2)) return (false);
188 if(!mySUSYSpectrum->CalcSelectron(Rl,m_se2)) return (false);
190 }
191
192// std::cout<<"muH S = "<<muH<<std::endl;
193
194 /* Set the mass of the SM-like Higgs */
195 /* allowed range for the use of EWSMApproximateFormulae class */
196 if (mh[0] < 10. || mh[0] > 1000.) {
197 std::stringstream out;
198 out << mh[0];
199 throw std::runtime_error("SUSY::PostUpdate(): mh=" + out.str() + " is out of range for EWSMApproximateFormulae");
200 return (false);
201 }
202 mHl = mh[0];
203
204 if( Q_SUSY == -1 || Q_SUSY == 0) Q_SUSY = sqrt( sqrt(m_su2(2) * m_su2(5)) );
205
206 /* For EWSUSY class */
208
209 /* Necessary for updating SUSY and SUSY-derived parameters in SUSYMatching */
210 /* For SUSY Models only: The SM Matching needs to be updated here since StandardModel::PostUpdate() will not do it since the Higgs masses need to be computed. */
211 SUSYM.getObj().updateSMParameters();
212 SUSYM.getObj().updateSUSYParameters();
213
214 SUSYM.getObj().Comp_mySUSYMQ();
215
216 if (IsFlag_ne()) SUSYM.getObj().Comp_VdDNL(0);
217 if (IsFlag_ne()) SUSYM.getObj().Comp_VdDNR(0);
218 if (IsFlag_ch()) SUSYM.getObj().Comp_VdUCL();
219 if (IsFlag_ch()) SUSYM.getObj().Comp_VdUCR(0);
220
221 SUSYM.getObj().Comp_DeltaMd();
222 SUSYM.getObj().Comp_DeltaDL();
223 SUSYM.getObj().Comp_Eps_J();
224 SUSYM.getObj().Comp_Lambda0EpsY();
225 SUSYM.getObj().Comp_mySUSY_CKM();
226
227 if (IsFlag_h()) {
228 SUSYM.getObj().Comp_PHLR();
229 SUSYM.getObj().Comp_VUDHH();
230 SUSYM.getObj().Comp_PHRL();
231 }
232 if (IsFlag_ne()) {
233 SUSYM.getObj().Comp_VdDNL(1);
234 SUSYM.getObj().Comp_VdDNR(1);
235 SUSYM.getObj().Comp_VuUN();
236 }
237 if (IsFlag_ch()) {
238 SUSYM.getObj().Comp_VdUCR(1);
239 SUSYM.getObj().Comp_VuDCL();
240 SUSYM.getObj().Comp_VuDCR();
241 }
242
243 return (true);
244}
245
246void SUSY::setParameter(const std::string name, const double& value)
247{
248 if (name.compare("m1r") == 0)
249 m1.real() = value;
250 else if (name.compare("m1i") == 0)
251 m1.imag() = value;
252 else if (name.compare("m2r") == 0)
253 m2.real() = value;
254 else if (name.compare("m2i") == 0)
255 m2.imag() = value;
256 else if (name.compare("m3") == 0)
257 m3 = value;
258 else if (name.compare("muHr") == 0)
259 muH.real() = value;
260 else if (name.compare("muHi") == 0)
261 muH.imag() = value;
262 else if (name.compare("mHptree") == 0)
263 mHptree = value;
264 else if (name.compare("tanb") == 0)
265 SetTanb(value);
266 else if (name.compare("Q_SUSY") == 0)
267 Q_SUSY = value;
268 else
270}
271
272bool SUSY::CheckParameters(const std::map<std::string, double>& DPars)
273{
274 for(int i=0; i<NSUSYvars; i++)
275 if(DPars.find(SUSYvars[i])==DPars.end()) {
276 std::cout << "ERROR: missing mandatory SUSY parameter " << SUSYvars[i] << std::endl;
279 }
281}
282
283void SUSY::SetTanb(const double tanb)
284{
285 this->tanb = tanb;
286 if (tanb < 0.)
287 throw std::runtime_error("SUSY::setTanb(): Negative tanb is not allowed");
288
289 /* cosb and sinb are defined to be positive, corresponding to 0<=beta<=pi/2 */
290 cosb = sqrt(1. / (1. + tanb * tanb));
291 sinb = tanb * cosb;
292}
293
295{
296 /* initializations */
297 Yu = gslpp::matrix<gslpp::complex>::Id(3);
298 Yd = gslpp::matrix<gslpp::complex>::Id(3);
299 Ye = gslpp::matrix<gslpp::complex>::Id(3);
300 Yn = gslpp::matrix<gslpp::complex>::Id(3);
301
302 /* Convert the top-quark pole mass to the MSbar mass */
303 double mtbar = Mp2Mbar(mtpole, QCD::TOP, FULLNLO);
304
305 double Q_SUSY_temp = Q_SUSY;
306 if( Q_SUSY == -1 || Q_SUSY == 0) Q_SUSY = sqrt( sqrt(msQhat2(2,2).abs() * msUhat2(2,2).abs() ) );
307
308 for (int i = 0; i < 3; i++) {
309 /* Run the quark masses to scale Q */
310 if (i != 2)
311 mu_Q[i] = Mrun(Q_SUSY, getQuarks((quark)(UP + 2 * i)).getMass_scale(),
312 getQuarks((quark)(UP + 2 * i)).getMass(), (quark)(UP + 2 * i),FULLNLO);
313 else
314 mu_Q[i] = Mrun(Q_SUSY, mtbar, QCD::TOP, FULLNLO);
315 md_Q[i] = Mrun(Q_SUSY, getQuarks((quark)(DOWN + 2 * i)).getMass_scale(),
316 getQuarks((quark)(DOWN + 2 * i)).getMass(), (quark)(DOWN + 2 * i), FULLNLO);
317 me_Q[i] = getLeptons((lepton)(ELECTRON + 2 * i)).getMass();
318 mn_Q[i] = getLeptons((lepton)(NEUTRINO_1 + 2 * i)).getMass();
319
320 /* Convert MSbar to DRbar */
321 mu_Q[i] = MS2DRqmass(Q_SUSY, mu_Q[i]);
322 md_Q[i] = MS2DRqmass(Q_SUSY, md_Q[i]);
323
324 Yu.assign(i, i, mu_Q[i] / v2() * sqrt(2.));
325 Yd.assign(i, i, md_Q[i] / v1() * sqrt(2.));
326 Ye.assign(i, i, me_Q[i] / v1() * sqrt(2.));
327 Yn.assign(i, i, mn_Q[i] / v2() * sqrt(2.));
328 }
329
330 Yu = myCKM.getCKM().transpose()*Yu;
331 Yn = Yn * myPMNS.getPMNS().hconjugate();
332
333 Q_SUSY = Q_SUSY_temp;
334
335}
336
338{
339 // MsQ2, MsU2, MsD2, MsL2, MsN2, MsE2, TU, TD, TN and TE are set to 0 in the constructor.
340 // See also GeneralSUSY::SetSoftTerms().
341}
342
343
345// Flags
346
347bool SUSY::setFlag(const std::string name, const bool value)
348{
349 bool res = false;
350 if(name.compare("Flag_H") == 0) {
351 flag_h = value;
352 res = true;
353 }
354 else if(name.compare("Flag_g") == 0) {
355 flag_g = value;
356 res = true;
357 }
358 else if(name.compare("Flag_Chi") == 0) {
359 flag_ch = value;
360 res = true;
361 }
362 else if(name.compare("Flag_Chi0") == 0) {
363 flag_ne = value;
364 res = true;
365 }
366 else if(name.compare("Flag_FH") == 0) {
367 flag_fh = value;
368 res = true;
369 }
370 else
371 res = StandardModel::setFlag(name,value);
372
373 return(res);
374}
375
376
378
379double SUSY::v1() const
380{
381 return (v() * cosb);
382}
383
384double SUSY::v2() const
385{
386 return (v() * sinb);
387}
388
389const double SUSY::getMGl() const
390{
391/* BEGIN: REMOVE FROM THE PACKAGE */
392#if FEYNHIGGS
393 if (IsFlag_FH()) return myFH->getMGl();
394#endif
395/* END: REMOVE FROM THE PACKAGE */
396 return m3;
397}
398
399
401
402const double SUSY::Mw() const
403{
404 return StandardModel::Mw();
405 //return myEWSUSY->Mw_MSSM();
406}
407
408double SUSY::Mw_dRho() const
409{
410/* BEGIN: REMOVE FROM THE PACKAGE */
411#if FEYNHIGGS
412 //double delRho = myFH->getFHdeltarho();
413 //std::cout << "DeltaRho = " << delRho << std::endl;
414
415 /* Delta rho approximation */
416 double Mw_SM = StandardModel::Mw();
417 double cW2_SM = Mw_SM*Mw_SM/Mz/Mz;
418 double sW2_SM = 1.0 - cW2_SM;
419 if (IsFlag_FH()) return ( Mw_SM*(1.0 + cW2_SM/2.0/(cW2_SM - sW2_SM)*myFH->getFHdeltarho()) );
420 throw std::runtime_error("SUSY::Mw_dRho(): set Flag_FH to true to use Mw_dRho()");
421#endif
422/* END: REMOVE FROM THE PACKAGE */
423 return 0.;
424}
std::map< std::string, double > DPars
Definition: Minimal.cpp:11
@ FULLNLO
Definition: OrderScheme.h:38
const gslpp::matrix< gslpp::complex > getCKM() const
A member for returning the CKM matrix.
Definition: CKM.h:59
A class for SUSY contributions to the EW precision observables.
Definition: EWSUSY.h:36
void SetRosiekParameters()
Sets parameters in Rosiek's notation.
Definition: EWSUSY.cpp:43
void addMissingModelParameter(const std::string &missingParameterName)
Definition: Model.h:250
std::map< std::string, std::reference_wrapper< const double > > ModelParamMap
Definition: Model.h:280
void setModelInitialized(bool ModelInitialized)
A set method to fix the failure or success of the initialization of the model.
Definition: Model.h:145
bool IsModelInitialized() const
A method to check if the model is initialized.
Definition: Model.h:136
std::string name
The name of the model.
Definition: Model.h:285
bool UpdateError
A boolean set to false if update is successful.
Definition: Model.h:272
void raiseMissingModelParameterCount()
Definition: Model.h:260
void setModelSUSY()
Definition: Model.h:178
gslpp::matrix< gslpp::complex > getPMNS() const
A member for returning the PMNS matrix.
Definition: PMNS.h:42
const double & getMass() const
A get method to access the particle mass.
Definition: Particle.h:61
const double MS2DRqmass(const double MSscale, const double MSbar) const
Converts a quark mass from the scheme to the scheme.
Definition: QCD.cpp:1725
const double Mrun(const double mu, const double m, const quark q, const orders order=FULLNNLO) const
Computes a running quark mass from .
Definition: QCD.cpp:1353
quark
An enum type for quarks.
Definition: QCD.h:323
@ UP
Definition: QCD.h:324
@ TOP
Definition: QCD.h:328
@ DOWN
Definition: QCD.h:325
const double Mp2Mbar(const double mp, const quark q, orders order=FULLNNLO) const
Converts a quark pole mass to the corresponding mass .
Definition: QCD.cpp:1672
lepton
An enum type for leptons.
Definition: QCD.h:310
@ NEUTRINO_1
Definition: QCD.h:311
@ ELECTRON
Definition: QCD.h:312
const Particle & getQuarks(const QCD::quark q) const
A get method to access a quark as an object of the type Particle.
Definition: QCD.h:536
virtual bool CheckParameters(const std::map< std::string, double > &DPars)
Definition: SUSY.cpp:272
virtual const double Mw() const
The W boson mass.
Definition: SUSY.cpp:402
gslpp::matrix< gslpp::complex > N
Definition: SUSY.h:586
gslpp::vector< double > m_se2
Definition: SUSY.h:583
double v2() const
Definition: SUSY.cpp:384
gslpp::complex m1
Definition: SUSY.h:568
double Mw_dRho() const
The W boson mass in the approximation.
Definition: SUSY.cpp:408
gslpp::vector< double > m_sd2
Definition: SUSY.h:583
double mn_Q[3]
Definition: SUSY.h:589
gslpp::vector< double > mch
Definition: SUSY.h:582
gslpp::matrix< gslpp::complex > msUhat2
Definition: SUSY.h:576
friend class SUSYSpectrum
Friend classes of SUSY class.
Definition: SUSY.h:42
bool flag_h
Definition: SUSY.h:593
gslpp::vector< double > mneu
Definition: SUSY.h:582
gslpp::matrix< gslpp::complex > msQhat2
Definition: SUSY.h:576
static const std::string SUSYvars[NSUSYvars]
Definition: SUSY.h:37
gslpp::vector< double > m_sn2
Definition: SUSY.h:583
bool IsFlag_ch() const
Definition: SUSY.h:108
bool IsFlag_h() const
Definition: SUSY.h:98
bool IsFlag_ne() const
Definition: SUSY.h:113
double Q_SUSY
Definition: SUSY.h:569
gslpp::matrix< gslpp::complex > Rdresum
Definition: SUSY.h:586
gslpp::matrix< gslpp::complex > Rl
Definition: SUSY.h:586
double mh[4]
Definition: SUSY.h:580
bool flag_g
Definition: SUSY.h:593
SUSY()
A SUSY constructor.
Definition: SUSY.cpp:26
virtual bool setFlag(const std::string, const bool)
Definition: SUSY.cpp:347
double tanb
Definition: SUSY.h:569
virtual void computeYukawas()
Definition: SUSY.cpp:294
const double getMGl() const
Gets the gluino mass obtained from FHGetPara().
Definition: SUSY.cpp:389
gslpp::complex saeff
Definition: SUSY.h:581
Matching< SUSYMatching, SUSY > SUSYM
Definition: SUSY.h:594
gslpp::matrix< gslpp::complex > U
Definition: SUSY.h:586
virtual void setParameter(const std::string name, const double &value)
A method to set the value of a parameter of SUSY.
Definition: SUSY.cpp:246
virtual bool PreUpdate()
Definition: SUSY.cpp:93
bool flag_ne
Definition: SUSY.h:593
gslpp::vector< double > m_su2
Definition: SUSY.h:583
gslpp::vector< double > m_sdresum2
Definition: SUSY.h:583
SUSYSpectrum * mySUSYSpectrum
Definition: SUSY.h:565
double mHptree
Definition: SUSY.h:569
virtual void SetSoftTerms()
Definition: SUSY.cpp:337
EWSUSY * myEWSUSY
Definition: SUSY.h:595
gslpp::complex muH
Definition: SUSY.h:568
gslpp::matrix< gslpp::complex > Rn
Definition: SUSY.h:586
gslpp::matrix< gslpp::complex > Rd
Definition: SUSY.h:586
gslpp::complex m2
Definition: SUSY.h:568
~SUSY()
A SUSY destructor.
Definition: SUSY.cpp:53
double mu_Q[3]
Definition: SUSY.h:589
bool IsFlag_FH() const
Definition: SUSY.h:118
double md_Q[3]
Definition: SUSY.h:589
gslpp::matrix< gslpp::complex > V
Definition: SUSY.h:586
virtual bool PostUpdate()
Definition: SUSY.cpp:116
virtual bool Update(const std::map< std::string, double > &DPars)
Definition: SUSY.cpp:100
bool flag_fh
Definition: SUSY.h:593
double me_Q[3]
Definition: SUSY.h:589
friend class FeynHiggsWrapper
Definition: SUSY.h:44
gslpp::matrix< gslpp::complex > Ru
Definition: SUSY.h:586
virtual bool Init(const std::map< std::string, double > &DPars)
Definition: SUSY.cpp:88
FeynHiggsWrapper * myFH
Definition: SUSY.h:561
virtual bool InitializeModel()
Definition: SUSY.cpp:68
double m3
Definition: SUSY.h:569
static const int NSUSYvars
Definition: SUSY.h:36
double sinb
Definition: SUSY.h:572
virtual void SetTanb(const double tanb)
Definition: SUSY.cpp:283
double v1() const
Definition: SUSY.cpp:379
double cosb
Definition: SUSY.h:572
bool flag_ch
Definition: SUSY.h:593
bool CalcNeutralino(gslpp::matrix< gslpp::complex > &N_i, gslpp::vector< double > &mneu_i)
Computes the neutralino spectrum at tree level.
bool CalcSup(gslpp::matrix< gslpp::complex > &Ru_i, gslpp::vector< double > &m_su2_i)
Computes the up-type squark spectrum at tree level.
bool CalcSelectron(gslpp::matrix< gslpp::complex > &Rl_i, gslpp::vector< double > &m_se2_i)
Computes the charged-slepton spectrum at tree level.
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.
void SortSfermionMasses(gslpp::vector< double > &m_sf2, gslpp::matrix< gslpp::complex > &Rf) const
bool CalcSdown(gslpp::matrix< gslpp::complex > &Rd_i, gslpp::vector< double > &m_sd2_i)
Computes the down-type squark spectrum at tree level.
bool CalcHiggs(double mh[4], gslpp::complex &saeff_i)
Computes the Higgs spectrum at tree level.
bool CalcSneutrino(gslpp::matrix< gslpp::complex > &Rn_i, gslpp::vector< double > &m_sn2_i)
Computes the sneutrino spectrum at tree level.
A model class for the Standard Model.
virtual bool PreUpdate()
The pre-update method for StandardModel.
const Particle & getLeptons(const QCD::lepton p) const
A get method to retrieve the member object of a lepton.
double Mz
The mass of the boson in GeV.
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...
virtual bool Init(const std::map< std::string, double > &DPars)
A method to initialize the model parameters.
CKM myCKM
An object of type CKM.
virtual bool setFlagStr(const std::string name, const std::string value)
A method to set a flag of StandardModel.
gslpp::matrix< gslpp::complex > Yn
The Yukawa matrix of the neutrinos.
Matching< StandardModelMatching, StandardModel > SMM
An object of type Matching.
gslpp::matrix< gslpp::complex > Yu
The Yukawa matrix of the up-type quarks.
gslpp::matrix< gslpp::complex > Yd
The Yukawa matrix of the down-type quarks.
virtual const double Mw() const
The SM prediction for the -boson mass in the on-shell scheme, .
virtual bool setFlag(const std::string name, const bool value)
A method to set a flag of StandardModel.
double mHl
The Higgs mass in GeV.
gslpp::matrix< gslpp::complex > Ye
The Yukawa matrix of the charged leptons.
virtual bool PostUpdate()
The post-update method for StandardModel.
virtual void setParameter(const std::string name, const double &value)
A method to set the value of a parameter of StandardModel.
const double v() const
The Higgs vacuum expectation value.
virtual bool InitializeModel()
A method to initialize the model.
A class for the matching in the Standard Model.
A class for , the pole mass of the top quark.
Definition: masses.h:164