11 const std::string
THDM::THDMvars[NTHDMvars] = {
"logtb",
"bma",
"mHh2",
"mHh2mmA2",
"mHh2mmHp2",
"m12_2",
"bsgamma_theoryerror"};
15 ModelParamMap.insert(std::pair<std::string, boost::reference_wrapper<const double> >(
"logtb", boost::cref(
logtb)));
16 ModelParamMap.insert(std::pair<std::string, boost::reference_wrapper<const double> >(
"bma", boost::cref(
bma)));
17 ModelParamMap.insert(std::pair<std::string, boost::reference_wrapper<const double> >(
"mHh2", boost::cref(
mHh2)));
18 ModelParamMap.insert(std::pair<std::string, boost::reference_wrapper<const double> >(
"mHh2mmA2", boost::cref(
mHh2mmA2)));
19 ModelParamMap.insert(std::pair<std::string, boost::reference_wrapper<const double> >(
"mHh2mmHp2", boost::cref(
mHh2mmHp2)));
20 ModelParamMap.insert(std::pair<std::string, boost::reference_wrapper<const double> >(
"m12_2", boost::cref(
m12_2)));
41 bool THDM::Init(
const std::map<std::string, double>& DPars) {
58 for (std::map<std::string, double>::const_iterator it = DPars.begin(); it != DPars.end(); it++)
82 if(name.compare(
"logtb") == 0) {
90 throw std::runtime_error(
"error in THDM::SetParameter, tanb < 0!");
93 else if(name.compare(
"bma") == 0) {
97 else if(name.compare(
"mHh2") == 0)
99 else if(name.compare(
"mHh2mmA2") == 0)
101 else if(name.compare(
"mHh2mmHp2") == 0)
103 else if(name.compare(
"m12_2") == 0)
105 else if(name.compare(
"bsgamma_theoryerror") == 0)
113 if (DPars.find(
THDMvars[i]) == DPars.end()) {
114 std::cout <<
"missing mandatory THDM parameter " <<
THDMvars[i] << std::endl;
127 if(name.compare(
"modelTypeflag") == 0)
136 throw std::runtime_error(
"THDM::setFlagStr(): Invalid flag "
137 + name +
"=" + value);
double bsgamma_theoryerror
virtual bool PostUpdate()
virtual bool PostUpdate()
The post-update method for StandardModel.
bool checkmodelType(const std::string modeltype) const
A method to check if the model type name in string form is valid.
virtual bool setFlagStr(const std::string name, const std::string value)
A method to set a flag of StandardModel.
complex pow(const complex &z1, const complex &z2)
virtual bool setFlagStr(const std::string name, const std::string value)
THDMMatching * myTHDMMatching
bool UpdateError
A boolean set to false if update is successful.
virtual bool InitializeModel()
A method to initialize the model.
A model class for the Standard Model.
void setModelInitialized(bool ModelInitialized)
A set method to fix the failure or success of the initialization of the model.
bool IsModelInitialized() const
A method to check if the model is initialized.
virtual bool CheckParameters(const std::map< std::string, double > &DPars)
static const std::string THDMvars[NTHDMvars]
static const int NTHDMvars
virtual bool Init(const std::map< std::string, double > &DPars)
A method to initialize the model parameters.
virtual void setParameter(const std::string name, const double &value)
A method to set the value of a parameter of StandardModel.
virtual bool PreUpdate()
The pre-update method for StandardModel.
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 InitializeModel()
virtual bool Update(const std::map< std::string, double > &DPars)
A class for the Wilson coefficients in the THDM.
virtual void setParameter(const std::string, const double &)
complex sin(const complex &z)
virtual bool Init(const std::map< std::string, double > &DPars)
std::map< std::string, boost::reference_wrapper< const double > > ModelParamMap
complex sqrt(const complex &z)