a Code for the Combination of Indirect and Direct Constraints on High Energy Physics Models Logo
THDMW.cpp
Go to the documentation of this file.
1 /*
2  * Copyright (C) 2017 HEPfit Collaboration
3  *
4  *
5  * For the licensing terms see doc/COPYING.
6  */
7 
8 #include "THDMW.h"
9 #include "THDMWcache.h"
10 
11 const std::string THDMW::THDMWvars[NTHDMWvars] = {"THDMW_logtb","THDMW_bma",
12  "THDMW_lambda1","THDMW_lambda2","THDMW_lambda3","THDMW_lambda4","THDMW_lambda5",
13  "THDMW_mS2","THDMW_mu1","THDMW_mu2","THDMW_mu3","THDMW_mu4","THDMW_mu5","THDMW_mu6",
14  "THDMW_nu1","THDMW_nu2","THDMW_nu3","THDMW_nu4","THDMW_nu5",
15  "THDMW_omega1","THDMW_omega2","THDMW_omega3","THDMW_omega4","THDMW_omega5",
16  "THDMW_kappa1","THDMW_kappa2","THDMW_kappa3",
17  "THDMW_etaU","THDMW_etaD",
18  "THDMW_rho_b", "THDMW_S_b",
19  "Q_THDMW","RpepsTHDMW","NLOuniscaleTHDMW"};
20 
21 THDMW::THDMW() : NPbase(), THDMWM(*this) {
22 
24  ModelParamMap.insert(std::make_pair("THDMW_logtb", std::cref(THDMW_logtb)));
25  ModelParamMap.insert(std::make_pair("THDMW_bma", std::cref(THDMW_bma)));
26  ModelParamMap.insert(std::make_pair("THDMW_lambda1", std::cref(THDMW_lambda1)));
27  ModelParamMap.insert(std::make_pair("THDMW_lambda2", std::cref(THDMW_lambda2)));
28  ModelParamMap.insert(std::make_pair("THDMW_lambda3", std::cref(THDMW_lambda3)));
29  ModelParamMap.insert(std::make_pair("THDMW_lambda4", std::cref(THDMW_lambda4)));
30  ModelParamMap.insert(std::make_pair("THDMW_lambda5", std::cref(THDMW_lambda5)));
31  ModelParamMap.insert(std::make_pair("THDMW_mS2", std::cref(THDMW_mS2)));
32  ModelParamMap.insert(std::make_pair("THDMW_mu1", std::cref(THDMW_mu1)));
33  ModelParamMap.insert(std::make_pair("THDMW_mu2", std::cref(THDMW_mu2)));
34  ModelParamMap.insert(std::make_pair("THDMW_mu3", std::cref(THDMW_mu3)));
35  ModelParamMap.insert(std::make_pair("THDMW_mu4", std::cref(THDMW_mu4)));
36  ModelParamMap.insert(std::make_pair("THDMW_mu5", std::cref(THDMW_mu5)));
37  ModelParamMap.insert(std::make_pair("THDMW_mu6", std::cref(THDMW_mu6)));
38  ModelParamMap.insert(std::make_pair("THDMW_nu1", std::cref(THDMW_nu1)));
39  ModelParamMap.insert(std::make_pair("THDMW_nu2", std::cref(THDMW_nu2)));
40  ModelParamMap.insert(std::make_pair("THDMW_nu3", std::cref(THDMW_nu3)));
41  ModelParamMap.insert(std::make_pair("THDMW_nu4", std::cref(THDMW_nu4)));
42  ModelParamMap.insert(std::make_pair("THDMW_nu5", std::cref(THDMW_nu5)));
43  ModelParamMap.insert(std::make_pair("THDMW_omega1", std::cref(THDMW_omega1)));
44  ModelParamMap.insert(std::make_pair("THDMW_omega2", std::cref(THDMW_omega2)));
45  ModelParamMap.insert(std::make_pair("THDMW_omega3", std::cref(THDMW_omega3)));
46  ModelParamMap.insert(std::make_pair("THDMW_omega4", std::cref(THDMW_omega4)));
47  ModelParamMap.insert(std::make_pair("THDMW_omega5", std::cref(THDMW_omega5)));
48  ModelParamMap.insert(std::make_pair("THDMW_kappa1", std::cref(THDMW_kappa1)));
49  ModelParamMap.insert(std::make_pair("THDMW_kappa2", std::cref(THDMW_kappa2)));
50  ModelParamMap.insert(std::make_pair("THDMW_kappa3", std::cref(THDMW_kappa3)));
51  ModelParamMap.insert(std::make_pair("THDMW_etaU", std::cref(THDMW_etaU)));
52  ModelParamMap.insert(std::make_pair("THDMW_etaD", std::cref(THDMW_etaD)));
53  ModelParamMap.insert(std::make_pair("THDMW_rho_b", std::cref(THDMW_rho_b)));
54  ModelParamMap.insert(std::make_pair("THDMW_S_b", std::cref(THDMW_S_b)));
55  ModelParamMap.insert(std::make_pair("THDMW_kappa3", std::cref(THDMW_kappa3)));
56  ModelParamMap.insert(std::make_pair("Q_THDMW", std::cref(Q_THDMW)));
57  ModelParamMap.insert(std::make_pair("RpepsTHDMW", std::cref(RpepsTHDMW)));
58  ModelParamMap.insert(std::make_pair("NLOuniscaleTHDMW", std::cref(NLOuniscaleTHDMW)));
59 }
60 
62  if (IsModelInitialized()) {
63  if (myTHDMWcache != NULL) delete(myTHDMWcache);
64  }
65 }
66 
68 // Initialization
69 
71 {
72  myTHDMWcache = new THDMWcache(*this);
74  setModelTHDMW();
75  return(true);
76 }
77 
78 bool THDMW::Init(const std::map<std::string, double>& DPars) {
79  return(StandardModel::Init(DPars));
80 }
81 
83 {
84  if(!StandardModel::PreUpdate()) return (false);
85 
86  return (true);
87 }
88 
89 bool THDMW::Update(const std::map<std::string, double>& DPars) {
90 
91  if(!PreUpdate()) return (false);
92 
93  UpdateError = false;
94 
95  for (std::map<std::string, double>::const_iterator it = DPars.begin(); it != DPars.end(); it++)
96  setParameter(it->first, it->second);
97 
98  if (UpdateError) return (false);
99 
100  if(!PostUpdate()) return (false);
101 
102  return (true);
103 }
104 
106 {
107  if(!StandardModel::PostUpdate()) return (false);
108 
110 
111  return (true);
112 }
113 
114 void THDMW::setParameter(const std::string name, const double& value){
115 
116  if(name.compare("THDMW_logtb") == 0) {
117  THDMW_logtb = value;
118  THDMW_tanb = pow(10.,THDMW_logtb);
119  if(THDMW_tanb > 0.) {
121  THDMW_cosb = 1. / sqrt(1. + THDMW_tanb*THDMW_tanb);
122  }
123  else {
124  throw std::runtime_error("error in THDMW::SetParameter, THDMW_tanb < 0!");
125  }
126  }
127  else if(name.compare("THDMW_bma") == 0) {
128  THDMW_bma = value;
130  }
131  else if(name.compare("THDMW_lambda1") == 0)
132  THDMW_lambda1 = value;
133  else if(name.compare("THDMW_lambda2") == 0)
134  THDMW_lambda2 = value;
135  else if(name.compare("THDMW_lambda3") == 0)
136  THDMW_lambda3 = value;
137  else if(name.compare("THDMW_lambda4") == 0)
138  THDMW_lambda4 = value;
139  else if(name.compare("THDMW_lambda5") == 0 && flag_modelTHDMW!="custodial1")
140  THDMW_lambda5 = value;
141  else if(name.compare("THDMW_mS2") == 0)
142  THDMW_mS2 = value;
143  else if(name.compare("THDMW_mu1") == 0)
144  THDMW_mu1 = value;
145  else if(name.compare("THDMW_mu2") == 0)
146  THDMW_mu2 = value;
147  else if(name.compare("THDMW_mu3") == 0)
148  THDMW_mu3 = value;
149  else if(name.compare("THDMW_mu4") == 0)
150  THDMW_mu4 = value;
151  else if(name.compare("THDMW_mu5") == 0)
152  THDMW_mu5 = value;
153  else if(name.compare("THDMW_mu6") == 0)
154  THDMW_mu6 = value;
155  else if(name.compare("THDMW_nu1") == 0)
156  THDMW_nu1 = value;
157  else if(name.compare("THDMW_nu2") == 0)
158  THDMW_nu2 = value;
159  else if(name.compare("THDMW_nu3") == 0 && flag_modelTHDMW!="custodial1")
160  THDMW_nu3 = value;
161  else if(name.compare("THDMW_nu4") == 0)
162  THDMW_nu4 = value;
163  else if(name.compare("THDMW_nu5") == 0 && flag_modelTHDMW!="custodial1")
164  THDMW_nu5 = value;
165  else if(name.compare("THDMW_omega1") == 0)
166  THDMW_omega1 = value;
167  else if(name.compare("THDMW_omega2") == 0)
168  THDMW_omega2 = value;
169  else if(name.compare("THDMW_omega3") == 0 && flag_modelTHDMW!="custodial1")
170  THDMW_omega3 = value;
171  else if(name.compare("THDMW_omega4") == 0)
172  THDMW_omega4 = value;
173  else if(name.compare("THDMW_omega5") == 0 && flag_modelTHDMW!="custodial1")
174  THDMW_omega5 = value;
175  else if(name.compare("THDMW_kappa1") == 0)
176  THDMW_kappa1 = value;
177  else if(name.compare("THDMW_kappa2") == 0)
178  THDMW_kappa2 = value;
179  else if(name.compare("THDMW_kappa3") == 0 && flag_modelTHDMW!="custodial1")
180  THDMW_kappa3 = value;
181  else if(name.compare("THDMW_etaU") == 0)
182  THDMW_etaU = value;
183  else if(name.compare("THDMW_etaD") == 0)
184  THDMW_etaD = value;
185  else if(name.compare("THDMW_rho_b") == 0)
186  THDMW_rho_b = value;
187  else if(name.compare("THDMW_S_b") == 0)
188  THDMW_S_b = value;
189  else if(name.compare("Q_THDMW") == 0)
190  Q_THDMW = value;
191  else if(name.compare("RpepsTHDMW") == 0)
192  RpepsTHDMW = value;
193  else if(name.compare("NLOuniscaleTHDMW") == 0)
194  NLOuniscaleTHDMW = value;
195  else
197 }
198 
199 bool THDMW::CheckParameters(const std::map<std::string, double>& DPars) {
200  for (int i = 0; i < NTHDMWvars; i++) {
201  if (DPars.find(THDMWvars[i]) == DPars.end()) {
202  std::cout << "ERROR: missing mandatory THDMW parameter " << THDMWvars[i] << std::endl;
205  }
206  }
207  return(StandardModel::CheckParameters(DPars));
208 }
209 
211 // Flags
212 
213 bool THDMW::setFlagStr(const std::string name, const std::string value)
214 {
215  bool res = false;
216  if(name.compare("RGEorder") == 0) {
217  if (checkRGEorder(value))
218  {
219  flag_RGEorder = value;
220  res = true;
221  }
222  else
223  {
224  throw std::runtime_error("THDMW::setFlagStr(): Invalid flag "
225  + name + "=" + value);
226  }
227  }
228  else if(name.compare("modelTypeTHDMW") == 0) {
229  if (checkmodelTypeTHDMW(value))
230  {
231  flag_modelTHDMW = value;
232  res = true;
233  if (flag_modelTHDMW == "custodial1") {
234  //
235  }
236  else if (flag_modelTHDMW == "ManoharWise") {
237  //Pure Manohar-Wise model
238  }
239  else if (flag_modelTHDMW == "custodialMW") {
240  //Custodial Manohar-Wise model
241  }
242  else if (flag_modelTHDMW == "custodial2") {
243  //
244  }
245  }
246  else
247  {
248  throw std::runtime_error("THDM::setFlagStr(): Invalid flag "
249  + name + "=" + value);
250  }
251  }
252  else
253  {
254  res = StandardModel::setFlagStr(name,value);
255  }
256 
257  return(res);
258 }
259 
260 double THDMW::muggH(const double sqrt_s) const
261 {
262  return getMyTHDMWCache()->rh_gg;
263 }
264 
265 double THDMW::muVBF(const double sqrt_s) const
266 {
267  return getMyTHDMWCache()->rh_VV;
268 }
269 
270 double THDMW::mueeWBF(const double sqrt_s) const
271 {
272  return getMyTHDMWCache()->rh_VV;
273 }
274 
275 double THDMW::muWH(const double sqrt_s) const
276 {
277  return getMyTHDMWCache()->rh_VV;
278 }
279 
280 double THDMW::muZH(const double sqrt_s) const
281 {
282  return getMyTHDMWCache()->rh_VV;
283 }
284 
285 double THDMW::mueeZH(const double sqrt_s) const
286 {
287  return getMyTHDMWCache()->rh_VV;
288 }
289 
290 double THDMW::muVH(const double sqrt_s) const
291 {
292  return getMyTHDMWCache()->rh_VV;
293 }
294 
295 double THDMW::muVBFpVH(const double sqrt_s) const
296 {
297  return getMyTHDMWCache()->rh_VV;
298 }
299 
300 double THDMW::muttH(const double sqrt_s) const
301 {
302  return getMyTHDMWCache()->rh_QuQu;
303 }
304 
306 {
307  return getMyTHDMWCache()->sumModBRs;
308 }
309 
310 double THDMW::GammaTotal() const
311 {
312  return getMyTHDMWCache()->Gamma_h;
313 }
314 
315 double THDMW::BrHggRatio() const
316 {
318 }
319 
320 double THDMW::BrHWWRatio() const
321 {
323 }
324 
325 double THDMW::BrHZZRatio() const
326 {
328 }
329 
330 double THDMW::BrHZgaRatio() const
331 {
333 }
334 
335 double THDMW::BrHgagaRatio() const
336 {
337  //std::cout<<"rh_gaga="<< getMyTHDMWCache()->rh_gaga /computeGammaTotalRatio() << std::endl;
339 }
340 
341 double THDMW::BrHmumuRatio() const
342 {
344 }
345 
346 double THDMW::BrHtautauRatio() const
347 {
349 }
350 
351 double THDMW::BrHccRatio() const
352 {
354 }
355 
356 double THDMW::BrHbbRatio() const
357 {
359 }
360 
361 double THDMW::muggHgaga(const double sqrt_s) const
362 {
364 }
365 
366 double THDMW::muVBFHgaga(const double sqrt_s) const
367 {
369 }
370 
371 double THDMW::muVHgaga(const double sqrt_s) const
372 {
374 }
375 
376 double THDMW::muttHgaga(const double sqrt_s) const
377 {
379 }
380 
381 double THDMW::muggHZZ(const double sqrt_s) const
382 {
384 }
385 
386 double THDMW::muVBFHZZ(const double sqrt_s) const
387 {
389 }
390 
391 double THDMW::muVHZZ(const double sqrt_s) const
392 {
394 }
395 
396 double THDMW::muttHZZ(const double sqrt_s) const
397 {
399 }
400 
401 double THDMW::muggHWW(const double sqrt_s) const
402 {
404 }
405 
406 double THDMW::muVBFHWW(const double sqrt_s) const
407 {
409 }
410 
411 double THDMW::muVHWW(const double sqrt_s) const
412 {
414 }
415 
416 double THDMW::muttHWW(const double sqrt_s) const
417 {
419 }
420 
421 double THDMW::muggHtautau(const double sqrt_s) const
422 {
424 }
425 
426 double THDMW::muVBFHtautau(const double sqrt_s) const
427 {
429 }
430 
431 double THDMW::muVHtautau(const double sqrt_s) const
432 {
434 }
435 
436 double THDMW::muttHtautau(const double sqrt_s) const
437 {
439 }
440 
441 double THDMW::muggHbb(const double sqrt_s) const
442 {
444 }
445 
446 double THDMW::muVBFHbb(const double sqrt_s) const
447 {
449 }
450 
451 double THDMW::muVHbb(const double sqrt_s) const
452 {
454 }
455 
456 double THDMW::muttHbb(const double sqrt_s) const
457 {
459 }
460 
461 double THDMW::muppHmumu(const double sqrt_s) const
462 {
463  if(sqrt_s==8)
464  {
465  return (0.872 * getMyTHDMWCache()->rh_gg + 0.122 * getMyTHDMWCache()->rh_VV + 0.006 * getMyTHDMWCache()->rh_QuQu) * getMyTHDMWCache()->rh_ll / computeGammaTotalRatio();
466  }
467  if(sqrt_s==13)
468  {
469  return (0.871 * getMyTHDMWCache()->rh_gg + 0.119 * getMyTHDMWCache()->rh_VV + 0.010 * getMyTHDMWCache()->rh_QuQu) * getMyTHDMWCache()->rh_ll / computeGammaTotalRatio();
470  }
471  else
472  {
473  throw std::runtime_error("The observable muppHmumu is only defined for 8 or 13 TeV.");
474  }
475 }
476 
477 double THDMW::muppHZga(const double sqrt_s) const
478 {
479  if(sqrt_s==8)
480  {
481  return (0.872 * getMyTHDMWCache()->rh_gg + 0.122 * getMyTHDMWCache()->rh_VV + 0.006 * getMyTHDMWCache()->rh_QuQu) * getMyTHDMWCache()->rh_Zga / computeGammaTotalRatio();
482  }
483  if(sqrt_s==13)
484  {
485  return (0.871 * getMyTHDMWCache()->rh_gg + 0.119 * getMyTHDMWCache()->rh_VV + 0.010 * getMyTHDMWCache()->rh_QuQu) * getMyTHDMWCache()->rh_Zga / computeGammaTotalRatio();
486  }
487  else
488  {
489  throw std::runtime_error("The observable muppHZga is only defined for 8 or 13 TeV.");
490  }
491 }
492 
493 double THDMW::Mw() const{
494  double MZ = StandardModel::Mz;
495  return ( MZ / sqrt(2.0) * sqrt(1.0 + sqrt(1.0 - 4.0 * M_PI * StandardModel::ale / (sqrt(2.0) * StandardModel::GF * MZ* MZ))));
496 }
THDMW::THDMW_mS2
double THDMW_mS2
Definition: THDMW.h:852
THDMW::THDMW_omega3
double THDMW_omega3
Definition: THDMW.h:854
THDMWcache
A class for the caching of some THDMW objects.
Definition: THDMWcache.h:27
THDMW::RpepsTHDMW
double RpepsTHDMW
Definition: THDMW.h:858
THDMWcache::rh_QuQu
double rh_QuQu
Definition: THDMWcache.h:144
THDMW::BrHbbRatio
virtual double BrHbbRatio() const
Definition: THDMW.cpp:356
StandardModel::setParameter
virtual void setParameter(const std::string name, const double &value)
A method to set the value of a parameter of StandardModel.
Definition: StandardModel.cpp:231
THDMWcache::rh_gaga
double rh_gaga
Definition: THDMWcache.h:149
THDMW::THDMW_mu6
double THDMW_mu6
Definition: THDMW.h:852
THDMW::computeGammaTotalRatio
virtual double computeGammaTotalRatio() const
Definition: THDMW.cpp:305
THDMW::muVHWW
virtual double muVHWW(const double sqrt_s) const
Definition: THDMW.cpp:411
THDMW::muVBFHbb
virtual double muVBFHbb(const double sqrt_s) const
Definition: THDMW.cpp:446
THDMW::THDMW_lambda5
double THDMW_lambda5
Definition: THDMW.h:851
THDMW::PostUpdate
virtual bool PostUpdate()
The post-update method for THDMW.
Definition: THDMW.cpp:105
THDMW::THDMW_lambda4
double THDMW_lambda4
Definition: THDMW.h:851
THDMW::muttHbb
virtual double muttHbb(const double sqrt_s) const
Definition: THDMW.cpp:456
THDMW::BrHWWRatio
virtual double BrHWWRatio() const
Definition: THDMW.cpp:320
THDMW::muggHgaga
virtual double muggHgaga(const double sqrt_s) const
Definition: THDMW.cpp:361
THDMW::muVBFHZZ
virtual double muVBFHZZ(const double sqrt_s) const
Definition: THDMW.cpp:386
THDMW.h
THDMW::THDMW_nu1
double THDMW_nu1
Definition: THDMW.h:853
THDMWcache::rh_gg
double rh_gg
Definition: THDMWcache.h:146
THDMW::THDMW_lambda2
double THDMW_lambda2
Definition: THDMW.h:851
THDMW::setFlagStr
virtual bool setFlagStr(const std::string name, const std::string value)
A method to set a string flag of THDMW.
Definition: THDMW.cpp:213
gslpp::sin
complex sin(const complex &z)
Definition: gslpp_complex.cpp:420
Matching::getObj
T & getObj()
Definition: Matching.h:14
THDMW::THDMW_sinb
double THDMW_sinb
Definition: THDMW.h:850
THDMW::muggHbb
virtual double muggHbb(const double sqrt_s) const
Definition: THDMW.cpp:441
THDMW::Init
virtual bool Init(const std::map< std::string, double > &DPars)
Initializes the THDMW parameters found in the argument.
Definition: THDMW.cpp:78
THDMW::BrHmumuRatio
virtual double BrHmumuRatio() const
Definition: THDMW.cpp:341
THDMW::muVHgaga
virtual double muVHgaga(const double sqrt_s) const
Definition: THDMW.cpp:371
StandardModel::GF
double GF
The Fermi constant in .
Definition: StandardModel.h:2511
THDMW::THDMW
THDMW()
THDMW constructor
Definition: THDMW.cpp:21
Model::addMissingModelParameter
void addMissingModelParameter(const std::string &missingParameterName)
Definition: Model.h:232
StandardModel::CheckParameters
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...
Definition: StandardModel.cpp:313
THDMWcache::sumModBRs
double sumModBRs
Definition: THDMWcache.h:152
THDMW::THDMW_S_b
double THDMW_S_b
Definition: THDMW.h:857
THDMW::THDMW_kappa1
double THDMW_kappa1
Definition: THDMW.h:855
THDMW::GammaTotal
virtual double GammaTotal() const
Definition: THDMW.cpp:310
Matching::setObj
void setObj(T &obji)
Definition: Matching.h:15
THDMW::muttHZZ
virtual double muttHZZ(const double sqrt_s) const
Definition: THDMW.cpp:396
THDMW::THDMW_mu2
double THDMW_mu2
Definition: THDMW.h:852
THDMWcache::rh_QdQd
double rh_QdQd
Definition: THDMWcache.h:147
THDMW::THDMW_nu5
double THDMW_nu5
Definition: THDMW.h:853
THDMW::BrHggRatio
virtual double BrHggRatio() const
Definition: THDMW.cpp:315
THDMW::THDMW_mu3
double THDMW_mu3
Definition: THDMW.h:852
Model::UpdateError
bool UpdateError
A boolean set to false if update is successful.
Definition: Model.h:254
StandardModel::SMM
Matching< StandardModelMatching, StandardModel > SMM
An object of type Matching.
Definition: StandardModel.h:2506
THDMW::muZH
virtual double muZH(const double sqrt_s) const
Definition: THDMW.cpp:280
THDMW::BrHZgaRatio
virtual double BrHZgaRatio() const
Definition: THDMW.cpp:330
THDMW::mueeWBF
virtual double mueeWBF(const double sqrt_s) const
Definition: THDMW.cpp:270
StandardModel::ale
double ale
The fine-structure constant .
Definition: StandardModel.h:2512
THDMW::CheckParameters
virtual bool CheckParameters(const std::map< std::string, double > &DPars)
A method to check if all the mandatory parameters for THDMW have been provided in model initializatio...
Definition: THDMW.cpp:199
Model::ModelParamMap
std::map< std::string, std::reference_wrapper< const double > > ModelParamMap
Definition: Model.h:262
THDMWcache::rh_ll
double rh_ll
Definition: THDMWcache.h:148
THDMW::THDMW_mu5
double THDMW_mu5
Definition: THDMW.h:852
THDMW::BrHtautauRatio
virtual double BrHtautauRatio() const
Definition: THDMW.cpp:346
THDMW::muppHZga
virtual double muppHZga(const double sqrt_s) const
Definition: THDMW.cpp:477
THDMW::BrHgagaRatio
virtual double BrHgagaRatio() const
Definition: THDMW.cpp:335
StandardModel::Init
virtual bool Init(const std::map< std::string, double > &DPars)
A method to initialize the model parameters.
Definition: StandardModel.cpp:159
THDMW::muttH
virtual double muttH(const double sqrt_s) const
Definition: THDMW.cpp:300
THDMW::flag_RGEorder
std::string flag_RGEorder
Definition: THDMW.h:859
StandardModelMatching
A class for the matching in the Standard Model.
Definition: StandardModelMatching.h:26
THDMW::muggH
virtual double muggH(const double sqrt_s) const
Definition: THDMW.cpp:260
THDMW::muggHtautau
virtual double muggHtautau(const double sqrt_s) const
Definition: THDMW.cpp:421
THDMW::muggHWW
virtual double muggHWW(const double sqrt_s) const
Definition: THDMW.cpp:401
NPbase
The auxiliary base model class for other model classes.
Definition: NPbase.h:66
THDMW::flag_modelTHDMW
std::string flag_modelTHDMW
Definition: THDMW.h:859
THDMW::THDMW_lambda1
double THDMW_lambda1
Definition: THDMW.h:851
THDMW::THDMWvars
static const std::string THDMWvars[NTHDMWvars]
Definition: THDMW.h:237
StandardModel::PreUpdate
virtual bool PreUpdate()
The pre-update method for StandardModel.
Definition: StandardModel.cpp:172
THDMW::muVBFpVH
virtual double muVBFpVH(const double sqrt_s) const
Definition: THDMW.cpp:295
THDMW::getMyTHDMWCache
THDMWcache * getMyTHDMWCache() const
A method get the THDMWCache.
Definition: THDMW.h:318
gslpp::pow
complex pow(const complex &z1, const complex &z2)
Definition: gslpp_complex.cpp:395
THDMW::THDMW_nu4
double THDMW_nu4
Definition: THDMW.h:853
Model::raiseMissingModelParameterCount
void raiseMissingModelParameterCount()
Definition: Model.h:242
gslpp::sqrt
complex sqrt(const complex &z)
Definition: gslpp_complex.cpp:385
THDMW::muVHZZ
virtual double muVHZZ(const double sqrt_s) const
Definition: THDMW.cpp:391
THDMW::THDMW_kappa3
double THDMW_kappa3
Definition: THDMW.h:855
THDMW::myTHDMWcache
THDMWcache * myTHDMWcache
Definition: THDMW.h:848
StandardModel::PostUpdate
virtual bool PostUpdate()
The post-update method for StandardModel.
Definition: StandardModel.cpp:199
THDMWcache::rh_VV
double rh_VV
Definition: THDMWcache.h:145
THDMW::THDMW_etaU
double THDMW_etaU
Definition: THDMW.h:856
StandardModel::setFlagStr
virtual bool setFlagStr(const std::string name, const std::string value)
A method to set a flag of StandardModel.
Definition: StandardModel.cpp:418
Model::IsModelInitialized
bool IsModelInitialized() const
A method to check if the model is initialized.
Definition: Model.h:136
THDMW::THDMW_cosb
double THDMW_cosb
Definition: THDMW.h:850
THDMWcache.h
THDMW::checkRGEorder
bool checkRGEorder(const std::string RGEorder) const
A method to check if the RGE order name in string form is valid.
Definition: THDMW.h:837
THDMW::muggHZZ
virtual double muggHZZ(const double sqrt_s) const
Definition: THDMW.cpp:381
THDMW::BrHccRatio
virtual double BrHccRatio() const
Definition: THDMW.cpp:351
THDMW::muVBFHgaga
virtual double muVBFHgaga(const double sqrt_s) const
Definition: THDMW.cpp:366
THDMW::THDMW_lambda3
double THDMW_lambda3
Definition: THDMW.h:851
THDMW::THDMW_tanb
double THDMW_tanb
Definition: THDMW.h:850
THDMW::THDMW_nu2
double THDMW_nu2
Definition: THDMW.h:853
THDMW::muttHgaga
virtual double muttHgaga(const double sqrt_s) const
Definition: THDMW.cpp:376
THDMW::checkmodelTypeTHDMW
bool checkmodelTypeTHDMW(const std::string modeltype) const
A method to check if the model type name in string form is valid.
Definition: THDMW.h:816
THDMW::THDMW_omega1
double THDMW_omega1
Definition: THDMW.h:854
THDMW::THDMW_kappa2
double THDMW_kappa2
Definition: THDMW.h:855
THDMW::PreUpdate
virtual bool PreUpdate()
The pre-update method for THDMW.
Definition: THDMW.cpp:82
StandardModel::InitializeModel
virtual bool InitializeModel()
A method to initialize the model.
Definition: StandardModel.cpp:140
THDMW::THDMWM
Matching< THDMWMatching, THDMW > THDMWM
An object of type Matching.
Definition: THDMW.h:830
THDMW::THDMW_sin_ba
double THDMW_sin_ba
Definition: THDMW.h:850
THDMW::muVHtautau
virtual double muVHtautau(const double sqrt_s) const
Definition: THDMW.cpp:431
THDMW::Mw
virtual double Mw() const
Definition: THDMW.cpp:493
THDMW::THDMW_bma
double THDMW_bma
Definition: THDMW.h:850
THDMW::muttHtautau
virtual double muttHtautau(const double sqrt_s) const
Definition: THDMW.cpp:436
THDMWcache::Gamma_h
double Gamma_h
Definition: THDMWcache.h:153
THDMW::muppHmumu
virtual double muppHmumu(const double sqrt_s) const
Definition: THDMW.cpp:461
THDMW::Q_THDMW
double Q_THDMW
Definition: THDMW.h:858
THDMW::Update
virtual bool Update(const std::map< std::string, double > &DPars)
The update method for THDMW.
Definition: THDMW.cpp:89
THDMW::THDMW_omega5
double THDMW_omega5
Definition: THDMW.h:854
THDMW::muVHbb
virtual double muVHbb(const double sqrt_s) const
Definition: THDMW.cpp:451
Model::setModelTHDMW
void setModelTHDMW()
Definition: Model.h:202
THDMWcache::rh_Zga
double rh_Zga
Definition: THDMWcache.h:150
THDMW::muWH
virtual double muWH(const double sqrt_s) const
Definition: THDMW.cpp:275
THDMW::setParameter
virtual void setParameter(const std::string, const double &)
Definition: THDMW.cpp:114
THDMW::InitializeModel
virtual bool InitializeModel()
A method to initialize the model.
Definition: THDMW.cpp:70
THDMWcache::updateCache
void updateCache()
Definition: THDMWcache.cpp:2807
THDMW::mueeZH
virtual double mueeZH(const double sqrt_s) const
Definition: THDMW.cpp:285
THDMW::NTHDMWvars
static const int NTHDMWvars
Definition: THDMW.h:236
Model::name
std::string name
The name of the model.
Definition: Model.h:267
StandardModel::Mz
double Mz
The mass of the boson in GeV.
Definition: StandardModel.h:2510
THDMW::THDMW_omega2
double THDMW_omega2
Definition: THDMW.h:854
THDMW::muVBFHWW
virtual double muVBFHWW(const double sqrt_s) const
Definition: THDMW.cpp:406
THDMW::muVBFHtautau
virtual double muVBFHtautau(const double sqrt_s) const
Definition: THDMW.cpp:426
THDMW::BrHZZRatio
virtual double BrHZZRatio() const
Definition: THDMW.cpp:325
THDMW::muVBF
virtual double muVBF(const double sqrt_s) const
Definition: THDMW.cpp:265
THDMW::THDMW_etaD
double THDMW_etaD
Definition: THDMW.h:856
THDMW::muVH
virtual double muVH(const double sqrt_s) const
Definition: THDMW.cpp:290
THDMW::NLOuniscaleTHDMW
double NLOuniscaleTHDMW
Definition: THDMW.h:858
THDMW::THDMW_logtb
double THDMW_logtb
Definition: THDMW.h:850
THDMW::THDMW_mu1
double THDMW_mu1
Definition: THDMW.h:852
THDMW::~THDMW
~THDMW()
THDMW destructor
Definition: THDMW.cpp:61
THDMW::muttHWW
virtual double muttHWW(const double sqrt_s) const
Definition: THDMW.cpp:416
THDMW::THDMW_rho_b
double THDMW_rho_b
Definition: THDMW.h:857
Model::setModelInitialized
void setModelInitialized(bool ModelInitialized)
A set method to fix the failure or success of the initialization of the model.
Definition: Model.h:145
THDMW::THDMW_mu4
double THDMW_mu4
Definition: THDMW.h:852
THDMW::THDMW_omega4
double THDMW_omega4
Definition: THDMW.h:854
THDMW::THDMW_nu3
double THDMW_nu3
Definition: THDMW.h:853