a Code for the Combination of Indirect and Direct Constraints on High Energy Physics Models Logo
FlavourWilsonCoefficient_DF2_Observables.h
Go to the documentation of this file.
1/*
2 * Copyright (C) 2019 HEPfit Collaboration
3 *
4 *
5 * For the licensing terms see doc/COPYING.
6 */
7
8#ifndef FLAVOURWILSONCOEFFICIENT_DF2_OBSERVABLES_H
9#define FLAVOURWILSONCOEFFICIENT_DF2_OBSERVABLES_H
10
11#include <ThObservable.h>
12
13
15
26public:
27 FlavourWilsonCoefficient_DF2_CK(const StandardModel& SM_i, const int ind, const int absarg)
28 : ThObservable(SM_i), index(ind), absa(absarg), myFlavourWilsonCoefficient_DF2(static_cast<const FlavourWilsonCoefficient_DF2*> (&SM_i))
29 {
31 throw std::runtime_error("\nERROR: The Delta F=2 Wilson Coefficients are only defined in a FlavourWilsonCoefficient_DF2 model. Please check your observables list.\n");
32 };
33
35 {
36 if (absa == 0)
37 return ((myFlavourWilsonCoefficient_DF2->getC_s()(index)).abs());
38 else if (absa == 1)
39 return ((myFlavourWilsonCoefficient_DF2->getC_s()(index)).arg()/M_PI*180.);
40 else
41 throw std::runtime_error("\nERROR: the type of observable for FlavourWilsonCoefficient_DF2_CK must be either 0 (abs) or 1 (arg)\n");
42 };
43
44
45private:
46 const int index, absa;
48};
49
51public:
52 FlavourWilsonCoefficient_DF2_CD(const StandardModel& SM_i, const int ind, const int absarg)
53 : ThObservable(SM_i), index(ind), absa(absarg), myFlavourWilsonCoefficient_DF2(static_cast<const FlavourWilsonCoefficient_DF2*> (&SM_i))
54 {
56 throw std::runtime_error("\nERROR: The Delta F=2 Wilson Coefficients are only defined in a FlavourWilsonCoefficient_DF2 model. Please check your observables list.\n");
57 };
58
60 {
61 if (absa == 0)
62 return ((myFlavourWilsonCoefficient_DF2->getC_c()(index)).abs());
63 else if (absa == 1)
64 return ((myFlavourWilsonCoefficient_DF2->getC_c()(index)).arg()/M_PI*180.);
65 else
66 throw std::runtime_error("\nERROR: the type of observable for FlavourWilsonCoefficient_DF2_CD must be either 0 (abs) or 1 (arg)\n");
67 };
68
69
70private:
71 const int index, absa;
73};
74
76public:
77 FlavourWilsonCoefficient_DF2_CBd(const StandardModel& SM_i, const int ind, const int absarg)
78 : ThObservable(SM_i), index(ind), absa(absarg), myFlavourWilsonCoefficient_DF2(static_cast<const FlavourWilsonCoefficient_DF2*> (&SM_i))
79 {
81 throw std::runtime_error("\nERROR: The Delta F=2 Wilson Coefficients are only defined in a FlavourWilsonCoefficient_DF2 model. Please check your observables list.\n");
82 };
83
85 {
86 if (absa == 0)
87 return ((myFlavourWilsonCoefficient_DF2->getC_bd()(index)).abs());
88 else if (absa == 1)
89 return ((myFlavourWilsonCoefficient_DF2->getC_bd()(index)).arg()/M_PI*180.);
90 else
91 throw std::runtime_error("\nERROR: the type of observable for FlavourWilsonCoefficient_DF2_CBd must be either 0 (abs) or 1 (arg)\n");
92 };
93
94
95private:
96 const int index, absa;
98};
99
101public:
102 FlavourWilsonCoefficient_DF2_CBs(const StandardModel& SM_i, const int ind, const int absarg)
103 : ThObservable(SM_i), index(ind), absa(absarg), myFlavourWilsonCoefficient_DF2(static_cast<const FlavourWilsonCoefficient_DF2*> (&SM_i))
104 {
106 throw std::runtime_error("\nERROR: The Delta F=2 Wilson Coefficients are only defined in a FlavourWilsonCoefficient_DF2 model. Please check your observables list.\n");
107 };
108
110 {
111 if (absa == 0)
112 return ((myFlavourWilsonCoefficient_DF2->getC_bs()(index)).abs());
113 else if (absa == 1)
114 return ((myFlavourWilsonCoefficient_DF2->getC_bs()(index)).arg()/M_PI*180.);
115 else
116 throw std::runtime_error("\nERROR: the type of observable for FlavourWilsonCoefficient_DF2_CBs must be either 0 (abs) or 1 (arg)\n");
117 };
118
119
120private:
121 const int index, absa;
123};
124
125
126#endif /* FLAVOURWILSONCOEFFICIENT_DF2_OBSERVABLES_H */
127
const FlavourWilsonCoefficient_DF2 * myFlavourWilsonCoefficient_DF2
FlavourWilsonCoefficient_DF2_CBd(const StandardModel &SM_i, const int ind, const int absarg)
FlavourWilsonCoefficient_DF2_CBs(const StandardModel &SM_i, const int ind, const int absarg)
const FlavourWilsonCoefficient_DF2 * myFlavourWilsonCoefficient_DF2
const FlavourWilsonCoefficient_DF2 * myFlavourWilsonCoefficient_DF2
FlavourWilsonCoefficient_DF2_CD(const StandardModel &SM_i, const int ind, const int absarg)
A class for the absolute value and phase of NP Wilson Coefficients.
FlavourWilsonCoefficient_DF2_CK(const StandardModel &SM_i, const int ind, const int absarg)
const FlavourWilsonCoefficient_DF2 * myFlavourWilsonCoefficient_DF2
Model for NP contributions to using modification to the Wilson coefficients.
gslpp::vector< gslpp::complex > getC_s() const
gslpp::vector< gslpp::complex > getC_c() const
gslpp::vector< gslpp::complex > getC_bs() const
gslpp::vector< gslpp::complex > getC_bd() const
bool isModelFWC_DF2() const
Definition: Model.h:190
A model class for the Standard Model.
A class for a model prediction of an observable.
Definition: ThObservable.h:25