heavyHiggs.cpp
Go to the documentation of this file.
1 /*
2  * Copyright (C) 2015 HEPfit Collaboration
3  * All rights reserved.
4  *
5  * For the licensing terms see doc/COPYING.
6  */
7 
8 #include "heavyHiggs.h"
9 #include "lightHiggs.h"
10 #include "StandardModel.h"
11 
13 
14  ThObservable(SM_i),
15  myTHDM(static_cast<const THDM*> (&SM_i)),
16  mySM (SM_i)
17 
18 {
19  mycache = new THDMcache();
20  mylightHiggs = new lightHiggs(SM_i);
21 }
22 
23 
25 {}
26 
27 
29 {
30  THDMfunctions myfunctions(mySM);
31 
32  double Mc=myTHDM->getQuarks(QCD::CHARM).getMass();
33  double Ms=myTHDM->getQuarks(QCD::STRANGE).getMass();
34  double Mt=myTHDM->getQuarks(QCD::TOP).getMass();
35  double Mb=myTHDM->getQuarks(QCD::BOTTOM).getMass();
38  double GF=myTHDM->getGF();
39  double Ale=myTHDM->getAle();
40  double Als=myTHDM->getAlsMz();
41  double MZ=myTHDM->getMz();
42  double MW=myTHDM->Mw();
43  double vev=myTHDM->v();
44  double sW2=myTHDM->sW2();
45  double cW2=myTHDM->cW2();
46  double mHh=myTHDM->getmHh();
47  double mHl=myTHDM->getMHl();
48  double mHp=myTHDM->getmHp();
49  double mA=myTHDM->getmA();
50  double m12_2=myTHDM->getm12_2();
51  double sina=myTHDM->getsina();
52  double cosa=myTHDM->getcosa();
53  double sinb=myTHDM->getsinb();
54  double cosb=myTHDM->getcosb();
55  double sin_ba=myTHDM->getsin_ba();
56  double cos_2b=cosb*cosb-sinb*sinb;
57  double cos_ab=cosa*cosb+sina*sinb;
58 
59  //These cross sections are necessary for rHH_gg
60  //SM gg -> h production cross section at 8 TeV
61  double SigmaggF = mycache->ip_cs_ggFtoHP(mHh);
62  //SM gg -> h production cross section at 8 TeV, top loop only
63  double Sigmaggh_tt = mycache->ip_cs_ggHP_tt(mHh);
64  //SM gg -> h production cross section at 8 TeV, bottom loop only
65  double Sigmaggh_bb = mycache->ip_cs_ggHP_bb(mHh);
66 
67  /* r_ii is the ratio between the squared 2HDM vertex coupling of the heavy Higgs to
68  * the particle i and the corresponding coupling of the SM Higgs boson.*/
69  double rHH_QuQu=sina/sinb*sina/sinb;
70  double rHH_QdQd=0.0;//It depends on the modelType
71  double rHH_ll=0.0;//It depends on the modelType
72  double rHH_gg=0.0;//It depends on the modelType
73  double rHH_VV=cos_ab*cos_ab;
74 
75  /*Calulation of rHH_QdQd, rHH_ll, rHH_gg, Gamma_Hgaga, Gamma_HZga, Gamma_Hgg
76  * (they depend on the model type): START*/
77 
78  /*Gamma_Hgaga and Gamma_HZga expressions can be found in
79  "The Higgs Hunter's Guide", Appendix C and in arXiv:0902.4665v3, Appendix A;
80  *Gamma_Hgg expression can be found in arXiv:0902.4665v3, Appendix A*/
81 
82  double TAUc=4.0*Mc*Mc/(mHh*mHh);
83  double TAUt=4.0*Mt*Mt/(mHh*mHh);
84  double TAUs=4.0*Ms*Ms/(mHh*mHh);
85  double TAUb=4.0*Mb*Mb/(mHh*mHh);
86  double TAUmu=4.0*Mmu*Mmu/(mHh*mHh);
87  double TAUtau=4.0*Mtau*Mtau/(mHh*mHh);
88  double TAUw=4.0*MW*MW/(mHh*mHh);
89  double TAUhp=4.0*mHp*mHp/(mHh*mHh);
90 
91  /*I_HH_F, I_HH_W and I_HH_Hp are needed for Gamma_Hgaga;
92  * their expressions can be found in "The Higgs Hunter's Guide", Appendix C, C.4*/
93  gslpp::complex I_HH_F=0.0;//It depends on the modelType
94  gslpp::complex I_HH_U=-(8./3.)*(TAUc*(1+(1-TAUc)*myfunctions.f_func(TAUc))
95  +TAUt*(1+(1-TAUt)*myfunctions.f_func(TAUt)));
96  gslpp::complex I_HH_D=-(2./3.)*(TAUs*(1+(1-TAUs)*myfunctions.f_func(TAUs))
97  +TAUb*(1+(1-TAUb)*myfunctions.f_func(TAUb)));
98  gslpp::complex I_HH_L=-2.*(TAUmu*(1+(1-TAUmu)*myfunctions.f_func(TAUmu))
99  +TAUtau*(1+(1-TAUtau)*myfunctions.f_func(TAUtau)));
100  gslpp::complex I_HH_W=cos_ab*(2.0 + 3.0*TAUw + 3.0*TAUw*(2.0-TAUw)
101  *myfunctions.f_func(TAUw));
102  /* g_HH_HpHm is the coupling of the heavy Higgs boson to Hp and Hm; its
103  * expression can be found in arXiv:1403.1264v2, formula 5*/
104  double g_HH_HpHm = (cos_ab*(mHh*mHh-2.0*mHp*mHp)
105  -(cosa/cosb+sina/sinb)*(mHh*mHh
106  -m12_2/(cosb*sinb)))/vev;
107  gslpp::complex I_HH_Hp=-TAUhp*(1.0-TAUhp*myfunctions.f_func(TAUhp))*vev
108  /(2.*mHp*mHp)*g_HH_HpHm;
109 
110  double LAMc=4.0*Mc*Mc/(MZ*MZ);
111  double LAMt=4.0*Mt*Mt/(MZ*MZ);
112  double LAMs=4.0*Ms*Ms/(MZ*MZ);
113  double LAMb=4.0*Mb*Mb/(MZ*MZ);
114  double LAMmu=4.0*Mmu*Mmu/(MZ*MZ);
115  double LAMtau=4.0*Mtau*Mtau/(MZ*MZ);
116  double LAMw=4.0*MW*MW/(MZ*MZ);
117  double LAMhp=4.0*mHp*mHp/(MZ*MZ);
118 
119  /*A_HH_F, A_HH_W and A_HH_Hp are needed for Gamma_HZga;
120  * their expressions can be found in "The Higgs Hunter's Guide", Appendix C, C.12*/
121  gslpp::complex A_HH_F = 0.0;//It depends on the modelType
122  gslpp::complex A_HH_U = -4.0*(1.0/2.0-4.0/3.0*sW2)*(myfunctions.Int1(TAUc,LAMc)-myfunctions.Int2(TAUc,LAMc)
123  +myfunctions.Int1(TAUt,LAMt)-myfunctions.Int2(TAUt,LAMt));
124  gslpp::complex A_HH_D = +2.0*(-1.0/2.0+2.0/3.0*sW2)*(myfunctions.Int1(TAUs,LAMs)-myfunctions.Int2(TAUs,LAMs)
125  +myfunctions.Int1(TAUb,LAMb)-myfunctions.Int2(TAUb,LAMb));
126  gslpp::complex A_HH_L = +2.0*(-1.0/2.0+2.0*sW2)*(myfunctions.Int1(TAUmu,LAMmu)-myfunctions.Int2(TAUmu,LAMmu)
127  +myfunctions.Int1(TAUtau,LAMtau)-myfunctions.Int2(TAUtau,LAMtau));
128  /*A_HH_W expression can be found in "The Higgs Hunter's Guide", Appendix C, C.13*/
129  gslpp::complex A_HH_W = -cos_ab*sqrt(cW2/sW2)*(4*(3-sW2/cW2)*myfunctions.Int2(TAUw,LAMw)
130  +((1.0+2.0/TAUw)*sW2/cW2-(5.0+2.0/TAUw))*myfunctions.Int1(TAUw,LAMw));
131  /*A_HH_Hp expression can be found in "The Higgs Hunter's Guide", Appendix C, C.14*/
132  gslpp::complex A_HH_Hp= g_HH_HpHm*(1-2.0*sW2)/sqrt(cW2*sW2)*myfunctions.Int1(TAUhp,LAMhp)
133  *vev/(2.*mHp*mHp);
134 
135  std::string modelflag=myTHDM->getModelTypeflag();
136 
137  if( modelflag == "type1" ) {
138  rHH_gg=sina/sinb*sina/sinb;
139  rHH_QdQd=sina/sinb*sina/sinb;
140  rHH_ll=sina/sinb*sina/sinb;
141  I_HH_F=sina/sinb*(I_HH_U+I_HH_D+I_HH_L);
142  A_HH_F = sina/sinb*(A_HH_U+A_HH_D+A_HH_L)/sqrt(sW2*cW2);
143  }
144  else if( modelflag == "type2" ) {
145  rHH_gg=sina/sinb*cosa/cosb+(Sigmaggh_tt*sina/sinb*(sina/sinb-cosa/cosb)
146  +Sigmaggh_bb*cosa/cosb*(cosa/cosb-sina/sinb))/SigmaggF;
147  rHH_QdQd=cosa/cosb*cosa/cosb;
148  rHH_ll=cosa/cosb*cosa/cosb;
149  I_HH_F=sina/sinb*I_HH_U+cosa/cosb*(I_HH_D+I_HH_L);
150  A_HH_F = (sina/sinb*A_HH_U+cosa/cosb*(A_HH_D+A_HH_L))/sqrt(sW2*cW2);
151  }
152  else if( modelflag == "typeX" ) {
153  rHH_gg=sina/sinb*sina/sinb;
154  rHH_QdQd=sina/sinb*sina/sinb;
155  rHH_ll=cosa/cosb*cosa/cosb;
156  I_HH_F=sina/sinb*(I_HH_U+I_HH_D)+cosa/cosb*I_HH_L;
157  A_HH_F = (sina/sinb*(A_HH_U+A_HH_D)+cosa/cosb*A_HH_L)/sqrt(sW2*cW2);
158  }
159  else if( modelflag == "typeY" ) {
160  rHH_gg=sina/sinb*cosa/cosb+(Sigmaggh_tt*sina/sinb*(sina/sinb-cosa/cosb)
161  +Sigmaggh_bb*cosa/cosb*(cosa/cosb-sina/sinb))/SigmaggF;
162  rHH_QdQd=cosa/cosb*cosa/cosb;
163  rHH_ll=sina/sinb*sina/sinb;
164  I_HH_F=sina/sinb*(I_HH_U+I_HH_L)+cosa/cosb*I_HH_D;
165  A_HH_F = (sina/sinb*(A_HH_U+A_HH_L)+cosa/cosb*A_HH_D)/sqrt(sW2*cW2);
166  }
167  else {
168  throw std::runtime_error("modelflag can be only any of \"type1\", \"type2\", \"typeX\" or \"typeY\"");
169  }
170 
171  /*Gamma_Hgaga expression can be found in arXiv:0902.4665v3, Appendix A, A.8*/
172  double Gamma_Hgaga=GF*Ale*Ale*mHh*mHh*mHh/(sqrt(2)*128.0*M_PI*M_PI*M_PI)
173  *(I_HH_F+I_HH_W+I_HH_Hp).abs()*(I_HH_F+I_HH_W+I_HH_Hp).abs();
174 
175  /*Gamma_HZga expression can be found in arXiv:0902.4665v3, Appendix A, A.9*/
176  double Gamma_HZga=GF*Ale*Ale*mHh*mHh*mHh/(sqrt(2)*64.0*M_PI*M_PI*M_PI)
177  *(1.0-MZ*MZ/(mHh*mHh))*(1.0-MZ*MZ/(mHh*mHh))*(1.0-MZ*MZ/(mHh*mHh))
178  *(A_HH_F+A_HH_W+A_HH_Hp).abs()*(A_HH_F+A_HH_W+A_HH_Hp).abs();
179 
180  /*Gamma_Hgg expression can be found in arXiv:0902.4665v3, Appendix A, A.10; relative coupling see above*/
181  double Gamma_Hgg=GF*Als*Als*mHh*mHh*mHh/(sqrt(2)*64.0*M_PI*M_PI*M_PI)*rHH_gg;
182 
183  /*Calulation of rHH_QdQd, rHH_ll, rHH_gg, Gamma_Hgaga, Gamma_HZga, Gamma_Hgg: END*/
184 
185  double SigmaTotSM_H=mycache->ip_cs_ggFtoHP(mHh)/mycache->ip_pc_ggFtoHP(mHh);
186  double SigmaggF_H=mycache->ip_cs_ggFtoHP(mHh)*rHH_gg;
187  double SigmabbF_H=mycache->ip_cs_bbFtoHP(mHh)*rHH_QdQd;
188  double SigmaVBF_H=mycache->ip_pc_VBFtoHP(mHh)*SigmaTotSM_H*rHH_VV;
189  double SigmattF_H=mycache->ip_pc_ttFtoHP(mHh)*SigmaTotSM_H*rHH_QuQu;
190  double SigmaVH_H=(mycache->ip_pc_WHP_HP(mHh)+mycache->ip_pc_ZHP_HP(mHh))*SigmaTotSM_H*rHH_VV;
191 
192  double SigmaSum = SigmaggF_H + SigmaVBF_H + SigmaVH_H + SigmattF_H + SigmabbF_H;
193 
194  double BrSM_Htott=mycache->ip_Br_HPtott(mHh);
195  double BrSM_Htocc=mycache->ip_Br_HPtocc(mHh);
196  double BrSM_Htobb=mycache->ip_Br_HPtobb(mHh);
197  double BrSM_Htotautau=mycache->ip_Br_HPtotautau(mHh);
198  double BrSM_Htomumu=mycache->ip_Br_HPtomumu(mHh);
199  double BrSM_HtoWW =mycache->ip_Br_HPtoWW(mHh);
200  double BrSM_HtoZZ =mycache->ip_Br_HPtoZZ(mHh);
201 
202  double GammaHtotSM=mycache->ip_GammaHPtotSM(mHh);
203 
204  double GammaHhh=myfunctions.HSTheta(mHh - 2.0*mHl)*sqrt(std::abs(1.0 - (4.0*mHl*mHl)/(mHh*mHh)))
205  *std::abs((cos_ab*cos_ab/(4.0*sinb*cosb*sinb*cosb)
206  *pow(m12_2 + mHh*mHh*cosa*sina + (2.0* //Otto added a factor of 2 - check this!
207  mHl*mHl - 3.0*m12_2/(sinb*cosb))
208  *sina*cosa,2))/(vev*vev))/(8.0*mHh*M_PI);
209 
210  double GammaHHpHm=myfunctions.HSTheta(mHh - 2.0*mHp)*sqrt(std::abs(1.0 - (4.0*mHp*mHp)/(mHh*mHh)))
211  *std::abs(pow(cos_ab*(mHh*mHh + 2.0*mHp*mHp - 2.0*m12_2/sinb/cosb)
212  -cos_2b/(sinb*cosb)*(mHh*mHh - m12_2/sinb/cosb)*sin_ba,2)/(vev*vev))
213  /(16.0*mHh*M_PI);
214 
215  double GammaHAA=myfunctions.HSTheta(-2.0*mA + mHh)*sqrt(std::abs(1.0 - (4.0*mA*mA)/(mHh*mHh)))
216  *std::abs(pow(cos_ab*(2*mA*mA + mHh*mHh - 2.0*m12_2/sinb/cosb)
217  - cos_2b/(sinb*cosb)*(mHh*mHh - m12_2/sinb/cosb)*sin_ba,2)/(vev*vev))
218  /(32.0*mHh*M_PI);
219 
220  double GammaHAZ=myfunctions.HSTheta(mHh-mA-MZ)*pow(myfunctions.KaellenFunction(mHh,MZ,mA),3)
221  *sin_ba*sin_ba/(2.0*M_PI*vev*vev);
222 
223  double GammaHHpW=myfunctions.HSTheta(mHh-mHp-MW)*pow(myfunctions.KaellenFunction(mHh,MW,mHp),3)*sin_ba*sin_ba/(M_PI*vev*vev);
224 
225  GammaHtot= ((BrSM_Htott+BrSM_Htocc)*rHH_QuQu
226  +BrSM_Htobb*rHH_QdQd
227  +(BrSM_Htotautau+BrSM_Htomumu)*rHH_ll
228  +(BrSM_HtoWW+BrSM_HtoZZ)*rHH_VV)*GammaHtotSM
229  +Gamma_Hgaga+Gamma_HZga+Gamma_Hgg
230  +GammaHhh+GammaHHpHm+GammaHAA+GammaHAZ+GammaHHpW;
231 
232  double Br_Htott=BrSM_Htott*rHH_QuQu*GammaHtotSM/GammaHtot;
233  double Br_Htobb=BrSM_Htobb*rHH_QdQd*GammaHtotSM/GammaHtot;
234  double Br_Htotautau=BrSM_Htotautau*rHH_ll*GammaHtotSM/GammaHtot;
235  double Br_HtoWW=BrSM_HtoWW*rHH_VV*GammaHtotSM/GammaHtot;
236 // double Br_HtoZZ=BrSM_HtoZZ*rHH_VV*GammaHtotSM/GammaHtot;
237  double Br_Htohh=GammaHhh/GammaHtot;
238  double Br_Htogaga=Gamma_Hgaga/GammaHtot;
239 
240  double Br_htobb=mylightHiggs->THDM_BR_h_bb();
241  double Br_htogaga=mylightHiggs->THDM_BR_h_gaga();
242  double Br_htotautau=mylightHiggs->THDM_BR_h_tautau();
243 
244  //Heavy Higgs Signals, theoretical expressions
245 
246  ggF_H_tautau_TH=SigmaggF_H*Br_Htotautau;
247  bbF_H_tautau_TH=SigmabbF_H*Br_Htotautau;
248  ggF_H_gaga_TH=SigmaggF_H*Br_Htogaga;
249  pp_H_ZZ_TH=SigmaSum/SigmaTotSM_H*rHH_VV*GammaHtotSM/GammaHtot;
250  ggF_H_WW_TH=SigmaggF_H*Br_HtoWW;
251  VBF_H_WW_TH=SigmaVBF_H*Br_HtoWW;
252  ggF_H_hh_TH=SigmaggF_H*Br_Htohh;
253  ggF_H_hh_bbtautau_TH=SigmaggF_H*Br_Htohh*Br_htobb*Br_htotautau;
254  pp_H_hh_bbbb_TH=SigmaSum*Br_Htohh*Br_htobb*Br_htobb;
255  pp_H_hh_gagabb_TH=SigmaSum*Br_Htohh*Br_htogaga*Br_htobb;
256  pp_H_tt_TH=SigmaSum*Br_Htott;
257  bbF_H_bb_TH=SigmabbF_H*Br_Htobb;
258 }
259 
261 {
262  return 0;
263 }
264 
265 /*******************************************************************************
266  * Observables *
267  * ****************************************************************************/
268 
270 : heavyHiggs(SM_i)
271 {}
272 
274 {
275  if(mHh>=100.0 && mHh<=1000.0)
276  {
279  }
280  else
281  {
282  return 0.0;
283  }
284 }
285 
286 
287 
289 : heavyHiggs(SM_i)
290 {}
291 
293 {
294  if(mHh>=90.0 && mHh<=1000.0)
295  {
298  }
299  else
300  {
301  return 0.0;
302  }
303 }
304 
305 
306 
308 : heavyHiggs(SM_i)
309 {}
310 
312 {
313  if(mHh>=100.0 && mHh<=1000.0)
314  {
317  }
318  else
319  {
320  return 0.0;
321  }
322 }
323 
324 
325 
327 : heavyHiggs(SM_i)
328 {}
329 
331 {
332  if(mHh>=90.0 && mHh<=1000.0)
333  {
336  }
337  else
338  {
339  return 0.0;
340  }
341 }
342 
343 
344 
346 : heavyHiggs(SM_i)
347 {}
348 
350 {
351  if(mHh>=100.0 && mHh<=600.0)
352  {
355  }
356  else
357  {
358  return 0.0;
359  }
360 }
361 
362 
363 
365 : heavyHiggs(SM_i)
366 {}
367 
369 {
370  if(mHh>=150.0 && mHh<=850.0)
371  {
374  }
375  else
376  {
377  return 0.0;
378  }
379 }
380 
381 
382 
384 : heavyHiggs(SM_i)
385 {}
386 
388 {
389  if(mHh>=150.0 && mHh<=991.0)
390  {
393  }
394  else
395  {
396  return 0.0;
397  }
398 }
399 
400 
401 
403 : heavyHiggs(SM_i)
404 {}
405 
407 {
408  if(mHh>=300.0 && mHh<=1500.0)
409  {
412  }
413  else
414  {
415  return 0.0;
416  }
417 }
418 
419 
420 
422 : heavyHiggs(SM_i)
423 {}
424 
426 {
427  if(mHh>=300.0 && mHh<=1500.0)
428  {
431  }
432  else
433  {
434  return 0.0;
435  }
436 }
437 
438 
439 
441 : heavyHiggs(SM_i)
442 {}
443 
445 {
446  if(mHh>=260.0 && mHh<=1000.0)
447  {
450  }
451  else
452  {
453  return 0.0;
454  }
455 }
456 
457 
458 
460 : heavyHiggs(SM_i)
461 {}
462 
464 {
465  if(mHh>=260.0 && mHh<=350.0)
466  {
469  }
470  else
471  {
472  return 0.0;
473  }
474 }
475 
476 
477 
479 : heavyHiggs(SM_i)
480 {}
481 
483 {
484  if(mHh>=260.0 && mHh<=1100.0)
485  {
488  }
489  else
490  {
491  return 0.0;
492  }
493 }
494 
495 
496 
498 : heavyHiggs(SM_i)
499 {}
500 
502 {
503  if(mHh>=260.0 && mHh<=1100.0)
504  {
507  }
508  else
509  {
510  return 0.0;
511  }
512 }
513 
514 
515 
517 : heavyHiggs(SM_i)
518 {}
519 
521 {
522  if(mHh>=400.0 && mHh<=3000.0)
523  {
526  }
527  else
528  {
529  return 0.0;
530  }
531 }
532 
533 
534 
536 : heavyHiggs(SM_i)
537 {}
538 
540 {
541  if(mHh>=100.0 && mHh<=900.0)
542  {
545  }
546  else
547  {
548  return 0.0;
549  }
550 }
551 
552 
553 
555 : heavyHiggs(SM_i)
556 {}
557 
559 {
561  return log10(ggF_H_tautau_TH);
562 }
563 
564 
565 
567 : heavyHiggs(SM_i)
568 {}
569 
571 {
573  return log10(bbF_H_tautau_TH);
574 }
575 
576 
577 
579 : heavyHiggs(SM_i)
580 {}
581 
583 {
585  return log10(ggF_H_gaga_TH);
586 }
587 
588 
589 
591 : heavyHiggs(SM_i)
592 {}
593 
595 {
597  return log10(pp_H_ZZ_TH);
598 }
599 
600 
601 
603 : heavyHiggs(SM_i)
604 {}
605 
607 {
609  return log10(ggF_H_WW_TH);
610 }
611 
612 
613 
615 : heavyHiggs(SM_i)
616 {}
617 
619 {
621  return log10(VBF_H_WW_TH);
622 }
623 
624 
625 
627 : heavyHiggs(SM_i)
628 {}
629 
631 {
633  return log10(ggF_H_hh_TH);
634 }
635 
636 
637 
639  : heavyHiggs(SM_i)
640 {}
641 
643 {
645  return log10(ggF_H_hh_bbtautau_TH);
646 }
647 
648 
649 
651 : heavyHiggs(SM_i)
652 {}
653 
655 {
657  return log10(pp_H_hh_bbbb_TH);
658 }
659 
660 
661 
663 : heavyHiggs(SM_i)
664 {}
665 
667 {
669  return log10(pp_H_hh_gagabb_TH);
670 }
671 
672 
673 
675 : heavyHiggs(SM_i)
676 {}
677 
679 {
681  return log10(pp_H_tt_TH);
682 }
683 
684 
685 
687 : heavyHiggs(SM_i)
688 {}
689 
691 {
693  return log10(bbF_H_bb_TH);
694 }
double pp_H_tt_TH
Cross section times branching ratio for the process at the LHC with 8 TeV.
Definition: heavyHiggs.h:113
Hobs_ggF_H_gaga_ATLAS(const StandardModel &SM_i)
Hobs_ggF_H_gaga_ATLAS constructor.
Definition: heavyHiggs.cpp:345
double computeThValue()
Definition: heavyHiggs.cpp:606
Hobs_ggF_H_tautau_CMS(const StandardModel &SM_i)
Hobs_ggF_H_tautau_CMS constructor.
Definition: heavyHiggs.cpp:288
double getm12_2() const
Definition: THDM.h:278
virtual double sW2(const double Mw_i) const
The square of the sine of the weak mixing angle in the on-shell scheme, denoted as ...
double pp_H_hh_gagabb_TH
Cross section times branching ratio for the process at the LHC with 8 TeV.
Definition: heavyHiggs.h:107
double ip_ex_ggF_phi_tautau_ATLAS(double mass)
Interpolating function for the ATLAS upper limit on a gluon-gluon produced scalar resonance decaying ...
Definition: THDMcache.cpp:722
double getsina() const
Definition: THDM.h:222
double getsinb() const
Definition: THDM.h:182
double ip_Br_HPtocc(double mass)
Interpolating function for the SM branching ratio to two charm quarks.
Definition: THDMcache.cpp:616
double ip_Br_HPtott(double mass)
Interpolating function for the SM branching ratio to two top quarks.
Definition: THDMcache.cpp:598
Particle getLeptons(const StandardModel::lepton p) const
A get method to retrieve the member object of a lepton.
double getsin_ba() const
Definition: THDM.h:206
double ip_cs_bbFtoHP(double mass)
Interpolating function for the bottom quark associated production cross section of a Higgs...
Definition: THDMcache.cpp:710
double ggF_H_hh_TH
Cross section times branching ratio for the process at the LHC with 8 TeV.
Definition: heavyHiggs.h:89
double ip_ex_VBF_H_WW_ATLAS(double mass)
Interpolating function for the ATLAS upper limit on a vector boson fusion produced scalar resonance d...
Definition: THDMcache.cpp:758
Hobs_ggF_H_hh_bbtautau_CMS(const StandardModel &SM_i)
Hobs_ggF_H_hh_bbtautau_CMS constructor.
Definition: heavyHiggs.cpp:459
double computeThValue()
Definition: heavyHiggs.cpp:678
double ip_cs_ggFtoHP(double mass)
Interpolating function for the SM Higgs production cross section via gluon-gluon fusion.
Definition: THDMcache.cpp:675
Hobs_pp_H_tt_ATLAS(const StandardModel &SM_i)
Hobs_pp_H_tt_ATLAS constructor.
Definition: heavyHiggs.cpp:516
THDMcache * mycache
Definition: heavyHiggs.h:40
double computeThValue()
Definition: heavyHiggs.cpp:520
complex pow(const complex &z1, const complex &z2)
double ip_ex_pp_H_ZZ_CMS(double mass)
Interpolating function for the CMS upper limit on a scalar resonance decaying to two bosons...
Definition: THDMcache.cpp:770
double getcosb() const
Definition: THDM.h:190
int HSTheta(const double x) const
Heaviside function.
A class for the caching of some THDM objects.
Definition: THDMcache.h:27
double computeThValue()
Empty function.
Definition: heavyHiggs.cpp:260
double ip_GammaHPtotSM(double mass)
Interpolating function for the total SM Higgs decay width.
Definition: THDMcache.cpp:669
Hobs_ggF_H_tautau_ATLAS(const StandardModel &SM_i)
Hobs_ggF_H_tautau_ATLAS constructor.
Definition: heavyHiggs.cpp:269
double ip_ex_ggF_phi_gaga_CMS(double mass)
Interpolating function for the CMS upper limit on a gluon-gluon produced scalar resonance decaying to...
Definition: THDMcache.cpp:812
double ggF_H_hh_bbtautau_TH
Cross section times branching ratio for the process at the LHC with 8 TeV.
Definition: heavyHiggs.h:95
Hobs_pp_H_hh_gagabb_CMS(const StandardModel &SM_i)
Hobs_pp_H_hh_gagabb_CMS constructor.
Definition: heavyHiggs.cpp:497
log10_ggF_H_hh_TH(const StandardModel &SM_i)
log10_ggF_H_hh_TH constructor.
Definition: heavyHiggs.cpp:626
double KaellenFunction(const double a, const double b, const double c) const
Kaellen function.
double ip_pc_ttFtoHP(double mass)
Interpolating function for the SM percentage contribution of associated production to the total Higg...
Definition: THDMcache.cpp:663
log10_pp_H_tt_TH(const StandardModel &SM_i)
log10_pp_H_tt_TH constructor.
Definition: heavyHiggs.cpp:674
A class for a model prediction of an observable.
Definition: ThObservable.h:22
const StandardModel & mySM
Definition: heavyHiggs.h:123
double ip_pc_ZHP_HP(double mass)
Interpolating function for the SM percentage contribution of Higgsstrahlung to the total Higgs produ...
Definition: THDMcache.cpp:657
gslpp::complex Int2(const double tau, const double lambda) const
function for Z gamma coupling to h, H and A
double ggF_H_gaga_TH
Cross section times branching ratio for the process at the LHC with 8 TeV.
Definition: heavyHiggs.h:65
Hobs_bbF_H_tautau_CMS(const StandardModel &SM_i)
Hobs_bbF_H_tautau_CMS constructor.
Definition: heavyHiggs.cpp:326
log10_pp_H_hh_gagabb_TH(const StandardModel &SM_i)
log10_pp_H_hh_gagabb_TH constructor.
Definition: heavyHiggs.cpp:662
double computeThValue()
Definition: heavyHiggs.cpp:539
A model class for the Standard Model.
double getmA() const
Definition: THDM.h:254
double ip_ex_ggF_phi_tautau_CMS(double mass)
Interpolating function for the CMS upper limit on a gluon-gluon produced scalar resonance decaying to...
Definition: THDMcache.cpp:800
double VBF_H_WW_TH
Cross section times branching ratio for the process at the LHC with 8 TeV.
Definition: heavyHiggs.h:83
double ip_ex_bbF_phi_bb_CMS(double mass)
Interpolating function for the CMS upper limit on a bottom quark produced scalar resonance decaying t...
Definition: THDMcache.cpp:794
Hobs_pp_H_ZZ_CMS(const StandardModel &SM_i)
Hobs_pp_H_ZZ_CMS constructor.
Definition: heavyHiggs.cpp:383
Definition: QCD.h:735
double mHh
The heavy CP-even Higgs mass. (Required for the experimental tables.)
Definition: heavyHiggs.h:47
lightHiggs * mylightHiggs
Definition: heavyHiggs.h:41
log10_pp_H_hh_bbbb_TH(const StandardModel &SM_i)
log10_pp_H_hh_bbbb_TH constructor.
Definition: heavyHiggs.cpp:650
virtual double Mw() const
The SM prediction for the -boson mass in the on-shell scheme, .
double ip_Br_HPtotautau(double mass)
Interpolating function for the SM branching ratio to two tau leptons.
Definition: THDMcache.cpp:610
complex log10(const complex &z)
double computeThValue()
Definition: heavyHiggs.cpp:594
double ip_Br_HPtoWW(double mass)
Interpolating function for the SM branching ratio to two bosons.
Definition: THDMcache.cpp:634
double THDM_BR_h_bb()
THDM branching ratio of .
Definition: lightHiggs.cpp:210
double ip_ex_ggF_H_hh_ATLAS(double mass)
Interpolating function for the ATLAS upper limit on a gluon-gluon produced scalar resonance decaying ...
Definition: THDMcache.cpp:764
double pp_H_ZZ_TH
Signal strength for the process at the LHC with 8 TeV.
Definition: heavyHiggs.h:71
double ggF_H_tautau_TH
Cross section times branching ratio for the process at the LHC with 8 TeV.
Definition: heavyHiggs.h:53
virtual double v() const
The Higgs vacuum expectation value. where is the Fermi constant, measured through muon decays...
double bbF_H_tautau_TH
Cross section times branching ratio for the process at the LHC with 8 TeV.
Definition: heavyHiggs.h:59
double ip_ex_ggF_H_WW_ATLAS(double mass)
Interpolating function for the ATLAS upper limit on a gluon-gluon produced scalar resonance decaying ...
Definition: THDMcache.cpp:752
double getGF() const
A get method to retrieve the Fermi constant .
double ggF_H_WW_TH
Cross section times branching ratio for the process at the LHC with 8 TeV.
Definition: heavyHiggs.h:77
double pp_H_hh_bbbb_TH
Cross section times branching ratio for the process at the LHC with 8 TeV.
Definition: heavyHiggs.h:101
double ip_Br_HPtomumu(double mass)
Interpolating function for the SM branching ratio to two muons.
Definition: THDMcache.cpp:622
double ip_Br_HPtobb(double mass)
Interpolating function for the SM branching ratio to two bottom quarks.
Definition: THDMcache.cpp:604
Hobs_pp_H_hh_bbbb_CMS(const StandardModel &SM_i)
Hobs_pp_H_hh_bbbb_CMS constructor.
Definition: heavyHiggs.cpp:478
heavyHiggs(const StandardModel &SM_i)
Definition: heavyHiggs.cpp:12
double ip_ex_ggF_H_hh_bbtautau_CMS(double mass)
Interpolating function for the CMS upper limit on a gluon-gluon produced scalar resonance decaying to...
Definition: THDMcache.cpp:818
const THDM * myTHDM
Definition: heavyHiggs.h:122
log10_ggF_H_gaga_TH(const StandardModel &SM_i)
log10_ggF_H_gaga_TH constructor.
Definition: heavyHiggs.cpp:578
gslpp::complex f_func(const double x) const
f function for the gamma gamma coupling to h, H and A
virtual ~heavyHiggs()
Definition: heavyHiggs.cpp:24
Hobs_bbF_H_bb_CMS(const StandardModel &SM_i)
Hobs_bbF_H_bb_CMS constructor.
Definition: heavyHiggs.cpp:535
Particle getQuarks(const quark q) const
A get method to access a quark as an object of the type Particle.
Definition: QCD.h:869
log10_bbF_H_bb_TH(const StandardModel &SM_i)
log10_bbF_H_bb_TH constructor.
Definition: heavyHiggs.cpp:686
log10_pp_H_ZZ_TH(const StandardModel &SM_i)
log10_pp_H_ZZ_TH constructor.
Definition: heavyHiggs.cpp:590
double getmHh() const
Definition: THDM.h:238
double getAle() const
A get method to retrieve the fine-structure constant .
Hobs_ggF_H_WW_ATLAS(const StandardModel &SM_i)
Hobs_ggF_H_WW_ATLAS constructor.
Definition: heavyHiggs.cpp:402
double ip_ex_ggF_phi_gaga_ATLAS(double mass)
Interpolating function for the ATLAS upper limit on a gluon-gluon produced scalar resonance decaying ...
Definition: THDMcache.cpp:716
A base class symmetric Two-Higgs-Doublet models.
Definition: THDM.h:94
const double & getMass() const
A get method to access the particle mass.
Definition: Particle.h:61
void computeParameters()
Definition: heavyHiggs.cpp:28
double THDM_BR_h_tautau()
THDM branching ratio of .
Definition: lightHiggs.cpp:222
double ip_cs_ggHP_tt(double mass)
Interpolating function for the SM Higgs production cross section via gluon-gluon fusion (top-loop onl...
Definition: THDMcache.cpp:680
double ip_pc_WHP_HP(double mass)
Interpolating function for the SM percentage contribution of Higgsstrahlung to the total Higgs produ...
Definition: THDMcache.cpp:652
Base class for direct heavy Higgs search observables.
Definition: heavyHiggs.h:27
log10_ggF_H_hh_bbtautau_TH(const StandardModel &SM_i)
log10_ggF_H_hh_bbtautau_TH constructor.
Definition: heavyHiggs.cpp:638
double ip_ex_bbF_phi_tautau_ATLAS(double mass)
Interpolating function for the ATLAS upper limit on a bottom quark produced scalar resonance decaying...
Definition: THDMcache.cpp:728
double ip_cs_ggHP_bb(double mass)
Interpolating function for the SM Higgs production cross section via gluon-gluon fusion (bottom-loop ...
Definition: THDMcache.cpp:686
Hobs_bbF_H_tautau_ATLAS(const StandardModel &SM_i)
Hobs_bbF_H_tautau_ATLAS constructor.
Definition: heavyHiggs.cpp:307
log10_ggF_H_WW_TH(const StandardModel &SM_i)
log10_ggF_H_WW_TH constructor.
Definition: heavyHiggs.cpp:602
log10_VBF_H_WW_TH(const StandardModel &SM_i)
log10_VBF_H_WW_TH constructor.
Definition: heavyHiggs.cpp:614
double GammaHtot
Total decay width of the heavy CP-even Higgs .
Definition: heavyHiggs.h:129
double computeThValue()
Definition: heavyHiggs.cpp:618
Hobs_VBF_H_WW_ATLAS(const StandardModel &SM_i)
Hobs_VBF_H_WW_ATLAS constructor.
Definition: heavyHiggs.cpp:421
double bbF_H_bb_TH
Cross section times branching ratio for the process at the LHC with 8 TeV.
Definition: heavyHiggs.h:119
Hobs_ggF_H_hh_ATLAS(const StandardModel &SM_i)
Hobs_ggF_H_hh_ATLAS constructor.
Definition: heavyHiggs.cpp:440
double ip_ex_bbF_phi_tautau_CMS(double mass)
Interpolating function for the CMS upper limit on a bottom quark produced scalar resonance decaying t...
Definition: THDMcache.cpp:806
virtual double cW2(const double Mw_i) const
The square of the cosine of the weak mixing angle in the on-shell scheme, denoted as ...
double computeThValue()
Definition: heavyHiggs.cpp:387
double THDM_BR_h_gaga()
THDM branching ratio of .
Definition: lightHiggs.cpp:216
double computeThValue()
Definition: heavyHiggs.cpp:690
double ip_Br_HPtoZZ(double mass)
Interpolating function for the SM branching ratio to two bosons.
Definition: THDMcache.cpp:628
A class for defining operations on and functions of complex numbers.
Definition: gslpp_complex.h:35
double ip_pc_ggFtoHP(double mass)
Interpolating function for the SM percentage contribution of gluon-gluon fusion to the total Higgs pr...
Definition: THDMcache.cpp:640
double getMHl() const
A get method to retrieve the Higgs mass .
double computeThValue()
Definition: heavyHiggs.cpp:630
gslpp::complex Int1(const double tau, const double lambda) const
function for Z gamma coupling to h, H and A
Hobs_ggF_H_gaga_CMS(const StandardModel &SM_i)
Hobs_ggF_H_gaga_CMS constructor.
Definition: heavyHiggs.cpp:364
double ip_pc_VBFtoHP(double mass)
Interpolating function for the SM percentage contribution of vector boson fusion to the total Higgs p...
Definition: THDMcache.cpp:646
log10_bbF_H_tautau_TH(const StandardModel &SM_i)
log10_bbF_H_tautau_TH constructor.
Definition: heavyHiggs.cpp:566
double ip_ex_pp_phi_hh_gagabb_CMS(double mass)
Interpolating function for the CMS upper limit on a scalar resonance decaying to two bosons which fu...
Definition: THDMcache.cpp:782
double getcosa() const
Definition: THDM.h:214
double getmHp() const
Definition: THDM.h:270
double getMz() const
A get method to access the mass of the boson .
log10_ggF_H_tautau_TH(const StandardModel &SM_i)
log10_ggF_H_tautau_TH constructor.
Definition: heavyHiggs.cpp:554
std::string getModelTypeflag() const
Definition: THDM.h:158
double ip_ex_pp_phi_tt_ATLAS(double mass)
Interpolating function for the ATLAS upper limit on scalar resonance decaying to a top quark pair...
Definition: THDMcache.cpp:746
double getAlsMz() const
A get method to access the value of .
double ip_ex_pp_phi_hh_bbbb_CMS(double mass)
Interpolating function for the CMS upper limit on a scalar resonance decaying to two bosons which fu...
Definition: THDMcache.cpp:788
complex sqrt(const complex &z)