a Code for the Combination of Indirect and Direct Constraints on High Energy Physics Models Logo
DGamma.cpp
Go to the documentation of this file.
1/*
2 * Copyright (C) 2023 HEPfit Collaboration
3 *
4 *
5 * For the licensing terms see doc/COPYING.
6 */
7
8
9#include "DGamma.h"
10#include "StandardModel.h"
11#include "AmpDB2.h"
12#include "std_make_vector.h"
13
14
16: ThObservable(SM_i) {
17 setParametersForObservable(make_vector<std::string>() << "DmBd_ex" );
18 SM.getFlavour().getDB2(0);
19}
20
22}
23
25 return -(SM.getFlavour().getDB2(0).getGamma21overM21(FULLNNLO, SM.getFlavour().getDB2(0).pole) / gslpp::complex(SM.getCBd(), -2. * SM.getPhiBd(), true)).real() * SM.getOptionalParameter("DmBd_ex");
26}
27
29: ThObservable(SM_i) {
30 setParametersForObservable(make_vector<std::string>() << "DmBs_ex" );
31 SM.getFlavour().getDB2(1);
32}
33
35}
36
38 return -(SM.getFlavour().getDB2(1).getGamma21overM21(FULLNNLO, SM.getFlavour().getDB2(1).pole) / gslpp::complex(SM.getCBs(), 2. * SM.getPhiBs(), true)).real() * SM.getOptionalParameter("DmBs_ex");
39}
40
42: ThObservable(SM_i) {
43 setParametersForObservable(make_vector<std::string>() << "DmBs_ex" );
44 SM.getFlavour().getDB2(1);
45}
46
48}
49
51 return -(SM.getFlavour().getDB2(1).getGamma21overM21(FULLNLO, SM.getFlavour().getDB2(1).pole) / gslpp::complex(SM.getCBs(), 2. * SM.getPhiBs(), true)).real() * SM.getOptionalParameter("DmBs_ex");
52}
53
55: ThObservable(SM_i) {
56 setParametersForObservable(make_vector<std::string>() << "DmBs_ex" );
57 SM.getFlavour().getDB2(1);
58}
59
61}
62
64 return -(SM.getFlavour().getDB2(1).getGamma21overM21(LO, SM.getFlavour().getDB2(1).pole) / gslpp::complex(SM.getCBs(), 2. * SM.getPhiBs(), true)).real() * SM.getOptionalParameter("DmBs_ex");
65}
66
68: ThObservable(SM_i) {
69 setParametersForObservable(make_vector<std::string>() << "DmBd_ex" );
70 SM.getFlavour().getDB2(0);
71}
72
74}
75
77 return -(SM.getFlavour().getDB2(0).getGamma21overM21(FULLNNLO, SM.getFlavour().getDB2(0).MSbar) / gslpp::complex(SM.getCBd(), -2. * SM.getPhiBd(), true)).real() * SM.getOptionalParameter("DmBd_ex");
78}
79
81: ThObservable(SM_i) {
82 setParametersForObservable(make_vector<std::string>() << "DmBs_ex" );
83 SM.getFlavour().getDB2(1);
84}
85
87}
88
90 return -(SM.getFlavour().getDB2(1).getGamma21overM21(FULLNNLO, SM.getFlavour().getDB2(1).MSbar) / gslpp::complex(SM.getCBs(), 2. * SM.getPhiBs(), true)).real() * SM.getOptionalParameter("DmBs_ex");
91}
92
94: ThObservable(SM_i) {
95 setParametersForObservable(make_vector<std::string>() << "DmBs_ex" );
96 SM.getFlavour().getDB2(1);
97}
98
100}
101
103 return -(SM.getFlavour().getDB2(1).getGamma21overM21(FULLNLO, SM.getFlavour().getDB2(1).MSbar) / gslpp::complex(SM.getCBs(), 2. * SM.getPhiBs(), true)).real() * SM.getOptionalParameter("DmBs_ex");
104}
105
107: ThObservable(SM_i) {
108 setParametersForObservable(make_vector<std::string>() << "DmBs_ex" );
109 SM.getFlavour().getDB2(1);
110}
111
113}
114
116 return -(SM.getFlavour().getDB2(1).getGamma21overM21(LO, SM.getFlavour().getDB2(1).MSbar) / gslpp::complex(SM.getCBs(), 2. * SM.getPhiBs(), true)).real() * SM.getOptionalParameter("DmBs_ex");
117}
118
120: ThObservable(SM_i) {
121 setParametersForObservable(make_vector<std::string>() << "DmBd_ex" );
122 SM.getFlavour().getDB2(0);
123}
124
126}
127
129 return -(SM.getFlavour().getDB2(0).getGamma21overM21(FULLNNLO, SM.getFlavour().getDB2(0).PS) / gslpp::complex(SM.getCBd(), -2. * SM.getPhiBd(), true)).real() * SM.getOptionalParameter("DmBd_ex");
130}
131
133: ThObservable(SM_i) {
134 setParametersForObservable(make_vector<std::string>() << "DmBs_ex" );
135 SM.getFlavour().getDB2(1);
136}
137
139}
140
142 return -(SM.getFlavour().getDB2(1).getGamma21overM21(FULLNNLO, SM.getFlavour().getDB2(1).PS) / gslpp::complex(SM.getCBs(), 2. * SM.getPhiBs(), true)).real() * SM.getOptionalParameter("DmBs_ex");
143}
144
146: ThObservable(SM_i) {
147 setParametersForObservable(make_vector<std::string>() << "DmBs_ex" );
148 SM.getFlavour().getDB2(1);
149}
150
152}
153
155 return -(SM.getFlavour().getDB2(1).getGamma21overM21(FULLNLO, SM.getFlavour().getDB2(1).PS) / gslpp::complex(SM.getCBs(), 2. * SM.getPhiBs(), true)).real() * SM.getOptionalParameter("DmBs_ex");
156}
157
159: ThObservable(SM_i) {
160 setParametersForObservable(make_vector<std::string>() << "DmBs_ex" );
161 SM.getFlavour().getDB2(1);
162}
163
165}
166
168 return -(SM.getFlavour().getDB2(1).getGamma21overM21(LO, SM.getFlavour().getDB2(1).PS) / gslpp::complex(SM.getCBs(), 2. * SM.getPhiBs(), true)).real() * SM.getOptionalParameter("DmBs_ex");
169}
170
171
173: ThObservable(SM_i){
174 setParametersForObservable(make_vector<std::string>() << "DmBs_ex" );
175 SM.getFlavour().getDB2(1);
176}
177
179}
180
182 return -(SM.getFlavour().getDB2(1, true).getGamma21overM21(FULLNNLO, SM.getFlavour().getDB2(1,true).pole) / gslpp::complex(SM.getCBs(), 2. * SM.getPhiBs(), true)).real() * SM.getOptionalParameter("DmBs_ex");
183}
184
186: ThObservable(SM_i) {
187 setParametersForObservable(make_vector<std::string>() << "DmBs_ex" );
188 SM.getFlavour().getDB2(1);
189}
190
192}
193
195 return -(SM.getFlavour().getDB2(1,true).getGamma21overM21(FULLNNLO, SM.getFlavour().getDB2(1,true).MSbar) / gslpp::complex(SM.getCBs(), 2. * SM.getPhiBs(), true)).real() * SM.getOptionalParameter("DmBs_ex");
196}
197
199: ThObservable(SM_i) {
200 setParametersForObservable(make_vector<std::string>() << "DmBs_ex" );
201 SM.getFlavour().getDB2(1);
202}
203
205}
206
208 return -(SM.getFlavour().getDB2(1,true).getGamma21overM21(FULLNNLO, SM.getFlavour().getDB2(1,true).PS) / gslpp::complex(SM.getCBs(), 2. * SM.getPhiBs(), true)).real() * SM.getOptionalParameter("DmBs_ex");
209}
210
212: ThObservable(SM_i) {
213 setParametersForObservable(make_vector<std::string>() << "DmBd_ex" );
214 SM.getFlavour().getDB2(0);
215}
216
218}
219
221 return -(SM.getFlavour().getDB2(0).getGamma21overM21(FULLNNLO, SM.getFlavour().getDB2(0).only1overmb) / gslpp::complex(SM.getCBd(), -2. * SM.getPhiBd(), true)).real() * SM.getOptionalParameter("DmBd_ex");
222}
223
225: ThObservable(SM_i) {
226 setParametersForObservable(make_vector<std::string>() << "DmBs_ex" );
227 SM.getFlavour().getDB2(1);
228}
229
231}
232
234 return -(SM.getFlavour().getDB2(1).getGamma21overM21(FULLNNLO, SM.getFlavour().getDB2(1).only1overmb) / gslpp::complex(SM.getCBs(), 2. * SM.getPhiBs(), true)).real() * SM.getOptionalParameter("DmBs_ex");
235}
236
238: ThObservable(SM_i) {
239 setParametersForObservable(make_vector<std::string>() << "DmBd_ex" );
240 SM.getFlavour().getDB2(0);
241}
242
244}
245
247 return -(SM.getFlavour().getDB2(0).getGamma21overM21_tradBasis(FULLNLO) / gslpp::complex(SM.getCBd(), -2. * SM.getPhiBd(), true)).real() * SM.getOptionalParameter("DmBd_ex");
248}
249
251: ThObservable(SM_i) {
252 setParametersForObservable(make_vector<std::string>() << "DmBs_ex" );
253 SM.getFlavour().getDB2(1);
254}
255
257}
258
260 return -(SM.getFlavour().getDB2(1).getGamma21overM21_tradBasis(FULLNLO) / gslpp::complex(SM.getCBs(), 2. * SM.getPhiBs(), true)).real() * SM.getOptionalParameter("DmBs_ex");
261}
262
264: ThObservable(SM_i) {
265 setParametersForObservable(make_vector<std::string>() << "DmBd_ex" );
266 SM.getFlavour().getDB2(0);
267}
268
270}
271
273 return -(SM.getFlavour().getDB2(0).getGamma21overM21_tradBasis(LO) / gslpp::complex(SM.getCBd(), -2. * SM.getPhiBd(), true)).real() * SM.getOptionalParameter("DmBd_ex");
274}
275
277: ThObservable(SM_i) {
278 setParametersForObservable(make_vector<std::string>() << "DmBs_ex" );
279 SM.getFlavour().getDB2(1);
280}
281
283}
284
286 return -(SM.getFlavour().getDB2(1).getGamma21overM21_tradBasis(LO) / gslpp::complex(SM.getCBs(), 2. * SM.getPhiBs(), true)).real() * SM.getOptionalParameter("DmBs_ex");
287}
288
290: ThObservable(SM_i) {
291 setParametersForObservable(make_vector<std::string>() << "DmBs_ex" );
292 SM.getFlavour().getDB2(1);
293}
294
296}
297
299 return -(SM.getFlavour().getDB2(1,false, true).getGamma21overM21(FULLNLO, SM.getFlavour().getDB2(1,false,true).MSbar) / gslpp::complex(SM.getCBs(), 2. * SM.getPhiBs(), true)).real() * SM.getOptionalParameter("DmBs_ex");
300}
301
303: ThObservable(SM_i) {
304 setParametersForObservable(make_vector<std::string>() << "DmBs_ex" );
305 SM.getFlavour().getDB2(1);
306}
307
309}
310
312 return -(SM.getFlavour().getDB2(1,false,true).getGamma21overM21_tradBasis(FULLNLO) / gslpp::complex(SM.getCBs(), 2. * SM.getPhiBs(), true)).real() * SM.getOptionalParameter("DmBs_ex");
313}
314
316: ThObservable(SM_i) {
317 setParametersForObservable(make_vector<std::string>() << "DmBs_ex" );
318 SM.getFlavour().getDB2(1);
319}
320
322}
323
325 return -(SM.getFlavour().getDB2(1,false,true).getGamma21overM21(FULLNLO, SM.getFlavour().getDB2(1,false,true).PS) / gslpp::complex(SM.getCBs(), 2. * SM.getPhiBs(), true)).real() * SM.getOptionalParameter("DmBs_ex");
326}
327
329: ThObservable(SM_i) {
330 setParametersForObservable(make_vector<std::string>() << "DmBs_ex" );
331 SM.getFlavour().getDB2(1);
332}
333
335}
336
338 return -(SM.getFlavour().getDB2(1).getGamma21overM21(FULLNNLO, SM.getFlavour().getDB2(1).MSbar_partialNNLO) / gslpp::complex(SM.getCBs(), 2. * SM.getPhiBs(), true)).real() * SM.getOptionalParameter("DmBs_ex");
339}
340
342: ThObservable(SM_i) {
343 setParametersForObservable(make_vector<std::string>() << "DmBs_ex" );
344 SM.getFlavour().getDB2(1);
345}
346
348}
349
351 return -(SM.getFlavour().getDB2(1).getGamma21overM21(FULLNNLO, SM.getFlavour().getDB2(1).PS_partialNNLO) / gslpp::complex(SM.getCBs(), 2. * SM.getPhiBs(), true)).real() * SM.getOptionalParameter("DmBs_ex");
352}
353
355: ThObservable(SM_i) {
356 setParametersForObservable(make_vector<std::string>() << "DmBs_ex" );
357 SM.getFlavour().getDB2(1);
358}
359
361}
362
364 return -(SM.getFlavour().getDB2(1).getGamma21overM21(FULLNNNLO, SM.getFlavour().getDB2(1).MSbar_partialN3LO) / gslpp::complex(SM.getCBs(), 2. * SM.getPhiBs(), true)).real() * SM.getOptionalParameter("DmBs_ex");
365}
366
368: ThObservable(SM_i) {
369 setParametersForObservable(make_vector<std::string>() << "DmBs_ex" );
370 SM.getFlavour().getDB2(1);
371}
372
374}
375
377 return -(SM.getFlavour().getDB2(1).getGamma21overM21(FULLNNNLO, SM.getFlavour().getDB2(1).PS_partialN3LO) / gslpp::complex(SM.getCBs(), 2. * SM.getPhiBs(), true)).real() * SM.getOptionalParameter("DmBs_ex");
378}
@ FULLNNNLO
Definition: OrderScheme.h:40
@ LO
Definition: OrderScheme.h:34
@ FULLNNLO
Definition: OrderScheme.h:39
@ FULLNLO
Definition: OrderScheme.h:38
gslpp::complex getGamma21overM21_tradBasis(orders order)
The value of in the traditional basis.
Definition: AmpDB2.h:73
@ MSbar_partialN3LO
Definition: AmpDB2.h:63
@ MSbar
Definition: AmpDB2.h:63
@ PS
Definition: AmpDB2.h:63
@ PS_partialN3LO
Definition: AmpDB2.h:63
@ pole
Definition: AmpDB2.h:63
@ MSbar_partialNNLO
Definition: AmpDB2.h:63
@ only1overmb
Definition: AmpDB2.h:63
@ PS_partialNNLO
Definition: AmpDB2.h:63
gslpp::complex getGamma21overM21(orders order, mass_schemes mass_scheme=MSbar)
The value of from Gerlach (2205.07907 and thesis)
Definition: AmpDB2.h:91
virtual ~DGamma_d_LO_tradBasis()
Destructor.
Definition: DGamma.cpp:269
double computeThValue()
Definition: DGamma.cpp:272
DGamma_d_LO_tradBasis(const StandardModel &SM_i)
Constructor.
Definition: DGamma.cpp:263
DGamma_d_MSbar(const StandardModel &SM_i)
Constructor.
Definition: DGamma.cpp:67
double computeThValue()
Definition: DGamma.cpp:76
virtual ~DGamma_d_MSbar()
Destructor.
Definition: DGamma.cpp:73
DGamma_d_NLO_tradBasis(const StandardModel &SM_i)
Constructor.
Definition: DGamma.cpp:237
virtual ~DGamma_d_NLO_tradBasis()
Destructor.
Definition: DGamma.cpp:243
double computeThValue()
Definition: DGamma.cpp:246
double computeThValue()
Definition: DGamma.cpp:128
DGamma_d_PS(const StandardModel &SM_i)
Constructor.
Definition: DGamma.cpp:119
virtual ~DGamma_d_PS()
Destructor.
Definition: DGamma.cpp:125
virtual ~DGamma_d_only1overmb()
Destructor.
Definition: DGamma.cpp:217
double computeThValue()
Definition: DGamma.cpp:220
DGamma_d_only1overmb(const StandardModel &SM_i)
Constructor.
Definition: DGamma.cpp:211
DGamma_d_pole(const StandardModel &SM_i)
Constructor.
Definition: DGamma.cpp:15
double computeThValue()
Definition: DGamma.cpp:24
virtual ~DGamma_d_pole()
Destructor.
Definition: DGamma.cpp:21
virtual ~DGamma_s_LO_tradBasis()
Destructor.
Definition: DGamma.cpp:282
DGamma_s_LO_tradBasis(const StandardModel &SM_i)
Constructor.
Definition: DGamma.cpp:276
double computeThValue()
Definition: DGamma.cpp:285
virtual ~DGamma_s_MSbar_LO()
Destructor.
Definition: DGamma.cpp:112
double computeThValue()
Definition: DGamma.cpp:115
DGamma_s_MSbar_LO(const StandardModel &SM_i)
Constructor.
Definition: DGamma.cpp:106
virtual ~DGamma_s_MSbar_NLO_RI_tradBasis()
Destructor.
Definition: DGamma.cpp:308
DGamma_s_MSbar_NLO_RI_tradBasis(const StandardModel &SM_i)
Constructor.
Definition: DGamma.cpp:302
virtual ~DGamma_s_MSbar_NLO_RI()
Destructor.
Definition: DGamma.cpp:295
double computeThValue()
Definition: DGamma.cpp:298
DGamma_s_MSbar_NLO_RI(const StandardModel &SM_i)
Constructor.
Definition: DGamma.cpp:289
double computeThValue()
Definition: DGamma.cpp:102
DGamma_s_MSbar_NLO(const StandardModel &SM_i)
Constructor.
Definition: DGamma.cpp:93
virtual ~DGamma_s_MSbar_NLO()
Destructor.
Definition: DGamma.cpp:99
DGamma_s_MSbar_fixmub(const StandardModel &SM_i)
Constructor.
Definition: DGamma.cpp:185
double computeThValue()
Definition: DGamma.cpp:194
virtual ~DGamma_s_MSbar_fixmub()
Destructor.
Definition: DGamma.cpp:191
virtual ~DGamma_s_MSbar_partialN3LO()
Destructor.
Definition: DGamma.cpp:360
DGamma_s_MSbar_partialN3LO(const StandardModel &SM_i)
Constructor.
Definition: DGamma.cpp:354
virtual ~DGamma_s_MSbar_partialNNLO()
Destructor.
Definition: DGamma.cpp:334
DGamma_s_MSbar_partialNNLO(const StandardModel &SM_i)
Constructor.
Definition: DGamma.cpp:328
virtual ~DGamma_s_MSbar()
Destructor.
Definition: DGamma.cpp:86
double computeThValue()
Definition: DGamma.cpp:89
DGamma_s_MSbar(const StandardModel &SM_i)
Constructor.
Definition: DGamma.cpp:80
double computeThValue()
Definition: DGamma.cpp:259
DGamma_s_NLO_tradBasis(const StandardModel &SM_i)
Constructor.
Definition: DGamma.cpp:250
virtual ~DGamma_s_NLO_tradBasis()
Destructor.
Definition: DGamma.cpp:256
double computeThValue()
Definition: DGamma.cpp:167
virtual ~DGamma_s_PS_LO()
Destructor.
Definition: DGamma.cpp:164
DGamma_s_PS_LO(const StandardModel &SM_i)
Constructor.
Definition: DGamma.cpp:158
virtual ~DGamma_s_PS_NLO_RI()
Destructor.
Definition: DGamma.cpp:321
double computeThValue()
Definition: DGamma.cpp:324
DGamma_s_PS_NLO_RI(const StandardModel &SM_i)
Constructor.
Definition: DGamma.cpp:315
virtual ~DGamma_s_PS_NLO()
Destructor.
Definition: DGamma.cpp:151
double computeThValue()
Definition: DGamma.cpp:154
DGamma_s_PS_NLO(const StandardModel &SM_i)
Constructor.
Definition: DGamma.cpp:145
virtual ~DGamma_s_PS_fixmub()
Destructor.
Definition: DGamma.cpp:204
double computeThValue()
Definition: DGamma.cpp:207
DGamma_s_PS_fixmub(const StandardModel &SM_i)
Constructor.
Definition: DGamma.cpp:198
virtual ~DGamma_s_PS_partialN3LO()
Destructor.
Definition: DGamma.cpp:373
DGamma_s_PS_partialN3LO(const StandardModel &SM_i)
Constructor.
Definition: DGamma.cpp:367
DGamma_s_PS_partialNNLO(const StandardModel &SM_i)
Constructor.
Definition: DGamma.cpp:341
virtual ~DGamma_s_PS_partialNNLO()
Destructor.
Definition: DGamma.cpp:347
double computeThValue()
Definition: DGamma.cpp:141
virtual ~DGamma_s_PS()
Destructor.
Definition: DGamma.cpp:138
DGamma_s_PS(const StandardModel &SM_i)
Constructor.
Definition: DGamma.cpp:132
double computeThValue()
Definition: DGamma.cpp:233
virtual ~DGamma_s_only1overmb()
Destructor.
Definition: DGamma.cpp:230
DGamma_s_only1overmb(const StandardModel &SM_i)
Constructor.
Definition: DGamma.cpp:224
virtual ~DGamma_s_pole_LO()
Destructor.
Definition: DGamma.cpp:60
DGamma_s_pole_LO(const StandardModel &SM_i)
Constructor.
Definition: DGamma.cpp:54
double computeThValue()
Definition: DGamma.cpp:63
virtual ~DGamma_s_pole_NLO()
Destructor.
Definition: DGamma.cpp:47
double computeThValue()
Definition: DGamma.cpp:50
DGamma_s_pole_NLO(const StandardModel &SM_i)
Constructor.
Definition: DGamma.cpp:41
DGamma_s_pole_fixmub(const StandardModel &SM_i)
Constructor.
Definition: DGamma.cpp:172
virtual ~DGamma_s_pole_fixmub()
Destructor.
Definition: DGamma.cpp:178
double computeThValue()
Definition: DGamma.cpp:181
virtual ~DGamma_s_pole()
Destructor.
Definition: DGamma.cpp:34
double computeThValue()
Definition: DGamma.cpp:37
DGamma_s_pole(const StandardModel &SM_i)
Constructor.
Definition: DGamma.cpp:28
AmpDB2 & getDB2(int BMeson_i, bool flag_fixmub=false, bool flag_RI=false) const
Returns a reference to the meson dependent object for processes.
Definition: Flavour.cpp:228
const double getOptionalParameter(std::string name) const
A method to get parameters that are specific to only one set of observables.
Definition: QCD.h:450
A model class for the Standard Model.
virtual const double getPhiBs() const
Half the relative phase of the $B_s$ mixing amplitude w.r.t. the Standard Model one.
virtual const double getCBd() const
The ratio of the absolute value of the $B_d$ mixing amplitude over the Standard Model value.
virtual const double getPhiBd() const
Half the relative phase of the $B_d$ mixing amplitude w.r.t. the Standard Model one.
const Flavour & getFlavour() const
virtual const double getCBs() const
The ratio of the absolute value of the $B_s$ mixing amplitude over the Standard Model value.
A class for a model prediction of an observable.
Definition: ThObservable.h:25
void setParametersForObservable(std::vector< std::string > parametersForObservable_i)
A set method to get the parameters for the specific observable.
Definition: ThObservable.h:109
const StandardModel & SM
A reference to an object of StandardMode class.
Definition: ThObservable.h:121