a Code for the Combination of Indirect and Direct Constraints on High Energy Physics Models Logo
GeneralTHDM.h
Go to the documentation of this file.
1/*
2 * Copyright (C) 2016 HEPfit Collaboration
3 *
4 *
5 * For the licensing terms see doc/COPYING.
6 */
7
8#ifndef GENERALTHDM_H
9#define GENERALTHDM_H
10
11#include "StandardModel.h"
12#include "GeneralTHDMMatching.h"
13#include "NPbase.h"
14#include <gsl/gsl_errno.h>
15
16
17class GeneralTHDMcache; //forward reference to GeneralTHDMcache class
18
468class GeneralTHDM: public NPbase {
469public:
470
471
472 static const int NGeneralTHDMvars = 66;
473 static std::string GeneralTHDMvars[NGeneralTHDMvars];
474
478 GeneralTHDM();
479
483 ~GeneralTHDM();
484
491 virtual bool InitializeModel();
492
493
494
499 virtual bool Update(const std::map<std::string, double>& DPars);
500
501
502
509 virtual bool PostUpdate();
510
511
512 //Function to debug the gsl errors
513 static void custom_gsl_error_handler(const char *reason, const char *file, int line, int gsl_errno) {
514 printf("GSL Error: %s\nFile: %s\nLine: %d\nError code: %d\n", reason, file, line, gsl_errno);
515 // Optionally print a stack trace or additional debug info
516 }
517
518
526 virtual bool CheckParameters(const std::map<std::string, double>& DPars);
527
533 double getMuw() const
534 {
535 return muw;
536 }
537
538
543 virtual GeneralTHDMMatching& getMatching() const
544 {
545 return GTHDMM.getObj();
546 }
547
548
550 // Flags
551
558 virtual bool setFlagStr(const std::string name, const std::string value);
559
566 virtual bool setFlag(const std::string, const bool);
567
568 GeneralTHDMcache* getMyGTHDMCache() const
569 {
570 return myGTHDMcache;
571 }
572
574
579 //double getlogtb() const {
580 // return logtb;
581 //}
582
587 //double gettanb() const {
588 // return tanb;
589 //}
590
595 //double getsinb() const {
596 // return sinb;
597 //}
598
603 //double getcosb() const {
604 // return cosb;
605 //}
606
612 double getmHp2() const {
613 if(flag_use_sq_masses) {
614 return mHp2;
615 }
616 else
617 {
618 return mHp1*mHp1;
619 }
620 }
621
627 double getmHp() const {
628 if(flag_use_sq_masses) {
629 if(mHp2 < 0.) {
630 throw std::runtime_error("error in GeneralTHDM: mHp2 < 0!");
631 }
632 else
633 {
634 return sqrt(mHp2);
635 }
636 }
637 else
638 {
639 return mHp1;
640 }
641 }
642
643
648 double getmH1sq() const {
649 if(flag_use_sq_masses) {
650 if(mH1sq < 0.) {
651 throw std::runtime_error("error in GeneralTHDM: mH1sq < 0!");
652 }
653 return mH1sq;
654 }
655 else
656 {
657 return mH1*mH1;
658 }
659 }
660
661
662
667 double getmH2sq() const {
668 if(flag_use_sq_masses) {
669 if(mH2sq < 0.) {
670 throw std::runtime_error("error in GeneralTHDM: mH2sq < 0!");
671 }
672 return mH2sq;
673 }
674 else
675 {
676 return mH21*mH21;
677 }
678 }
679
684 double getmH3sq() const {
685 if(flag_use_sq_masses) {
686 if(mH3sq < 0.) {
687 throw std::runtime_error("error in GeneralTHDM: mH3sq < 0!");
688 }
689 return mH3sq;
690 }
691 else
692 {
693 return mH31*mH31;
694 }
695 }
696
701 double getalpha1() const {
702 return alpha1;
703 }
704
709 double getcosalpha1() const {
710 return cosalpha1;
711 }
712
717 double getsinalpha1() const {
718 return sinalpha1;
719 }
720
725 double gettanalpha1() const {
726 return tanalpha1;
727 }
728
729
734 double getalpha2() const {
735 if(flag_CPconservation==true) {
736 return 0.0;
737 }
738 else {
739 return alpha2;
740 }
741 }
742
747 double getcosalpha2() const {
748 if(flag_CPconservation==true) {
749 return 1.0;
750 }
751 else {
752 return cosalpha2;
753 }
754 }
755
760 double getsinalpha2() const {
761 if(flag_CPconservation==true) {
762 return 0.0;
763 }
764 else {
765 return sinalpha2;
766 }
767 }
768
773 double getalpha3() const {
774 if(flag_CPconservation==true) {
775 return 0.0;
776 }
777 else {
778 return alpha3;
779 }
780 }
781
786 double getcosalpha3() const {
787 if(flag_CPconservation==true) {
788 return 1.0;
789 }
790 else {
791 return cosalpha3;
792 }
793 }
794
799 double getsinalpha3() const {
800 if(flag_CPconservation==true) {
801 return 0.0;
802 }
803 else {
804 return sinalpha3;
805 }
806 }
807
808
813 double getlambda1() const {
814 return lambda1;
815 }
816
817
822 double getlambda2() const {
823 return lambda2;
824 }
825
826
831 double getlambda3() const {
832 return lambda3;
833 }
834
839 double getlambda4() const {
840 return lambda4;
841 }
842
847 double getRelambda5() const {
848 return Relambda5;
849 }
850
855 double getImlambda5() const {
856 if(flag_CPconservation==true) {
857 return 0.0;
858 }
859 else {
860 return Imlambda5;
861 }
862 }
863
868 double getRelambda6() const {
869 return Relambda6;
870 }
871
872
877 double getImlambda6() const {
878 if(flag_CPconservation==true) {
879 return 0.0;
880 }
881 else {
882 return Imlambda6;
883 }
884 }
885
890 double getRelambda7() const {
891 return Relambda7;
892 }
893
894
899 double getImlambda7() const {
900 if(flag_CPconservation==true) {
901 return 0.0;
902 }
903 else {
904 return Imlambda7;
905 }
906 }
907
913 gslpp::complex getNu_11() const {
914 gslpp::complex i = gslpp::complex::i();
915 if(flag_sigma) {
916 return (Nu_11r + i*Nu_11i);
917 }
918 else
919 {
920 if(alpha1==0)
921 return 0 +i*0;
922 else
923 return (yu1R_GTHDM - cosalpha1)/(sinalpha1);
924 }
925 }
926
932 gslpp::complex getNu_12() const {
933 gslpp::complex i = gslpp::complex::i();
934 return (Nu_12r + i*Nu_12i);
935 }
936
942 gslpp::complex getNu_13() const {
943 gslpp::complex i = gslpp::complex::i();
944 return (Nu_13r + i*Nu_13i);
945 }
946
951 gslpp::complex getNu_21() const {
952 gslpp::complex i = gslpp::complex::i();
953 return (Nu_21r + i*Nu_21i);
954 }
955
960 gslpp::complex getNu_22() const {
961 gslpp::complex i = gslpp::complex::i();
962 return (Nu_22r + i*Nu_22i);
963 }
964
969 gslpp::complex getNu_23() const {
970 gslpp::complex i = gslpp::complex::i();
971 return (Nu_23r + i*Nu_23i);
972 }
973
978 gslpp::complex getNu_31() const {
979 gslpp::complex i = gslpp::complex::i();
980 return (Nu_31r + i*Nu_31i);
981 }
982
987 gslpp::complex getNu_32() const {
988 gslpp::complex i = gslpp::complex::i();
989 return (Nu_32r + i*Nu_32i);
990 }
991
996 gslpp::complex getNu_33() const {
997 gslpp::complex i = gslpp::complex::i();
998 return (Nu_33r + i*Nu_33i);
999 }
1000
1005 gslpp::complex getNd_11() const {
1006 gslpp::complex i = gslpp::complex::i();
1007 if(flag_sigma) {
1008 return (Nd_11r + i*Nd_11i);
1009 }
1010 else
1011 {
1012 if(alpha1==0)
1013 return 0 +i*0;
1014 else
1015 return (yd1R_GTHDM - cosalpha1)/(sinalpha1);
1016 }
1017 }
1018
1019
1024 gslpp::complex getNd_12() const {
1025 gslpp::complex i = gslpp::complex::i();
1026 return (Nd_12r + i*Nd_12i);
1027 }
1028
1033 gslpp::complex getNd_13() const {
1034 gslpp::complex i = gslpp::complex::i();
1035 return (Nd_13r + i*Nd_13i);
1036 }
1037
1042 gslpp::complex getNd_21() const {
1043 gslpp::complex i = gslpp::complex::i();
1044 return (Nd_21r + i*Nd_21i);
1045 }
1046
1051 gslpp::complex getNd_22() const {
1052 gslpp::complex i = gslpp::complex::i();
1053 return (Nd_22r + i*Nd_22i);
1054 }
1055
1060 gslpp::complex getNd_23() const {
1061 gslpp::complex i = gslpp::complex::i();
1062 return (Nd_23r + i*Nd_23i);
1063 }
1064
1069 gslpp::complex getNd_31() const {
1070 gslpp::complex i = gslpp::complex::i();
1071 return (Nd_31r + i*Nd_31i);
1072 }
1073
1078 gslpp::complex getNd_32() const {
1079 gslpp::complex i = gslpp::complex::i();
1080 return (Nd_32r + i*Nd_32i);
1081 }
1082
1087 gslpp::complex getNd_33() const {
1088 gslpp::complex i = gslpp::complex::i();
1089 return (Nd_33r + i*Nd_33i);
1090 }
1091
1096 gslpp::complex getNl_11() const {
1097 gslpp::complex i = gslpp::complex::i();
1098 if(flag_sigma) {
1099 return (Nl_11r + i*Nl_11i);
1100 }
1101 else
1102 {
1103 if(alpha1==0)
1104 return 0 +i*0;
1105 else
1106 return (yl1R_GTHDM -cosalpha1)/(sinalpha1);
1107 }
1108 }
1109
1114 gslpp::complex getNl_12() const {
1115 gslpp::complex i = gslpp::complex::i();
1116 return (Nl_12r + i*Nl_12i);
1117 }
1118
1123 gslpp::complex getNl_13() const {
1124 gslpp::complex i = gslpp::complex::i();
1125 return (Nl_13r + i*Nl_13i);
1126 }
1127
1132 gslpp::complex getNl_21() const {
1133 gslpp::complex i = gslpp::complex::i();
1134 return (Nl_21r + i*Nl_21i);
1135 }
1136
1141 gslpp::complex getNl_22() const {
1142 gslpp::complex i = gslpp::complex::i();
1143 return (Nl_22r + i*Nl_22i);
1144 }
1145
1150 gslpp::complex getNl_23() const {
1151 gslpp::complex i = gslpp::complex::i();
1152 return (Nl_23r + i*Nl_23i);
1153 }
1154
1159 gslpp::complex getNl_31() const {
1160 gslpp::complex i = gslpp::complex::i();
1161 return (Nl_31r + i*Nl_31i);
1162 }
1163
1168 gslpp::complex getNl_32() const {
1169 gslpp::complex i = gslpp::complex::i();
1170 return (Nl_32r + i*Nl_32i);
1171 }
1172
1177 gslpp::complex getNl_33() const {
1178 gslpp::complex i = gslpp::complex::i();
1179 return (Nl_33r + i*Nl_33i);
1180 }
1181
1182
1183
1184 gslpp::complex getyu1() const {
1185 if(!flag_sigma) {
1186 return (yu1R_GTHDM);
1187 }
1188 else {
1189 gslpp::complex i = gslpp::complex::i();
1190 double R11 = cosalpha1*cosalpha2;
1191 double R12 = sinalpha1*cosalpha2;
1192 double R13 = -sinalpha2;
1193 gslpp::complex yu1 = (R11 + (R12 - i*R13)*(Nu_11r + i*Nu_11i).conjugate());
1194 // if(yu1.abs2() > 4.) return std::numeric_limits<double>::quiet_NaN();
1195 return yu1;
1196 }
1197 }
1198
1199
1200 double getyu1R() const {
1201 if(!flag_sigma) {
1202 return (yu1R_GTHDM);
1203 }
1204 else {
1205 double R11 = cosalpha1*cosalpha2;
1206 double R12 = sinalpha1*cosalpha2;
1207 double yu1R = (R11 + R12*Nu_11r);
1208 // if(yu1R*yu1R > 4.) return std::numeric_limits<double>::quiet_NaN();
1209 return yu1R;
1210 }
1211 }
1212
1213
1214 gslpp::complex getyd1() const {
1215 if(!flag_sigma) {
1216 return (yd1R_GTHDM);
1217 }
1218 else {
1219 gslpp::complex i = gslpp::complex::i();
1220 double R11 = cosalpha1*cosalpha2;
1221 double R12 = sinalpha1*cosalpha2;
1222 double R13 = -sinalpha2;
1223 gslpp::complex yd1 = (R11 + (R12 - i*R13)*(Nd_11r + i*Nd_11i));
1224 // if(yd1.abs2() > 4.) return std::numeric_limits<double>::quiet_NaN();
1225 return yd1;
1226 }
1227 }
1228
1229
1230 double getyd1R() const {
1231 if(!flag_sigma) {
1232 return (yd1R_GTHDM);
1233 }
1234 else {
1235 double R11 = cosalpha1*cosalpha2;
1236 double R12 = sinalpha1*cosalpha2;
1237 double yd1R = (R11 + R12*Nd_11r);
1238 // if(yd1R*yd1R > 4.) return std::numeric_limits<double>::quiet_NaN();
1239 return yd1R;
1240 }
1241 }
1242
1243 gslpp::complex getyl1() const {
1244 if(!flag_sigma) {
1245 return (yl1R_GTHDM);
1246 }
1247 else {
1248 gslpp::complex i = gslpp::complex::i();
1249 double R11 = cosalpha1*cosalpha2;
1250 double R12 = sinalpha1*cosalpha2;
1251 double R13 = -sinalpha2;
1252 gslpp::complex yl1 = (R11 + (R12 - i*R13)*(Nl_11r + i*Nl_11i));
1253 // if(yl1.abs2() > 4.) return std::numeric_limits<double>::quiet_NaN();
1254 return yl1;
1255 }
1256 }
1257
1258
1259 double getyl1R() const {
1260 if(!flag_sigma) {
1261 return (yl1R_GTHDM);
1262 }
1263 else {
1264 double R11 = cosalpha1*cosalpha2;
1265 double R12 = sinalpha1*cosalpha2;
1266 double yl1R = (R11 + R12*Nl_11r);
1267 // if(yl1R*yl1R > 4.) return std::numeric_limits<double>::quiet_NaN();
1268 return yl1R;
1269 }
1270 }
1271
1276 double getQ_GTHDM() const {
1277 return Q_GTHDM;
1278 }
1279
1284 double getRpepsGTHDM() const {
1285 return RpepsGTHDM;
1286 }
1287
1292 double getNLOuniscaleGTHDM() const {
1293 return NLOuniscaleGTHDM;
1294 }
1295
1301 bool getATHDMflag() const {
1302 return flag_ATHDM;
1303 }
1304
1310 bool getCPconservationflag() const {
1311 return flag_CPconservation;
1312 }
1313
1319 std::string getRGEorderflag() const {
1320 return flag_RGEorder;
1321 }
1322
1329 bool getsqmassesflag() const {
1330 return flag_use_sq_masses;
1331 }
1332
1333 virtual const double muggH(const double sqrt_s) const;
1334 virtual const double muVBF(const double sqrt_s) const;
1335 virtual const double mueeWBF(const double sqrt_s, const double Pol_em, const double Pol_ep) const;
1336 virtual const double muWH(const double sqrt_s) const;
1337 virtual const double muZH(const double sqrt_s) const;
1338 virtual const double mueeZH(const double sqrt_s, const double Pol_em, const double Pol_ep) const;
1339 virtual const double muVH(const double sqrt_s) const;
1340 virtual const double muVBFpVH(const double sqrt_s) const;
1341 virtual const double muttH(const double sqrt_s) const;
1342 virtual const double mutH(const double sqrt_s) const;
1343 virtual const double mubbH(const double sqrt_s) const;
1344 virtual const double muttHptH(const double sqrt_s) const;
1345 virtual const double muggHpVBFpbbH(const double sqrt_s) const;
1346 virtual const double muggHpttHptHpbbH(const double sqrt_s) const;
1347 virtual const double muggHpbbH(const double sqrt_s) const;
1348
1349
1350 virtual const double GammaTotal() const;
1351 virtual const double BrHggRatio() const;
1352 virtual const double BrHWWRatio() const;
1353 virtual const double BrHZZRatio() const;
1354 virtual const double BrHZgaRatio() const;
1355 virtual const double BrHgagaRatio() const;
1356 virtual const double BrHmumuRatio() const;
1357 virtual const double BrHtautauRatio() const;
1358 virtual const double BrHccRatio() const;
1359 virtual const double BrHbbRatio() const;
1360 virtual const double muggHgaga(const double sqrt_s) const;
1361 virtual const double muggHpbbH_Hgaga(const double sqrt_s) const;
1362 virtual const double muVBFHgaga(const double sqrt_s) const;
1363 virtual const double muVHgaga(const double sqrt_s) const;
1364 virtual const double muWHgaga(const double sqrt_s) const;
1365 virtual const double muZHgaga(const double sqrt_s) const;
1366 virtual const double muttHgaga(const double sqrt_s) const;
1367 virtual const double mutHgaga(const double sqrt_s) const;
1368 virtual const double muttHptH_Hgaga(const double sqrt_s) const;
1369
1370
1371
1372 virtual const double muggHZZ(const double sqrt_s) const;
1373 virtual const double muggHpbbH_HZZ(const double sqrt_s) const;
1374 virtual const double muVBFHZZ(const double sqrt_s) const;
1375 virtual const double muVHZZ(const double sqrt_s) const;
1376 virtual const double muZHZZ(const double sqrt_s) const;
1377 virtual const double muWHZZ(const double sqrt_s) const;
1378 virtual const double muttHZZ(const double sqrt_s) const;
1379 virtual const double muttHptH_HZZ(const double sqrt_s) const;
1380 virtual const double muggHWW(const double sqrt_s) const;
1381 virtual const double muggHpbbH_HWW(const double sqrt_s) const;
1382 virtual const double muVBFHWW(const double sqrt_s) const;
1383 virtual const double muWHWW(const double sqrt_s) const;
1384 virtual const double muZHWW(const double sqrt_s) const;
1385 virtual const double muVHWW(const double sqrt_s) const;
1386 virtual const double muttHWW(const double sqrt_s) const;
1387 virtual const double muttHptH_HWW(const double sqrt_s) const;
1388 virtual const double muggHtautau(const double sqrt_s) const;
1389 virtual const double muggHpbbH_Htautau(const double sqrt_s) const;
1390 virtual const double muVBFHtautau(const double sqrt_s) const;
1391 virtual const double muWHtautau(const double sqrt_s) const;
1392 virtual const double muZHtautau(const double sqrt_s) const;
1393 virtual const double muVHtautau(const double sqrt_s) const;
1394 virtual const double muttHtautau(const double sqrt_s) const;
1395 virtual const double muttHptH_Htautau(const double sqrt_s) const;
1396 virtual const double muggHbb(const double sqrt_s) const;
1397 virtual const double muggHpVBFpbbH_Hbb(const double sqrt_s) const;
1398 virtual const double muVBFHbb(const double sqrt_s) const;
1399 virtual const double muWHbb(const double sqrt_s) const;
1400 virtual const double muZHbb(const double sqrt_s) const;
1401 virtual const double muVHbb(const double sqrt_s) const;
1402 virtual const double muttHbb(const double sqrt_s) const;
1403 virtual const double muttHptH_Hbb(const double sqrt_s) const;
1404 virtual const double muVHcc(const double sqrt_s) const;
1405 virtual const double muppHmumu(const double sqrt_s) const;
1406 virtual const double muggHmumu(const double sqrt_s) const;
1407 virtual const double muggHpttHptHpbbH_Hmumu(const double sqrt_s) const;
1408 virtual const double muVBFHmumu(const double sqrt_s) const;
1409 virtual const double muVHmumu(const double sqrt_s) const;
1410 virtual const double muttHptH_Hmumu(const double sqrt_s) const;
1411 virtual const double muVBFpVH_Hmumu(const double sqrt_s) const;
1412 virtual const double muggHZga(const double sqrt_s) const;
1413 virtual const double muVBFHZga(const double sqrt_s) const;
1414 virtual const double muppHZga(const double sqrt_s) const;
1415 virtual const double computeGammaTotalRatio() const;
1416
1417
1425 const double F(const double m02, const double m12) const;
1426
1427
1428
1433 const double GTHDMDeltaS() const;
1434
1439 const double GTHDMDeltaT() const;
1440
1441
1446 const double GTHDMDeltaU() const;
1447
1448
1449 // Why was this done??? It doesn't seem to make any sense
1450 /*
1451 * @brief Method overriding the NPbase Mw with the tree-level W mass
1452 */
1453 //virtual const double Mw() const;
1454
1455 //We substitute the tree-level value with the real SM value but the oblique corrections are missing
1456 /*
1457 * @brief Method overriding the NPbase Mw with the SM W mass. We
1458 * did not include the oblique corrections for the moment but it
1459 * should be done for consistency
1460 */
1461 virtual const double Mw() const;
1462
1463protected:
1464
1470 virtual void setParameter(const std::string, const double&);
1471
1477 bool checkRGEorder(const std::string RGEorder) const
1478 {
1479 if (getModelName() == "GeneralTHDMZ2") {
1480 if (RGEorder.compare("LO") == 0
1481 || RGEorder.compare("approxNLO") == 0
1482 || RGEorder.compare("NLO") == 0)
1483 return true;
1484 else
1485 return false;
1486 }
1487 else {
1488 if (RGEorder.compare("LO") == 0)
1489// || RGEorder.compare("approxNLO") == 0)
1490 return true;
1491 else
1492 return false;
1493 }
1494 }
1495
1497
1498private:
1499
1500
1501
1502 GeneralTHDMcache* myGTHDMcache;
1503
1504 //Let's define here all the parameters of the model, including those who are linearly dependent
1505 //We'll also set all the parameters in the setParameter functions in such a way that we can use the formulae written in terms of any parameter
1506 //These parameters are private but used in the inherited classes, think a bit about if this is the best way of including them
1507 double /*logtb, tanb, sinb, cosb,*/mH1sq, mHp2, mH2sq, mH3sq, mH1, mHp1, mH21, mH31, alpha1, cosalpha1, sinalpha1, tanalpha1, alpha2, cosalpha2, sinalpha2,
1508 alpha3, cosalpha3, sinalpha3, mu2, lambda1, lambda2, lambda3, lambda4, Relambda5, Imlambda5, Relambda6, Imlambda6, Relambda7, Imlambda7,//we can trade one of the Im by the Im of lambda7, we include it any way since we've not decided yet which phase to keep
1509 yu1R_GTHDM, yd1R_GTHDM, yl1R_GTHDM,
1510 Nu_11r, Nu_11i, Nu_12r, Nu_12i, Nu_13r, Nu_13i,
1511 Nu_21r, Nu_21i, Nu_22r, Nu_22i, Nu_23r, Nu_23i,
1512 Nu_31r, Nu_31i, Nu_32r, Nu_32i, Nu_33r, Nu_33i,
1513 Nd_11r, Nd_11i, Nd_12r, Nd_12i, Nd_13r, Nd_13i,
1514 Nd_21r, Nd_21i, Nd_22r, Nd_22i, Nd_23r, Nd_23i,
1515 Nd_31r, Nd_31i, Nd_32r, Nd_32i, Nd_33r, Nd_33i,
1516 Nl_11r, Nl_11i, Nl_12r, Nl_12i, Nl_13r, Nl_13i,
1517 Nl_21r, Nl_21i, Nl_22r, Nl_22i, Nl_23r, Nl_23i,
1518 Nl_31r, Nl_31i, Nl_32r, Nl_32i, Nl_33r, Nl_33i,
1519 Q_GTHDM, RpepsGTHDM, NLOuniscaleGTHDM;
1520 bool flag_ATHDM, flag_CPconservation, flag_use_sq_masses, flag_sigma, flag_SM_Higgs;
1521 std::string flag_RGEorder;
1522};
1523
1528#endif /* GENERALTHDM_H */
std::map< std::string, double > DPars
Definition: Minimal.cpp:11
An observable class for the THDM contribution to the electroweak Peskin-Takeuchi pseudo-observable .
std::string getModelName() const
A method to fetch the name of the model.
Definition: Model.h:59
The auxiliary base model class for other model classes.
Definition: NPbase.h:66
virtual const double muggHbb(const double sqrt_s) const
Definition: NPbase.h:1816
virtual const double muggHZga(const double sqrt_s) const
Definition: NPbase.h:1603
virtual const double muVH(const double sqrt_s) const
The ratio between the WH+ZH associated production cross-section in the current model and in the Stan...
Definition: NPbase.h:1353
virtual const double muttHptH_HWW(const double sqrt_s) const
Definition: NPbase.h:1720
virtual const double muttH(const double sqrt_s) const
The ratio between the t-tbar-Higgs associated production cross-section in the current model and in t...
Definition: NPbase.h:1388
virtual const double muVBF(const double sqrt_s) const
The ratio between the vector-boson fusion Higgs production cross-section in the current model and in...
Definition: NPbase.h:1127
virtual const double BrHZgaRatio() const
The ratio of the Br in the current model and in the Standard Model.
Definition: NPbase.h:2188
virtual bool Update(const std::map< std::string, double > &DPars)
The update method for NPbase.
Definition: NPbase.cpp:36
virtual const double muggHpbbH_Htautau(const double sqrt_s) const
Definition: NPbase.h:1788
virtual const double muVBFHmumu(const double sqrt_s) const
Definition: NPbase.h:1752
virtual const double muggHpttHptHpbbH_Hmumu(const double sqrt_s) const
Definition: NPbase.h:1776
virtual const double muVBFHZZ(const double sqrt_s) const
Definition: NPbase.h:1643
virtual const double muttHtautau(const double sqrt_s) const
Definition: NPbase.h:1808
virtual const double muVBFHWW(const double sqrt_s) const
Definition: NPbase.h:1700
virtual const double muWHWW(const double sqrt_s) const
Definition: NPbase.h:1708
virtual const double muVBFHZga(const double sqrt_s) const
Definition: NPbase.h:1607
virtual const double BrHbbRatio() const
The ratio of the Br in the current model and in the Standard Model.
Definition: NPbase.h:2281
virtual const double muggHgaga(const double sqrt_s) const
Definition: NPbase.h:1545
virtual const double muVHcc(const double sqrt_s) const
Definition: NPbase.h:1848
virtual const double muttHptH_Hgaga(const double sqrt_s) const
Definition: NPbase.h:1563
virtual const double muppHmumu(const double sqrt_s) const
Definition: NPbase.h:1852
virtual const double Mw() const
The mass of the boson, .
Definition: NPbase.cpp:71
virtual const double muttHWW(const double sqrt_s) const
Definition: NPbase.h:1716
virtual const double muVHZZ(const double sqrt_s) const
Definition: NPbase.h:1655
virtual const double muggHpbbH_HZZ(const double sqrt_s) const
Definition: NPbase.h:1639
virtual const double muZH(const double sqrt_s) const
The ratio between the Z-Higgs associated production cross-section in the current model and in the St...
Definition: NPbase.h:1251
virtual const double BrHZZRatio() const
The ratio of the Br in the current model and in the Standard Model.
Definition: NPbase.h:2168
virtual const double muVBFpVH_Hmumu(const double sqrt_s) const
Definition: NPbase.h:1780
virtual const double muttHptH_HZZ(const double sqrt_s) const
Definition: NPbase.h:1663
virtual const double mueeZH(const double sqrt_s, const double Pol_em, const double Pol_ep) const
The ratio between the associated production cross-section in the current model and in the Standard ...
Definition: NPbase.h:1289
virtual const double muggHmumu(const double sqrt_s) const
Definition: NPbase.h:1748
virtual const double muttHptH_Htautau(const double sqrt_s) const
Definition: NPbase.h:1812
virtual const double muZHbb(const double sqrt_s) const
Definition: NPbase.h:1828
virtual const double muZHtautau(const double sqrt_s) const
Definition: NPbase.h:1796
virtual const double mutHgaga(const double sqrt_s) const
Definition: NPbase.h:1551
virtual const double muZHgaga(const double sqrt_s) const
Definition: NPbase.h:1587
virtual const double muWHgaga(const double sqrt_s) const
Definition: NPbase.h:1591
virtual const double BrHggRatio() const
The ratio of the Br in the current model and in the Standard Model.
Definition: NPbase.h:2148
virtual const double BrHgagaRatio() const
The ratio of the Br in the current model and in the Standard Model.
Definition: NPbase.h:2228
virtual const double muVBFHbb(const double sqrt_s) const
Definition: NPbase.h:1824
virtual const double computeGammaTotalRatio() const
The ratio of the in the current model and in the Standard Model.
Definition: NPbase.h:2136
virtual const double muZHWW(const double sqrt_s) const
Definition: NPbase.h:1704
virtual const double muVBFpVH(const double sqrt_s) const
The ratio between the sum of VBF and WH+ZH associated production cross-section in the current model ...
Definition: NPbase.h:1377
virtual const double muggHpbbH_Hgaga(const double sqrt_s) const
Definition: NPbase.h:1557
virtual const double muWHbb(const double sqrt_s) const
Definition: NPbase.h:1832
virtual const double muVHWW(const double sqrt_s) const
Definition: NPbase.h:1712
virtual const double muWHtautau(const double sqrt_s) const
Definition: NPbase.h:1800
virtual const double muggHpVBFpbbH_Hbb(const double sqrt_s) const
Definition: NPbase.h:1820
virtual const double muVHbb(const double sqrt_s) const
Definition: NPbase.h:1836
virtual const double muttHgaga(const double sqrt_s) const
Definition: NPbase.h:1599
virtual const double muZHZZ(const double sqrt_s) const
Definition: NPbase.h:1647
virtual const double muttHZZ(const double sqrt_s) const
Definition: NPbase.h:1659
virtual bool setFlag(const std::string name, const bool value)
A method to set a flag of NPbase.
Definition: NPbase.h:97
virtual const double muWH(const double sqrt_s) const
The ratio between the W-Higgs associated production cross-section in the current model and in the St...
Definition: NPbase.h:1229
virtual const double muWHZZ(const double sqrt_s) const
Definition: NPbase.h:1651
virtual const double muggHtautau(const double sqrt_s) const
Definition: NPbase.h:1784
virtual const double muggHZZ(const double sqrt_s) const
Definition: NPbase.h:1635
virtual const double BrHccRatio() const
The ratio of the Br in the current model and in the Standard Model.
Definition: NPbase.h:2261
virtual const double muVBFHtautau(const double sqrt_s) const
Definition: NPbase.h:1792
virtual const double mueeWBF(const double sqrt_s, const double Pol_em, const double Pol_ep) const
The ratio between the production cross-section in the current model and in the Standard Model.
Definition: NPbase.h:1152
virtual const double muVHtautau(const double sqrt_s) const
Definition: NPbase.h:1804
virtual const double BrHmumuRatio() const
The ratio of the Br in the current model and in the Standard Model.
Definition: NPbase.h:2241
virtual const double muVBFHgaga(const double sqrt_s) const
Definition: NPbase.h:1583
virtual const double BrHWWRatio() const
The ratio of the Br in the current model and in the Standard Model.
Definition: NPbase.h:2158
virtual const double mubbH(const double sqrt_s) const
The ratio between the bbH production cross-section in the current model and in the Standard Model.
Definition: NPbase.h:1410
virtual const double muVHmumu(const double sqrt_s) const
Definition: NPbase.h:1764
virtual const double muppHZga(const double sqrt_s) const
Definition: NPbase.h:1856
virtual const double muggH(const double sqrt_s) const
The ratio between the gluon-gluon fusion Higgs production cross-section in the current model and in ...
Definition: NPbase.h:1105
virtual const double muggHWW(const double sqrt_s) const
Definition: NPbase.h:1692
virtual const double muggHpbbH_HWW(const double sqrt_s) const
Definition: NPbase.h:1696
virtual const double muttHbb(const double sqrt_s) const
Definition: NPbase.h:1840
virtual const double mutH(const double sqrt_s) const
The ratio between the t-Higgs associated production cross-section in the current model and in the St...
Definition: NPbase.h:1399
virtual const double muttHptH_Hmumu(const double sqrt_s) const
Definition: NPbase.h:1772
virtual const double muVHgaga(const double sqrt_s) const
Definition: NPbase.h:1595
virtual const double muttHptH_Hbb(const double sqrt_s) const
Definition: NPbase.h:1844
virtual const double BrHtautauRatio() const
The ratio of the Br in the current model and in the Standard Model.
Definition: NPbase.h:2251
const double getMuw() const
A get method to retrieve the matching scale around the weak scale.
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 setFlagStr(const std::string name, const std::string value)
A method to set a flag of StandardModel.
virtual StandardModelMatching & getMatching() const
A get method to access the member reference of type StandardModelMatching.
virtual bool PostUpdate()
The post-update method for StandardModel.
double muw
A matching scale around the weak scale in GeV.
virtual void setParameter(const std::string name, const double &value)
A method to set the value of a parameter of StandardModel.
virtual bool InitializeModel()
A method to initialize the model.
parameter of the Higgs potential
An observable class for the quartic Higgs potential coupling .
An observable class for the quartic Higgs potential coupling .
An observable class for the quartic Higgs potential coupling .