a Code for the Combination of Indirect and Direct Constraints on High Energy Physics Models Logo
LoopMediators.h
Go to the documentation of this file.
1 /*
2  * Copyright (C) 2018 HEPfit Collaboration
3  *
4  *
5  * For the licensing terms see doc/COPYING.
6  */
7 
8 #ifndef LOOPMEDIATORS_H
9 #define LOOPMEDIATORS_H
10 
11 #include "StandardModel.h"
12 #include "gslpp.h"
13 #include "LoopMediatorsMatching.h"
14 #include "ThObservable.h"
15 
21 public:
22 
23  static const int NLoopMediatorsvars = 10;
24 
25  static const std::string LoopMediatorsvars[NLoopMediatorsvars];
26 
30  LoopMediators();
31 
36 
37  virtual bool InitializeModel();
38 
39  virtual bool Init(const std::map<std::string, double>& DPars);
40 
41  virtual bool PreUpdate();
42 
43  virtual bool Update(const std::map<std::string, double>& DPars);
44 
45  virtual bool PostUpdate();
46 
47  virtual bool CheckParameters(const std::map<std::string, double>& DPars);
48 
49  virtual bool setFlag(const std::string name, const bool value);
50 
51  double F9(double x, double y);
52  double F7(double x);
53  double F7t(double x);
54  double G7(double x);
55  double G7t(double x);
56 
58  {
59  return LoopMediatorsM.getObj();
60  }
61 
66  gslpp::complex getC1() const {
67  return C1;
68  }
69 
75  return C2;
76  }
77 
82  gslpp::complex getC3() const {
83  return C3;
84  }
85 
91  return C4;
92  }
93 
98  gslpp::complex getC5() const {
99  return C5;
100  }
101 
107  return C1p;
108  }
109 
114  gslpp::complex getC2p() const {
115  return C2p;
116  }
117 
123  return C3p;
124  }
125 
130  gslpp::complex getC7() const {
131  return C7;
132  }
133 
139  return C8;
140  }
141 
146  gslpp::complex getC9() const {
147  return C9;
148  }
149 
155  return C10;
156  }
157 
162  gslpp::complex getCS() const {
163  return CS;
164  }
165 
171  return CP;
172  }
173 
178  gslpp::complex getC7p() const {
179  return C7p;
180  }
181 
187  return C8p;
188  }
189 
194  gslpp::complex getC9p() const {
195  return C9p;
196  }
197 
203  return C10p;
204  }
205 
210  gslpp::complex getCSp() const {
211  return CSp;
212  }
213 
219  return CPp;
220  }
221 
226  double getDeltaamu() const {
227  return Deltaamu;
228  }
229 
234  double getWCscale() const {
235  return WCscale;
236  }
237 
238 protected:
239 
240  virtual void setParameter(const std::string, const double&);
241  mutable Matching<LoopMediatorsMatching,LoopMediators> LoopMediatorsM;
242 
243 private:
244 
245  gslpp::complex C1;
246  gslpp::complex C2;
247  gslpp::complex C3;
248  gslpp::complex C4;
249  gslpp::complex C5;
250 
251  gslpp::complex C1p;
252  gslpp::complex C2p;
253  gslpp::complex C3p;
254 
255  gslpp::complex C7;
256  gslpp::complex C8;
257  gslpp::complex C9;
258  gslpp::complex C10;
259  gslpp::complex CS;
260  gslpp::complex CP;
261 
262  gslpp::complex C7p;
263  gslpp::complex C8p;
264  gslpp::complex C9p;
265  gslpp::complex C10p;
266  gslpp::complex CSp;
267  gslpp::complex CPp;
268 
269  double Deltaamu;
270 
271  double GammaL;
272  double GammaR;
273  double GammamuL;
274  double GammamuR;
275  double lambdaE;
276  double mphi;
277  double yD;
278  double yE;
279  double charge;
280 
281  double WCscale;
282 
283 
284 };
285 
286 
287 
288 class Deltaamu : public ThObservable {
289 public:
293  Deltaamu(const StandardModel& SM_i);
294 
295  ~Deltaamu();
296 
301  double computeThValue();
303 };
304 
305 #endif /* LOOPMEDIATORS_H */
306 
LoopMediators::getC1p
gslpp::complex getC1p() const
Definition: LoopMediators.h:106
StandardModel::setParameter
virtual void setParameter(const std::string name, const double &value)
A method to set the value of a parameter of StandardModel.
Definition: StandardModel.cpp:257
LoopMediators::F7
double F7(double x)
Definition: LoopMediators.cpp:196
LoopMediators::Init
virtual bool Init(const std::map< std::string, double > &DPars)
Definition: LoopMediators.cpp:44
LoopMediators::getCP
gslpp::complex getCP() const
Definition: LoopMediators.h:170
LoopMediators::PreUpdate
virtual bool PreUpdate()
Definition: LoopMediators.cpp:49
LoopMediators::setFlag
virtual bool setFlag(const std::string name, const bool value)
Definition: LoopMediators.cpp:167
Deltaamu::Deltaamu
Deltaamu(const StandardModel &SM_i)
Constructor.
Definition: LoopMediators.cpp:241
ThObservable.h
Deltaamu::myLM
const LoopMediators * myLM
Definition: LoopMediators.h:302
StandardModel.h
gslpp.h
LoopMediators::getC10
gslpp::complex getC10() const
Definition: LoopMediators.h:154
LoopMediators::NLoopMediatorsvars
static const int NLoopMediatorsvars
Definition: LoopMediators.h:23
gslpp::complex
A class for defining operations on and functions of complex numbers.
Definition: gslpp_complex.h:35
StandardModel
A model class for the Standard Model.
Definition: StandardModel.h:477
LoopMediators::getCPp
gslpp::complex getCPp() const
Definition: LoopMediators.h:218
LoopMediators::G7t
double G7t(double x)
Definition: LoopMediators.cpp:224
LoopMediatorsMatching
Definition: LoopMediatorsMatching.h:24
LoopMediators::getC8
gslpp::complex getC8() const
Definition: LoopMediators.h:138
LoopMediators::CheckParameters
virtual bool CheckParameters(const std::map< std::string, double > &DPars)
Definition: LoopMediators.cpp:152
LoopMediators::G7
double G7(double x)
Definition: LoopMediators.cpp:214
Deltaamu::~Deltaamu
~Deltaamu()
Definition: LoopMediators.cpp:246
LoopMediators::F9
double F9(double x, double y)
Definition: LoopMediators.cpp:179
LoopMediators
Model for NP contributions to flavour.
Definition: LoopMediators.h:20
LoopMediators::getC3p
gslpp::complex getC3p() const
Definition: LoopMediators.h:122
LoopMediators::getC10p
gslpp::complex getC10p() const
Definition: LoopMediators.h:202
LoopMediators::InitializeModel
virtual bool InitializeModel()
Definition: LoopMediators.cpp:38
LoopMediators::F7t
double F7t(double x)
Definition: LoopMediators.cpp:206
LoopMediators::getMatching
virtual LoopMediatorsMatching & getMatching() const
Definition: LoopMediators.h:57
LoopMediators::getC8p
gslpp::complex getC8p() const
Definition: LoopMediators.h:186
Matching
Definition: Matching.h:11
ThObservable
A class for a model prediction of an observable.
Definition: ThObservable.h:25
Deltaamu::computeThValue
double computeThValue()
Two positivity conditions of the Higgs potential.
Definition: LoopMediators.cpp:250
LoopMediators::getC4
gslpp::complex getC4() const
Definition: LoopMediators.h:90
LoopMediators::LoopMediatorsvars
static const std::string LoopMediatorsvars[NLoopMediatorsvars]
Definition: LoopMediators.h:25
Model::name
std::string name
The name of the model.
Definition: Model.h:275
LoopMediators::Update
virtual bool Update(const std::map< std::string, double > &DPars)
Definition: LoopMediators.cpp:56
LoopMediators::LoopMediators
LoopMediators()
FlavourWilsonCoefficient constructor.
Definition: LoopMediators.cpp:12
LoopMediatorsMatching.h
Deltaamu
Definition: LoopMediators.h:288
LoopMediators::getC2
gslpp::complex getC2() const
Definition: LoopMediators.h:74
LoopMediators::PostUpdate
virtual bool PostUpdate()
Definition: LoopMediators.cpp:73
LoopMediators::~LoopMediators
~LoopMediators()
FlavourWilsonCoefficient destructor.
Definition: LoopMediators.cpp:29