a Code for the Combination of Indirect and Direct Constraints on High Energy Physics Models Logo
NPZbbbarLinearized.cpp
Go to the documentation of this file.
1/*
2 * Copyright (C) 2013 HEPfit Collaboration
3 *
4 *
5 * For the licensing terms see doc/COPYING.
6 */
7
9#include <stdexcept>
10
11
12const std::string NPZbbbarLinearized::ZbbbarVAVars[NZbbbarVars]
13 = {"deltaGVb", "deltaGAb"};
14
15const std::string NPZbbbarLinearized::ZbbbarLRVars[NZbbbarVars]
16 = {"deltaGLb", "deltaGRb"};
17
18NPZbbbarLinearized::NPZbbbarLinearized(const bool FlagNPZbbbarLR_in)
19: NPbase(), FlagNPZbbbarLR(FlagNPZbbbarLR_in)
20{
21 ModelParamMap.insert(std::make_pair("deltaGVb", std::cref(myDeltaGVb)));
22 ModelParamMap.insert(std::make_pair("deltaGAb", std::cref(myDeltaGAb)));
23 ModelParamMap.insert(std::make_pair("deltaGLb", std::cref(myDeltaGLb)));
24 ModelParamMap.insert(std::make_pair("deltaGRb", std::cref(myDeltaGRb)));
25}
26
28{
29 if (!NPbase::PostUpdate()) return (false);
30
31 if (FlagNPZbbbarLR) {
34 } else {
37 }
38
39 return (true);
40}
41
42void NPZbbbarLinearized::setParameter(const std::string name, const double& value)
43{
44 if (FlagNPZbbbarLR) {
45 if (name.compare("deltaGLb") == 0)
46 myDeltaGLb = value;
47 else if (name.compare("deltaGRb") == 0)
48 myDeltaGRb = value;
49 else
51 } else {
52 if (name.compare("deltaGVb") == 0)
53 myDeltaGVb = value;
54 else if (name.compare("deltaGAb") == 0)
55 myDeltaGAb = value;
56 else
58 }
59}
60
61bool NPZbbbarLinearized::CheckParameters(const std::map<std::string, double>& DPars)
62{
63 for (int i = 0; i < NZbbbarVars; i++) {
64 if (FlagNPZbbbarLR) {
65 if (DPars.find(ZbbbarLRVars[i]) == DPars.end()) {
66 std::cout << "ERROR: Missing mandatory NPZbbbarLinearizedLR parameter "
67 << ZbbbarLRVars[i] << std::endl;
70 }
71 } else {
72 if (DPars.find(ZbbbarVAVars[i]) == DPars.end()) {
73 std::cout << "ERROR: Missing mandatory NPZbbbarLinearized parameter "
74 << ZbbbarVAVars[i] << std::endl;
77 }
78 }
79 }
81}
82
84
85const double NPZbbbarLinearized::deltaGV_f(const Particle f) const
86{
87 if (f.is("BOTTOM"))
88 return myDeltaGVb;
89 else
90 return 0.0;
91}
92
93const double NPZbbbarLinearized::deltaGA_f(const Particle f) const
94{
95 if (f.is("BOTTOM"))
96 return myDeltaGAb;
97 else
98 return 0.0;
99}
100
std::map< std::string, double > DPars
Definition: Minimal.cpp:11
void addMissingModelParameter(const std::string &missingParameterName)
Definition: Model.h:250
std::map< std::string, std::reference_wrapper< const double > > ModelParamMap
Definition: Model.h:280
std::string name
The name of the model.
Definition: Model.h:285
void raiseMissingModelParameterCount()
Definition: Model.h:260
static const std::string ZbbbarLRVars[NZbbbarVars]
A string array containing the labels of the model parameters in NPZbbbarLinearized,...
virtual const double deltaGA_f(const Particle f) const
New physics contribution to the neutral-current axial-vector coupling .
double myDeltaGVb
New physics contribution to .
static const int NZbbbarVars
The number of the model parameters in NPZbbbarLinearized.
double myDeltaGRb
New physics contribution to .
virtual const double deltaGV_f(const Particle f) const
New physics contribution to the neutral-current vector coupling .
double myDeltaGLb
New physics contribution to .
virtual void setParameter(const std::string name, const double &value)
A method to set the value of a parameter of the model.
virtual bool CheckParameters(const std::map< std::string, double > &DPars)
A method to check if all the mandatory parameters for the model have been provided in model initializ...
static const std::string ZbbbarVAVars[NZbbbarVars]
A string array containing the labels of the model parameters in NPZbbbarLinearized,...
const bool FlagNPZbbbarLR
An internal boolean flag. This flag is initialized in the constructor.
NPZbbbarLinearized(const bool FlagNPZbbbarLR_in=false)
Constructor.
double myDeltaGAb
New physics contribution to .
virtual bool PostUpdate()
The post-update method for NPZbbbarLinearized.
The auxiliary base model class for other model classes.
Definition: NPbase.h:66
A class for particles.
Definition: Particle.h:26
bool is(std::string name_i) const
Definition: Particle.cpp:23
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 PostUpdate()
The post-update method for StandardModel.
virtual void setParameter(const std::string name, const double &value)
A method to set the value of a parameter of StandardModel.