Hyperiso 1.0.3
Modular flavour-physics calculations, Wilson coefficients and statistical inference
Loading...
Searching...
No Matches
BWilsonTHDM.h
Go to the documentation of this file.
1#ifndef BWILSON_THDM_H
2#define BWILSON_THDM_H
3#include "Wilson.h"
4#include "WilsonGroup.h"
5#include "BWilsonGroup.h"
7#include "Math.h"
8#include "Utils.h"
9#include "wcoef_ids.hpp"
11
12
13class C1_THDM : public WilsonCoefficient {
14public:
15 C1_THDM() : WilsonCoefficient("C1_THDM", GroupMapper::str(WGroup::B) + "_MATCH") {}
16
17
18
19
20
21 std::shared_ptr<WilsonCoefficient> clone() const override {
22 return std::make_shared<C1_THDM>(*this);
23 }
24};
25
26class C2_THDM : public WilsonCoefficient {
27public:
28 C2_THDM() : WilsonCoefficient("C2_THDM", GroupMapper::str(WGroup::B) + "_MATCH") {}
29
30
31
32
33
34 std::shared_ptr<WilsonCoefficient> clone() const override {
35 return std::make_shared<C2_THDM>(*this);
36 }
37};
38
39class C3_THDM : public WilsonCoefficient {
40public:
41 C3_THDM();
42
43
44
45
46
47 std::shared_ptr<WilsonCoefficient> clone() const override {
48 return std::make_shared<C3_THDM>(*this);
49 }
50
51 static double compute_NNLO(const ParamSrc& src);
52};
53
54class C4_THDM : public WilsonCoefficient {
55public:
56 C4_THDM();
57
58
59
60
61
62 std::shared_ptr<WilsonCoefficient> clone() const override {
63 return std::make_shared<C4_THDM>(*this);
64 }
65
66 static double compute_NLO(const ParamSrc& src);
67 static double compute_NNLO(const ParamSrc& src);
68};
69
70class C5_THDM : public WilsonCoefficient {
71public:
72 C5_THDM();
73
74
75
76
77
78 std::shared_ptr<WilsonCoefficient> clone() const override {
79 return std::make_shared<C5_THDM>(*this);
80 }
81
82 static double compute_NNLO(const ParamSrc& src);
83};
84
85class C6_THDM : public WilsonCoefficient {
86public:
87 C6_THDM();
88
89
90
91
92
93 std::shared_ptr<WilsonCoefficient> clone() const override {
94 return std::make_shared<C6_THDM>(*this);
95 }
96
97 static double compute_NNLO(const ParamSrc& src);
98};
99
101public:
102 C7_THDM();
103
104
105
106
107
108 std::shared_ptr<WilsonCoefficient> clone() const override {
109 return std::make_shared<C7_THDM>(*this);
110 }
111
112 static double compute_LO(const ParamSrc& src);
113 static double compute_NLO(const ParamSrc& src);
114 static double compute_NNLO(const ParamSrc& src);
115};
116
118public:
119 C8_THDM();
120
121
122
123
124
125 std::shared_ptr<WilsonCoefficient> clone() const override {
126 return std::make_shared<C8_THDM>(*this);
127 }
128
129 static double compute_LO(const ParamSrc& src);
130 static double compute_NLO(const ParamSrc& src);
131 static double compute_NNLO(const ParamSrc& src);
132};
133
135public:
136 C9_THDM();
137
138
139
140
141
142 std::shared_ptr<WilsonCoefficient> clone() const override {
143 return std::make_shared<C9_THDM>(*this);
144 }
145
146 static double compute_LO(const ParamSrc& src);
147 static double compute_NLO(const ParamSrc& src);
148};
149
151public:
152 C10_THDM();
153
154
155
156
157
158 std::shared_ptr<WilsonCoefficient> clone() const override {
159 return std::make_shared<C10_THDM>(*this);
160 }
161
162 static double compute_LO(const ParamSrc& src);
163 static double compute_NLO(const ParamSrc& src);
164};
165
167public:
168 explicit CQ1_THDM(WCoef coef = WCoef::CQ1_MU);
169
170
171
172
173
174 std::shared_ptr<WilsonCoefficient> clone() const override {
175 return std::make_shared<CQ1_THDM>(*this);
176 }
177
178 static double compute_LO(const ParamSrc& src);
179 static double compute_LO(const ParamSrc& src, int lepton_mass_slot, int lepton_yukawa_slot);
180};
181
183public:
184 explicit CQ2_THDM(WCoef coef = WCoef::CQ2_MU);
185
186
187
188
189
190 std::shared_ptr<WilsonCoefficient> clone() const override {
191 return std::make_shared<CQ2_THDM>(*this);
192 }
193
194 static double compute_LO(const ParamSrc& src);
195 static double compute_LO(const ParamSrc& src, int lepton_mass_slot, int lepton_yukawa_slot);
196};
197
199public:
200 CP1_THDM() : WilsonCoefficient("CP1_THDM", GroupMapper::str(WGroup::BPrime) + "_MATCH") {}
201
202
203
204
205
206 std::shared_ptr<WilsonCoefficient> clone() const override {
207 return std::make_shared<CP1_THDM>(*this);
208 }
209};
210
212public:
213 CP2_THDM() : WilsonCoefficient("CP2_THDM", GroupMapper::str(WGroup::BPrime) + "_MATCH") {}
214
215
216
217
218
219 std::shared_ptr<WilsonCoefficient> clone() const override {
220 return std::make_shared<CP2_THDM>(*this);
221 }
222};
223
225public:
226 CP3_THDM() : WilsonCoefficient("CP3_THDM", GroupMapper::str(WGroup::BPrime) + "_MATCH") {}
227
228
229
230
231
232 std::shared_ptr<WilsonCoefficient> clone() const override {
233 return std::make_shared<CP3_THDM>(*this);
234 }
235};
236
238public:
239 CP4_THDM() : WilsonCoefficient("CP4_THDM", GroupMapper::str(WGroup::BPrime) + "_MATCH") {}
240
241
242
243
244
245 std::shared_ptr<WilsonCoefficient> clone() const override {
246 return std::make_shared<CP4_THDM>(*this);
247 }
248};
249
251public:
252 CP5_THDM() : WilsonCoefficient("CP5_THDM", GroupMapper::str(WGroup::BPrime) + "_MATCH") {}
253
254
255
256
257
258 std::shared_ptr<WilsonCoefficient> clone() const override {
259 return std::make_shared<CP5_THDM>(*this);
260 }
261};
262
264public:
265 CP6_THDM() : WilsonCoefficient("CP6_THDM", GroupMapper::str(WGroup::BPrime) + "_MATCH") {}
266
267
268
269
270
271 std::shared_ptr<WilsonCoefficient> clone() const override {
272 return std::make_shared<CP6_THDM>(*this);
273 }
274};
275
276
278public:
279 CP7_THDM();
280
281 static double compute_LO(const ParamSrc& src);
282
283 std::shared_ptr<WilsonCoefficient> clone() const override {
284 return std::make_shared<CP7_THDM>(*this);
285 }
286};
287
289public:
290 CP8_THDM();
291
292 static double compute_LO(const ParamSrc& src);
293
294 std::shared_ptr<WilsonCoefficient> clone() const override {
295 return std::make_shared<CP8_THDM>(*this);
296 }
297};
298
300public:
301 CP9_THDM();
302
303 static double compute_LO(const ParamSrc& src);
304
305 std::shared_ptr<WilsonCoefficient> clone() const override {
306 return std::make_shared<CP9_THDM>(*this);
307 }
308};
309
311public:
312 CP10_THDM();
313
314 static double compute_LO(const ParamSrc& src);
315
316 std::shared_ptr<WilsonCoefficient> clone() const override {
317 return std::make_shared<CP10_THDM>(*this);
318 }
319};
320
322public:
323 explicit CPQ1_THDM(WCoef coef = WCoef::CPQ1_MU);
324
325 static double compute_LO(const ParamSrc& src);
326 static double compute_LO(const ParamSrc& src, int lepton_mass_slot);
327
328 std::shared_ptr<WilsonCoefficient> clone() const override {
329 return std::make_shared<CPQ1_THDM>(*this);
330 }
331};
332
334public:
335 explicit CPQ2_THDM(WCoef coef = WCoef::CPQ2_MU);
336
337 static double compute_LO(const ParamSrc& src);
338 static double compute_LO(const ParamSrc& src, int lepton_mass_slot);
339
340 std::shared_ptr<WilsonCoefficient> clone() const override {
341 return std::make_shared<CPQ2_THDM>(*this);
342 }
343};
344
345#endif
WCoef
WGroup
Wilson helper blocks specialized for the THDM model.
Domain container grouping related Wilson coefficients with matching and running access.
Domain objects representing Wilson coefficients and their matching metadata.
std::shared_ptr< WilsonCoefficient > clone() const override
Virtual clone for polymorphic copy.
static double compute_NLO(const ParamSrc &src)
static double compute_LO(const ParamSrc &src)
std::shared_ptr< WilsonCoefficient > clone() const override
Virtual clone for polymorphic copy.
Definition BWilsonTHDM.h:21
std::shared_ptr< WilsonCoefficient > clone() const override
Virtual clone for polymorphic copy.
Definition BWilsonTHDM.h:34
std::shared_ptr< WilsonCoefficient > clone() const override
Virtual clone for polymorphic copy.
Definition BWilsonTHDM.h:47
static double compute_NNLO(const ParamSrc &src)
static double compute_NLO(const ParamSrc &src)
std::shared_ptr< WilsonCoefficient > clone() const override
Virtual clone for polymorphic copy.
Definition BWilsonTHDM.h:62
static double compute_NNLO(const ParamSrc &src)
static double compute_NNLO(const ParamSrc &src)
std::shared_ptr< WilsonCoefficient > clone() const override
Virtual clone for polymorphic copy.
Definition BWilsonTHDM.h:78
std::shared_ptr< WilsonCoefficient > clone() const override
Virtual clone for polymorphic copy.
Definition BWilsonTHDM.h:93
static double compute_NNLO(const ParamSrc &src)
static double compute_NLO(const ParamSrc &src)
static double compute_LO(const ParamSrc &src)
static double compute_NNLO(const ParamSrc &src)
std::shared_ptr< WilsonCoefficient > clone() const override
Virtual clone for polymorphic copy.
static double compute_NLO(const ParamSrc &src)
static double compute_LO(const ParamSrc &src)
std::shared_ptr< WilsonCoefficient > clone() const override
Virtual clone for polymorphic copy.
static double compute_NNLO(const ParamSrc &src)
static double compute_NLO(const ParamSrc &src)
static double compute_LO(const ParamSrc &src)
std::shared_ptr< WilsonCoefficient > clone() const override
Virtual clone for polymorphic copy.
std::shared_ptr< WilsonCoefficient > clone() const override
Virtual clone for polymorphic copy.
static double compute_LO(const ParamSrc &src)
std::shared_ptr< WilsonCoefficient > clone() const override
Virtual clone for polymorphic copy.
std::shared_ptr< WilsonCoefficient > clone() const override
Virtual clone for polymorphic copy.
std::shared_ptr< WilsonCoefficient > clone() const override
Virtual clone for polymorphic copy.
std::shared_ptr< WilsonCoefficient > clone() const override
Virtual clone for polymorphic copy.
std::shared_ptr< WilsonCoefficient > clone() const override
Virtual clone for polymorphic copy.
std::shared_ptr< WilsonCoefficient > clone() const override
Virtual clone for polymorphic copy.
static double compute_LO(const ParamSrc &src)
std::shared_ptr< WilsonCoefficient > clone() const override
Virtual clone for polymorphic copy.
static double compute_LO(const ParamSrc &src)
std::shared_ptr< WilsonCoefficient > clone() const override
Virtual clone for polymorphic copy.
std::shared_ptr< WilsonCoefficient > clone() const override
Virtual clone for polymorphic copy.
static double compute_LO(const ParamSrc &src)
std::shared_ptr< WilsonCoefficient > clone() const override
Virtual clone for polymorphic copy.
static double compute_LO(const ParamSrc &src, int lepton_mass_slot)
static double compute_LO(const ParamSrc &src)
static double compute_LO(const ParamSrc &src, int lepton_mass_slot)
static double compute_LO(const ParamSrc &src)
std::shared_ptr< WilsonCoefficient > clone() const override
Virtual clone for polymorphic copy.
std::shared_ptr< WilsonCoefficient > clone() const override
Virtual clone for polymorphic copy.
static double compute_LO(const ParamSrc &src)
static double compute_LO(const ParamSrc &src)
std::shared_ptr< WilsonCoefficient > clone() const override
Virtual clone for polymorphic copy.
Mapper for WGroup <-> WGroupId <-> optional external string.
Lightweight view over a set of source parameters keyed by ParamId.
Abstract base class representing a Wilson coefficient and its matching information.
Definition Wilson.h:153