a Code for the Combination of Indirect and Direct Constraints on High Energy Physics Models Logo
GeneralTHDMZ2.h
Go to the documentation of this file.
1/*
2 * Copyright (C) 2025 HEPfit Collaboration
3 *
4 *
5 * For the licensing terms see doc/COPYING.
6 */
7
8#ifndef GENERALTHDMZ2_H
9#define GENERALTHDMZ2_H
10
11#include "GeneralTHDM.h"
12
13
14class GeneralTHDMZ2: public GeneralTHDM {
15public:
16
17 static const int NGeneralTHDMZ2vars = 3;
18
19 static const std::string GeneralTHDMZ2vars[NGeneralTHDMZ2vars];
20
25
30
37 virtual bool InitializeModel();
38
43 virtual bool PreUpdate();
44
51 virtual bool Update(const std::map<std::string, double>& DPars);
52
59 virtual bool PostUpdate();
60
68 virtual bool CheckParameters(const std::map<std::string, double>& DPars);
69
76 virtual bool setFlagStr(const std::string name, const std::string value);
77
84 virtual bool setFlag(const std::string name, const bool value);
85
91 double getbeta_Z2() const {
92 return (beta);
93 }
94
100 double gettanb_Z2() const {
101 return (tanb);
102 }
103
109 double getsinb_Z2() const {
110 return (sinb);
111 }
112
118 double getcosb_Z2() const {
119 return (cosb);
120 }
121
127 double getbma_Z2() const {
128 return (bma);
129 }
130
136 double getm12sq_Z2() const {
137 return (m12_2);
138 }
139
145 double getlambda1_Z2() const {
146 return ((mH_2 + mh_2 + (mH_2 - mh_2)*cos2bmbma -
147 2.*M2aux*sinb*sinb)/2./cosb/cosb/vev/vev);
148 }
149
155 double getlambda2_Z2() const {
156 return ((mh_2 + mH_2 + (mh_2 - mH_2)*cos2bmbma -
157 2.*M2aux*cosb*cosb)/2./sinb/sinb/vev/vev);
158 }
159
165 double getlambda3_Z2() const {
166 return ((2.*mHp_2 - M2aux + (mH_2 - mh_2)*sin2bmbma/sin2b)/vev/vev);
167 }
168
174 double getlambda4_Z2() const {
175 return ((M2aux - 2.*mHp_2 + mA_2)/vev/vev);
176 }
177
183 double getlambda5_Z2() const {
184 return ((M2aux - mA_2)/vev/vev);
185 }
186
191 std::string getZ2ModelType() const {
192 return flag_model;
193 }
194
199 bool getWFRflag_Z2() const {
200 return flag_wfr;
201 }
202
203protected:
204
210 virtual void setParameter(const std::string, const double&);
211
217 bool CheckModelType(const std::string modeltype) const;
218
219
220private:
221
222 double tanb, bma, m12_2;
225 std::string flag_model;
227};
228
229#endif /* GENERALTHDMZ2_H */
std::map< std::string, double > DPars
Definition: Minimal.cpp:11
double getlambda2_Z2() const
A getter for the parameter of the scalar potential .
GeneralTHDMZ2()
GeneralTHDMZ2 constructor.
virtual bool InitializeModel()
The post-update method for GeneralTHDMZ2.
double getlambda4_Z2() const
A getter for the parameter of the scalar potential .
virtual bool setFlag(const std::string name, const bool value)
A method to set a flag of GeneralTHDMZ2.
virtual bool Update(const std::map< std::string, double > &DPars)
The update method for GeneralTHDMZ2.
double getsinb_Z2() const
A getter for the sine of .
double getcosb_Z2() const
A getter for the cosine of .
double gettanb_Z2() const
A getter for the tangent of .
~GeneralTHDMZ2()
GeneralTHDMZ2 destructor.
virtual bool PostUpdate()
The post-update method for GeneralTHDMZ2.
double getlambda5_Z2() const
A getter for the parameter of the scalar potential .
virtual bool setFlagStr(const std::string name, const std::string value)
A method to set a string flag of GeneralTHDMZ2.
double m12_2
parameters exclusively in Z2 models: tan(beta), beta-alpha, m_12^2
bool CheckModelType(const std::string modeltype) const
A method to check if the model type name in string form is valid.
bool getWFRflag_Z2() const
A getter for the chosen option to include WFR in NLO unitarity.
double getlambda3_Z2() const
A getter for the parameter of the scalar potential .
double getbeta_Z2() const
A getter for .
Definition: GeneralTHDMZ2.h:91
static const int NGeneralTHDMZ2vars
Definition: GeneralTHDMZ2.h:17
virtual bool CheckParameters(const std::map< std::string, double > &DPars)
A method to check if all the mandatory parameters for GeneralTHDMZ2 have been provided in model initi...
double getlambda1_Z2() const
A getter for the parameter of the scalar potential .
std::string getZ2ModelType() const
A getter for the chosen Z2-symmetric model type.
virtual void setParameter(const std::string, const double &)
A method to set the value of a parameter of GeneralTHDMZ2.
double getbma_Z2() const
A getter for the difference between and .
double getm12sq_Z2() const
A getter for the parameter of the scalar potential .
static const std::string GeneralTHDMZ2vars[NGeneralTHDMZ2vars]
Definition: GeneralTHDMZ2.h:19
std::string flag_model
virtual bool PreUpdate()
The pre-update method for GeneralTHDMZ2.