Hyperiso 1.0.3
Modular flavour-physics calculations, Wilson coefficients and statistical inference
Loading...
Searching...
No Matches
BWilsonSUSY.cpp
Go to the documentation of this file.
1#include "BWilsonSUSY.h"
3
6 {
7 {ParameterType::SM, "MASS", 24}, // mW
8 {ParameterType::BSM, "MASS", 1000002}, // msq1
9 {ParameterType::BSM, "MASS", 1000004}, // msq2
10 {ParameterType::BSM, "MASS", 1000006}, // msq3
11 {ParameterType::BSM, "MASS", 2000002}, // msq4
12 {ParameterType::BSM, "MASS", 2000004}, // msq5
13 {ParameterType::BSM, "MASS", 2000006}, // msq6
14 {ParameterType::WILSON, "WPARAM_SI_BSM", {14, 0}},
15 {ParameterType::WILSON, "WPARAM_SI_BSM", {14, 1}},
16 {ParameterType::WILSON, "WPARAM_SI_BSM", {14, 2}},
17 {ParameterType::WILSON, "WPARAM_SI_BSM", {14, 3}},
18 {ParameterType::WILSON, "WPARAM_SI_BSM", {14, 4}},
19 {ParameterType::WILSON, "WPARAM_SI_BSM", {14, 5}},
20 {ParameterType::WILSON, "WPARAM_SI_BSM", {15, 0}},
21 {ParameterType::WILSON, "WPARAM_SI_BSM", {15, 1}},
22 {ParameterType::WILSON, "WPARAM_SI_BSM", {15, 2}},
23 {ParameterType::WILSON, "WPARAM_SI_BSM", {15, 3}},
24 {ParameterType::WILSON, "WPARAM_SI_BSM", {15, 4}},
25 {ParameterType::WILSON, "WPARAM_SI_BSM", {15, 5}}
26 },
29 };
30}
31
33 complex_t C1squark_2 = 0.0;
34 double mW = src.get_val(ParameterType::SM, "MASS", 24);
35
36 Array1D_7 MsqU = {
37 src.get_val(ParameterType::BSM, "MASS", 1000002),
38 src.get_val(ParameterType::BSM, "MASS", 1000004),
39 src.get_val(ParameterType::BSM, "MASS", 1000006),
40 src.get_val(ParameterType::BSM, "MASS", 2000002),
41 src.get_val(ParameterType::BSM, "MASS", 2000004),
42 src.get_val(ParameterType::BSM, "MASS", 2000006)
43 };
44
45 if (std::all_of(begin(MsqU), end(MsqU), [&](double m) { return std::abs(m) > mW / 2.0; })) {
46 C1squark_2 = -208.0 / 3.0;
47 for (int ae = 0; ae < 6; ++ae) {
48 for (int row : {14, 15}) {
49 double xsqa = pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {row, ae}) / mW, 2.0);
50 double angle = 2.0 * asin(0.5 / sqrt(xsqa));
51
52 C1squark_2 += -2.0 * pow(4.0 * xsqa - 1.0, 1.5) * Cl2(angle);
53 C1squark_2 += 8.0 * (xsqa - 1.0 / 3.0) * log(xsqa) + 16.0 * xsqa;
54 }
55 }
56 }
57
58 return C1squark_2;
59}
60
61
64 {
65 {ParameterType::WILSON, "EW_SCALE", 1},
66 {ParameterType::SM, "MASS", 24},
67 {ParameterType::WILSON, "WPARAM_SI_BSM", {13, 0}},
68 {ParameterType::WILSON, "WPARAM_SI_BSM", {13, 1}},
69 {ParameterType::WILSON, "WPARAM_SI_BSM", {14, 0}},
70 {ParameterType::WILSON, "WPARAM_SI_BSM", {14, 1}},
71 {ParameterType::WILSON, "WPARAM_SI_BSM", {14, 2}},
72 {ParameterType::WILSON, "WPARAM_SI_BSM", {14, 3}},
73 {ParameterType::WILSON, "WPARAM_SI_BSM", {14, 4}},
74 {ParameterType::WILSON, "WPARAM_SI_BSM", {14, 5}},
75 {ParameterType::WILSON, "MATRIX_BSM", {3, 0, 0, 1}}, {ParameterType::WILSON, "MATRIX_BSM", {3, 0, 0, 2}},
76 {ParameterType::WILSON, "MATRIX_BSM", {3, 0, 1, 1}}, {ParameterType::WILSON, "MATRIX_BSM", {3, 0, 1, 2}},
77 {ParameterType::WILSON, "MATRIX_BSM", {3, 0, 2, 1}}, {ParameterType::WILSON, "MATRIX_BSM", {3, 0, 2, 2}},
78 {ParameterType::WILSON, "MATRIX_BSM", {3, 0, 3, 1}}, {ParameterType::WILSON, "MATRIX_BSM", {3, 0, 3, 2}},
79 {ParameterType::WILSON, "MATRIX_BSM", {3, 0, 4, 1}}, {ParameterType::WILSON, "MATRIX_BSM", {3, 0, 4, 2}},
80 {ParameterType::WILSON, "MATRIX_BSM", {3, 0, 5, 1}}, {ParameterType::WILSON, "MATRIX_BSM", {3, 0, 5, 2}},
81 {ParameterType::WILSON, "MATRIX_BSM", {3, 1, 0, 1}}, {ParameterType::WILSON, "MATRIX_BSM", {3, 1, 0, 2}},
82 {ParameterType::WILSON, "MATRIX_BSM", {3, 1, 1, 1}}, {ParameterType::WILSON, "MATRIX_BSM", {3, 1, 1, 2}},
83 {ParameterType::WILSON, "MATRIX_BSM", {3, 1, 2, 1}}, {ParameterType::WILSON, "MATRIX_BSM", {3, 1, 2, 2}},
84 {ParameterType::WILSON, "MATRIX_BSM", {3, 1, 3, 1}}, {ParameterType::WILSON, "MATRIX_BSM", {3, 1, 3, 2}},
85 {ParameterType::WILSON, "MATRIX_BSM", {3, 1, 4, 1}}, {ParameterType::WILSON, "MATRIX_BSM", {3, 1, 4, 2}},
86 {ParameterType::WILSON, "MATRIX_BSM", {3, 1, 5, 1}}, {ParameterType::WILSON, "MATRIX_BSM", {3, 1, 5, 2}},
87 {ParameterType::WILSON, "WPARAM_SI_BSM", 19}, // kappa
88 {ParameterType::WILSON, "WPARAM_MATCH_BSM", 1}, // yt
89 {ParameterType::WILSON, "WPARAM_SI_BSM", 7}, // lu
90 {ParameterType::BSM, "MASS", 37} // mH
91 },
94 };
95}
96
98 complex_t C3charg_2 = 0.0;
99 double Q_match = src.get_val(ParameterType::WILSON, "EW_SCALE", 1);;
100 double mW = src.get_val(ParameterType::SM, "MASS", 24);
101
102 for (int ie = 0; ie < 2; ++ie) {
103 double Mch = src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie});
104 double ratio_mass_W_Mch = std::pow(mW / Mch, 2.0);
105
106 for (int ae = 0; ae < 6; ++ae) {
107 double MsqU = src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae});
108 double ratio_MsqU_Mch = std::pow(MsqU / Mch, 2.0);
109 double log_mu_W_MsqU = std::log(std::pow(Q_match / MsqU, 2.0));
110
111 double aij = src.get_val(ParameterType::WILSON, "MATRIX_BSM", {3, ie, ae, 1});
112 double bij = src.get_val(ParameterType::WILSON, "MATRIX_BSM", {3, ie, ae, 2});
113
114 C3charg_2 += ratio_mass_W_Mch * aij * bij * h71(ratio_MsqU_Mch, log_mu_W_MsqU);
115 }
116 }
117
118 C3charg_2 *= src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", 19); // kappa
119
120 double yt = src.get_val(ParameterType::WILSON, "WPARAM_MATCH_BSM", 1);
121 double lu = src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", 7);
122 double mH = src.get_val(ParameterType::BSM, "MASS", 37);
123
124 double C3H_2 = G3H(yt, lu) + Delta3H(yt, lu) * std::log(std::pow(Q_match / mH, 2.0));
125
126 return scalar_t(C3charg_2 + C3H_2);
127}
128
130 // NLO Matching
132 {
133 {ParameterType::WILSON, "WPARAM_SI_BSM", 7}, // lu
134 {ParameterType::WILSON, "WPARAM_MATCH_BSM", 1}, // yt
135 {ParameterType::WILSON, "EW_SCALE", 1}, // Q_match
136 {ParameterType::BSM, "MASS", 37}, // mH
137 {ParameterType::SM, "MASS", 24}, // mW
138 {ParameterType::WILSON, "WPARAM_SI_BSM", {13, 0}}, // Mch
139 {ParameterType::WILSON, "WPARAM_SI_BSM", {13, 1}},
140 {ParameterType::WILSON, "WPARAM_SI_BSM", {14, 0}}, // MsqU
141 {ParameterType::WILSON, "WPARAM_SI_BSM", {14, 1}},
142 {ParameterType::WILSON, "WPARAM_SI_BSM", {14, 2}},
143 {ParameterType::WILSON, "WPARAM_SI_BSM", {14, 3}},
144 {ParameterType::WILSON, "WPARAM_SI_BSM", {14, 4}},
145 {ParameterType::WILSON, "WPARAM_SI_BSM", {14, 5}},
146 {ParameterType::WILSON, "MATRIX_BSM", {3, 0, 0, 1}}, {ParameterType::WILSON, "MATRIX_BSM", {3, 0, 0, 2}},
147 {ParameterType::WILSON, "MATRIX_BSM", {3, 0, 1, 1}}, {ParameterType::WILSON, "MATRIX_BSM", {3, 0, 1, 2}},
148 {ParameterType::WILSON, "MATRIX_BSM", {3, 0, 2, 1}}, {ParameterType::WILSON, "MATRIX_BSM", {3, 0, 2, 2}},
149 {ParameterType::WILSON, "MATRIX_BSM", {3, 0, 3, 1}}, {ParameterType::WILSON, "MATRIX_BSM", {3, 0, 3, 2}},
150 {ParameterType::WILSON, "MATRIX_BSM", {3, 0, 4, 1}}, {ParameterType::WILSON, "MATRIX_BSM", {3, 0, 4, 2}},
151 {ParameterType::WILSON, "MATRIX_BSM", {3, 0, 5, 1}}, {ParameterType::WILSON, "MATRIX_BSM", {3, 0, 5, 2}},
152 {ParameterType::WILSON, "MATRIX_BSM", {3, 1, 0, 1}}, {ParameterType::WILSON, "MATRIX_BSM", {3, 1, 0, 2}},
153 {ParameterType::WILSON, "MATRIX_BSM", {3, 1, 1, 1}}, {ParameterType::WILSON, "MATRIX_BSM", {3, 1, 1, 2}},
154 {ParameterType::WILSON, "MATRIX_BSM", {3, 1, 2, 1}}, {ParameterType::WILSON, "MATRIX_BSM", {3, 1, 2, 2}},
155 {ParameterType::WILSON, "MATRIX_BSM", {3, 1, 3, 1}}, {ParameterType::WILSON, "MATRIX_BSM", {3, 1, 3, 2}},
156 {ParameterType::WILSON, "MATRIX_BSM", {3, 1, 4, 1}}, {ParameterType::WILSON, "MATRIX_BSM", {3, 1, 4, 2}},
157 {ParameterType::WILSON, "MATRIX_BSM", {3, 1, 5, 1}}, {ParameterType::WILSON, "MATRIX_BSM", {3, 1, 5, 2}},
158 {ParameterType::WILSON, "WPARAM_SI_BSM", 19} // kappa
159 },
162 };
163
164 auto nnlo_sources = matching_info[QCDOrder::NLO].sources;
165 for (int ae = 0; ae < 6; ++ae) {
166 for (int be = 0; be < 6; ++be) {
167 nnlo_sources.insert({ParameterType::WILSON, "MATRIX_BSM", {9, ae, be}});
168 }
169 }
170
171 // NNLO Matching
173 nnlo_sources,
176 };
177}
178
180 complex_t C4charg_1 = 0.0;
181 double mW = src.get_val(ParameterType::SM, "MASS", 24);
182
183 for (int ie = 0; ie < 2; ++ie) {
184 double Mch = src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie});
185 double ratio = std::pow(mW / Mch, 2.0);
186
187 for (int ae = 0; ae < 6; ++ae) {
188 double MsqU = src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae});
189 double x = std::pow(MsqU / Mch, 2.0);
190 double aij = src.get_val(ParameterType::WILSON, "MATRIX_BSM", {3, ie, ae, 1});
191 double bij = src.get_val(ParameterType::WILSON, "MATRIX_BSM", {3, ie, ae, 2});
192
193 C4charg_1 += ratio * aij * bij * h40(x);
194 }
195 }
196
197 C4charg_1 *= src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", 19); // kappa
198
199 double yt = src.get_val(ParameterType::WILSON, "WPARAM_MATCH_BSM", 1);
200 double lu = src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", 7);
201 complex_t C4H_1 = EH(yt, lu);
202
203 return scalar_t(C4H_1 + C4charg_1);
204}
205
207 complex_t C4charg_2 = 0.0;
208 complex_t C4four_2 = 0.0;
209
210 double lu = src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", 7);
211 double yt = src.get_val(ParameterType::WILSON, "WPARAM_MATCH_BSM", 1);
212 double Q_match = src.get_val(ParameterType::WILSON, "EW_SCALE", 1);;
213 double mW = src.get_val(ParameterType::SM, "MASS", 24);
214 double mH = src.get_val(ParameterType::BSM, "MASS", 37);
215
216 for (int ie = 0; ie < 2; ++ie) {
217 double Mch = src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie});
218 double ratio_W_Mch = std::pow(mW / Mch, 2.0);
219
220 for (int ae = 0; ae < 6; ++ae) {
221 double MsqU_ae = src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae});
222 double x = std::pow(MsqU_ae / Mch, 2.0);
223 double log_mu = std::log(std::pow(Q_match / MsqU_ae, 2.0));
224
225 double aij = src.get_val(ParameterType::WILSON, "MATRIX_BSM", {3, ie, ae, 1});
226 double bij = src.get_val(ParameterType::WILSON, "MATRIX_BSM", {3, ie, ae, 2});
227
228 C4charg_2 += ratio_W_Mch * aij * bij * h41(x, log_mu);
229
230 for (int be = 0; be < 6; ++be) {
231 double MsqU_be = src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, be});
232 double M9_ae_be = src.get_val(ParameterType::WILSON, "MATRIX_BSM", {9, ae, be});
233 double M9_be_ce = 0.0;
234
235 for (int ce = 0; ce < 6; ++ce) {
236 double MsqU_ce = src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ce});
237 double y = std::pow(MsqU_ce / Mch, 2.0);
238 M9_be_ce = src.get_val(ParameterType::WILSON, "MATRIX_BSM", {9, be, ce});
239 double aij_ce = src.get_val(ParameterType::WILSON, "MATRIX_BSM", {3, ie, ce, 2});
240
241 C4four_2 += ratio_W_Mch * M9_ae_be * (MsqU_be / Mch) * M9_be_ce *
242 (1.0 + log_mu) * aij * aij_ce * q61(x, y);
243 }
244 }
245 }
246 }
247
248 C4charg_2 *= src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", 19);
249 C4four_2 *= src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", 19);
250
251 double C4H_2 = G4H(yt, lu) + Delta4H(yt, lu) * std::log(std::pow(Q_match / mH, 2.0));
252
253 return scalar_t(C4charg_2 + C4four_2 + C4H_2);
254}
255
258 {
259 {ParameterType::WILSON, "WPARAM_SI_BSM", 7}, // lu
260 {ParameterType::WILSON, "WPARAM_MATCH_BSM", 1}, // yt
261 {ParameterType::WILSON, "EW_SCALE", 1}, // Q_match
262 {ParameterType::BSM, "MASS", 37}, // mH
263 {ParameterType::SM, "MASS", 24}, // mW
264 {ParameterType::WILSON, "WPARAM_SI_BSM", {13, 0}}, // Mch
265 {ParameterType::WILSON, "WPARAM_SI_BSM", {13, 1}},
266 {ParameterType::WILSON, "WPARAM_SI_BSM", {14, 0}}, // MsqU
267 {ParameterType::WILSON, "WPARAM_SI_BSM", {14, 1}},
268 {ParameterType::WILSON, "WPARAM_SI_BSM", {14, 2}},
269 {ParameterType::WILSON, "WPARAM_SI_BSM", {14, 3}},
270 {ParameterType::WILSON, "WPARAM_SI_BSM", {14, 4}},
271 {ParameterType::WILSON, "WPARAM_SI_BSM", {14, 5}},
272 {ParameterType::WILSON, "MATRIX_BSM", {3, 0, 0, 1}}, {ParameterType::WILSON, "MATRIX_BSM", {3, 0, 0, 2}},
273 {ParameterType::WILSON, "MATRIX_BSM", {3, 0, 1, 1}}, {ParameterType::WILSON, "MATRIX_BSM", {3, 0, 1, 2}},
274 {ParameterType::WILSON, "MATRIX_BSM", {3, 0, 2, 1}}, {ParameterType::WILSON, "MATRIX_BSM", {3, 0, 2, 2}},
275 {ParameterType::WILSON, "MATRIX_BSM", {3, 0, 3, 1}}, {ParameterType::WILSON, "MATRIX_BSM", {3, 0, 3, 2}},
276 {ParameterType::WILSON, "MATRIX_BSM", {3, 0, 4, 1}}, {ParameterType::WILSON, "MATRIX_BSM", {3, 0, 4, 2}},
277 {ParameterType::WILSON, "MATRIX_BSM", {3, 0, 5, 1}}, {ParameterType::WILSON, "MATRIX_BSM", {3, 0, 5, 2}},
278 {ParameterType::WILSON, "MATRIX_BSM", {3, 1, 0, 1}}, {ParameterType::WILSON, "MATRIX_BSM", {3, 1, 0, 2}},
279 {ParameterType::WILSON, "MATRIX_BSM", {3, 1, 1, 1}}, {ParameterType::WILSON, "MATRIX_BSM", {3, 1, 1, 2}},
280 {ParameterType::WILSON, "MATRIX_BSM", {3, 1, 2, 1}}, {ParameterType::WILSON, "MATRIX_BSM", {3, 1, 2, 2}},
281 {ParameterType::WILSON, "MATRIX_BSM", {3, 1, 3, 1}}, {ParameterType::WILSON, "MATRIX_BSM", {3, 1, 3, 2}},
282 {ParameterType::WILSON, "MATRIX_BSM", {3, 1, 4, 1}}, {ParameterType::WILSON, "MATRIX_BSM", {3, 1, 4, 2}},
283 {ParameterType::WILSON, "MATRIX_BSM", {3, 1, 5, 1}}, {ParameterType::WILSON, "MATRIX_BSM", {3, 1, 5, 2}},
284 {ParameterType::WILSON, "WPARAM_SI_BSM", 19}
285 },
288 };
289}
290
292 double lu = src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", 7);
293 double yt = src.get_val(ParameterType::WILSON, "WPARAM_MATCH_BSM", 1);
294 double Q_match = src.get_val(ParameterType::WILSON, "EW_SCALE", 1);;
295 double mW = src.get_val(ParameterType::SM, "MASS", 24);
296 double mH = src.get_val(ParameterType::BSM, "MASS", 37);
297
298 complex_t C3charg_2 = 0.0;
299 complex_t C4charg_1 = 0.0;
300
301 for (int ie = 0; ie < 2; ++ie) {
302 double Mch = src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie});
303
304 for (int ae = 0; ae < 6; ++ae) {
305 double MsqU = src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae});
306 double x = std::pow(MsqU / Mch, 2.0);
307 double logx = std::log(std::pow(Q_match / MsqU, 2.0));
308 double aij = src.get_val(ParameterType::WILSON, "MATRIX_BSM", {3, ie, ae, 1});
309 double bij = src.get_val(ParameterType::WILSON, "MATRIX_BSM", {3, ie, ae, 2});
310
311 double ratio_mass_W_Mch = std::pow(mW / Mch, 2.0);
312
313 C3charg_2 += ratio_mass_W_Mch * aij * bij * h71(x, logx);
314 C4charg_1 += ratio_mass_W_Mch * aij * bij * h40(x);
315 }
316 }
317
318 double kappa = src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", 19);
319 C3charg_2 *= kappa;
320 C4charg_1 *= kappa;
321
322 complex_t C5charg_2 = -C3charg_2 / 10.0 + (2.0 / 15.0) * C4charg_1;
323
324 double C4H_1 = EH(yt, lu);
325 double C3H_2 = G3H(yt, lu) + Delta3H(yt, lu) * std::log(std::pow(Q_match / mH, 2.0));
326 double C5H_2 = -C3H_2 / 10.0 + (2.0 / 15.0) * C4H_1;
327
328 return scalar_t(C5charg_2 + C5H_2);
329}
330
333 {
334 {ParameterType::WILSON, "WPARAM_SI_BSM", 7}, // lu
335 {ParameterType::WILSON, "WPARAM_MATCH_BSM", 1}, // yt
336 {ParameterType::WILSON, "EW_SCALE", 1}, // Q_match
337 {ParameterType::BSM, "MASS", 37}, // mH
338 {ParameterType::SM, "MASS", 24}, // mW
339 {ParameterType::WILSON, "WPARAM_SI_BSM", {13, 0}}, // Mch
340 {ParameterType::WILSON, "WPARAM_SI_BSM", {13, 1}},
341 {ParameterType::WILSON, "WPARAM_SI_BSM", {14, 0}}, // MsqU
342 {ParameterType::WILSON, "WPARAM_SI_BSM", {14, 1}},
343 {ParameterType::WILSON, "WPARAM_SI_BSM", {14, 2}},
344 {ParameterType::WILSON, "WPARAM_SI_BSM", {14, 3}},
345 {ParameterType::WILSON, "WPARAM_SI_BSM", {14, 4}},
346 {ParameterType::WILSON, "WPARAM_SI_BSM", {14, 5}},
347 {ParameterType::WILSON, "MATRIX_BSM", {3, 0, 0, 1}}, {ParameterType::WILSON, "MATRIX_BSM", {3, 0, 0, 2}},
348 {ParameterType::WILSON, "MATRIX_BSM", {3, 0, 1, 1}}, {ParameterType::WILSON, "MATRIX_BSM", {3, 0, 1, 2}},
349 {ParameterType::WILSON, "MATRIX_BSM", {3, 0, 2, 1}}, {ParameterType::WILSON, "MATRIX_BSM", {3, 0, 2, 2}},
350 {ParameterType::WILSON, "MATRIX_BSM", {3, 0, 3, 1}}, {ParameterType::WILSON, "MATRIX_BSM", {3, 0, 3, 2}},
351 {ParameterType::WILSON, "MATRIX_BSM", {3, 0, 4, 1}}, {ParameterType::WILSON, "MATRIX_BSM", {3, 0, 4, 2}},
352 {ParameterType::WILSON, "MATRIX_BSM", {3, 0, 5, 1}}, {ParameterType::WILSON, "MATRIX_BSM", {3, 0, 5, 2}},
353 {ParameterType::WILSON, "MATRIX_BSM", {3, 1, 0, 1}}, {ParameterType::WILSON, "MATRIX_BSM", {3, 1, 0, 2}},
354 {ParameterType::WILSON, "MATRIX_BSM", {3, 1, 1, 1}}, {ParameterType::WILSON, "MATRIX_BSM", {3, 1, 1, 2}},
355 {ParameterType::WILSON, "MATRIX_BSM", {3, 1, 2, 1}}, {ParameterType::WILSON, "MATRIX_BSM", {3, 1, 2, 2}},
356 {ParameterType::WILSON, "MATRIX_BSM", {3, 1, 3, 1}}, {ParameterType::WILSON, "MATRIX_BSM", {3, 1, 3, 2}},
357 {ParameterType::WILSON, "MATRIX_BSM", {3, 1, 4, 1}}, {ParameterType::WILSON, "MATRIX_BSM", {3, 1, 4, 2}},
358 {ParameterType::WILSON, "MATRIX_BSM", {3, 1, 5, 1}}, {ParameterType::WILSON, "MATRIX_BSM", {3, 1, 5, 2}},
359 {ParameterType::WILSON, "WPARAM_SI_BSM", 19} // kappa
360 },
363 };
364}
365
367 double lu = src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", 7);
368 double yt = src.get_val(ParameterType::WILSON, "WPARAM_MATCH_BSM", 1);
369 double Q_match = src.get_val(ParameterType::WILSON, "EW_SCALE", 1);;
370 double mW = src.get_val(ParameterType::SM, "MASS", 24);
371 double mH = src.get_val(ParameterType::BSM, "MASS", 37);
372
373 complex_t C3charg_2 = 0.0;
374 complex_t C4charg_1 = 0.0;
375
376 for (int ie = 0; ie < 2; ++ie) {
377 double Mch = src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie});
378
379 for (int ae = 0; ae < 6; ++ae) {
380 double MsqU = src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae});
381 double x = std::pow(MsqU / Mch, 2.0);
382 double logx = std::log(std::pow(Q_match / MsqU, 2.0));
383
384 double aij = src.get_val(ParameterType::WILSON, "MATRIX_BSM", {3, ie, ae, 1});
385 double bij = src.get_val(ParameterType::WILSON, "MATRIX_BSM", {3, ie, ae, 2});
386
387 double ratio_mass_W_Mch = std::pow(mW / Mch, 2.0);
388
389 C3charg_2 += ratio_mass_W_Mch * aij * bij * h71(x, logx);
390 C4charg_1 += ratio_mass_W_Mch * aij * bij * h40(x);
391 }
392 }
393
394 double kappa = src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", 19);
395 C3charg_2 *= kappa;
396 C4charg_1 *= kappa;
397
398 complex_t C6charg_2 = -3.0 / 16.0 * C3charg_2 + 1.0 / 4.0 * C4charg_1;
399
400 complex_t C4H_1 = EH(yt, lu);
401 complex_t C3H_2 = G3H(yt, lu) + Delta3H(yt, lu) * std::log(std::pow(Q_match / mH, 2.0));
402 complex_t C6H_2 = -3.0 / 16.0 * C3H_2 + 1.0 / 4.0 * C4H_1;
403
404 return scalar_t(C6charg_2 + C6H_2);
405}
406
409 {
410 {ParameterType::WILSON, "WPARAM_MATCH_SM", {5,1}},
411 {ParameterType::WILSON, "WPARAM_MATCH_SM", 6},
412 {ParameterType::SM, "MASS", 24},
413 // {ParameterType::WILSON, "EW_SCALE", 1}, // mW
414 {ParameterType::WILSON, "WPARAM_SI_BSM", 19}, // kappa
415 {ParameterType::WILSON, "WPARAM_SI_BSM", 7}, // lu
416 {ParameterType::WILSON, "WPARAM_SI_BSM", 8}, // ld
417 {ParameterType::WILSON, "WPARAM_SI_BSM", {13, 0}}, // Mch
418 {ParameterType::WILSON, "WPARAM_SI_BSM", {13, 1}},
419 {ParameterType::WILSON, "WPARAM_SI_BSM", {14, 0}}, // MsqU
420 {ParameterType::WILSON, "WPARAM_SI_BSM", {14, 1}},
421 {ParameterType::WILSON, "WPARAM_SI_BSM", {14, 2}},
422 {ParameterType::WILSON, "WPARAM_SI_BSM", {14, 3}},
423 {ParameterType::WILSON, "WPARAM_SI_BSM", {14, 4}},
424 {ParameterType::WILSON, "WPARAM_SI_BSM", {14, 5}},
425 {ParameterType::WILSON, "MATRIX_BSM", {3, 0, 0, 1}}, {ParameterType::WILSON, "MATRIX_BSM", {3, 0, 0, 2}},
426 {ParameterType::WILSON, "MATRIX_BSM", {3, 0, 1, 1}}, {ParameterType::WILSON, "MATRIX_BSM", {3, 0, 1, 2}},
427 {ParameterType::WILSON, "MATRIX_BSM", {3, 0, 2, 1}}, {ParameterType::WILSON, "MATRIX_BSM", {3, 0, 2, 2}},
428 {ParameterType::WILSON, "MATRIX_BSM", {3, 0, 3, 1}}, {ParameterType::WILSON, "MATRIX_BSM", {3, 0, 3, 2}},
429 {ParameterType::WILSON, "MATRIX_BSM", {3, 0, 4, 1}}, {ParameterType::WILSON, "MATRIX_BSM", {3, 0, 4, 2}},
430 {ParameterType::WILSON, "MATRIX_BSM", {3, 0, 5, 1}}, {ParameterType::WILSON, "MATRIX_BSM", {3, 0, 5, 2}},
431 {ParameterType::WILSON, "MATRIX_BSM", {3, 1, 0, 1}}, {ParameterType::WILSON, "MATRIX_BSM", {3, 1, 0, 2}},
432 {ParameterType::WILSON, "MATRIX_BSM", {3, 1, 1, 1}}, {ParameterType::WILSON, "MATRIX_BSM", {3, 1, 1, 2}},
433 {ParameterType::WILSON, "MATRIX_BSM", {3, 1, 2, 1}}, {ParameterType::WILSON, "MATRIX_BSM", {3, 1, 2, 2}},
434 {ParameterType::WILSON, "MATRIX_BSM", {3, 1, 3, 1}}, {ParameterType::WILSON, "MATRIX_BSM", {3, 1, 3, 2}},
435 {ParameterType::WILSON, "MATRIX_BSM", {3, 1, 4, 1}}, {ParameterType::WILSON, "MATRIX_BSM", {3, 1, 4, 2}},
436 {ParameterType::WILSON, "MATRIX_BSM", {3, 1, 5, 1}}, {ParameterType::WILSON, "MATRIX_BSM", {3, 1, 5, 2}},
437
438 {ParameterType::WILSON, "MATRIX_BSM", {4, 0, 0, 1}}, {ParameterType::WILSON, "MATRIX_BSM", {4, 0, 0, 2}},
439 {ParameterType::WILSON, "MATRIX_BSM", {4, 0, 1, 1}}, {ParameterType::WILSON, "MATRIX_BSM", {4, 0, 1, 2}},
440 {ParameterType::WILSON, "MATRIX_BSM", {4, 0, 2, 1}}, {ParameterType::WILSON, "MATRIX_BSM", {4, 0, 2, 2}},
441 {ParameterType::WILSON, "MATRIX_BSM", {4, 0, 3, 1}}, {ParameterType::WILSON, "MATRIX_BSM", {4, 0, 3, 2}},
442 {ParameterType::WILSON, "MATRIX_BSM", {4, 0, 4, 1}}, {ParameterType::WILSON, "MATRIX_BSM", {4, 0, 4, 2}},
443 {ParameterType::WILSON, "MATRIX_BSM", {4, 0, 5, 1}}, {ParameterType::WILSON, "MATRIX_BSM", {4, 0, 5, 2}},
444 {ParameterType::WILSON, "MATRIX_BSM", {4, 1, 0, 1}}, {ParameterType::WILSON, "MATRIX_BSM", {4, 1, 0, 2}},
445 {ParameterType::WILSON, "MATRIX_BSM", {4, 1, 1, 1}}, {ParameterType::WILSON, "MATRIX_BSM", {4, 1, 1, 2}},
446 {ParameterType::WILSON, "MATRIX_BSM", {4, 1, 2, 1}}, {ParameterType::WILSON, "MATRIX_BSM", {4, 1, 2, 2}},
447 {ParameterType::WILSON, "MATRIX_BSM", {4, 1, 3, 1}}, {ParameterType::WILSON, "MATRIX_BSM", {4, 1, 3, 2}},
448 {ParameterType::WILSON, "MATRIX_BSM", {4, 1, 4, 1}}, {ParameterType::WILSON, "MATRIX_BSM", {4, 1, 4, 2}},
449 {ParameterType::WILSON, "MATRIX_BSM", {4, 1, 5, 1}}, {ParameterType::WILSON, "MATRIX_BSM", {4, 1, 5, 2}},
450 {ParameterType::WILSON, "WPARAM_MATCH_BSM", 1}, // yt
451 {ParameterType::WILSON, "WPARAM_MATCH_SM", {2,1}}, // xt
452 {ParameterType::WILSON, "WPARAM_MATCH_SM", {5,1}}, // mb(Q)
453 {ParameterType::WILSON, "EPSILON_SUSY", {0,1}}, // eps0
454 {ParameterType::WILSON, "EPSILON_SUSY", {0,2}}, // eps0'
455 {ParameterType::WILSON, "EPSILON_SUSY", 1}, // eps1'
456 {ParameterType::WILSON, "EPSILON_SUSY", 2}, // eps2
457 {ParameterType::WILSON, "EPSILON_SUSY", 3}, // epsb
458 {ParameterType::WILSON, "EPSILON_SUSY", 4}, // epsb'
459 {ParameterType::WILSON, "WPARAM_SI_BSM", 18}, // kappafactor
460 {ParameterType::BSM, "MINPAR", 3}, // tanb
461 {ParameterType::BSM, "ALPHA", {}}, // alpha
462 {ParameterType::BSM, "MASS", 25}, // mh
463 {ParameterType::BSM, "MASS", 35}, // mH0
464 {ParameterType::BSM, "MASS", 36}, // mA0
465 // {ParameterType::BSM, "MASS", 37}, // mH+
466 {ParameterType::BSM, "MASS", 45}, // mH03
467 {ParameterType::BSM, "MASS", 46}, // mA02
468 {ParameterType::BSM, "NMHMIX", {0+1, 0+1}}, {ParameterType::BSM, "NMHMIX", {0+1, 1+1}},
469 {ParameterType::BSM, "NMHMIX", {1+1, 0+1}}, {ParameterType::BSM, "NMHMIX", {1+1, 1+1}},
470 {ParameterType::BSM, "NMHMIX", {2+1, 0+1}}, {ParameterType::BSM, "NMHMIX", {2+1, 1+1}},
471 {ParameterType::BSM, "NMAMIX" , {0+1, 0+1}}, {ParameterType::BSM, "NMAMIX" , {0+1, 1+1}},
472 {ParameterType::BSM, "NMAMIX" , {1+1, 0+1}}, {ParameterType::BSM, "NMAMIX" , {1+1, 1+1}}
473 },
476 };
477
479 {
480 // {ParameterType::WILSON, "WPARAM_MATCH_SM", {2,1}},
481 {ParameterType::WILSON, "WPARAM_MATCH_SM", {5,1}},
482 {ParameterType::WILSON, "WPARAM_SI_BSM", 19}, // kappa
483 {ParameterType::WILSON, "WPARAM_SI_BSM", 7}, // lu
484 {ParameterType::WILSON, "WPARAM_SI_BSM", 8}, // ld
485 {ParameterType::WILSON, "WPARAM_MATCH_BSM", 1}, // yt
486 {ParameterType::WILSON, "EW_SCALE", 1}, // Q_match
487 {ParameterType::SM, "MASS", 24}, // mW
488 // {ParameterType::BSM, "MASS", 25}, // mh
489 // {ParameterType::BSM, "MASS", 35}, // mH0
490 {ParameterType::BSM, "MASS", 37}, // mH
491
492 {ParameterType::WILSON, "WPARAM_SI_BSM", {13,0}},
493 {ParameterType::WILSON, "WPARAM_SI_BSM", {13,1}},
494 {ParameterType::WILSON, "WPARAM_SI_BSM", {14, 0}}, // MsqU
495 {ParameterType::WILSON, "WPARAM_SI_BSM", {14, 1}},
496 {ParameterType::WILSON, "WPARAM_SI_BSM", {14, 2}},
497 {ParameterType::WILSON, "WPARAM_SI_BSM", {14, 3}},
498 {ParameterType::WILSON, "WPARAM_SI_BSM", {14, 4}},
499 {ParameterType::WILSON, "WPARAM_SI_BSM", {14, 5}},
500 {ParameterType::WILSON, "MATRIX_BSM", {3,0,0,1}},
501 {ParameterType::WILSON, "MATRIX_BSM", {3,0,0,2}},
502 {ParameterType::WILSON, "MATRIX_BSM", {3,0,1,1}},
503 {ParameterType::WILSON, "MATRIX_BSM", {3,0,1,2}},
504 {ParameterType::WILSON, "MATRIX_BSM", {3,0,2,1}},
505 {ParameterType::WILSON, "MATRIX_BSM", {3,0,2,2}},
506 {ParameterType::WILSON, "MATRIX_BSM", {3,0,3,1}},
507 {ParameterType::WILSON, "MATRIX_BSM", {3,0,3,2}},
508 {ParameterType::WILSON, "MATRIX_BSM", {3,0,4,1}},
509 {ParameterType::WILSON, "MATRIX_BSM", {3,0,4,2}},
510 {ParameterType::WILSON, "MATRIX_BSM", {3,0,5,1}},
511 {ParameterType::WILSON, "MATRIX_BSM", {3,0,5,2}},
512 {ParameterType::WILSON, "MATRIX_BSM", {3,1,0,1}},
513 {ParameterType::WILSON, "MATRIX_BSM", {3,1,0,2}},
514 {ParameterType::WILSON, "MATRIX_BSM", {3,1,1,1}},
515 {ParameterType::WILSON, "MATRIX_BSM", {3,1,1,2}},
516 {ParameterType::WILSON, "MATRIX_BSM", {3,1,2,1}},
517 {ParameterType::WILSON, "MATRIX_BSM", {3,1,2,2}},
518 {ParameterType::WILSON, "MATRIX_BSM", {3,1,3,1}},
519 {ParameterType::WILSON, "MATRIX_BSM", {3,1,3,2}},
520 {ParameterType::WILSON, "MATRIX_BSM", {3,1,4,1}},
521 {ParameterType::WILSON, "MATRIX_BSM", {3,1,4,2}},
522 {ParameterType::WILSON, "MATRIX_BSM", {3,1,5,1}},
523 {ParameterType::WILSON, "MATRIX_BSM", {3,1,5,2}},
524
525 {ParameterType::WILSON, "MATRIX_BSM", {4,0,0,2}},
526 {ParameterType::WILSON, "MATRIX_BSM", {4,0,1,2}},
527 {ParameterType::WILSON, "MATRIX_BSM", {4,0,2,2}},
528 {ParameterType::WILSON, "MATRIX_BSM", {4,0,3,2}},
529 {ParameterType::WILSON, "MATRIX_BSM", {4,0,4,2}},
530 {ParameterType::WILSON, "MATRIX_BSM", {4,0,5,2}},
531 {ParameterType::WILSON, "MATRIX_BSM", {4,1,0,2}},
532 {ParameterType::WILSON, "MATRIX_BSM", {4,1,1,2}},
533 {ParameterType::WILSON, "MATRIX_BSM", {4,1,2,2}},
534 {ParameterType::WILSON, "MATRIX_BSM", {4,1,3,2}},
535 {ParameterType::WILSON, "MATRIX_BSM", {4,1,4,2}},
536 {ParameterType::WILSON, "MATRIX_BSM", {4,1,5,2}},
537
538 {ParameterType::WILSON, "MATRIX_BSM", {9,0,0}},
539 {ParameterType::WILSON, "MATRIX_BSM", {9,0,1}},
540 {ParameterType::WILSON, "MATRIX_BSM", {9,0,2}},
541 {ParameterType::WILSON, "MATRIX_BSM", {9,0,3}},
542 {ParameterType::WILSON, "MATRIX_BSM", {9,0,4}},
543 {ParameterType::WILSON, "MATRIX_BSM", {9,0,5}},
544 {ParameterType::WILSON, "MATRIX_BSM", {9,1,0}},
545 {ParameterType::WILSON, "MATRIX_BSM", {9,1,1}},
546 {ParameterType::WILSON, "MATRIX_BSM", {9,1,2}},
547 {ParameterType::WILSON, "MATRIX_BSM", {9,1,3}},
548 {ParameterType::WILSON, "MATRIX_BSM", {9,1,4}},
549 {ParameterType::WILSON, "MATRIX_BSM", {9,1,5}},
550 {ParameterType::WILSON, "MATRIX_BSM", {9,2,0}},
551 {ParameterType::WILSON, "MATRIX_BSM", {9,2,1}},
552 {ParameterType::WILSON, "MATRIX_BSM", {9,2,2}},
553 {ParameterType::WILSON, "MATRIX_BSM", {9,2,3}},
554 {ParameterType::WILSON, "MATRIX_BSM", {9,2,4}},
555 {ParameterType::WILSON, "MATRIX_BSM", {9,2,5}},
556 {ParameterType::WILSON, "MATRIX_BSM", {9,3,0}},
557 {ParameterType::WILSON, "MATRIX_BSM", {9,3,1}},
558 {ParameterType::WILSON, "MATRIX_BSM", {9,3,2}},
559 {ParameterType::WILSON, "MATRIX_BSM", {9,3,3}},
560 {ParameterType::WILSON, "MATRIX_BSM", {9,3,4}},
561 {ParameterType::WILSON, "MATRIX_BSM", {9,3,5}},
562 {ParameterType::WILSON, "MATRIX_BSM", {9,4,0}},
563 {ParameterType::WILSON, "MATRIX_BSM", {9,4,1}},
564 {ParameterType::WILSON, "MATRIX_BSM", {9,4,2}},
565 {ParameterType::WILSON, "MATRIX_BSM", {9,4,3}},
566 {ParameterType::WILSON, "MATRIX_BSM", {9,4,4}},
567 {ParameterType::WILSON, "MATRIX_BSM", {9,4,5}},
568 {ParameterType::WILSON, "MATRIX_BSM", {9,5,0}},
569 {ParameterType::WILSON, "MATRIX_BSM", {9,5,1}},
570 {ParameterType::WILSON, "MATRIX_BSM", {9,5,2}},
571 {ParameterType::WILSON, "MATRIX_BSM", {9,5,3}},
572 {ParameterType::WILSON, "MATRIX_BSM", {9,5,4}},
573 {ParameterType::WILSON, "MATRIX_BSM", {9,5,5}}
574 },
577 };
579 {
580 {ParameterType::WILSON, "WPARAM_SI_BSM", 7}, // lu
581 {ParameterType::WILSON, "WPARAM_SI_BSM", 8}, // ld
582 {ParameterType::WILSON, "WPARAM_MATCH_BSM", 1}, // yt
583 {ParameterType::WILSON, "EW_SCALE", 1}, // Q_match
584 {ParameterType::WILSON, "WPARAM_MATCH_SM", 6} // mass_top_muW
585 },
588 };
589}
590
592
593 double xt = src.get_val(ParameterType::WILSON, "WPARAM_MATCH_SM", {2,1});
594 double lu = src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", 7);
595 double ld = src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", 8);
596 double yt = src.get_val(ParameterType::WILSON, "WPARAM_MATCH_BSM", 1);
597 // double Q_match = src.get_val(ParameterType::WILSON, "EW_SCALE", 1);;
598 double mW = src.get_val(ParameterType::SM, "MASS", 24);
599 // double mH = src.get_val(ParameterType::BSM, "MASS", 37);
600 double tanb = src.get_val(ParameterType::BSM, "MINPAR", 3);
601 double alpha = src.get_val(ParameterType::BSM, "ALPHA", {});
602 double mH0 = src.get_val(ParameterType::BSM, "MASS", 35);
603 double mh = src.get_val(ParameterType::BSM, "MASS", 25);
604 double mA0 = src.get_val(ParameterType::BSM, "MASS", 36);
605 double mass_b_muW = src.get_val(ParameterType::WILSON, "WPARAM_MATCH_SM", {5,1});
606
607 // std::cout << "mass_b_muW : " << mass_b_muW << std::endl;
608 // std::cout << "xt : " << xt << std::endl;
609 // std::cout << "yt : " << yt << std::endl;
610 // std::cout << "lu : " << lu << std::endl;
611 // std::cout << "ld : " << ld << std::endl;
612
613 double epsilon0 = src.get_val(ParameterType::WILSON, "EPSILON_SUSY", {0,1});
614 double epsilon0p = src.get_val(ParameterType::WILSON, "EPSILON_SUSY", {0,2});
615 double epsilon1p = src.get_val(ParameterType::WILSON, "EPSILON_SUSY", 1);
616 double epsilon2 = src.get_val(ParameterType::WILSON, "EPSILON_SUSY", 2);
617 double epsilonb = src.get_val(ParameterType::WILSON, "EPSILON_SUSY", 3);
618 double epsilonbp = src.get_val(ParameterType::WILSON, "EPSILON_SUSY", 4);
619
620 double m_H03 = src.get_val(ParameterType::BSM, "MASS", 45);
621 double m_A02 = src.get_val(ParameterType::BSM, "MASS", 46);
622
623 complex_t C7SMeps_0 = (epsilonb - epsilonbp) / (1. + epsilonb * tanb) * tanb * F7_2(xt);
624 complex_t C7Heps_0 = (-epsilon0p - epsilonb) / (1. + epsilonb * tanb) * tanb * F7_2(yt);
625
626 // std::cout << "epsilon0" << epsilon0 << std::endl;
627 // std::cout << "epsilon2" << epsilon2 << std::endl;
628 // std::cout << "epsilonb" << epsilonb << std::endl;
629 // std::cout << "epsilon0p" << epsilon0p << std::endl;
630 // std::cout << "epsilonbp" << epsilonbp << std::endl;
631 // std::cout << "epsilon1p" << epsilon1p << std::endl;
632 // std::cout << "tanb" << tanb << std::endl;
633
634 // std::cout << "alpha" << alpha << std::endl;
635 // std::cout << "mh" << mh << std::endl;
636 // std::cout << "mH0" << mH0 << std::endl;
637
638 // std::cout << "mW" << mW << std::endl;
639 complex_t C7Heps2_0 = 0.;
640
641 // MAJ : Use MODSEL block instead
642 if ((m_A02 == 0.) && (m_H03 == 0.)) {
643 C7Heps2_0 = -epsilon2 * epsilon1p * pow(tanb, 2.) / (1. + epsilonb * tanb) / (1. + epsilon0 * tanb) * F7_2(yt);
644 C7Heps2_0 += epsilon2 / pow(1. + epsilonb * tanb, 2.) * (1. + pow(tanb, 2.)) / (1. + epsilon0 * tanb) / 72. *
645 ((cos(alpha) + sin(alpha) * tanb) * (-sin(alpha) + epsilonb * cos(alpha)) * pow(mass_b_muW / mh, 2.) +
646 (sin(alpha) - cos(alpha) * tanb) * (cos(alpha) + epsilonb * sin(alpha)) * pow(mass_b_muW / mH0, 2.) +
647 (-cos(atan(tanb)) - sin(atan(tanb)) * tanb) * (sin(atan(tanb)) - epsilonb * cos(atan(tanb))) * pow(mass_b_muW / mA0, 2.));
648 } else {
649 C7Heps2_0 = -epsilon2 * epsilon1p * pow(tanb, 2.) / (1. + epsilonb * tanb) / (1. + epsilon0 * tanb) * F7_2(yt);
650 C7Heps2_0 += epsilon2 / pow(1. + epsilonb * tanb, 2.) * (1. + pow(tanb, 2.)) / (1. + epsilon0 * tanb) / 72. *
651 ((src.get_val(ParameterType::BSM, "NMHMIX", {0+1, 0+1}) + src.get_val(ParameterType::BSM, "NMHMIX", {0+1, 1+1}) * tanb) *
652 (-src.get_val(ParameterType::BSM, "NMHMIX", {0+1, 1+1}) + epsilonb * src.get_val(ParameterType::BSM, "NMHMIX", {0+1, 0+1})) * pow(mass_b_muW / mh, 2.) +
653 (src.get_val(ParameterType::BSM, "NMHMIX", {1+1, 0+1}) + src.get_val(ParameterType::BSM, "NMHMIX", {1+1, 1+1}) * tanb) *
654 (-src.get_val(ParameterType::BSM, "NMHMIX", {1+1, 1+1}) + epsilonb * src.get_val(ParameterType::BSM, "NMHMIX", {1+1, 0+1})) * pow(mass_b_muW / mH0, 2.) +
655 (src.get_val(ParameterType::BSM, "NMHMIX", {2+1, 0+1}) + src.get_val(ParameterType::BSM, "NMHMIX", {2+1, 1+1}) * tanb) *
656 (-src.get_val(ParameterType::BSM, "NMHMIX", {2+1, 1+1}) + epsilonb * src.get_val(ParameterType::BSM, "NMHMIX", {2+1, 0+1})) * pow(mass_b_muW / m_H03, 2.) +
657 (src.get_val(ParameterType::BSM, "NMAMIX", {0+1, 0+1}) + src.get_val(ParameterType::BSM, "NMAMIX", {0+1, 1+1}) * tanb) *
658 (-src.get_val(ParameterType::BSM, "NMAMIX", {0+1, 1+1}) + epsilonb * src.get_val(ParameterType::BSM, "NMAMIX", {0+1, 0+1})) * pow(mass_b_muW / mA0, 2.) +
659 (src.get_val(ParameterType::BSM, "NMAMIX", {1+1, 0+1}) + src.get_val(ParameterType::BSM, "NMAMIX", {1+1, 1+1}) * tanb) *
660 (-src.get_val(ParameterType::BSM, "NMAMIX", {1+1, 1+1}) + epsilonb * src.get_val(ParameterType::BSM, "NMAMIX", {1+1, 0+1})) * pow(mass_b_muW / m_A02, 2.));
661 }
662
663 complex_t C7charg_0 = 0.0;
664 complex_t C7_chargeps_0 = 0.0;
665
666 auto calculateContribution = [src, mW, tanb, epsilonb](auto hFunc, int X, int X2, int ie, int ae, bool isChargeps) -> double {
667 double Mch = src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie});
668 double ratio = std::pow(mW / Mch, 2);
669 double x = pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae}) / Mch, 2);
670 double factor = isChargeps ? (-epsilonb / (1.0 + epsilonb * tanb) * tanb) : 1.0;
671
672 return ratio *
673 src.get_val(ParameterType::WILSON, "MATRIX_BSM", {X, ie, ae, 1}) *
674 src.get_val(ParameterType::WILSON, "MATRIX_BSM", {X2, ie, ae, 2}) *
675 hFunc(x) *
676 src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", 18) *
677 factor;
678 };
679 // std::cout << "mass_b_muW : " << mass_b_muW << std::endl;
680 for (int ie = 0; ie < 2; ++ie) {
681 for (int ae = 0; ae < 6; ++ae) {
682 double Mch = src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie});
683 C7charg_0 += calculateContribution(h10, 3, 3, ie, ae, false);
684 C7charg_0 += Mch / mass_b_muW * calculateContribution(h20, 3, 4, ie, ae, false);
685 C7_chargeps_0 += Mch / mass_b_muW * calculateContribution(h20, 3, 4, ie, ae, true);
686 }
687 }
688
689 complex_t C7H_0 = 1. / 3. * lu * lu * F7_1(yt) - lu * ld * F7_2(yt);
690
691 return scalar_t(C7SMeps_0 + C7Heps_0 + C7Heps2_0 + C7charg_0 + C7_chargeps_0 + C7H_0);
692}
693
695 double lu = src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", 7);
696 double ld = src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", 8);
697 double yt = src.get_val(ParameterType::WILSON, "WPARAM_MATCH_BSM", 1);
698 double Q_match = src.get_val(ParameterType::WILSON, "EW_SCALE", 1);;
699 double mW = src.get_val(ParameterType::SM, "MASS", 24);
700 double mH = src.get_val(ParameterType::BSM, "MASS", 37);
701 double mass_b_muW = src.get_val(ParameterType::WILSON, "WPARAM_MATCH_SM", {5, 1});
702
703 complex_t C7charg_1 = 0.0;
704 complex_t C7four_1 = 0.0;
705
706 for (int ie = 0; ie < 2; ++ie) {
707 double Mch_ie = src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie});
708 double ratio_W_Mch = std::pow(mW / Mch_ie, 2.0);
709
710 for (int ae = 0; ae < 6; ++ae) {
711 double MsqU_ae = src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae});
712 double x = std::pow(MsqU_ae / Mch_ie, 2.0);
713 double log_mu = std::log(std::pow(Q_match / MsqU_ae, 2.0));
714
715 double aij = src.get_val(ParameterType::WILSON, "MATRIX_BSM", {3, ie, ae, 1});
716 double bij = src.get_val(ParameterType::WILSON, "MATRIX_BSM", {3, ie, ae, 2});
717 double cij = src.get_val(ParameterType::WILSON, "MATRIX_BSM", {4, ie, ae, 2});
718
719 C7charg_1 += ratio_W_Mch * (aij * bij * h11(x, log_mu) + Mch_ie / mass_b_muW * aij * cij * h21(x, log_mu));
720
721 for (int ce = 0; ce < 6; ++ce) {
722 double MsqU_ce = src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ce});
723 double log_ce = std::log(std::pow(Q_match / MsqU_ce, 2.0));
724 double ratio_ce_ie = MsqU_ce / Mch_ie;
725
726 for (int de = 0; de < 6; ++de) {
727 double MsqU_de = src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, de});
728 double x_ae = std::pow(MsqU_ae / Mch_ie, 2.0);
729 double x_de = std::pow(MsqU_de / Mch_ie, 2.0);
730
731 double Nij = src.get_val(ParameterType::WILSON, "MATRIX_BSM", {9, ae, ce});
732 double Ncd = src.get_val(ParameterType::WILSON, "MATRIX_BSM", {9, ce, de});
733
734 double bde = src.get_val(ParameterType::WILSON, "MATRIX_BSM", {3, ie, de, 2});
735 double cde = src.get_val(ParameterType::WILSON, "MATRIX_BSM", {4, ie, de, 2});
736
737 C7four_1 += ratio_W_Mch * Nij * ratio_ce_ie * Ncd * (1.0 + log_ce) * (
738 aij * bde * (-q11(x_ae, x_de) + 2.0 / 3.0 * q21(x_ae, x_de)) +
739 Mch_ie / mass_b_muW * aij * cde * (-q31(x_ae, x_de) + 2.0 / 3.0 * q41(x_ae, x_de))
740 );
741 }
742 }
743 }
744 }
745
746 C7charg_1 *= -0.5 * src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", 19); // kappa
747 C7four_1 *= -0.5 * src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", 19); // kappa
748 complex_t C7H_1 = G7H(yt, lu, ld) + Delta7H(yt, lu, ld) * std::log(std::pow(Q_match / mH, 2.0)) - 4.0 / 9.0 * EH(yt, lu);
749
750 return scalar_t(C7charg_1 + C7four_1 + C7H_1);
751}
752
754 double lu = src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", 7);
755 double ld = src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", 8);
756 double yt = src.get_val(ParameterType::WILSON, "WPARAM_MATCH_BSM", 1);
757 double Q_match = src.get_val(ParameterType::WILSON, "EW_SCALE", 1);;
758 double mass_top_muW = src.get_val(ParameterType::WILSON, "WPARAM_MATCH_SM", 6);
759
760 double log_term = std::log(std::pow(Q_match / mass_top_muW, 2.0));
761
762 double coeff_temp = C7H2(yt, lu, ld, log_term);
763
764 return scalar_t(coeff_temp);
765}
766
769 {
770 {ParameterType::WILSON, "WPARAM_SI_BSM", 7}, // lu
771 {ParameterType::WILSON, "WPARAM_SI_BSM", 8}, // ld
772 {ParameterType::WILSON, "WPARAM_MATCH_BSM", 1}, // yt
773 // {ParameterType::WILSON, "EW_SCALE", 1}, // Q_match
774 {ParameterType::WILSON, "WPARAM_MATCH_SM", {2,1}}, // xt
775 {ParameterType::WILSON, "WPARAM_MATCH_SM", {5,1}}, // mass_b_muW
776 {ParameterType::SM, "MASS", 24}, // mW
777 {ParameterType::BSM, "MASS", 25}, // mh
778 {ParameterType::BSM, "MASS", 35}, // mH0
779 {ParameterType::BSM, "MASS", 36}, // mA0
780 // {ParameterType::BSM, "MASS", 37}, // mH
781 {ParameterType::BSM, "MASS", 45}, // mH03
782 {ParameterType::BSM, "MASS", 46}, // mA02
783 {ParameterType::BSM, "MINPAR", 3}, // tanb
784 {ParameterType::BSM, "ALPHA", {}}, // alpha
785
786 // EPSILON_SUSY parameters
787 {ParameterType::WILSON, "EPSILON_SUSY", {0,1}},
788 {ParameterType::WILSON, "EPSILON_SUSY", {0,2}},
789 {ParameterType::WILSON, "EPSILON_SUSY", 1},
790 {ParameterType::WILSON, "EPSILON_SUSY", 2},
791 {ParameterType::WILSON, "EPSILON_SUSY", 3},
792 {ParameterType::WILSON, "EPSILON_SUSY", 4},
793
794 // HMIX & AMIX matrix elements used in the else branch
795 {ParameterType::BSM, "NMHMIX", {0+1, 0+1}},
796 {ParameterType::BSM, "NMHMIX", {0+1, 1+1}},
797 {ParameterType::BSM, "NMHMIX", {1+1, 0+1}},
798 {ParameterType::BSM, "NMHMIX", {1+1, 1+1}},
799 {ParameterType::BSM, "NMHMIX", {2+1, 0+1}},
800 {ParameterType::BSM, "NMHMIX", {2+1, 1+1}},
801 // {ParameterType::BSM, "NMHMIX", {3+1, 0+1}},
802 {ParameterType::BSM, "NMAMIX" , {0+1, 0+1}},
803 {ParameterType::BSM, "NMAMIX" , {0+1, 1+1}},
804 {ParameterType::BSM, "NMAMIX" , {1+1, 0+1}},
805 {ParameterType::BSM, "NMAMIX" , {1+1, 1+1}},
806
807 // Additional WPARAM_SI_BSM entries for calculateContribution
808 {ParameterType::WILSON, "WPARAM_SI_BSM", {13,0}},
809 {ParameterType::WILSON, "WPARAM_SI_BSM", {13,1}},
810 {ParameterType::WILSON, "WPARAM_SI_BSM", {14,0}},
811 {ParameterType::WILSON, "WPARAM_SI_BSM", {14,1}},
812 {ParameterType::WILSON, "WPARAM_SI_BSM", {14,2}},
813 {ParameterType::WILSON, "WPARAM_SI_BSM", {14,3}},
814 {ParameterType::WILSON, "WPARAM_SI_BSM", {14,4}},
815 {ParameterType::WILSON, "WPARAM_SI_BSM", {14,5}},
816 {ParameterType::WILSON, "WPARAM_SI_BSM", 18}, // kappafactor
817
818 // Matrices MATRIX_BSM (h50 and h60 contributions)
819 {ParameterType::WILSON, "MATRIX_BSM", {3,0,0,1}},
820 {ParameterType::WILSON, "MATRIX_BSM", {3,0,0,2}},
821 {ParameterType::WILSON, "MATRIX_BSM", {3,0,1,1}},
822 {ParameterType::WILSON, "MATRIX_BSM", {3,0,1,2}},
823 {ParameterType::WILSON, "MATRIX_BSM", {3,0,2,1}},
824 {ParameterType::WILSON, "MATRIX_BSM", {3,0,2,2}},
825 {ParameterType::WILSON, "MATRIX_BSM", {3,0,3,1}},
826 {ParameterType::WILSON, "MATRIX_BSM", {3,0,3,2}},
827 {ParameterType::WILSON, "MATRIX_BSM", {3,0,4,1}},
828 {ParameterType::WILSON, "MATRIX_BSM", {3,0,4,2}},
829 {ParameterType::WILSON, "MATRIX_BSM", {3,0,5,1}},
830 {ParameterType::WILSON, "MATRIX_BSM", {3,0,5,2}},
831 {ParameterType::WILSON, "MATRIX_BSM", {3,1,0,1}},
832 {ParameterType::WILSON, "MATRIX_BSM", {3,1,0,2}},
833 {ParameterType::WILSON, "MATRIX_BSM", {3,1,1,1}},
834 {ParameterType::WILSON, "MATRIX_BSM", {3,1,1,2}},
835 {ParameterType::WILSON, "MATRIX_BSM", {3,1,2,1}},
836 {ParameterType::WILSON, "MATRIX_BSM", {3,1,2,2}},
837 {ParameterType::WILSON, "MATRIX_BSM", {3,1,3,1}},
838 {ParameterType::WILSON, "MATRIX_BSM", {3,1,3,2}},
839 {ParameterType::WILSON, "MATRIX_BSM", {3,1,4,1}},
840 {ParameterType::WILSON, "MATRIX_BSM", {3,1,4,2}},
841 {ParameterType::WILSON, "MATRIX_BSM", {3,1,5,1}},
842 {ParameterType::WILSON, "MATRIX_BSM", {3,1,5,2}},
843
844 {ParameterType::WILSON, "MATRIX_BSM", {4,0,0,2}},
845 {ParameterType::WILSON, "MATRIX_BSM", {4,0,1,2}},
846 {ParameterType::WILSON, "MATRIX_BSM", {4,0,2,2}},
847 {ParameterType::WILSON, "MATRIX_BSM", {4,0,3,2}},
848 {ParameterType::WILSON, "MATRIX_BSM", {4,0,4,2}},
849 {ParameterType::WILSON, "MATRIX_BSM", {4,0,5,2}},
850 {ParameterType::WILSON, "MATRIX_BSM", {4,1,0,2}},
851 {ParameterType::WILSON, "MATRIX_BSM", {4,1,1,2}},
852 {ParameterType::WILSON, "MATRIX_BSM", {4,1,2,2}},
853 {ParameterType::WILSON, "MATRIX_BSM", {4,1,3,2}},
854 {ParameterType::WILSON, "MATRIX_BSM", {4,1,4,2}},
855 {ParameterType::WILSON, "MATRIX_BSM", {4,1,5,2}}
856 },
859 };
860
862 {
863 {ParameterType::WILSON, "WPARAM_SI_BSM", 7}, // lu
864 {ParameterType::WILSON, "WPARAM_SI_BSM", 8}, // ld
865 {ParameterType::WILSON, "WPARAM_MATCH_BSM", 1}, // yt
866 {ParameterType::WILSON, "EW_SCALE", 1}, // Q_match
867 // {ParameterType::WILSON, "WPARAM_MATCH_SM", {2,1}}, // xt
868 {ParameterType::SM, "MASS", 24}, // mW
869 {ParameterType::BSM, "MASS", 37}, // mH
870 {ParameterType::BSM, "MINPAR", 3}, // tanb
871 {ParameterType::BSM, "ALPHA", {}}, // alpha
872 {ParameterType::BSM, "MASS", 35}, // mH0
873 {ParameterType::BSM, "MASS", 25}, // mh
874 {ParameterType::BSM, "MASS", 36}, // mA0
875 {ParameterType::WILSON, "WPARAM_MATCH_SM", {5,1}}, // mass_b_muW
876 {ParameterType::WILSON, "WPARAM_SI_BSM", 19}, //kappa
877 {ParameterType::WILSON, "WPARAM_SI_BSM", {13,0}},
878 {ParameterType::WILSON, "WPARAM_SI_BSM", {13,1}},
879 {ParameterType::WILSON, "WPARAM_SI_BSM", {14,0}},
880 {ParameterType::WILSON, "WPARAM_SI_BSM", {14,1}},
881 {ParameterType::WILSON, "WPARAM_SI_BSM", {14,2}},
882 {ParameterType::WILSON, "WPARAM_SI_BSM", {14,3}},
883 {ParameterType::WILSON, "WPARAM_SI_BSM", {14,4}},
884 {ParameterType::WILSON, "WPARAM_SI_BSM", {14,5}},
885
886 {ParameterType::WILSON, "MATRIX_BSM", {3,0,0,1}},
887 {ParameterType::WILSON, "MATRIX_BSM", {3,0,0,2}},
888 {ParameterType::WILSON, "MATRIX_BSM", {3,0,1,1}},
889 {ParameterType::WILSON, "MATRIX_BSM", {3,0,1,2}},
890 {ParameterType::WILSON, "MATRIX_BSM", {3,0,2,1}},
891 {ParameterType::WILSON, "MATRIX_BSM", {3,0,2,2}},
892 {ParameterType::WILSON, "MATRIX_BSM", {3,0,3,1}},
893 {ParameterType::WILSON, "MATRIX_BSM", {3,0,3,2}},
894 {ParameterType::WILSON, "MATRIX_BSM", {3,0,4,1}},
895 {ParameterType::WILSON, "MATRIX_BSM", {3,0,4,2}},
896 {ParameterType::WILSON, "MATRIX_BSM", {3,0,5,1}},
897 {ParameterType::WILSON, "MATRIX_BSM", {3,0,5,2}},
898 {ParameterType::WILSON, "MATRIX_BSM", {3,1,0,1}},
899 {ParameterType::WILSON, "MATRIX_BSM", {3,1,0,2}},
900 {ParameterType::WILSON, "MATRIX_BSM", {3,1,1,1}},
901 {ParameterType::WILSON, "MATRIX_BSM", {3,1,1,2}},
902 {ParameterType::WILSON, "MATRIX_BSM", {3,1,2,1}},
903 {ParameterType::WILSON, "MATRIX_BSM", {3,1,2,2}},
904 {ParameterType::WILSON, "MATRIX_BSM", {3,1,3,1}},
905 {ParameterType::WILSON, "MATRIX_BSM", {3,1,3,2}},
906 {ParameterType::WILSON, "MATRIX_BSM", {3,1,4,1}},
907 {ParameterType::WILSON, "MATRIX_BSM", {3,1,4,2}},
908 {ParameterType::WILSON, "MATRIX_BSM", {3,1,5,1}},
909 {ParameterType::WILSON, "MATRIX_BSM", {3,1,5,2}},
910
911 {ParameterType::WILSON, "MATRIX_BSM", {4,0,0,2}},
912 {ParameterType::WILSON, "MATRIX_BSM", {4,0,1,2}},
913 {ParameterType::WILSON, "MATRIX_BSM", {4,0,2,2}},
914 {ParameterType::WILSON, "MATRIX_BSM", {4,0,3,2}},
915 {ParameterType::WILSON, "MATRIX_BSM", {4,0,4,2}},
916 {ParameterType::WILSON, "MATRIX_BSM", {4,0,5,2}},
917 {ParameterType::WILSON, "MATRIX_BSM", {4,1,0,2}},
918 {ParameterType::WILSON, "MATRIX_BSM", {4,1,1,2}},
919 {ParameterType::WILSON, "MATRIX_BSM", {4,1,2,2}},
920 {ParameterType::WILSON, "MATRIX_BSM", {4,1,3,2}},
921 {ParameterType::WILSON, "MATRIX_BSM", {4,1,4,2}},
922 {ParameterType::WILSON, "MATRIX_BSM", {4,1,5,2}},
923
924 {ParameterType::WILSON, "MATRIX_BSM", {9,0,0}},
925 {ParameterType::WILSON, "MATRIX_BSM", {9,0,1}},
926 {ParameterType::WILSON, "MATRIX_BSM", {9,0,2}},
927 {ParameterType::WILSON, "MATRIX_BSM", {9,0,3}},
928 {ParameterType::WILSON, "MATRIX_BSM", {9,0,4}},
929 {ParameterType::WILSON, "MATRIX_BSM", {9,0,5}},
930 {ParameterType::WILSON, "MATRIX_BSM", {9,1,0}},
931 {ParameterType::WILSON, "MATRIX_BSM", {9,1,1}},
932 {ParameterType::WILSON, "MATRIX_BSM", {9,1,2}},
933 {ParameterType::WILSON, "MATRIX_BSM", {9,1,3}},
934 {ParameterType::WILSON, "MATRIX_BSM", {9,1,4}},
935 {ParameterType::WILSON, "MATRIX_BSM", {9,1,5}},
936 {ParameterType::WILSON, "MATRIX_BSM", {9,2,0}},
937 {ParameterType::WILSON, "MATRIX_BSM", {9,2,1}},
938 {ParameterType::WILSON, "MATRIX_BSM", {9,2,2}},
939 {ParameterType::WILSON, "MATRIX_BSM", {9,2,3}},
940 {ParameterType::WILSON, "MATRIX_BSM", {9,2,4}},
941 {ParameterType::WILSON, "MATRIX_BSM", {9,2,5}},
942 {ParameterType::WILSON, "MATRIX_BSM", {9,3,0}},
943 {ParameterType::WILSON, "MATRIX_BSM", {9,3,1}},
944 {ParameterType::WILSON, "MATRIX_BSM", {9,3,2}},
945 {ParameterType::WILSON, "MATRIX_BSM", {9,3,3}},
946 {ParameterType::WILSON, "MATRIX_BSM", {9,3,4}},
947 {ParameterType::WILSON, "MATRIX_BSM", {9,3,5}},
948 {ParameterType::WILSON, "MATRIX_BSM", {9,4,0}},
949 {ParameterType::WILSON, "MATRIX_BSM", {9,4,1}},
950 {ParameterType::WILSON, "MATRIX_BSM", {9,4,2}},
951 {ParameterType::WILSON, "MATRIX_BSM", {9,4,3}},
952 {ParameterType::WILSON, "MATRIX_BSM", {9,4,4}},
953 {ParameterType::WILSON, "MATRIX_BSM", {9,4,5}},
954 {ParameterType::WILSON, "MATRIX_BSM", {9,5,0}},
955 {ParameterType::WILSON, "MATRIX_BSM", {9,5,1}},
956 {ParameterType::WILSON, "MATRIX_BSM", {9,5,2}},
957 {ParameterType::WILSON, "MATRIX_BSM", {9,5,3}},
958 {ParameterType::WILSON, "MATRIX_BSM", {9,5,4}},
959 {ParameterType::WILSON, "MATRIX_BSM", {9,5,5}}
960 },
963 };
964
966 {
967 {ParameterType::WILSON, "WPARAM_SI_BSM", 7}, // lu
968 {ParameterType::WILSON, "WPARAM_SI_BSM", 8}, // ld
969 {ParameterType::WILSON, "WPARAM_MATCH_BSM", 1}, // yt
970 {ParameterType::WILSON, "EW_SCALE", 1}, // Q_match
971 {ParameterType::WILSON, "WPARAM_MATCH_SM", 6} // mass_top_muW
972 },
975 };
976
977}
978
980 double xt = src.get_val(ParameterType::WILSON, "WPARAM_MATCH_SM", {2,1});
981 double lu = src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", 7);
982 double ld = src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", 8);
983 double yt = src.get_val(ParameterType::WILSON, "WPARAM_MATCH_BSM", 1);
984 // double Q_match = src.get_val(ParameterType::WILSON, "EW_SCALE", 1);;
985 double mW = src.get_val(ParameterType::SM, "MASS", 24);
986 // double mH = src.get_val(ParameterType::BSM, "MASS", 37);
987 double tanb = src.get_val(ParameterType::BSM, "MINPAR", 3);
988 double alpha = src.get_val(ParameterType::BSM, "ALPHA", {});
989 double mH0 = src.get_val(ParameterType::BSM, "MASS", 35);
990 double mh = src.get_val(ParameterType::BSM, "MASS", 25);
991 double mA0 = src.get_val(ParameterType::BSM, "MASS", 36);
992 double mb_muW = src.get_val(ParameterType::WILSON, "WPARAM_MATCH_SM", {5,1});
993
994 double eps0 = src.get_val(ParameterType::WILSON, "EPSILON_SUSY", {0,1});
995 double eps0p = src.get_val(ParameterType::WILSON, "EPSILON_SUSY", {0,2});
996 double eps1p = src.get_val(ParameterType::WILSON, "EPSILON_SUSY", 1);
997 double eps2 = src.get_val(ParameterType::WILSON, "EPSILON_SUSY", 2);
998 double epsb = src.get_val(ParameterType::WILSON, "EPSILON_SUSY", 3);
999 double epsbp = src.get_val(ParameterType::WILSON, "EPSILON_SUSY", 4);
1000
1001 double m_H03 = src.get_val(ParameterType::BSM, "MASS", 45);
1002 double m_A02 = src.get_val(ParameterType::BSM, "MASS", 46);
1003
1004 complex_t C8SMeps_0 = (epsb - epsbp) / (1. + epsb * tanb) * tanb * F8_2(xt);
1005 complex_t C8Heps_0 = (-eps0p - epsb) / (1. + epsb * tanb) * tanb * F8_2(yt);
1006
1007 complex_t C8Heps2_0 = 0.0;
1008
1009 if ((m_A02 == 0.) && (m_H03 == 0.)) {
1010 C8Heps2_0 = -eps2 * eps1p * pow(tanb, 2.) / ((1. + epsb * tanb) * (1. + eps0 * tanb)) * F8_2(yt);
1011 C8Heps2_0 += eps2 / pow(1. + epsb * tanb, 2.) * (1. + pow(tanb, 2.)) / (1. + eps0 * tanb) / 72. *
1012 ((cos(alpha) + sin(alpha) * tanb) * (-sin(alpha) + epsb * cos(alpha)) * pow(mb_muW / mh, 2.) +
1013 (sin(alpha) - cos(alpha) * tanb) * (cos(alpha) + epsb * sin(alpha)) * pow(mb_muW / mH0, 2.) +
1014 (-cos(atan(tanb)) - sin(atan(tanb)) * tanb) * (sin(atan(tanb)) - epsb * cos(atan(tanb))) * pow(mb_muW / mA0, 2.));
1015 } else {
1016 C8Heps2_0 = -eps2 * eps1p * pow(tanb, 2.) / ((1. + epsb * tanb) * (1. + eps0 * tanb)) * F8_2(yt);
1017 C8Heps2_0 += -3. * eps2 / pow(1. + epsb * tanb, 2.) * (1. + pow(tanb, 2.)) / (1. + eps0 * tanb) / 72. *
1018 ((src.get_val(ParameterType::BSM, "NMHMIX", {0+1, 0+1}) + src.get_val(ParameterType::BSM, "NMHMIX", {0+1, 1+1}) * tanb) *
1019 (-src.get_val(ParameterType::BSM, "NMHMIX", {0+1, 1+1}) + epsb * src.get_val(ParameterType::BSM, "NMHMIX", {0+1, 0+1})) * pow(mb_muW / mh, 2.) +
1020 (src.get_val(ParameterType::BSM, "NMHMIX", {1+1, 0+1}) + src.get_val(ParameterType::BSM, "NMHMIX", {1+1, 1+1}) * tanb) *
1021 (-src.get_val(ParameterType::BSM, "NMHMIX", {1+1, 1+1}) + epsb * src.get_val(ParameterType::BSM, "NMHMIX", {1+1, 0+1})) * pow(mb_muW / mH0, 2.) +
1022 (src.get_val(ParameterType::BSM, "NMHMIX", {2+1, 0+1}) + src.get_val(ParameterType::BSM, "NMHMIX", {2+1, 1+1}) * tanb) *
1023 (-src.get_val(ParameterType::BSM, "NMHMIX", {2+1, 1+1}) + epsb * src.get_val(ParameterType::BSM, "NMHMIX", {2+1, 0+1})) * pow(mb_muW / m_H03, 2.) +
1024 (src.get_val(ParameterType::BSM, "NMAMIX", {0+1, 0+1}) + src.get_val(ParameterType::BSM, "NMAMIX", {0+1, 1+1}) * tanb) *
1025 (-src.get_val(ParameterType::BSM, "NMAMIX", {0+1, 1+1}) + epsb * src.get_val(ParameterType::BSM, "NMAMIX", {0+1, 0+1})) * pow(mb_muW / mA0, 2.) +
1026 (src.get_val(ParameterType::BSM, "NMAMIX", {1+1, 0+1}) + src.get_val(ParameterType::BSM, "NMAMIX", {1+1, 1+1}) * tanb) *
1027 (-src.get_val(ParameterType::BSM, "NMAMIX", {1+1, 1+1}) + epsb * src.get_val(ParameterType::BSM, "NMAMIX", {1+1, 0+1})) * pow(mb_muW / m_A02, 2.));
1028 }
1029
1030 auto calculateContribution = [src, mW, tanb, epsb](auto hFunc, int X, int X2, int ie, int ae, bool isChargeps) -> double {
1031 double Mch = src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie});
1032 double x = pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae}) / Mch, 2.0);
1033 double ratio = std::pow(mW / Mch, 2.0);
1034 double factor = isChargeps ? (-epsb / (1. + epsb * tanb) * tanb) : 1.0;
1035 double kappa = src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", 18);
1036
1037 return ratio *
1038 src.get_val(ParameterType::WILSON, "MATRIX_BSM", {X, ie, ae, 1}) *
1039 src.get_val(ParameterType::WILSON, "MATRIX_BSM", {X2, ie, ae, 2}) *
1040 hFunc(x) * kappa * factor;
1041 };
1042
1043 complex_t C8charg_0 = 0.0;
1044 complex_t C8_chargeps_0 = 0.0;
1045
1046 for (int ie = 0; ie < 2; ++ie) {
1047 double Mch = src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie});
1048 for (int ae = 0; ae < 6; ++ae) {
1049 C8charg_0 += calculateContribution(h50, 3, 3, ie, ae, false) + Mch / mb_muW * calculateContribution(h60, 3, 4, ie, ae, false);
1050 C8_chargeps_0 += Mch / mb_muW * calculateContribution(h60, 3, 4, ie, ae, true);
1051 }
1052 }
1053
1054 complex_t C8H_0 = 1. / 3. * lu * lu * F8_1(yt) - lu * ld * F8_2(yt);
1055
1056 return scalar_t(C8SMeps_0 + C8Heps_0 + C8Heps2_0 + C8charg_0 + C8_chargeps_0 + C8H_0);
1057}
1058
1060 // double xt = src.get_val(ParameterType::WILSON, "WPARAM_MATCH_SM", {2,1});
1061 double lu = src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", 7);
1062 double ld = src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", 8);
1063 double yt = src.get_val(ParameterType::WILSON, "WPARAM_MATCH_BSM", 1);
1064 double Q_match = src.get_val(ParameterType::WILSON, "EW_SCALE", 1);;
1065 double mW = src.get_val(ParameterType::SM, "MASS", 24);
1066 double mH = src.get_val(ParameterType::BSM, "MASS", 37);
1067 double mb_muW = src.get_val(ParameterType::WILSON, "WPARAM_MATCH_SM", {5,1});
1068
1069 complex_t C8charg_1 = 0.0;
1070 complex_t C8four_1 = 0.0;
1071
1072 for (int ie = 0; ie < 2; ++ie) {
1073 double Mchi = src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie});
1074 double ratio_mW_Mchi2 = std::pow(mW / Mchi, 2.0);
1075
1076 for (int ae = 0; ae < 6; ++ae) {
1077 double MsqU = src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae});
1078 double x = std::pow(MsqU / Mchi, 2.0);
1079 double log_mu = std::log(std::pow(Q_match / MsqU, 2.0));
1080
1081 double A1 = src.get_val(ParameterType::WILSON, "MATRIX_BSM", {3,ie, ae, 1});
1082 double A2 = src.get_val(ParameterType::WILSON, "MATRIX_BSM", {3,ie, ae, 2});
1083 double B2 = src.get_val(ParameterType::WILSON, "MATRIX_BSM", {4,ie, ae, 2});
1084
1085 C8charg_1 += ratio_mW_Mchi2 * (
1086 A1 * A2 * h51(x, log_mu) +
1087 Mchi / mb_muW * A1 * B2 * h61(x, log_mu)
1088 );
1089
1090 for (int ce = 0; ce < 6; ++ce) {
1091 double MsqU_ce = src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ce});
1092 double log_ce = std::log(std::pow(Q_match / MsqU, 2.0));
1093 double ratio_ce_Mchi = MsqU_ce / Mchi;
1094
1095 for (int de = 0; de < 6; ++de) {
1096 double x_ae = std::pow(MsqU / Mchi, 2.0);
1097 double x_de = pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, de}) / Mchi, 2.0);
1098
1099 double Nij = src.get_val(ParameterType::WILSON, "MATRIX_BSM", {9,ae, ce});
1100 double Ncd = src.get_val(ParameterType::WILSON, "MATRIX_BSM", {9,ce, de});
1101 double A3 = src.get_val(ParameterType::WILSON, "MATRIX_BSM", {3,ie, ae, 1});
1102 double B3 = src.get_val(ParameterType::WILSON, "MATRIX_BSM", {3,ie, de, 2});
1103 double B4 = src.get_val(ParameterType::WILSON, "MATRIX_BSM", {4,ie, de, 2});
1104
1105 C8four_1 += ratio_mW_Mchi2 * Nij * ratio_ce_Mchi * Ncd * (1.0 + log_ce) * (
1106 A3 * B3 * q21(x_ae, x_de) +
1107 Mchi / mb_muW * A3 * B4 * q41(x_ae, x_de)
1108 );
1109 }
1110 }
1111 }
1112 }
1113 C8charg_1 *= -0.5 * src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", 19);
1114 C8four_1 *= -0.5 * src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", 19);
1115 complex_t C8H_1 = G8H(yt, lu, ld) + Delta8H(yt, lu, ld) * std::log(std::pow(Q_match / mH, 2.0)) - 1. / 6. * EH(yt, lu);
1116
1117 // printf("C8H_1 (NLO) : %.8lf\n", C8H_1);
1118 // printf("C8charg_1 (NLO) : %.8lf\n", C8charg_1);
1119 // printf("C8four_1 (NLO) : %.8lf\n", C8four_1);
1120
1121 return scalar_t(C8charg_1 + C8four_1 + C8H_1);
1122}
1123
1125 double lu = src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", 7);
1126 double ld = src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", 8);
1127 double yt = src.get_val(ParameterType::WILSON, "WPARAM_MATCH_BSM", 1);
1128 double Q_match = src.get_val(ParameterType::WILSON, "EW_SCALE", 1);;
1129 double mass_top_muW = src.get_val(ParameterType::WILSON, "WPARAM_MATCH_SM", 6);
1130
1131 double log_ratio = std::log(std::pow(Q_match / mass_top_muW, 2.0));
1132
1133 return scalar_t(C8H2(yt, lu, ld, log_ratio));
1134}
1135
1136
1139 {
1140 {ParameterType::WILSON, "WPARAM_SI_BSM", 7}, // lu
1141 {ParameterType::WILSON, "WPARAM_MATCH_BSM", 1}, // yt
1142 {ParameterType::WILSON, "WPARAM_MATCH_SM", {2,1}}, // xt
1143 {ParameterType::WILSON, "WPARAM_SI_SM", 4}, // sw2
1144 {ParameterType::WILSON, "MATRIX_BSM", 13}, // B90c
1145 {ParameterType::WILSON, "MATRIX_BSM", 14}, // C90c
1146 {ParameterType::WILSON, "MATRIX_BSM", 15} // D90c
1147 },
1148 compute_LO,
1150 };
1151
1153 {
1154 {ParameterType::WILSON, "WPARAM_SI_BSM", 19}, // kappa
1155 {ParameterType::WILSON, "WPARAM_SI_BSM", 7}, // lu
1156 // {ParameterType::WILSON, "WPARAM_SI_BSM", 8}, // ld
1157 {ParameterType::WILSON, "WPARAM_MATCH_BSM", 1}, // yt
1158 {ParameterType::WILSON, "EW_SCALE", 1}, // Q_match
1159 {ParameterType::WILSON, "WPARAM_MATCH_SM", {2,1}}, // xt
1160 {ParameterType::SM, "MASS", 24}, // mW
1161 {ParameterType::BSM, "MASS", 37}, // mH
1162 {ParameterType::WILSON, "WPARAM_SI_SM", 4}, // sw2
1163 {ParameterType::SM, "GAUGE", 2}, // g2
1164
1165 // Pour les boucles : masses
1166 {ParameterType::WILSON, "WPARAM_SI_BSM", {13,0}},
1167 {ParameterType::WILSON, "WPARAM_SI_BSM", {13,1}},
1168 {ParameterType::WILSON, "WPARAM_SI_BSM", {14,0}},
1169 {ParameterType::WILSON, "WPARAM_SI_BSM", {14,1}},
1170 {ParameterType::WILSON, "WPARAM_SI_BSM", {14,2}},
1171 {ParameterType::WILSON, "WPARAM_SI_BSM", {14,3}},
1172 {ParameterType::WILSON, "WPARAM_SI_BSM", {14,4}},
1173 {ParameterType::WILSON, "WPARAM_SI_BSM", {14,5}},
1174 {ParameterType::WILSON, "WPARAM_SI_BSM", {16,0}},
1175 {ParameterType::WILSON, "WPARAM_SI_BSM", {16,1}},
1176 {ParameterType::WILSON, "WPARAM_SI_BSM", {16,2}},
1177
1178
1179 {ParameterType::WILSON, "MATRIX_BSM", {6,0,0,1}},
1180 {ParameterType::WILSON, "MATRIX_BSM", {6,1,0,1}},
1181 {ParameterType::WILSON, "MATRIX_BSM", {6,0,1,1}},
1182 {ParameterType::WILSON, "MATRIX_BSM", {6,1,1,1}},
1183
1184
1185 // Mixages
1186 {ParameterType::BSM, "UMIX", {0+1, 0+1}},
1187 {ParameterType::BSM, "UMIX", {1+1,0+1}},
1188 {ParameterType::BSM, "VMIX", {0+1, 0+1}},
1189 {ParameterType::BSM, "VMIX", {1+1,0+1}}
1190 },
1193 };
1194
1195 auto& sources = matching_info[QCDOrder::NLO].sources;
1196
1197 for (int me = 0; me < 6; ++me) {
1198 for (int be = 0; be < 3; ++be) {
1199 sources.insert({ParameterType::WILSON, "MATRIX_BSM", {1, me, be}});
1200 }
1201 }
1202
1203 for (int ie = 0; ie < 2; ie++) {
1204 for (int ae = 0; ae < 6; ae++) {
1205 for (int be = 1; be<3; ++be) {
1206 sources.insert({ParameterType::WILSON, "MATRIX_BSM", {3, ie, ae, be}});
1207 }
1208 }
1209 }
1210
1211 for (int je = 0; je < 2; je++) {
1212 for (int be=0; be<3; be++) {
1213 sources.insert({ParameterType::WILSON, "MATRIX_BSM", {5,je, be, 1}});
1214 sources.insert({ParameterType::WILSON, "MATRIX_BSM", {6,je, be, 1}});
1215 }
1216 }
1217
1218 for (int ce = 0; ce < 6; ce++) {
1219 for (int de = 0; de < 6; de++) {
1220 sources.insert({ParameterType::WILSON, "MATRIX_BSM", {9,ce, de}});
1221 }
1222 }
1223}
1224
1226 double xt = src.get_val(ParameterType::WILSON, "WPARAM_MATCH_SM", {2,1});
1227 double lu = src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", 7);
1228 double yt = src.get_val(ParameterType::WILSON, "WPARAM_MATCH_BSM", 1);
1229 double sw2 = src.get_val(ParameterType::WILSON, "WPARAM_SI_SM", 4);
1230
1231 complex_t B90c = src.get_val(ParameterType::WILSON, "MATRIX_BSM", 13);
1232 complex_t C90c = src.get_val(ParameterType::WILSON, "MATRIX_BSM", 14);
1233 complex_t D90c = src.get_val(ParameterType::WILSON, "MATRIX_BSM", 15);
1234
1235 // std::cout << "B90c " << B90c << std::endl;
1236 // std::cout << "C90c " << C90c << std::endl;
1237 // std::cout << "D90c " << D90c << std::endl;
1238
1239 complex_t C9charg_0 = (1.0 - 4.0 * sw2) / sw2 * C90c - B90c / sw2 - D90c;
1240 double C9H_0 = (1.0 - 4.0 * sw2) / sw2 * C9llH0(xt, yt, lu) - D9H0(yt, lu);
1241
1242 // std::cout << "C9H_0" << C9H_0 << std::endl;
1243 // std::cout << "C9charg_0" << C9charg_0 << std::endl;
1244 return scalar_t(C9charg_0 + C9H_0);
1245}
1246
1248 double xt = src.get_val(ParameterType::WILSON, "WPARAM_MATCH_SM", {2,1});
1249
1250 double lu = src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", 7);
1251 // double ld = src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", 8);
1252 double yt = src.get_val(ParameterType::WILSON, "WPARAM_MATCH_BSM", 1);
1253 double Q_match = src.get_val(ParameterType::WILSON, "EW_SCALE", 1);;
1254 double mW = src.get_val(ParameterType::SM, "MASS", 24);
1255 double mH = src.get_val(ParameterType::BSM, "MASS", 37);
1256 double sw2 = src.get_val(ParameterType::WILSON, "WPARAM_SI_SM", 4);
1257 double g2 = src.get_val(ParameterType::SM, "GAUGE", 2);
1258 complex_t C91f = 0.0;
1259 complex_t B1f1 = 0.0;
1260 complex_t B1f2 = 0.0;
1261 complex_t D91f = 0.0;
1262 complex_t B1c1=0.;
1263 complex_t B1c2=0.;
1264 complex_t D91c= 0.;
1265 complex_t C91c = 0.;
1266
1267 for (int ie = 0; ie < 2; ie++) {
1268
1269 for (int ae = 0; ae < 6; ae++) {
1270 double mass24_Mch_ie_squared = pow(mW / src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}), 2.0);
1271 double ratio_MsqU_ae_Mch_ie = pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae}) / src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}), 2.0);
1272 double log_mu_W_MsqU_ae = log(pow(Q_match / src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae}), 2.0));
1273
1274 D91c += std::pow(mW / src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}), 2.0) * src.get_val(ParameterType::WILSON, "MATRIX_BSM", {3,ie, ae, 1}) * src.get_val(ParameterType::WILSON, "MATRIX_BSM", {3,ie, ae, 2}) *
1275 h31(ratio_MsqU_ae_Mch_ie, log_mu_W_MsqU_ae);
1276
1277
1278
1279 for (int je = 0; je < 2; je++) {
1280 double ratio_Mch_je_ie = src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, je}) / src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie});
1281 double factor_abs = 2.0 * std::fabs(ratio_Mch_je_ie);
1282 double factor_f31_f30 = (f31(std::pow(ratio_Mch_je_ie, 2), ratio_MsqU_ae_Mch_ie) +
1283 4.0 * (f30(std::pow(ratio_Mch_je_ie, 2), ratio_MsqU_ae_Mch_ie) +
1284 (f30(std::pow(ratio_Mch_je_ie, 2), ratio_MsqU_ae_Mch_ie * 1.0001) -
1285 f30(std::pow(ratio_Mch_je_ie, 2), ratio_MsqU_ae_Mch_ie * 0.9999)) / 0.0002) * log_mu_W_MsqU_ae);
1286 double factor_f41_f40 = (f41(std::pow(ratio_Mch_je_ie, 2), ratio_MsqU_ae_Mch_ie) +
1287 4.0 * (f40(std::pow(ratio_Mch_je_ie, 2), ratio_MsqU_ae_Mch_ie) +
1288 (f40(std::pow(ratio_Mch_je_ie, 2), ratio_MsqU_ae_Mch_ie * 1.0001) -
1289 f40(std::pow(ratio_Mch_je_ie, 2), ratio_MsqU_ae_Mch_ie * 0.9999)) / 0.0002) * log_mu_W_MsqU_ae);
1290
1291 C91c += src.get_val(ParameterType::WILSON, "MATRIX_BSM", {3,je, ae, 1}) * src.get_val(ParameterType::WILSON, "MATRIX_BSM", {3,ie, ae, 2}) *
1292 ((factor_abs * factor_f31_f30 * src.get_val(ParameterType::BSM, "UMIX", {je+1, 0+1}) * src.get_val(ParameterType::BSM, "UMIX", {ie+1, 0+1})) -
1293 (factor_f41_f40 * src.get_val(ParameterType::BSM, "VMIX", {je+1, 0+1}) * src.get_val(ParameterType::BSM, "VMIX", {ie+1, 0+1})));
1294
1295 for (int de=0; de<6; de++) {
1296 for (int ke=0; ke<6; ke++) {
1297 C91f+= src.get_val(ParameterType::WILSON, "MATRIX_BSM", {9,de, ke}) * pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ke})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.) * src.get_val(ParameterType::WILSON, "MATRIX_BSM", {9,ke, ae}) * (1+log(pow(Q_match/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ke}),2.)))*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {3,je, de, 1})*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {3,ie, ae, 2}) * (
1298 2.*fabs(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, je})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie})) * f60(pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, je})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.), pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}), 2.), pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, de})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}), 2.))*src.get_val(ParameterType::BSM, "UMIX", {je+1, 0+1})*src.get_val(ParameterType::BSM, "UMIX", {ie+1, 0+1})
1299 -f50(pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, je})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}), 2.), pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}), 2.), pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, de})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}), 2.)) * src.get_val(ParameterType::BSM, "VMIX", {je+1, 0+1})*src.get_val(ParameterType::BSM, "VMIX", {ie+1, 0+1}));
1300
1301 }
1302 }
1303
1304 for (int be=0; be<3; be++) {
1305 double ratio_Mch = src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, je}) / src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie});
1306 double ratio_MsqU = src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae}) / src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie});
1307 double ratio_Msn = src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {16, be}) / src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie});
1308
1309 B1c1 += src.get_val(ParameterType::WILSON, "MATRIX_BSM", {3,je, ae, 1}) * src.get_val(ParameterType::WILSON, "MATRIX_BSM", {3,ie, ae, 2}) / pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}), 2) *
1310 (0.5 * src.get_val(ParameterType::WILSON, "MATRIX_BSM", {5, ie, be, 1}) * src.get_val(ParameterType::WILSON, "MATRIX_BSM", {5, je, be, 1}) *
1311 (f81(pow(ratio_Mch, 2), pow(ratio_MsqU, 2), pow(ratio_Msn, 2)) +
1312 4 * (f50(pow(ratio_Mch, 2), pow(ratio_MsqU, 2), pow(ratio_Msn, 2)) +
1313 (f50(pow(ratio_Mch, 2), pow(ratio_MsqU, 2) * 1.0001, pow(ratio_Msn, 2)) -
1314 f50(pow(ratio_Mch, 2), pow(ratio_MsqU, 2) * 0.9999, pow(ratio_Msn, 2))) / 0.0002) *
1315 log(pow(Q_match / src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae}), 2))));
1316
1317 B1c2 += src.get_val(ParameterType::WILSON, "MATRIX_BSM", {3,je, ae, 1}) * src.get_val(ParameterType::WILSON, "MATRIX_BSM", {3,ie, ae, 2}) / pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}), 2) *
1318 (src.get_val(ParameterType::WILSON, "MATRIX_BSM", {6, ie, be, 1}) * src.get_val(ParameterType::WILSON, "MATRIX_BSM", {6, je, be, 1}) * fabs(ratio_Mch) *
1319 (f91(pow(ratio_Mch, 2), pow(ratio_MsqU, 2), pow(ratio_Msn, 2)) +
1320 4 * (f60(pow(ratio_Mch, 2), pow(ratio_MsqU, 2), pow(ratio_Msn, 2)) +
1321 (f60(pow(ratio_Mch, 2), pow(ratio_MsqU, 2) * 1.0001, pow(ratio_Msn, 2)) -
1322 f60(pow(ratio_Mch, 2), pow(ratio_MsqU, 2) * 0.9999, pow(ratio_Msn, 2))) / 0.0002) *
1323 log(pow(Q_match / src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae}), 2))));
1324 }
1325 }
1326 for (int ce = 0; ce < 6; ce++) {
1327 for (int fe = 0; fe < 3; fe++) {
1328 for (int de = 0; de < 6; de++) {
1329 for (int ke = 0; ke < 6; ke++) {
1330 double MsqU_ke_Mch_ie_squared = pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ke}) / src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}), 2.0);
1331 double log_scale_MsqU_ke = log(pow(Q_match / src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ke}), 2.0));
1332 C91f += src.get_val(ParameterType::WILSON, "MATRIX_BSM", {9,de, ke}) * MsqU_ke_Mch_ie_squared * src.get_val(ParameterType::WILSON, "MATRIX_BSM", {9,ke, ae}) *
1333 (1.0 + log_scale_MsqU_ke) * src.get_val(ParameterType::WILSON, "MATRIX_BSM", {3,ie, ce, 1}) * src.get_val(ParameterType::WILSON, "MATRIX_BSM", {3,ie, ae, 2}) *
1334 f50(pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae}) / src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}), 2.0),
1335 pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, de}) / src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}), 2.0),
1336 pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ce}) / src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}), 2.0)) *
1337 src.get_val(ParameterType::WILSON, "MATRIX_BSM", {1, ce, fe}) * src.get_val(ParameterType::WILSON, "MATRIX_BSM", {1, de, fe});
1338
1339 C91f += src.get_val(ParameterType::WILSON, "MATRIX_BSM", {9,de, ke}) * MsqU_ke_Mch_ie_squared * src.get_val(ParameterType::WILSON, "MATRIX_BSM", {9,ke, ce}) *
1340 (1.0 + log_scale_MsqU_ke) * src.get_val(ParameterType::WILSON, "MATRIX_BSM", {3,ie, de, 1}) * src.get_val(ParameterType::WILSON, "MATRIX_BSM", {3,ie, ae, 2}) *
1341 f50(pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae}) / src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}), 2.0),
1342 pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ce}) / src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}), 2.0),
1343 pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, de}) / src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}), 2.0)) *
1344 src.get_val(ParameterType::WILSON, "MATRIX_BSM", {1, ce, fe}) * src.get_val(ParameterType::WILSON, "MATRIX_BSM", {1, ae, fe});
1345
1346 }
1347
1348 for (int je = 0; je < 2; je++) {
1349 double factor_common = mass24_Mch_ie_squared * src.get_val(ParameterType::WILSON, "MATRIX_BSM", {9,ae, de}) *pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, de})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2)*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {9,de, ce}) *
1350 (1+log(pow(Q_match/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, de}),2))) * src.get_val(ParameterType::WILSON, "MATRIX_BSM", {3,je, ae, 1}) * src.get_val(ParameterType::WILSON, "MATRIX_BSM", {3,ie, ce, 2});
1351
1352 B1f1 += factor_common * 0.5 * f90(pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, je}) / src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}), 2.0),
1353 pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae}) / src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}), 2.0),
1354 pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ce}) / src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}), 2.0),
1355 pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {16, fe}) / src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}), 2.0)) *
1356 src.get_val(ParameterType::WILSON, "MATRIX_BSM", {5, ie, fe, 1}) * src.get_val(ParameterType::WILSON, "MATRIX_BSM", {5, je, fe, 1});
1357
1358 B1f2 += factor_common * fabs(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, je}) / src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie})) *
1359 f100(pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, je}) / src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}), 2.0),
1360 pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae}) / src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}), 2.0),
1361 pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ce}) / src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}), 2.0),
1362 pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {16, fe}) / src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}), 2.0)) *
1363 src.get_val(ParameterType::WILSON, "MATRIX_BSM", {6, ie, fe, 1}) * src.get_val(ParameterType::WILSON, "MATRIX_BSM", {6, je, fe, 1});
1364 }
1365 }
1366 C91c += src.get_val(ParameterType::WILSON, "MATRIX_BSM", {3,ie, ce, 1}) * src.get_val(ParameterType::WILSON, "MATRIX_BSM", {3,ie, ae, 2}) *
1367 (f51(ratio_MsqU_ae_Mch_ie, pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ce}) / src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}), 2.0)) +
1368 4.0 * (f40(ratio_MsqU_ae_Mch_ie, pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ce}) / src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}), 2.0)) +
1369 (f40(ratio_MsqU_ae_Mch_ie, pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ce}) / src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}), 2.0)* 1.0001) -
1370 f40(ratio_MsqU_ae_Mch_ie, pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ce}) / src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}), 2.0)* 0.9999)) / 0.0002
1371 +(f40(ratio_MsqU_ae_Mch_ie*1.0001, pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ce})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.))
1372 -f40(ratio_MsqU_ae_Mch_ie*0.9999, pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ce}) / src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}), 2.0)))/0.0002)* log_mu_W_MsqU_ae) *
1373 src.get_val(ParameterType::WILSON, "MATRIX_BSM", {1, ce, fe}) * src.get_val(ParameterType::WILSON, "MATRIX_BSM", {1, ae, fe});
1374 }
1375
1376 double MsqU_ce_Mch_ie_squared = pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ce}) / src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}), 2.0);
1377 double log_scale_MsqU_ce = 1.0 + log(pow(Q_match / src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ce}), 2.0));
1378
1379
1380 for (int de = 0; de < 6; de++) {
1381 // double ratio_MsqU_ae_Mch_ie = pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae}) / src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}), 2.0);
1382 double ratio_MsqU_de_Mch_ie = pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, de}) / src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}), 2.0);
1383
1384 D91f += mass24_Mch_ie_squared * src.get_val(ParameterType::WILSON, "MATRIX_BSM", {9,ae, ce}) * MsqU_ce_Mch_ie_squared * src.get_val(ParameterType::WILSON, "MATRIX_BSM", {9,ce, de}) * log_scale_MsqU_ce *
1385 src.get_val(ParameterType::WILSON, "MATRIX_BSM", {3,ie, ae, 1}) * src.get_val(ParameterType::WILSON, "MATRIX_BSM", {3,ie, de, 2}) *
1386 q51(pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae}) / src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}), 2.0), ratio_MsqU_de_Mch_ie);
1387
1388 }
1389 }
1390 }
1391 }
1392
1393
1394 double kappa = src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", 19);
1395 C91c *= -kappa / 8.0;
1396 D91c *= kappa;
1397 complex_t B91c = -(B1c1 - B1c2) * kappa * mW * mW / 2.0 / pow(g2, 2);
1398
1399 C91f *= kappa / 6.0;
1400 D91f *= kappa;
1401
1402 complex_t B91f = (B1f1 - B1f2) * 2.0 / 3.0 * kappa / pow(g2, 2);
1403
1404 complex_t C9four_1 = (1. - 4. * sw2) / sw2 * C91f - B91f / sw2 - D91f;
1405
1406 complex_t C9charg_1=(1.-4.*sw2)/sw2*C91c-B91c/sw2-D91c;
1407 complex_t C9H_1 = (1.-4.*sw2)/sw2*C9llH1(xt,yt,lu,log(pow(Q_match/mH,2.)))
1408 -D9H1(yt,lu,log(pow(Q_match/mH,2.)));
1409
1410 return scalar_t(C9four_1+C9charg_1 + C9H_1);
1411
1412}
1413
1416 {
1417 {ParameterType::WILSON, "WPARAM_SI_BSM", 7}, // lu
1418 {ParameterType::WILSON, "WPARAM_MATCH_BSM", 1}, // yt
1419 {ParameterType::WILSON, "WPARAM_MATCH_SM", {2,1}}, // xt
1420 {ParameterType::WILSON, "WPARAM_SI_SM", 4}, // sw2
1421 {ParameterType::WILSON, "MATRIX_BSM", 14}, // C90c
1422 {ParameterType::WILSON, "MATRIX_BSM", 16} // B100c
1423 },
1424 compute_LO,
1426 };
1427
1429 {
1430 {ParameterType::WILSON, "WPARAM_SI_BSM", 19},
1431 {ParameterType::WILSON, "WPARAM_SI_BSM", 7},
1432 // {ParameterType::WILSON, "WPARAM_SI_BSM", 8},
1433 {ParameterType::WILSON, "WPARAM_MATCH_BSM", 1},
1434 {ParameterType::WILSON, "EW_SCALE", 1},
1435 {ParameterType::WILSON, "WPARAM_MATCH_SM", {2,1}},
1436 {ParameterType::SM, "MASS", 24},
1437 {ParameterType::BSM, "GAUGE", 2},
1438 {ParameterType::WILSON, "WPARAM_SI_SM", 4},
1439 {ParameterType::BSM, "MASS", 37},
1440 {ParameterType::WILSON, "WPARAM_SI_BSM", {13,0}},
1441 {ParameterType::WILSON, "WPARAM_SI_BSM", {13,1}},
1442 {ParameterType::WILSON, "WPARAM_SI_BSM", {14,0}},
1443 {ParameterType::WILSON, "WPARAM_SI_BSM", {14,1}},
1444 {ParameterType::WILSON, "WPARAM_SI_BSM", {14,2}},
1445 {ParameterType::WILSON, "WPARAM_SI_BSM", {14,3}},
1446 {ParameterType::WILSON, "WPARAM_SI_BSM", {14,4}},
1447 {ParameterType::WILSON, "WPARAM_SI_BSM", {14,5}},
1448 {ParameterType::WILSON, "WPARAM_SI_BSM", {16,0}},
1449 {ParameterType::WILSON, "WPARAM_SI_BSM", {16,1}},
1450 {ParameterType::WILSON, "WPARAM_SI_BSM", {16,2}},
1451 {ParameterType::WILSON, "MATRIX_BSM", {1,0,0}},
1452 {ParameterType::WILSON, "MATRIX_BSM", {1,0,1}},
1453 {ParameterType::WILSON, "MATRIX_BSM", {1,0,2}},
1454 {ParameterType::WILSON, "MATRIX_BSM", {1,1,0}},
1455 {ParameterType::WILSON, "MATRIX_BSM", {1,1,1}},
1456 {ParameterType::WILSON, "MATRIX_BSM", {1,1,2}},
1457 {ParameterType::WILSON, "MATRIX_BSM", {1,2,0}},
1458 {ParameterType::WILSON, "MATRIX_BSM", {1,2,1}},
1459 {ParameterType::WILSON, "MATRIX_BSM", {1,2,2}},
1460 {ParameterType::WILSON, "MATRIX_BSM", {1,3,0}},
1461 {ParameterType::WILSON, "MATRIX_BSM", {1,3,1}},
1462 {ParameterType::WILSON, "MATRIX_BSM", {1,3,2}},
1463 {ParameterType::WILSON, "MATRIX_BSM", {1,4,0}},
1464 {ParameterType::WILSON, "MATRIX_BSM", {1,4,1}},
1465 {ParameterType::WILSON, "MATRIX_BSM", {1,4,2}},
1466 {ParameterType::WILSON, "MATRIX_BSM", {1,5,0}},
1467 {ParameterType::WILSON, "MATRIX_BSM", {1,5,1}},
1468 {ParameterType::WILSON, "MATRIX_BSM", {1,5,2}},
1469 {ParameterType::WILSON, "MATRIX_BSM", {3,0,0,1}},
1470 {ParameterType::WILSON, "MATRIX_BSM", {3,0,0,2}},
1471 {ParameterType::WILSON, "MATRIX_BSM", {3,0,1,1}},
1472 {ParameterType::WILSON, "MATRIX_BSM", {3,0,1,2}},
1473 {ParameterType::WILSON, "MATRIX_BSM", {3,0,2,1}},
1474 {ParameterType::WILSON, "MATRIX_BSM", {3,0,2,2}},
1475 {ParameterType::WILSON, "MATRIX_BSM", {3,0,3,1}},
1476 {ParameterType::WILSON, "MATRIX_BSM", {3,0,3,2}},
1477 {ParameterType::WILSON, "MATRIX_BSM", {3,0,4,1}},
1478 {ParameterType::WILSON, "MATRIX_BSM", {3,0,4,2}},
1479 {ParameterType::WILSON, "MATRIX_BSM", {3,0,5,1}},
1480 {ParameterType::WILSON, "MATRIX_BSM", {3,0,5,2}},
1481 {ParameterType::WILSON, "MATRIX_BSM", {3,1,0,1}},
1482 {ParameterType::WILSON, "MATRIX_BSM", {3,1,0,2}},
1483 {ParameterType::WILSON, "MATRIX_BSM", {3,1,1,1}},
1484 {ParameterType::WILSON, "MATRIX_BSM", {3,1,1,2}},
1485 {ParameterType::WILSON, "MATRIX_BSM", {3,1,2,1}},
1486 {ParameterType::WILSON, "MATRIX_BSM", {3,1,2,2}},
1487 {ParameterType::WILSON, "MATRIX_BSM", {3,1,3,1}},
1488 {ParameterType::WILSON, "MATRIX_BSM", {3,1,3,2}},
1489 {ParameterType::WILSON, "MATRIX_BSM", {3,1,4,1}},
1490 {ParameterType::WILSON, "MATRIX_BSM", {3,1,4,2}},
1491 {ParameterType::WILSON, "MATRIX_BSM", {3,1,5,1}},
1492 {ParameterType::WILSON, "MATRIX_BSM", {3,1,5,2}},
1493 {ParameterType::WILSON, "MATRIX_BSM", {5,0,0,1}},
1494 {ParameterType::WILSON, "MATRIX_BSM", {5,0,1,1}},
1495 {ParameterType::WILSON, "MATRIX_BSM", {5,0,2,1}},
1496 {ParameterType::WILSON, "MATRIX_BSM", {5,1,0,1}},
1497 {ParameterType::WILSON, "MATRIX_BSM", {5,1,1,1}},
1498 {ParameterType::WILSON, "MATRIX_BSM", {5,1,2,1}},
1499 {ParameterType::WILSON, "MATRIX_BSM", {6,0,0,1}},
1500 {ParameterType::WILSON, "MATRIX_BSM", {6,0,1,1}},
1501 {ParameterType::WILSON, "MATRIX_BSM", {6,0,2,1}},
1502 {ParameterType::WILSON, "MATRIX_BSM", {6,1,0,1}},
1503 {ParameterType::WILSON, "MATRIX_BSM", {6,1,1,1}},
1504 {ParameterType::WILSON, "MATRIX_BSM", {6,1,2,1}},
1505 {ParameterType::WILSON, "MATRIX_BSM", {9,0,0}},
1506 {ParameterType::WILSON, "MATRIX_BSM", {9,0,1}},
1507 {ParameterType::WILSON, "MATRIX_BSM", {9,0,2}},
1508 {ParameterType::WILSON, "MATRIX_BSM", {9,0,3}},
1509 {ParameterType::WILSON, "MATRIX_BSM", {9,0,4}},
1510 {ParameterType::WILSON, "MATRIX_BSM", {9,0,5}},
1511 {ParameterType::WILSON, "MATRIX_BSM", {9,1,0}},
1512 {ParameterType::WILSON, "MATRIX_BSM", {9,1,1}},
1513 {ParameterType::WILSON, "MATRIX_BSM", {9,1,2}},
1514 {ParameterType::WILSON, "MATRIX_BSM", {9,1,3}},
1515 {ParameterType::WILSON, "MATRIX_BSM", {9,1,4}},
1516 {ParameterType::WILSON, "MATRIX_BSM", {9,1,5}},
1517 {ParameterType::WILSON, "MATRIX_BSM", {9,2,0}},
1518 {ParameterType::WILSON, "MATRIX_BSM", {9,2,1}},
1519 {ParameterType::WILSON, "MATRIX_BSM", {9,2,2}},
1520 {ParameterType::WILSON, "MATRIX_BSM", {9,2,3}},
1521 {ParameterType::WILSON, "MATRIX_BSM", {9,2,4}},
1522 {ParameterType::WILSON, "MATRIX_BSM", {9,2,5}},
1523 {ParameterType::WILSON, "MATRIX_BSM", {9,3,0}},
1524 {ParameterType::WILSON, "MATRIX_BSM", {9,3,1}},
1525 {ParameterType::WILSON, "MATRIX_BSM", {9,3,2}},
1526 {ParameterType::WILSON, "MATRIX_BSM", {9,3,3}},
1527 {ParameterType::WILSON, "MATRIX_BSM", {9,3,4}},
1528 {ParameterType::WILSON, "MATRIX_BSM", {9,3,5}},
1529 {ParameterType::WILSON, "MATRIX_BSM", {9,4,0}},
1530 {ParameterType::WILSON, "MATRIX_BSM", {9,4,1}},
1531 {ParameterType::WILSON, "MATRIX_BSM", {9,4,2}},
1532 {ParameterType::WILSON, "MATRIX_BSM", {9,4,3}},
1533 {ParameterType::WILSON, "MATRIX_BSM", {9,4,4}},
1534 {ParameterType::WILSON, "MATRIX_BSM", {9,4,5}},
1535 {ParameterType::WILSON, "MATRIX_BSM", {9,5,0}},
1536 {ParameterType::WILSON, "MATRIX_BSM", {9,5,1}},
1537 {ParameterType::WILSON, "MATRIX_BSM", {9,5,2}},
1538 {ParameterType::WILSON, "MATRIX_BSM", {9,5,3}},
1539 {ParameterType::WILSON, "MATRIX_BSM", {9,5,4}},
1540 {ParameterType::WILSON, "MATRIX_BSM", {9,5,5}},
1541 {ParameterType::BSM, "UMIX", {1, 1}},
1542 {ParameterType::BSM, "UMIX", {1, 2}},
1543 {ParameterType::BSM, "UMIX", {2, 1}},
1544 {ParameterType::BSM, "UMIX", {2, 2}},
1545 {ParameterType::BSM, "VMIX", {1, 1}},
1546 {ParameterType::BSM, "VMIX", {1, 2}},
1547 {ParameterType::BSM, "VMIX", {2, 1}},
1548 {ParameterType::BSM, "VMIX", {2, 2}},
1549 },
1552 };
1553
1554}
1555
1557 double xt = src.get_val(ParameterType::WILSON, "WPARAM_MATCH_SM", {2,1});
1558 double lu = src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", 7);
1559 double yt = src.get_val(ParameterType::WILSON, "WPARAM_MATCH_BSM", 1);
1560 double sw2 = src.get_val(ParameterType::WILSON, "WPARAM_SI_SM", 4);
1561
1562 complex_t C90c = src.get_val(ParameterType::WILSON, "MATRIX_BSM", 14);
1563 complex_t B100c = src.get_val(ParameterType::WILSON, "MATRIX_BSM", 16);
1564
1565 complex_t C10charg_0 = (B100c - C90c) / sw2;
1566 complex_t C10H_0 = -C9llH0(xt, yt, lu) / sw2;
1567
1568 return C10charg_0 + C10H_0;
1569}
1570
1572 double xt = src.get_val(ParameterType::WILSON, "WPARAM_MATCH_SM", {2,1});
1573 double lu = src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", 7);
1574 // double ld = src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", 8);
1575 double yt = src.get_val(ParameterType::WILSON, "WPARAM_MATCH_BSM", 1);
1576 double Q_match = src.get_val(ParameterType::WILSON, "EW_SCALE", 1);;
1577 double mW = src.get_val(ParameterType::SM, "MASS", 24);
1578 double mH = src.get_val(ParameterType::BSM, "MASS", 37);
1579 double sw2 = src.get_val(ParameterType::WILSON, "WPARAM_SI_SM", 4);
1580 double g2 = src.get_val(ParameterType::BSM, "GAUGE", 2);
1581
1582 complex_t C91f = 0.0;
1583 complex_t B1f1 = 0.0;
1584 complex_t B1f2 = 0.0;
1585 complex_t B1c1=0.;
1586 complex_t B1c2=0.;
1587 complex_t C91c = 0.;
1588 complex_t C91f_b = 0.;
1589 complex_t C91f_50 = 0.;
1590 complex_t C91f_60 = 0.;
1591 complex_t C91f_beg = 0.;
1592 complex_t C91f_beg_1 = 0;
1593 complex_t C91f_beg_1a = 0;
1594 complex_t C91f_beg_1b = 0;
1595 complex_t C91f_beg_10 = 0;
1596 complex_t C91f_beg_11 = 0;
1597 complex_t C91f_a1 = 0.;
1598 complex_t C91f_a2 = 0.;
1599 // std::cout << "Qmatch : " << Q_match << std::endl;
1600 long long aa = 0;
1601 for (int ie = 0; ie < 2; ie++) {
1602 for (int ae = 0; ae < 6; ae++) {
1603 double mass24_Mch_ie_squared = pow(mW / src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}), 2.0);
1604 double ratio_MsqU_ae_Mch_ie = pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae}) / src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}), 2.0);
1605 double log_mu_W_MsqU_ae = log(pow(Q_match / src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae}), 2.0));
1606
1607 for (int je = 0; je < 2; je++) {
1608 double ratio_Mch_je_ie = src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, je}) / src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie});
1609 double factor_abs = 2.0 * std::fabs(ratio_Mch_je_ie);
1610 double factor_f31_f30 = (f31(std::pow(ratio_Mch_je_ie, 2), ratio_MsqU_ae_Mch_ie) +
1611 4.0 * (f30(std::pow(ratio_Mch_je_ie, 2), ratio_MsqU_ae_Mch_ie) +
1612 (f30(std::pow(ratio_Mch_je_ie, 2), ratio_MsqU_ae_Mch_ie * 1.0001) -
1613 f30(std::pow(ratio_Mch_je_ie, 2), ratio_MsqU_ae_Mch_ie * 0.9999)) / 0.0002) * log_mu_W_MsqU_ae);
1614 double factor_f41_f40 = (f41(std::pow(ratio_Mch_je_ie, 2), ratio_MsqU_ae_Mch_ie) +
1615 4.0 * (f40(std::pow(ratio_Mch_je_ie, 2), ratio_MsqU_ae_Mch_ie) +
1616 (f40(std::pow(ratio_Mch_je_ie, 2), ratio_MsqU_ae_Mch_ie * 1.0001) -
1617 f40(std::pow(ratio_Mch_je_ie, 2), ratio_MsqU_ae_Mch_ie * 0.9999)) / 0.0002) * log_mu_W_MsqU_ae);
1618
1619 C91c += src.get_val(ParameterType::WILSON, "MATRIX_BSM", {3,je, ae, 1}) * src.get_val(ParameterType::WILSON, "MATRIX_BSM", {3,ie, ae, 2}) *
1620 ((factor_abs * factor_f31_f30 * src.get_val(ParameterType::BSM, "UMIX", {je+1,0+1}) * src.get_val(ParameterType::BSM, "UMIX", {ie+1, 0+1})) -
1621 (factor_f41_f40 * src.get_val(ParameterType::BSM, "VMIX", {je+1,0+1}) * src.get_val(ParameterType::BSM, "VMIX", {ie+1, 0+1})));
1622
1623
1624 for (int de=0; de<6; de++) {
1625 for (int ke=0; ke<6; ke++) {
1626 C91f+=src.get_val(ParameterType::WILSON, "MATRIX_BSM", {9,de, ke}) * pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ke})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.) * src.get_val(ParameterType::WILSON, "MATRIX_BSM", {9,ke, ae}) * (1.+log(pow(Q_match/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ke}),2.)))*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {3,je, de, 1})*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {3,ie, ae, 2}) * (
1627 2.*fabs(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, je})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie})) * f60(pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, je})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.), pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}), 2.), pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, de})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}), 2.))*src.get_val(ParameterType::BSM, "UMIX", {je+1,0+1})*src.get_val(ParameterType::BSM, "UMIX", {ie+1,0+1})
1628 -f50(pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, je})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}), 2.), pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}), 2.), pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, de})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}), 2.)) * src.get_val(ParameterType::BSM, "VMIX", {je+1,0+1})*src.get_val(ParameterType::BSM, "VMIX", {ie+1,0+1}));
1629
1630 C91f_b +=src.get_val(ParameterType::WILSON, "MATRIX_BSM", {9,de, ke}) * pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ke})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.) * src.get_val(ParameterType::WILSON, "MATRIX_BSM", {9,ke, ae}) * (1+log(pow(Q_match/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ke}),2.)))*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {3,je, de, 1})*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {3,ie, ae, 2}) * (
1631 2.*fabs(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, je})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie})) * f60(pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, je})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.), pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}), 2.), pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, de})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}), 2.))*src.get_val(ParameterType::BSM, "UMIX", {je+1,0+1})*src.get_val(ParameterType::BSM, "UMIX", {ie+1,0+1})
1632 -f50(pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, je})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}), 2.), pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}), 2.), pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, de})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}), 2.)) * src.get_val(ParameterType::BSM, "VMIX", {je+1,0+1})*src.get_val(ParameterType::BSM, "VMIX", {ie+1,0+1}));
1633
1634 C91f_60 += 2.*fabs(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, je})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie})) * f60(pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, je})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.), pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}), 2.), pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, de})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}), 2.))*src.get_val(ParameterType::BSM, "UMIX", {je+1,0+1})*src.get_val(ParameterType::BSM, "UMIX", {ie+1,0+1});
1635 C91f_50 += f50(pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, je})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}), 2.), pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}), 2.), pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, de})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}), 2.)) * src.get_val(ParameterType::BSM, "VMIX", {je+1,0+1})*src.get_val(ParameterType::BSM, "VMIX", {ie+1,0+1});
1636 C91f_beg += src.get_val(ParameterType::WILSON, "MATRIX_BSM", {9,de, ke}) * pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ke})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.) * src.get_val(ParameterType::WILSON, "MATRIX_BSM", {9,ke, ae}) * (1+log(pow(Q_match/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ke}),2.)))*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {3,je, de, 1})*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {3,ie, ae, 2});
1637
1638 C91f_beg_1 += (1.+log(pow(Q_match/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ke}),2.)))*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {3,je, de, 1})*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {3,ie, ae, 2});
1639 C91f_beg_1a += (1.+log(pow(Q_match/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ke}),2.)))*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {3,je, de, 1});
1640 C91f_beg_1b += (1.+log(pow(Q_match/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ke}),2.)))*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {3,ie, ae, 2});
1641 // C91f_beg_12 += (1+log(pow(Q_match/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ke}),2.)))*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {3,je, de, 1})*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {3,ie, ae, 2});
1642 C91f_beg_11 += src.get_val(ParameterType::WILSON, "MATRIX_BSM", {3,je, de, 1})*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {3,ie, ae, 2});
1643 C91f_beg_10 += (1.+log(pow(Q_match/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ke}),2.)));
1644 aa++;
1645 }
1646 }
1647
1648 for (int be=0; be<3; be++) {
1649 double ratio_Mch = src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, je}) / src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie});
1650 double ratio_MsqU = src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae}) / src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie});
1651 double ratio_Msn = src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {16, be}) / src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie});
1652
1653 B1c1 += src.get_val(ParameterType::WILSON, "MATRIX_BSM", {3,je, ae, 1}) * src.get_val(ParameterType::WILSON, "MATRIX_BSM", {3,ie, ae, 2}) / pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}), 2) *
1654 (0.5 * src.get_val(ParameterType::WILSON, "MATRIX_BSM", {5, ie, be, 1}) * src.get_val(ParameterType::WILSON, "MATRIX_BSM", {5, je, be, 1}) *
1655 (f81(pow(ratio_Mch, 2), pow(ratio_MsqU, 2), pow(ratio_Msn, 2)) +
1656 4 * (f50(pow(ratio_Mch, 2), pow(ratio_MsqU, 2), pow(ratio_Msn, 2)) +
1657 (f50(pow(ratio_Mch, 2), pow(ratio_MsqU, 2) * 1.0001, pow(ratio_Msn, 2)) -
1658 f50(pow(ratio_Mch, 2), pow(ratio_MsqU, 2) * 0.9999, pow(ratio_Msn, 2))) / 0.0002) *
1659 log(pow(Q_match / src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae}), 2))));
1660
1661 B1c2 += src.get_val(ParameterType::WILSON, "MATRIX_BSM", {3,je, ae, 1}) * src.get_val(ParameterType::WILSON, "MATRIX_BSM", {3,ie, ae, 2}) / pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}), 2) *
1662 (src.get_val(ParameterType::WILSON, "MATRIX_BSM", {6, ie, be, 1}) * src.get_val(ParameterType::WILSON, "MATRIX_BSM", {6, je, be, 1}) * fabs(ratio_Mch) *
1663 (f91(pow(ratio_Mch, 2), pow(ratio_MsqU, 2), pow(ratio_Msn, 2)) +
1664 4 * (f60(pow(ratio_Mch, 2), pow(ratio_MsqU, 2), pow(ratio_Msn, 2)) +
1665 (f60(pow(ratio_Mch, 2), pow(ratio_MsqU, 2) * 1.0001, pow(ratio_Msn, 2)) -
1666 f60(pow(ratio_Mch, 2), pow(ratio_MsqU, 2) * 0.9999, pow(ratio_Msn, 2))) / 0.0002) *
1667 log(pow(Q_match / src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae}), 2))));
1668 }
1669 }
1670
1671 for (int ce = 0; ce < 6; ce++) {
1672 for (int fe = 0; fe < 3; fe++) {
1673 for (int de = 0; de < 6; de++) {
1674 for (int ke = 0; ke < 6; ke++) {
1675 double MsqU_ke_Mch_ie_squared = pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ke}) / src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}), 2.0);
1676 double log_scale_MsqU_ke = log(pow(Q_match / src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ke}), 2.0));
1677 C91f += src.get_val(ParameterType::WILSON, "MATRIX_BSM", {9,de, ke}) * MsqU_ke_Mch_ie_squared * src.get_val(ParameterType::WILSON, "MATRIX_BSM", {9,ke, ae}) *
1678 (1.0 + log_scale_MsqU_ke) * src.get_val(ParameterType::WILSON, "MATRIX_BSM", {3,ie, ce, 1}) * src.get_val(ParameterType::WILSON, "MATRIX_BSM", {3,ie, ae, 2}) *
1679 f50(pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae}) / src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}), 2.0),
1680 pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, de}) / src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}), 2.0),
1681 pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ce}) / src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}), 2.0)) *
1682 src.get_val(ParameterType::WILSON, "MATRIX_BSM", {1, ce, fe}) * src.get_val(ParameterType::WILSON, "MATRIX_BSM", {1, de, fe});
1683
1684 C91f += src.get_val(ParameterType::WILSON, "MATRIX_BSM", {9,de, ke}) * MsqU_ke_Mch_ie_squared * src.get_val(ParameterType::WILSON, "MATRIX_BSM", {9,ke, ce}) *
1685 (1.0 + log_scale_MsqU_ke) * src.get_val(ParameterType::WILSON, "MATRIX_BSM", {3,ie, de, 1}) * src.get_val(ParameterType::WILSON, "MATRIX_BSM", {3,ie, ae, 2}) *
1686 f50(pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae}) / src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}), 2.0),
1687 pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ce}) / src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}), 2.0),
1688 pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, de}) / src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}), 2.0)) *
1689 src.get_val(ParameterType::WILSON, "MATRIX_BSM", {1, ce, fe}) * src.get_val(ParameterType::WILSON, "MATRIX_BSM", {1, ae, fe});
1690
1691 C91f_a1 += src.get_val(ParameterType::WILSON, "MATRIX_BSM", {9,de, ke}) * MsqU_ke_Mch_ie_squared * src.get_val(ParameterType::WILSON, "MATRIX_BSM", {9,ke, ae}) *
1692 (1.0 + log_scale_MsqU_ke) * src.get_val(ParameterType::WILSON, "MATRIX_BSM", {3,ie, ce, 1}) * src.get_val(ParameterType::WILSON, "MATRIX_BSM", {3,ie, ae, 2}) *
1693 f50(pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae}) / src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}), 2.0),
1694 pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, de}) / src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}), 2.0),
1695 pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ce}) / src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}), 2.0)) *
1696 src.get_val(ParameterType::WILSON, "MATRIX_BSM", {1, ce, fe}) * src.get_val(ParameterType::WILSON, "MATRIX_BSM", {1, de, fe});
1697
1698 C91f_a2 += src.get_val(ParameterType::WILSON, "MATRIX_BSM", {9,de, ke}) * MsqU_ke_Mch_ie_squared * src.get_val(ParameterType::WILSON, "MATRIX_BSM", {9,ke, ce}) *
1699 (1.0 + log_scale_MsqU_ke) * src.get_val(ParameterType::WILSON, "MATRIX_BSM", {3,ie, de, 1}) * src.get_val(ParameterType::WILSON, "MATRIX_BSM", {3,ie, ae, 2}) *
1700 f50(pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae}) / src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}), 2.0),
1701 pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ce}) / src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}), 2.0),
1702 pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, de}) / src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}), 2.0)) *
1703 src.get_val(ParameterType::WILSON, "MATRIX_BSM", {1, ce, fe}) * src.get_val(ParameterType::WILSON, "MATRIX_BSM", {1, ae, fe});
1704
1705 }
1706
1707 for (int je = 0; je < 2; je++) {
1708 double factor_common = mass24_Mch_ie_squared * src.get_val(ParameterType::WILSON, "MATRIX_BSM", {9,ae, de}) *pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, de})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2)*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {9,de, ce}) *
1709 (1+log(pow(Q_match/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, de}),2))) * src.get_val(ParameterType::WILSON, "MATRIX_BSM", {3,je, ae, 1}) * src.get_val(ParameterType::WILSON, "MATRIX_BSM", {3,ie, ce, 2});
1710
1711 B1f1 += factor_common * 0.5 * f90(pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, je}) / src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}), 2.0),
1712 pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae}) / src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}), 2.0),
1713 pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ce}) / src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}), 2.0),
1714 pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {16, fe}) / src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}), 2.0)) *
1715 src.get_val(ParameterType::WILSON, "MATRIX_BSM", {5, ie, fe, 1}) * src.get_val(ParameterType::WILSON, "MATRIX_BSM", {5, je, fe, 1});
1716
1717 B1f2 += factor_common * fabs(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, je}) / src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie})) *
1718 f100(pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, je}) / src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}), 2.0),
1719 pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae}) / src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}), 2.0),
1720 pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ce}) / src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}), 2.0),
1721 pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {16, fe}) / src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}), 2.0)) *
1722 src.get_val(ParameterType::WILSON, "MATRIX_BSM", {6, ie, fe, 1}) * src.get_val(ParameterType::WILSON, "MATRIX_BSM", {6, je, fe, 1});
1723
1724
1725 }
1726 }
1727
1728 C91c += src.get_val(ParameterType::WILSON, "MATRIX_BSM", {3,ie, ce, 1}) * src.get_val(ParameterType::WILSON, "MATRIX_BSM", {3,ie, ae, 2}) *
1729 (f51(ratio_MsqU_ae_Mch_ie, pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ce}) / src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}), 2.0)) +
1730 4.0 * (f40(ratio_MsqU_ae_Mch_ie, pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ce}) / src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}), 2.0)) +
1731 (f40(ratio_MsqU_ae_Mch_ie, pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ce}) / src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}), 2.0)* 1.0001) -
1732 f40(ratio_MsqU_ae_Mch_ie, pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ce}) / src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}), 2.0)* 0.9999)) / 0.0002
1733 +(f40(ratio_MsqU_ae_Mch_ie*1.0001, pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ce})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.))
1734 -f40(ratio_MsqU_ae_Mch_ie*0.9999, pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ce}) / src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}), 2.0)))/0.0002)* log_mu_W_MsqU_ae) *
1735 src.get_val(ParameterType::WILSON, "MATRIX_BSM", {1, ce, fe}) * src.get_val(ParameterType::WILSON, "MATRIX_BSM", {1, ae, fe});
1736 }
1737
1738 }
1739 }
1740 }
1741
1742 // for(int ie=0;ie<2;ie++) for(int ae=0;ae<6;ae++) printf("X_UL[%d][%d][1] : %lf\n",ie, ae, src.get_val(ParameterType::WILSON, "MATRIX_BSM", {3,ie, ae, 1}).real());
1743 // printf("aa : %d\n", aa);
1744 // printf("C91f before : %lf\n", C91f_b.real());
1745 // printf("C91f 50 : %lf\n", C91f_50.real());
1746 // printf("C91f 60 : %lf\n", C91f_60.real());
1747 // printf("C91f beg : %lf\n", C91f_beg.real());
1748 // printf("C91f beg1 : %lf\n", C91f_beg_1.real());
1749 // printf("C91f beg1a : %lf\n", C91f_beg_1a.real());
1750 // printf("C91f beg1b : %lf\n", C91f_beg_1b.real());
1751 // printf("C91f beg10 : %lf\n", C91f_beg_10.real());
1752 // printf("C91f beg11 : %lf\n", C91f_beg_11.real());
1753 // printf("C91f beg10 img : %lf\n", C91f_beg_10.imag());
1754 // printf("C91f beg11 img : %lf\n", C91f_beg_11.imag());
1755 // printf("C91f a1 : %lf\n", C91f_a1.real());
1756 // printf("C91f a1 : %lf\n", C91f_a2.real());
1757 // for (int ie =0; ie<2; ++ie) {
1758 // printf("U_MIX[%d][1] = %lf\n", ie+1, src.get_val(ParameterType::BSM, "UMIX", {ie+1,0+1}).real());
1759 // }
1760 // for (int ie =0; ie<2; ++ie) {
1761 // printf("V_MIX[%d][1] = %lf\n", ie+1, src.get_val(ParameterType::BSM, "VMIX", {ie+1,0+1}).real());
1762 // }
1763 double kappa = src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", 19);
1764 C91c *= -kappa / 8.0;
1765
1766 complex_t B101c = (B1c1 + B1c2) * kappa * mW * mW / 2.0 / pow(g2, 2);
1767
1768 C91f *= kappa / 6.0;
1769
1770 complex_t B101f = -(B1f1 + B1f2) * 2.0 / 3.0 * kappa / pow(g2, 2);
1771
1772 // printf("B101f : %f\n", B101f);
1773 // printf("C91f : %f\n", C91f);
1774 // printf("sw2 : %f\n", sw2);
1775
1776 complex_t C10four_1 = (B101f - C91f) / sw2;
1777
1778 complex_t C10charg_1=(B101c-C91c)/sw2;
1779 double C10H_1 = -C9llH1(xt,yt,lu,log(pow(Q_match/mH,2.)))/sw2;
1780
1781 // printf("C10H_1 : %f\n", C10H_1);
1782 // printf("C10charg_1 : %f\n", C10charg_1);
1783 // printf("C10four_1 : %f\n", C10four_1);
1784
1785 return C10four_1 + C10charg_1 + C10H_1;
1786}
1787
1788
1791 {
1792 {ParameterType::WILSON, "WPARAM_SI_BSM", 19},
1793 {ParameterType::WILSON, "WPARAM_SI_BSM", 8},
1794 {ParameterType::WILSON, "WPARAM_MATCH_BSM", 1},
1795 {ParameterType::WILSON, "WPARAM_MATCH_SM", 6},
1796 {ParameterType::WILSON, "WPARAM_MATCH_SM", {5, 1}},
1797 {ParameterType::SM, "MASS", 24},
1798 {ParameterType::SM, "MASS", 3},
1799 {ParameterType::WILSON, "WPARAM_SI_BSM", {13, 0}},
1800 {ParameterType::WILSON, "WPARAM_SI_BSM", {13, 1}},
1801 {ParameterType::WILSON, "WPARAM_SI_BSM", {14, 0}},
1802 {ParameterType::WILSON, "WPARAM_SI_BSM", {14, 1}},
1803 {ParameterType::WILSON, "WPARAM_SI_BSM", {14, 2}},
1804 {ParameterType::WILSON, "WPARAM_SI_BSM", {14, 3}},
1805 {ParameterType::WILSON, "WPARAM_SI_BSM", {14, 4}},
1806 {ParameterType::WILSON, "WPARAM_SI_BSM", {14, 5}},
1807 {ParameterType::WILSON, "MATRIX_BSM", {4, 0, 0, 1}},
1808 {ParameterType::WILSON, "MATRIX_BSM", {4, 0, 0, 2}},
1809 {ParameterType::WILSON, "MATRIX_BSM", {4, 0, 1, 1}},
1810 {ParameterType::WILSON, "MATRIX_BSM", {4, 0, 1, 2}},
1811 {ParameterType::WILSON, "MATRIX_BSM", {4, 0, 2, 1}},
1812 {ParameterType::WILSON, "MATRIX_BSM", {4, 0, 2, 2}},
1813 {ParameterType::WILSON, "MATRIX_BSM", {4, 0, 3, 1}},
1814 {ParameterType::WILSON, "MATRIX_BSM", {4, 0, 3, 2}},
1815 {ParameterType::WILSON, "MATRIX_BSM", {4, 0, 4, 1}},
1816 {ParameterType::WILSON, "MATRIX_BSM", {4, 0, 4, 2}},
1817 {ParameterType::WILSON, "MATRIX_BSM", {4, 0, 5, 1}},
1818 {ParameterType::WILSON, "MATRIX_BSM", {4, 0, 5, 2}},
1819 {ParameterType::WILSON, "MATRIX_BSM", {4, 1, 0, 1}},
1820 {ParameterType::WILSON, "MATRIX_BSM", {4, 1, 0, 2}},
1821 {ParameterType::WILSON, "MATRIX_BSM", {4, 1, 1, 1}},
1822 {ParameterType::WILSON, "MATRIX_BSM", {4, 1, 1, 2}},
1823 {ParameterType::WILSON, "MATRIX_BSM", {4, 1, 2, 1}},
1824 {ParameterType::WILSON, "MATRIX_BSM", {4, 1, 2, 2}},
1825 {ParameterType::WILSON, "MATRIX_BSM", {4, 1, 3, 1}},
1826 {ParameterType::WILSON, "MATRIX_BSM", {4, 1, 3, 2}},
1827 {ParameterType::WILSON, "MATRIX_BSM", {4, 1, 4, 1}},
1828 {ParameterType::WILSON, "MATRIX_BSM", {4, 1, 4, 2}},
1829 {ParameterType::WILSON, "MATRIX_BSM", {4, 1, 5, 1}},
1830 {ParameterType::WILSON, "MATRIX_BSM", {4, 1, 5, 2}},
1831
1832 {ParameterType::WILSON, "MATRIX_BSM", {3, 0, 0, 1}},
1833 {ParameterType::WILSON, "MATRIX_BSM", {3, 0, 0, 2}},
1834 {ParameterType::WILSON, "MATRIX_BSM", {3, 0, 1, 1}},
1835 {ParameterType::WILSON, "MATRIX_BSM", {3, 0, 1, 2}},
1836 {ParameterType::WILSON, "MATRIX_BSM", {3, 0, 2, 1}},
1837 {ParameterType::WILSON, "MATRIX_BSM", {3, 0, 2, 2}},
1838 {ParameterType::WILSON, "MATRIX_BSM", {3, 0, 3, 1}},
1839 {ParameterType::WILSON, "MATRIX_BSM", {3, 0, 3, 2}},
1840 {ParameterType::WILSON, "MATRIX_BSM", {3, 0, 4, 1}},
1841 {ParameterType::WILSON, "MATRIX_BSM", {3, 0, 4, 2}},
1842 {ParameterType::WILSON, "MATRIX_BSM", {3, 0, 5, 1}},
1843 {ParameterType::WILSON, "MATRIX_BSM", {3, 0, 5, 2}},
1844 {ParameterType::WILSON, "MATRIX_BSM", {3, 1, 0, 1}},
1845 {ParameterType::WILSON, "MATRIX_BSM", {3, 1, 0, 2}},
1846 {ParameterType::WILSON, "MATRIX_BSM", {3, 1, 1, 1}},
1847 {ParameterType::WILSON, "MATRIX_BSM", {3, 1, 1, 2}},
1848 {ParameterType::WILSON, "MATRIX_BSM", {3, 1, 2, 1}},
1849 {ParameterType::WILSON, "MATRIX_BSM", {3, 1, 2, 2}},
1850 {ParameterType::WILSON, "MATRIX_BSM", {3, 1, 3, 1}},
1851 {ParameterType::WILSON, "MATRIX_BSM", {3, 1, 3, 2}},
1852 {ParameterType::WILSON, "MATRIX_BSM", {3, 1, 4, 1}},
1853 {ParameterType::WILSON, "MATRIX_BSM", {3, 1, 4, 2}},
1854 {ParameterType::WILSON, "MATRIX_BSM", {3, 1, 5, 1}},
1855 {ParameterType::WILSON, "MATRIX_BSM", {3, 1, 5, 2}}
1856 },
1857 compute_LO,
1859 };
1860}
1861
1863 double ld = src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", 8);
1864 double yt = src.get_val(ParameterType::WILSON, "WPARAM_MATCH_BSM", 1);
1865 double mass_top_muW = src.get_val(ParameterType::WILSON, "WPARAM_MATCH_SM", 6);
1866 double mass_b_muW = src.get_val(ParameterType::WILSON, "WPARAM_MATCH_SM", {5,1});
1867 double mW = src.get_val(ParameterType::SM, "MASS", 24);
1868 double C7pH = src.get_val(ParameterType::SM, "MASS", 3) * mass_b_muW / pow(mass_top_muW, 2) * (1.0 / 3.0) * ld * ld * F7_1(yt);
1869
1870 double C7pcharg = 0.0;
1871 for (int ie = 0; ie < 2; ++ie) {
1872 for (int ae = 0; ae < 6; ++ae) {
1873 double Mch = src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie});
1874 double MsqU = src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae});
1875 double ratio = pow(MsqU / Mch, 2);
1876 C7pcharg += pow(mW / Mch, 2) *
1877 (src.get_val(ParameterType::WILSON, "MATRIX_BSM", {4, ie, ae, 1}) *
1878 src.get_val(ParameterType::WILSON, "MATRIX_BSM", {4, ie, ae, 2}) * h10(ratio)
1879 + Mch / mass_b_muW *
1880 src.get_val(ParameterType::WILSON, "MATRIX_BSM", {4, ie, ae, 1}) *
1881 src.get_val(ParameterType::WILSON, "MATRIX_BSM", {3, ie, ae, 2}) * h20(ratio));
1882 }
1883 }
1884
1885 double kappa = src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", 19);
1886 C7pcharg *= -0.5 * kappa;
1887
1888 return C7pH + C7pcharg;
1889}
1890
1893 {
1894 {ParameterType::WILSON, "WPARAM_SI_BSM", 19},
1895 {ParameterType::WILSON, "WPARAM_SI_BSM", 8},
1896 {ParameterType::WILSON, "WPARAM_MATCH_BSM", 1},
1897 {ParameterType::WILSON, "WPARAM_MATCH_SM", 6},
1898 {ParameterType::WILSON, "WPARAM_MATCH_SM", {5,1}},
1899 {ParameterType::SM, "MASS", 24},
1900 {ParameterType::SM, "MASS", 3},
1901 {ParameterType::WILSON, "WPARAM_SI_BSM", {13,0}},
1902 {ParameterType::WILSON, "WPARAM_SI_BSM", {13,1}},
1903 {ParameterType::WILSON, "WPARAM_SI_BSM", {14,0}},
1904 {ParameterType::WILSON, "WPARAM_SI_BSM", {14,1}},
1905 {ParameterType::WILSON, "WPARAM_SI_BSM", {14,2}},
1906 {ParameterType::WILSON, "WPARAM_SI_BSM", {14,3}},
1907 {ParameterType::WILSON, "WPARAM_SI_BSM", {14,4}},
1908 {ParameterType::WILSON, "WPARAM_SI_BSM", {14,5}},
1909 {ParameterType::WILSON, "MATRIX_BSM", {4,0,0,1}},
1910 {ParameterType::WILSON, "MATRIX_BSM", {4,0,0,2}},
1911 {ParameterType::WILSON, "MATRIX_BSM", {3,0,0,2}},
1912 {ParameterType::WILSON, "MATRIX_BSM", {4,0,1,1}},
1913 {ParameterType::WILSON, "MATRIX_BSM", {4,0,1,2}},
1914 {ParameterType::WILSON, "MATRIX_BSM", {3,0,1,2}},
1915 {ParameterType::WILSON, "MATRIX_BSM", {4,0,2,1}},
1916 {ParameterType::WILSON, "MATRIX_BSM", {4,0,2,2}},
1917 {ParameterType::WILSON, "MATRIX_BSM", {3,0,2,2}},
1918 {ParameterType::WILSON, "MATRIX_BSM", {4,0,3,1}},
1919 {ParameterType::WILSON, "MATRIX_BSM", {4,0,3,2}},
1920 {ParameterType::WILSON, "MATRIX_BSM", {3,0,3,2}},
1921 {ParameterType::WILSON, "MATRIX_BSM", {4,0,4,1}},
1922 {ParameterType::WILSON, "MATRIX_BSM", {4,0,4,2}},
1923 {ParameterType::WILSON, "MATRIX_BSM", {3,0,4,2}},
1924 {ParameterType::WILSON, "MATRIX_BSM", {4,0,5,1}},
1925 {ParameterType::WILSON, "MATRIX_BSM", {4,0,5,2}},
1926 {ParameterType::WILSON, "MATRIX_BSM", {3,0,5,2}},
1927 {ParameterType::WILSON, "MATRIX_BSM", {4,1,0,1}},
1928 {ParameterType::WILSON, "MATRIX_BSM", {4,1,0,2}},
1929 {ParameterType::WILSON, "MATRIX_BSM", {3,1,0,2}},
1930 {ParameterType::WILSON, "MATRIX_BSM", {4,1,1,1}},
1931 {ParameterType::WILSON, "MATRIX_BSM", {4,1,1,2}},
1932 {ParameterType::WILSON, "MATRIX_BSM", {3,1,1,2}},
1933 {ParameterType::WILSON, "MATRIX_BSM", {4,1,2,1}},
1934 {ParameterType::WILSON, "MATRIX_BSM", {4,1,2,2}},
1935 {ParameterType::WILSON, "MATRIX_BSM", {3,1,2,2}},
1936 {ParameterType::WILSON, "MATRIX_BSM", {4,1,3,1}},
1937 {ParameterType::WILSON, "MATRIX_BSM", {4,1,3,2}},
1938 {ParameterType::WILSON, "MATRIX_BSM", {3,1,3,2}},
1939 {ParameterType::WILSON, "MATRIX_BSM", {4,1,4,1}},
1940 {ParameterType::WILSON, "MATRIX_BSM", {4,1,4,2}},
1941 {ParameterType::WILSON, "MATRIX_BSM", {3,1,4,2}},
1942 {ParameterType::WILSON, "MATRIX_BSM", {4,1,5,1}},
1943 {ParameterType::WILSON, "MATRIX_BSM", {4,1,5,2}},
1944 {ParameterType::WILSON, "MATRIX_BSM", {3,1,5,2}},
1945 },
1946 compute_LO,
1948 };
1949}
1950
1952 double ld = src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", 8);
1953 double yt = src.get_val(ParameterType::WILSON, "WPARAM_MATCH_BSM", 1);
1954 double mt = src.get_val(ParameterType::WILSON, "WPARAM_MATCH_SM", 6);
1955 double mb = src.get_val(ParameterType::WILSON, "WPARAM_MATCH_SM", {5,1});
1956 double mW = src.get_val(ParameterType::SM, "MASS", 24);
1957 double m3 = src.get_val(ParameterType::SM, "MASS", 3);
1958
1959 double C8pH = m3 * mb / (mt * mt) * (1.0 / 3.0) * ld * ld * F8_1(yt);
1960
1961 double C8pcharg = 0.0;
1962 for (int ie = 0; ie < 2; ++ie) {
1963 double Mch = src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie});
1964 for (int ae = 0; ae < 6; ++ae) {
1965 double MsqU = src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae});
1966 double x = pow(MsqU / Mch, 2);
1967
1968 C8pcharg += pow(mW / Mch, 2) * (
1969 src.get_val(ParameterType::WILSON, "MATRIX_BSM", {4,ie, ae, 1}) *
1970 src.get_val(ParameterType::WILSON, "MATRIX_BSM", {4,ie, ae, 2}) * h50(x) +
1971 Mch / mb *
1972 src.get_val(ParameterType::WILSON, "MATRIX_BSM", {4,ie, ae, 1}) *
1973 src.get_val(ParameterType::WILSON, "MATRIX_BSM", {3,ie, ae, 2}) * h60(x));
1974 }
1975 }
1976
1977 double kappa = src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", 19);
1978 C8pcharg *= -0.5 * kappa;
1979
1980 return C8pH + C8pcharg;
1981}
1982
1985 {
1986 {ParameterType::WILSON, "WPARAM_SI_BSM", 19}, // kappa
1987 // {ParameterType::WILSON, "WPARAM_SI_BSM", 7}, // lu
1988 {ParameterType::WILSON, "WPARAM_SI_BSM", 8}, // ld
1989 {ParameterType::WILSON, "WPARAM_MATCH_BSM", 1}, // yt
1990 // {ParameterType::WILSON, "WPARAM_MATCH_SM", {2,1}}, // xt
1991 {ParameterType::WILSON, "WPARAM_MATCH_SM", {5,1}}, // mass_b_muW
1992 {ParameterType::WILSON, "WPARAM_MATCH_SM", 6}, // mass_top_muW
1993 {ParameterType::WILSON, "WPARAM_SI_SM", 3}, // used by C10pH
1994 {ParameterType::WILSON, "WPARAM_SI_SM", 4}, // sw2
1995 {ParameterType::SM, "MASS", 3}, // mass used by C9pH and C10pH
1996 {ParameterType::SM, "MASS", 24}, // mW
1997 {ParameterType::SM, "GAUGE", 2}, // g2
1998 {ParameterType::BSM, "MASS", 37}, // mH
1999 {ParameterType::BSM, "MINPAR", 3}, // tanb
2000 // {ParameterType::WILSON, "EW_SCALE", 1},
2001 {ParameterType::WILSON, "WPARAM_SI_BSM", {13,0}},
2002 {ParameterType::WILSON, "WPARAM_SI_BSM", {13,1}},
2003 {ParameterType::WILSON, "WPARAM_SI_BSM", {14,0}},
2004 {ParameterType::WILSON, "WPARAM_SI_BSM", {14,1}},
2005 {ParameterType::WILSON, "WPARAM_SI_BSM", {14,2}},
2006 {ParameterType::WILSON, "WPARAM_SI_BSM", {14,3}},
2007 {ParameterType::WILSON, "WPARAM_SI_BSM", {14,4}},
2008 {ParameterType::WILSON, "WPARAM_SI_BSM", {14,5}},
2009 {ParameterType::WILSON, "WPARAM_SI_BSM", {16,0}},
2010 {ParameterType::WILSON, "WPARAM_SI_BSM", {16,1}},
2011 {ParameterType::WILSON, "WPARAM_SI_BSM", {16,2}},
2012
2013 {ParameterType::WILSON, "MATRIX_BSM", {4,0,0,1}},
2014 {ParameterType::WILSON, "MATRIX_BSM", {4,0,0,2}},
2015 {ParameterType::WILSON, "MATRIX_BSM", {4,0,1,1}},
2016 {ParameterType::WILSON, "MATRIX_BSM", {4,0,1,2}},
2017 {ParameterType::WILSON, "MATRIX_BSM", {4,0,2,1}},
2018 {ParameterType::WILSON, "MATRIX_BSM", {4,0,2,2}},
2019 {ParameterType::WILSON, "MATRIX_BSM", {4,0,3,1}},
2020 {ParameterType::WILSON, "MATRIX_BSM", {4,0,3,2}},
2021 {ParameterType::WILSON, "MATRIX_BSM", {4,0,4,1}},
2022 {ParameterType::WILSON, "MATRIX_BSM", {4,0,4,2}},
2023 {ParameterType::WILSON, "MATRIX_BSM", {4,0,5,1}},
2024 {ParameterType::WILSON, "MATRIX_BSM", {4,0,5,2}},
2025
2026 {ParameterType::WILSON, "MATRIX_BSM", {4,1,0,1}},
2027 {ParameterType::WILSON, "MATRIX_BSM", {4,1,0,2}},
2028 {ParameterType::WILSON, "MATRIX_BSM", {4,1,1,1}},
2029 {ParameterType::WILSON, "MATRIX_BSM", {4,1,1,2}},
2030 {ParameterType::WILSON, "MATRIX_BSM", {4,1,2,1}},
2031 {ParameterType::WILSON, "MATRIX_BSM", {4,1,2,2}},
2032 {ParameterType::WILSON, "MATRIX_BSM", {4,1,3,1}},
2033 {ParameterType::WILSON, "MATRIX_BSM", {4,1,3,2}},
2034 {ParameterType::WILSON, "MATRIX_BSM", {4,1,4,1}},
2035 {ParameterType::WILSON, "MATRIX_BSM", {4,1,4,2}},
2036 {ParameterType::WILSON, "MATRIX_BSM", {4,1,5,1}},
2037 {ParameterType::WILSON, "MATRIX_BSM", {4,1,5,2}},
2038
2039 {ParameterType::WILSON, "MATRIX_BSM", {5,0,0,1}},
2040 {ParameterType::WILSON, "MATRIX_BSM", {5,0,1,1}},
2041 {ParameterType::WILSON, "MATRIX_BSM", {5,0,2,1}},
2042 {ParameterType::WILSON, "MATRIX_BSM", {5,1,0,1}},
2043 {ParameterType::WILSON, "MATRIX_BSM", {5,1,1,1}},
2044 {ParameterType::WILSON, "MATRIX_BSM", {5,1,2,1}},
2045
2046 {ParameterType::WILSON, "MATRIX_BSM", {6,0,0,1}},
2047 {ParameterType::WILSON, "MATRIX_BSM", {6,0,1,1}},
2048 {ParameterType::WILSON, "MATRIX_BSM", {6,0,2,1}},
2049 {ParameterType::WILSON, "MATRIX_BSM", {6,1,0,1}},
2050 {ParameterType::WILSON, "MATRIX_BSM", {6,1,1,1}},
2051 {ParameterType::WILSON, "MATRIX_BSM", {6,1,2,1}},
2052
2053 {ParameterType::WILSON, "MATRIX_BSM", {2,0,0}},
2054 {ParameterType::WILSON, "MATRIX_BSM", {2,0,1}},
2055 {ParameterType::WILSON, "MATRIX_BSM", {2,0,2}},
2056 {ParameterType::WILSON, "MATRIX_BSM", {2,1,0}},
2057 {ParameterType::WILSON, "MATRIX_BSM", {2,1,1}},
2058 {ParameterType::WILSON, "MATRIX_BSM", {2,1,2}},
2059 {ParameterType::WILSON, "MATRIX_BSM", {2,2,0}},
2060 {ParameterType::WILSON, "MATRIX_BSM", {2,2,1}},
2061 {ParameterType::WILSON, "MATRIX_BSM", {2,2,2}},
2062 {ParameterType::WILSON, "MATRIX_BSM", {2,3,0}},
2063 {ParameterType::WILSON, "MATRIX_BSM", {2,3,1}},
2064 {ParameterType::WILSON, "MATRIX_BSM", {2,3,2}},
2065 {ParameterType::WILSON, "MATRIX_BSM", {2,4,0}},
2066 {ParameterType::WILSON, "MATRIX_BSM", {2,4,1}},
2067 {ParameterType::WILSON, "MATRIX_BSM", {2,4,2}},
2068 {ParameterType::WILSON, "MATRIX_BSM", {2,5,0}},
2069 {ParameterType::WILSON, "MATRIX_BSM", {2,5,1}},
2070 {ParameterType::WILSON, "MATRIX_BSM", {2,5,2}},
2071
2072 {ParameterType::BSM, "UMIX", {0+1, 0+1}},
2073 {ParameterType::BSM, "UMIX", {1+1,0+1}},
2074 {ParameterType::BSM, "VMIX", {0+1, 0+1}},
2075 {ParameterType::BSM, "VMIX", {1+1,0+1}}
2076 },
2077 compute_LO,
2079 };
2080}
2081
2083 // double xt = src.get_val(ParameterType::WILSON, "WPARAM_MATCH_SM", {2,1});
2084
2085 // double lu = src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", 7);
2086 double ld = src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", 8);
2087 double yt = src.get_val(ParameterType::WILSON, "WPARAM_MATCH_BSM", 1);
2088 // double Q_match = src.get_val(ParameterType::WILSON, "EW_SCALE", 1);;
2089 double mW = src.get_val(ParameterType::SM, "MASS", 24);
2090 double mH = src.get_val(ParameterType::BSM, "MASS", 37);
2091 double sw2 = src.get_val(ParameterType::WILSON, "WPARAM_SI_SM", 4);
2092 double mass_b_muW = src.get_val(ParameterType::WILSON, "WPARAM_MATCH_SM", {5,1});
2093 double mass_top_muW = src.get_val(ParameterType::WILSON, "WPARAM_MATCH_SM", 6);
2094 double g2 = src.get_val(ParameterType::SM, "GAUGE", 2);
2095 double tanb = src.get_val(ParameterType::BSM, "MINPAR", 3);
2096
2097 double B10pc=0.;
2098 double C9pc=0.;
2099 double B9pc=0.;
2100 double D9pc=0.;
2101
2102 for(int ie=0;ie<2;ie++) {
2103 for(int ae=0;ae<6;ae++) {
2104 for(int je=0;je<2;je++) {
2105 C9pc+=src.get_val(ParameterType::WILSON, "MATRIX_BSM", {4,je, ae, 1})*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {4,ie, ae, 2})*(2.*fabs(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, je})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}))*f30(pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, je})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.),pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.))*src.get_val(ParameterType::BSM, "VMIX", {je+1, 0+1})*src.get_val(ParameterType::BSM, "VMIX", {ie+1, 0+1}) -f40(pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, je})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.),pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.))*src.get_val(ParameterType::BSM, "UMIX", {je+1, 0+1})*src.get_val(ParameterType::BSM, "UMIX", {ie+1, 0+1}));
2106 for(int be=0;be<6;be++) {
2107 if (be<3) {
2108 B10pc+=-src.get_val(ParameterType::WILSON, "MATRIX_BSM", {4,je, ae, 1})*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {4,ie, ae, 2})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie})*(0.5*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {6,ie, be, 1})*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {6,je, be, 1})*f50(pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, je})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.),pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.),pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {16, be})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.)) +src.get_val(ParameterType::WILSON, "MATRIX_BSM", {5,ie, be, 1})*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {5,je, be, 1})*fabs(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, je})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}))*f60(pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, je})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.),pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.),pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {16, be})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.)));
2109 B9pc+=src.get_val(ParameterType::WILSON, "MATRIX_BSM", {4,je, ae, 1})*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {4,ie, ae, 2})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie})*(0.5*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {6,ie, be, 1})*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {6,je, be, 1})*f50(pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, je})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.),pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.),pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {16, be})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.)) -src.get_val(ParameterType::WILSON, "MATRIX_BSM", {5,ie, be, 1})*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {5,je, be, 1})*fabs(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, je})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}))*f60(pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, je})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.),pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.),pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {16, be})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.)));
2110 }
2111 }
2112
2113 }
2114 for(int be=0;be<6;be++) {
2115 for(int ce=0;ce<3;ce++) {
2116 C9pc+=-src.get_val(ParameterType::WILSON, "MATRIX_BSM", {4,ie, be, 1})*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {4,ie, ae, 2})*f40(pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.),pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, be})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.))*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {2,be, ce})*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {2,ae, ce});
2117 }
2118 }
2119 D9pc+=pow(mW/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.)*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {4,ie, ae, 1})*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {4,ie, ae, 2})*h30(pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.));
2120 }
2121 }
2122
2123 double kappa = src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", 19);
2124
2125 B9pc*=kappa*(mW)*mW/2./g2/g2;
2126
2127 C9pc*=-kappa/8.;
2128
2129
2130 double C10pH = -mass_b_muW*(src.get_val(ParameterType::SM, "MASS", 3))*(tanb*tanb/8./mW/mW
2131 +pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_SM", 3)*tanb*tanb/4./mW/mH,2.))*f20(yt)/sw2;
2132
2133 double C9pH =(4.*sw2-1.)*C10pH - src.get_val(ParameterType::SM, "MASS", 3)*mass_b_muW/mass_top_muW/mass_top_muW*D9H0(yt,ld);
2134
2135
2136 D9pc*=kappa;
2137
2138 double C9pcharg=(1.-4.*sw2)/sw2*C9pc-B9pc/sw2-D9pc;
2139
2140 return C9pH+C9pcharg;
2141}
2142
2145 {
2146 {ParameterType::WILSON, "WPARAM_SI_BSM", 19},
2147 {ParameterType::WILSON, "WPARAM_MATCH_BSM", 1},
2148 {ParameterType::WILSON, "WPARAM_MATCH_SM", {5,1}},
2149 {ParameterType::WILSON, "WPARAM_SI_SM", 3},
2150 {ParameterType::WILSON, "WPARAM_SI_SM", 4},
2151 {ParameterType::SM, "MASS", 24},
2152 {ParameterType::SM, "MASS", 3},
2153 {ParameterType::SM, "GAUGE", 2},
2154 {ParameterType::BSM, "MASS", 37},
2155 {ParameterType::BSM, "MINPAR", 3},
2156 {ParameterType::WILSON, "WPARAM_SI_BSM", {13,0}},
2157 {ParameterType::WILSON, "WPARAM_SI_BSM", {13,1}},
2158 {ParameterType::WILSON, "WPARAM_SI_BSM", {14,0}},
2159 {ParameterType::WILSON, "WPARAM_SI_BSM", {14,1}},
2160 {ParameterType::WILSON, "WPARAM_SI_BSM", {14,2}},
2161 {ParameterType::WILSON, "WPARAM_SI_BSM", {14,3}},
2162 {ParameterType::WILSON, "WPARAM_SI_BSM", {14,4}},
2163 {ParameterType::WILSON, "WPARAM_SI_BSM", {14,5}},
2164 {ParameterType::WILSON, "WPARAM_SI_BSM", {16,0}},
2165 {ParameterType::WILSON, "WPARAM_SI_BSM", {16,1}},
2166 {ParameterType::WILSON, "WPARAM_SI_BSM", {16,2}},
2167 {ParameterType::WILSON, "MATRIX_BSM", {2,0,0}},
2168 {ParameterType::WILSON, "MATRIX_BSM", {2,0,1}},
2169 {ParameterType::WILSON, "MATRIX_BSM", {2,0,2}},
2170 {ParameterType::WILSON, "MATRIX_BSM", {2,1,0}},
2171 {ParameterType::WILSON, "MATRIX_BSM", {2,1,1}},
2172 {ParameterType::WILSON, "MATRIX_BSM", {2,1,2}},
2173 {ParameterType::WILSON, "MATRIX_BSM", {2,2,0}},
2174 {ParameterType::WILSON, "MATRIX_BSM", {2,2,1}},
2175 {ParameterType::WILSON, "MATRIX_BSM", {2,2,2}},
2176 {ParameterType::WILSON, "MATRIX_BSM", {2,3,0}},
2177 {ParameterType::WILSON, "MATRIX_BSM", {2,3,1}},
2178 {ParameterType::WILSON, "MATRIX_BSM", {2,3,2}},
2179 {ParameterType::WILSON, "MATRIX_BSM", {2,4,0}},
2180 {ParameterType::WILSON, "MATRIX_BSM", {2,4,1}},
2181 {ParameterType::WILSON, "MATRIX_BSM", {2,4,2}},
2182 {ParameterType::WILSON, "MATRIX_BSM", {2,5,0}},
2183 {ParameterType::WILSON, "MATRIX_BSM", {2,5,1}},
2184 {ParameterType::WILSON, "MATRIX_BSM", {2,5,2}},
2185 {ParameterType::WILSON, "MATRIX_BSM", {4,0,0,1}},
2186 {ParameterType::WILSON, "MATRIX_BSM", {4,0,0,2}},
2187 {ParameterType::WILSON, "MATRIX_BSM", {4,0,1,1}},
2188 {ParameterType::WILSON, "MATRIX_BSM", {4,0,1,2}},
2189 {ParameterType::WILSON, "MATRIX_BSM", {4,0,2,1}},
2190 {ParameterType::WILSON, "MATRIX_BSM", {4,0,2,2}},
2191 {ParameterType::WILSON, "MATRIX_BSM", {4,0,3,1}},
2192 {ParameterType::WILSON, "MATRIX_BSM", {4,0,3,2}},
2193 {ParameterType::WILSON, "MATRIX_BSM", {4,0,4,1}},
2194 {ParameterType::WILSON, "MATRIX_BSM", {4,0,4,2}},
2195 {ParameterType::WILSON, "MATRIX_BSM", {4,0,5,1}},
2196 {ParameterType::WILSON, "MATRIX_BSM", {4,0,5,2}},
2197 {ParameterType::WILSON, "MATRIX_BSM", {4,1,0,1}},
2198 {ParameterType::WILSON, "MATRIX_BSM", {4,1,0,2}},
2199 {ParameterType::WILSON, "MATRIX_BSM", {4,1,1,1}},
2200 {ParameterType::WILSON, "MATRIX_BSM", {4,1,1,2}},
2201 {ParameterType::WILSON, "MATRIX_BSM", {4,1,2,1}},
2202 {ParameterType::WILSON, "MATRIX_BSM", {4,1,2,2}},
2203 {ParameterType::WILSON, "MATRIX_BSM", {4,1,3,1}},
2204 {ParameterType::WILSON, "MATRIX_BSM", {4,1,3,2}},
2205 {ParameterType::WILSON, "MATRIX_BSM", {4,1,4,1}},
2206 {ParameterType::WILSON, "MATRIX_BSM", {4,1,4,2}},
2207 {ParameterType::WILSON, "MATRIX_BSM", {4,1,5,1}},
2208 {ParameterType::WILSON, "MATRIX_BSM", {4,1,5,2}},
2209 {ParameterType::WILSON, "MATRIX_BSM", {5,0,0,1}},
2210 {ParameterType::WILSON, "MATRIX_BSM", {5,0,1,1}},
2211 {ParameterType::WILSON, "MATRIX_BSM", {5,0,2,1}},
2212 {ParameterType::WILSON, "MATRIX_BSM", {5,1,0,1}},
2213 {ParameterType::WILSON, "MATRIX_BSM", {5,1,1,1}},
2214 {ParameterType::WILSON, "MATRIX_BSM", {5,1,2,1}},
2215 {ParameterType::WILSON, "MATRIX_BSM", {6,0,0,1}},
2216 {ParameterType::WILSON, "MATRIX_BSM", {6,0,1,1}},
2217 {ParameterType::WILSON, "MATRIX_BSM", {6,0,2,1}},
2218 {ParameterType::WILSON, "MATRIX_BSM", {6,1,0,1}},
2219 {ParameterType::WILSON, "MATRIX_BSM", {6,1,1,1}},
2220 {ParameterType::WILSON, "MATRIX_BSM", {6,1,2,1}},
2221 {ParameterType::BSM, "UMIX", {0+1, 0+1}},
2222 {ParameterType::BSM, "UMIX", {1+1, 0+1}},
2223 {ParameterType::BSM, "VMIX", {0+1, 0+1}},
2224 {ParameterType::BSM, "VMIX", {1+1, 0+1}}
2225 },
2226 compute_LO,
2228 };
2229}
2230
2232 double yt = src.get_val(ParameterType::WILSON, "WPARAM_MATCH_BSM", 1);
2233 double mW = src.get_val(ParameterType::SM, "MASS", 24);
2234 double mH = src.get_val(ParameterType::BSM, "MASS", 37);
2235 double sw2 = src.get_val(ParameterType::WILSON, "WPARAM_SI_SM", 4);
2236 double mass_b_muW = src.get_val(ParameterType::WILSON, "WPARAM_MATCH_SM", {5,1});
2237 double g2 = src.get_val(ParameterType::SM, "GAUGE", 2);
2238 double tanb = src.get_val(ParameterType::BSM, "MINPAR", 3);
2239
2240 double B10pc = 0.0;
2241 double C9pc = 0.0;
2242 // printf("g2 : %.10lf\n", g2);
2243 // printf("mass_b_muW : %.10lf\n", mass_b_muW);
2244 // printf("yt : %.10lf\n", yt);
2245 for (int ie = 0; ie < 2; ie++) {
2246 for (int ae = 0; ae < 6; ae++) {
2247 for (int je = 0; je < 2; je++) {
2248 double ratio_je_ie = src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, je}) /
2249 src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie});
2250 double ratio_sq = pow(ratio_je_ie, 2);
2251 double xae = pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae}) /
2252 src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}), 2);
2253
2254 C9pc += src.get_val(ParameterType::WILSON, "MATRIX_BSM", {4, je, ae, 1}) *
2255 src.get_val(ParameterType::WILSON, "MATRIX_BSM", {4, ie, ae, 2}) *
2256 (2.0 * fabs(ratio_je_ie) * f30(ratio_sq, xae) *
2257 src.get_val(ParameterType::BSM, "VMIX", {je+1, 0+1}) *
2258 src.get_val(ParameterType::BSM, "VMIX", {ie+1, 0+1}) -
2259 f40(ratio_sq, xae) *
2260 src.get_val(ParameterType::BSM, "UMIX", {je+1, 0+1}) *
2261 src.get_val(ParameterType::BSM, "UMIX", {ie+1, 0+1}));
2262
2263 for (int be = 0; be < 6; be++) {
2264 if (be < 3) {
2265 double xbe = pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {16, be}) /
2266 src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}), 2);
2267
2268 B10pc += -src.get_val(ParameterType::WILSON, "MATRIX_BSM", {4, je, ae, 1}) *
2269 src.get_val(ParameterType::WILSON, "MATRIX_BSM", {4, ie, ae, 2}) /
2270 pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}), 2) *
2271 (0.5 * src.get_val(ParameterType::WILSON, "MATRIX_BSM", {6, ie, be, 1}) *
2272 src.get_val(ParameterType::WILSON, "MATRIX_BSM", {6, je, be, 1}) *
2273 f50(ratio_sq, xae, xbe) +
2274 src.get_val(ParameterType::WILSON, "MATRIX_BSM", {5, ie, be, 1}) *
2275 src.get_val(ParameterType::WILSON, "MATRIX_BSM", {5, je, be, 1}) *
2276 fabs(ratio_je_ie) *
2277 f60(ratio_sq, xae, xbe));
2278 }
2279 }
2280 }
2281 for (int be = 0; be < 6; be++) {
2282 for (int ce = 0; ce < 3; ce++) {
2283 double xae = pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae}) /
2284 src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}), 2);
2285 double xbe = pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, be}) /
2286 src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}), 2);
2287
2288 C9pc += -src.get_val(ParameterType::WILSON, "MATRIX_BSM", {4, ie, be, 1}) *
2289 src.get_val(ParameterType::WILSON, "MATRIX_BSM", {4, ie, ae, 2}) *
2290 f40(xae, xbe) *
2291 src.get_val(ParameterType::WILSON, "MATRIX_BSM", {2, be, ce}) *
2292 src.get_val(ParameterType::WILSON, "MATRIX_BSM", {2, ae, ce});
2293 }
2294 }
2295 }
2296 }
2297
2298 double kappa = src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", 19);
2299 B10pc *= kappa * mW * mW / (2.0 * g2 * g2);
2300 C9pc *= -kappa / 8.0;
2301
2302 // printf("B10pc : %.10lf\n", B10pc);
2303 // printf("C9pc : %.10lf\n", C9pc);
2304 // printf("kappa : %.10lf\n", kappa);
2305 double C10pH = -mass_b_muW * src.get_val(ParameterType::SM, "MASS", 3) *
2306 (tanb * tanb / (8.0 * mW * mW) +
2307 pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_SM", 3) * tanb * tanb /
2308 (4.0 * mW * mH), 2)) * f20(yt) / sw2;
2309
2310 double C10pcharg = (B10pc - C9pc) / sw2;
2311
2312 // printf("C10pcharg : %.10lf\n", C10pcharg);
2313 // printf("C10pH : %.10lf\n", C10pH);
2314 return C10pH + C10pcharg;
2315}
2316
2320 {
2321 {ParameterType::WILSON, "WPARAM_SI_BSM", 19},
2322 {ParameterType::WILSON, "WPARAM_SI_BSM", 1},
2323 {ParameterType::WILSON, "WPARAM_SI_BSM", 11},
2324 {ParameterType::WILSON, "WPARAM_MATCH_BSM", {2,0}},
2325 {ParameterType::WILSON, "WPARAM_MATCH_BSM", {2,1}},
2326 {ParameterType::WILSON, "WPARAM_MATCH_BSM", {2,2}},
2327 {ParameterType::WILSON, "WPARAM_MATCH_SM", {2,1}},
2328 {ParameterType::WILSON, "WPARAM_SI_SM", lepton_mass_slot},
2329 {ParameterType::WILSON, "WPARAM_SI_SM", 4},
2330 {ParameterType::SM, "MASS", 24},
2331 {ParameterType::SM, "MASS", 3},
2332 {ParameterType::SM, "GAUGE", 2},
2333 {ParameterType::BSM, "MASS", 37},
2334 {ParameterType::BSM, "HMIX", 1},
2335 {ParameterType::BSM, "MINPAR", 3},
2336 {ParameterType::WILSON, "EPSILON_SUSY", 5},
2337 {ParameterType::WILSON, "WPARAM_SI_BSM", {13,0}},
2338 {ParameterType::WILSON, "WPARAM_SI_BSM", {13,1}},
2339 {ParameterType::WILSON, "WPARAM_SI_BSM", {14,0}},
2340 {ParameterType::WILSON, "WPARAM_SI_BSM", {14,1}},
2341 {ParameterType::WILSON, "WPARAM_SI_BSM", {14,2}},
2342 {ParameterType::WILSON, "WPARAM_SI_BSM", {14,3}},
2343 {ParameterType::WILSON, "WPARAM_SI_BSM", {14,4}},
2344 {ParameterType::WILSON, "WPARAM_SI_BSM", {14,5}},
2345 {ParameterType::WILSON, "WPARAM_SI_BSM", {16,0}},
2346 {ParameterType::WILSON, "WPARAM_SI_BSM", {16,1}},
2347 {ParameterType::WILSON, "WPARAM_SI_BSM", {16,2}},
2348 {ParameterType::BSM, "UMIX", {1+1, 0+1}},
2349 {ParameterType::BSM, "UMIX", {1+1, 1+1}},
2350 {ParameterType::BSM, "UMIX", {0+1, 0+1}},
2351 {ParameterType::BSM, "UMIX", {0+1, 1+1}},
2352 {ParameterType::BSM, "VMIX", {0+1, 0+1}},
2353 {ParameterType::BSM, "VMIX", {1+1, 1+1}},
2354 {ParameterType::BSM, "VMIX", {0+1, 1+1}},
2355 {ParameterType::BSM, "VMIX", {1+1, 0+1}}
2356 },
2357 [lepton_mass_slot](const ParamSrc& src) { return compute_LO(src, lepton_mass_slot); },
2359 };
2360
2361 auto& sources = matching_info[QCDOrder::LO].sources;
2362
2363 for (int i = 0; i < 6; ++i) {
2364 for (int j = 0; j < 3; ++j) {
2365 sources.insert({ParameterType::WILSON, "MATRIX_BSM", {1, i, j}});
2366 sources.insert({ParameterType::WILSON, "MATRIX_BSM", {2, i, j}});
2367 // sources.insert({ParameterType::WILSON, "MATRIX_BSM", {9, i, j}});
2368 }
2369 }
2370
2371 for (int ae = 0; ae < 6; ++ae) {
2372 for (int ie = 0; ie < 2; ++ie) {
2373 for (int be = 0; be < 3; ++be) {
2374 for (int ne = 0; ne < 3; ++ne) {
2375 sources.insert({ParameterType::WILSON, "MATRIX_BSM", {12, ae, ie, be, ne}});
2376 }
2377 }
2378 }
2379 }
2380
2381 for (int i = 0; i < 3; ++i) {
2382 sources.insert({ParameterType::WILSON, "MATRIX_BSM", {6, 0, i, 1}});
2383 sources.insert({ParameterType::WILSON, "MATRIX_BSM", {6, 1, i, 1}});
2384 sources.insert({ParameterType::WILSON, "MATRIX_BSM", {5, 0, i, 1}});
2385 sources.insert({ParameterType::WILSON, "MATRIX_BSM", {5, 1, i, 1}});
2386 }
2387
2388 for (int i = 0; i < 2; ++i) {
2389 for (int j = 0; j < 6; ++j) {
2390 sources.insert({ParameterType::WILSON, "MATRIX_BSM", {3, i, j, 2}});
2391 sources.insert({ParameterType::WILSON, "MATRIX_BSM", {4, i, j, 1}});
2392 }
2393 }
2394
2395}
2396
2400
2401scalar_t CPQ1_susy::compute_LO(const ParamSrc& src, int lepton_mass_slot) {
2402 double xt = src.get_val(ParameterType::WILSON, "WPARAM_MATCH_SM", {2,1});
2403
2404 double z = src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", 1);
2405 double aY = src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", 11);
2406 double mW = src.get_val(ParameterType::SM, "MASS", 24);
2407 double mH = src.get_val(ParameterType::BSM, "MASS", 37);
2408 double sw2 = src.get_val(ParameterType::WILSON, "WPARAM_SI_SM", 4);
2409 double g2 = src.get_val(ParameterType::SM, "GAUGE", 2);
2410 double tanb = src.get_val(ParameterType::BSM, "MINPAR", 3);
2411
2412 double muQ = src.get_val(ParameterType::BSM, "HMIX", 1);
2413 double BQ1pc1=0.;
2414 double BQ1pc2=0.;
2415
2416 double Dp{0},Dm{0};
2417 double a0a{0}, a0b{0}, a0c{0}, a0Q1{0}, a0Q2{0}, a1{0}, NQ1pc{0}, NQ2pc{0};
2418
2419 for(int ie=0;ie<2;ie++) {
2420 for(int ae=0;ae<6;ae++) {
2421
2422 for(int je=0;je<2;je++) {
2423 for(int be=0;be<6;be++) {
2424 if (be<3) {
2425 BQ1pc1+=src.get_val(ParameterType::WILSON, "MATRIX_BSM", {4,je, ae, 1})*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {3,ie, ae, 2})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie})
2426 /src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie})*(src.get_val(ParameterType::WILSON, "MATRIX_BSM", {5,ie, be, 1})*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {6,je, be, 1})
2427 *f50(pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, je})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.),pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae})
2428 /src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.),pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {16, be})
2429 /src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.)));
2430 BQ1pc2+=src.get_val(ParameterType::WILSON, "MATRIX_BSM", {4,je, ae, 1})*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {3,ie, ae, 2})
2431 /src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie})*(src.get_val(ParameterType::WILSON, "MATRIX_BSM", {6,ie, be, 1})
2432 *src.get_val(ParameterType::WILSON, "MATRIX_BSM", {5,je, be, 1})*fabs(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, je})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}))
2433 *f60(pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, je})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.),pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae})
2434 /src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.),pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {16, be})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.)));
2435 }
2436 for(int me=0;me<3;me++) {
2437 for(int ne=0;ne<3;ne++) {
2438 Dp=0.;
2439 Dm=0.;
2440 for(int fe=0;fe<3;fe++) {
2441 Dp+=src.get_val(ParameterType::WILSON, "WPARAM_MATCH_BSM", {2, fe})/sqrt(2.)/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie})*muQ*(src.get_val(ParameterType::WILSON, "MATRIX_BSM", {2,ae, fe})*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {1,be, fe})+src.get_val(ParameterType::WILSON, "MATRIX_BSM", {1,ae, fe})*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {2,be, fe}));
2442 Dm+=src.get_val(ParameterType::WILSON, "WPARAM_MATCH_BSM", {2, fe})/sqrt(2.)/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie})*muQ*(src.get_val(ParameterType::WILSON, "MATRIX_BSM", {2,ae, fe})*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {1,be, fe})-src.get_val(ParameterType::WILSON, "MATRIX_BSM", {1,ae, fe})*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {2,be, fe}));
2443 }
2444 a0a=-(fabs(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, je}))*f30(pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, je}),2.),pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, je}),2.))*src.get_val(ParameterType::BSM, "UMIX", {ie+1, 1+1})*src.get_val(ParameterType::BSM, "VMIX", {je+1, 0+1}))*kron(ae,be);
2445
2446 a0b=-(f40(pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, je}),2.),pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, je}),2.))*src.get_val(ParameterType::BSM, "UMIX", {je+1, 1+1})*src.get_val(ParameterType::BSM, "VMIX", {ie+1, 0+1}))*kron(ae,be);
2447 a0c=1./mW*f30(pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.),pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, be})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.))*kron(ie,je);
2448 a0Q1=a0a+a0b+Dp*a0c;
2449 a0Q2=-a0a+a0b+Dm*a0c;
2450 a1=src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie})/sqrt(2.)/mW*f80(pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.))*kron(ie,je)*kron(ae,be);
2451
2452 NQ1pc+=src.get_val(ParameterType::WILSON, "MATRIX_BSM", {12,ae, ie, me, ne})*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {1,be, me})*src.get_val(ParameterType::BSM, "UMIX", {je+1, 2})*(a0Q1+a1*tanb);
2453 NQ2pc+=src.get_val(ParameterType::WILSON, "MATRIX_BSM", {12,ae, ie, me, ne})*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {1,be, me})*src.get_val(ParameterType::BSM, "UMIX", {je+1, 2})*(a0Q2+a1*tanb);
2454 }
2455 }
2456 }
2457
2458 }
2459 }
2460 }
2461
2462 /* Wilson coefficients CQ1 and CQ2 prime */
2463 double NQ1pH=-src.get_val(ParameterType::WILSON, "WPARAM_SI_SM", lepton_mass_slot)*(tanb)*tanb/4./mW/mW*xt*f30(xt,z);
2464
2465 double BQ1pH=src.get_val(ParameterType::WILSON, "WPARAM_SI_SM", lepton_mass_slot)*(tanb)*tanb/4./mW/mW*f70(xt,z);
2466
2467 complex_t CQ1pH=(NQ1pH+BQ1pH)*src.get_val(ParameterType::SM, "MASS", 3)/sw2;
2468
2469 double kappa = src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", 19);
2470 double BQ1pc=(BQ1pc1+BQ1pc2)*kappa*(mW)*mW/2./g2/g2/sw2;
2471
2472 NQ1pc*=src.get_val(ParameterType::WILSON, "WPARAM_SI_SM", lepton_mass_slot)*(tanb)*tanb/mW/(mH*mH-mW*mW)*aY*(src.get_val(ParameterType::SM, "MASS", 3))/sw2;
2473
2474
2475 complex_t CQ1pcharg=NQ1pc+BQ1pc;
2476
2477 // this->set_WilsonCoeffMatching("LO", (CQ1pcharg+CQ1pH)/sus_param->epsfac);
2478 // return (CQ1pcharg+CQ1pH)/sus_param->epsfac;
2479 double epsfac = src.get_val(ParameterType::WILSON, "EPSILON_SUSY", 5);
2480
2481 return (CQ1pcharg+CQ1pH)/epsfac;
2482}
2483
2484
2488 {
2489 {ParameterType::WILSON, "WPARAM_SI_BSM", 1},
2490 {ParameterType::WILSON, "WPARAM_SI_BSM", 19},
2491 {ParameterType::WILSON, "WPARAM_SI_BSM", 11},
2492 {ParameterType::WILSON, "WPARAM_SI_SM", lepton_mass_slot},
2493 {ParameterType::WILSON, "WPARAM_SI_SM", 4},
2494 {ParameterType::WILSON, "WPARAM_MATCH_BSM", {2,0}},
2495 {ParameterType::WILSON, "WPARAM_MATCH_BSM", {2,1}},
2496 {ParameterType::WILSON, "WPARAM_MATCH_BSM", {2,2}},
2497 {ParameterType::WILSON, "WPARAM_MATCH_SM", {2,1}},
2498 {ParameterType::SM, "MASS", 3},
2499 {ParameterType::SM, "MASS", 24},
2500 {ParameterType::SM, "GAUGE", 2},
2501 {ParameterType::BSM, "MASS", 37},
2502 {ParameterType::BSM, "HMIX", 1},
2503 {ParameterType::BSM, "MINPAR", 3},
2504 {ParameterType::WILSON, "EPSILON_SUSY", 5},
2505 {ParameterType::WILSON, "WPARAM_SI_BSM", {13,0}},
2506 {ParameterType::WILSON, "WPARAM_SI_BSM", {13,1}},
2507 {ParameterType::WILSON, "WPARAM_SI_BSM", {14,0}},
2508 {ParameterType::WILSON, "WPARAM_SI_BSM", {14,1}},
2509 {ParameterType::WILSON, "WPARAM_SI_BSM", {14,2}},
2510 {ParameterType::WILSON, "WPARAM_SI_BSM", {14,3}},
2511 {ParameterType::WILSON, "WPARAM_SI_BSM", {14,4}},
2512 {ParameterType::WILSON, "WPARAM_SI_BSM", {14,5}},
2513 {ParameterType::WILSON, "WPARAM_SI_BSM", {16,0}},
2514 {ParameterType::WILSON, "WPARAM_SI_BSM", {16,1}},
2515 {ParameterType::WILSON, "WPARAM_SI_BSM", {16,2}},
2516 {ParameterType::WILSON, "MATRIX_BSM", {1,0,0}},
2517 {ParameterType::WILSON, "MATRIX_BSM", {1,0,1}},
2518 {ParameterType::WILSON, "MATRIX_BSM", {1,0,2}},
2519 {ParameterType::WILSON, "MATRIX_BSM", {1,1,0}},
2520 {ParameterType::WILSON, "MATRIX_BSM", {1,1,1}},
2521 {ParameterType::WILSON, "MATRIX_BSM", {1,1,2}},
2522 {ParameterType::WILSON, "MATRIX_BSM", {1,2,0}},
2523 {ParameterType::WILSON, "MATRIX_BSM", {1,2,1}},
2524 {ParameterType::WILSON, "MATRIX_BSM", {1,2,2}},
2525 {ParameterType::WILSON, "MATRIX_BSM", {2,0,0}},
2526 {ParameterType::WILSON, "MATRIX_BSM", {2,0,1}},
2527 {ParameterType::WILSON, "MATRIX_BSM", {2,0,2}},
2528 {ParameterType::WILSON, "MATRIX_BSM", {2,1,0}},
2529 {ParameterType::WILSON, "MATRIX_BSM", {2,1,1}},
2530 {ParameterType::WILSON, "MATRIX_BSM", {2,1,2}},
2531 {ParameterType::WILSON, "MATRIX_BSM", {2,2,0}},
2532 {ParameterType::WILSON, "MATRIX_BSM", {2,2,1}},
2533 {ParameterType::WILSON, "MATRIX_BSM", {2,2,2}},
2534 {ParameterType::BSM, "UMIX", {0+1, 1+1}},
2535 {ParameterType::BSM, "UMIX", {1+1, 1+1}},
2536 {ParameterType::BSM, "VMIX", {0+1, 0+1}},
2537 {ParameterType::BSM, "VMIX", {1+1, 0+1}}
2538 },
2539 [lepton_mass_slot](const ParamSrc& src) { return compute_LO(src, lepton_mass_slot); },
2541 };
2542
2543 auto& sources = matching_info[QCDOrder::LO].sources;
2544
2545 for (int i = 0; i < 6; ++i) {
2546 for (int j = 0; j < 3; ++j) {
2547 sources.insert({ParameterType::WILSON, "MATRIX_BSM", {1, i, j}});
2548 sources.insert({ParameterType::WILSON, "MATRIX_BSM", {2, i, j}});
2549 // sources.insert({ParameterType::WILSON, "MATRIX_BSM", {9, i, j}});
2550 }
2551 }
2552
2553 for (int ae = 0; ae < 6; ++ae) {
2554 for (int ie = 0; ie < 2; ++ie) {
2555 for (int be = 0; be < 3; ++be) {
2556 for (int ne = 0; ne < 3; ++ne) {
2557 sources.insert({ParameterType::WILSON, "MATRIX_BSM", {12, ae, ie, be, ne}});
2558 }
2559 }
2560 }
2561 }
2562
2563 for (int i = 0; i < 3; ++i) {
2564 sources.insert({ParameterType::WILSON, "MATRIX_BSM", {6, 0, i, 1}});
2565 sources.insert({ParameterType::WILSON, "MATRIX_BSM", {6, 1, i, 1}});
2566 sources.insert({ParameterType::WILSON, "MATRIX_BSM", {5, 0, i, 1}});
2567 sources.insert({ParameterType::WILSON, "MATRIX_BSM", {5, 1, i, 1}});
2568 }
2569
2570 for (int i = 0; i < 2; ++i) {
2571 for (int j = 0; j < 6; ++j) {
2572 sources.insert({ParameterType::WILSON, "MATRIX_BSM", {3, i, j, 2}});
2573 sources.insert({ParameterType::WILSON, "MATRIX_BSM", {4, i, j, 1}});
2574 }
2575 }
2576}
2577
2581
2582scalar_t CPQ2_susy::compute_LO(const ParamSrc& src, int lepton_mass_slot) {
2583 double xt = src.get_val(ParameterType::WILSON, "WPARAM_MATCH_SM", {2,1});
2584
2585 double z = src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", 1);
2586 double aY = src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", 11);
2587 double mW = src.get_val(ParameterType::SM, "MASS", 24);
2588 double mH = src.get_val(ParameterType::BSM, "MASS", 37);
2589 double sw2 = src.get_val(ParameterType::WILSON, "WPARAM_SI_SM", 4);
2590 double g2 = src.get_val(ParameterType::SM, "GAUGE", 2);
2591 double tanb = src.get_val(ParameterType::BSM, "MINPAR", 3);
2592
2593 double muQ = src.get_val(ParameterType::BSM, "HMIX", 1);
2594
2595 double kappa = src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", 19);
2596 double epsfac = src.get_val(ParameterType::WILSON, "EPSILON_SUSY", 5);
2597
2598 double BQ1pc1=0.;
2599 double BQ1pc2=0.;
2600
2601 double Dp{0},Dm{0};
2602 double a0a{0}, a0b{0}, a0c{0}, a0Q1{0}, a0Q2{0}, a1{0}, NQ1pc{0}, NQ2pc{0};
2603
2604 for(int ie=0;ie<2;ie++) {
2605 for(int ae=0;ae<6;ae++) {
2606
2607 for(int je=0;je<2;je++) {
2608
2609 for(int be=0;be<6;be++) {
2610 if (be<3) {
2611
2612 BQ1pc1+=src.get_val(ParameterType::WILSON, "MATRIX_BSM", {4,je, ae, 1})*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {3,ie, ae, 2})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie})*(src.get_val(ParameterType::WILSON, "MATRIX_BSM", {5,ie, be, 1})*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {6,je, be, 1})*f50(pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, je})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.),pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.),pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {16, be})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.)));
2613 BQ1pc2+=src.get_val(ParameterType::WILSON, "MATRIX_BSM", {4,je, ae, 1})*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {3,ie, ae, 2})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie})*(src.get_val(ParameterType::WILSON, "MATRIX_BSM", {6,ie, be, 1})*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {5,je, be, 1})*fabs(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, je})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}))*f60(pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, je})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.),pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.),pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {16, be})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.)));
2614 }
2615 for(int me=0;me<3;me++) {
2616 for(int ne=0;ne<3;ne++) {
2617 Dp=0.;
2618 Dm=0.;
2619 for(int fe=0;fe<3;fe++) {
2620 Dp+=src.get_val(ParameterType::WILSON, "WPARAM_MATCH_BSM", {2, fe})/sqrt(2.)/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie})*muQ*(src.get_val(ParameterType::WILSON, "MATRIX_BSM", {2, ae, fe})*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {1, be, fe})+src.get_val(ParameterType::WILSON, "MATRIX_BSM", {1, ae, fe})*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {2, be, fe}));
2621 Dm+=src.get_val(ParameterType::WILSON, "WPARAM_MATCH_BSM", {2, fe})/sqrt(2.)/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie})*muQ*(src.get_val(ParameterType::WILSON, "MATRIX_BSM", {2, ae, fe})*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {1, be, fe})-src.get_val(ParameterType::WILSON, "MATRIX_BSM", {1, ae, fe})*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {2, be, fe}));
2622 }
2623 a0a=-(fabs(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, je}))*f30(pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, je}),2.),pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, je}),2.))*src.get_val(ParameterType::BSM, "UMIX", {ie+1, 1+1})*src.get_val(ParameterType::BSM, "VMIX", {je+1, 0+1}))*kron(ae,be);
2624
2625 a0b=-(f40(pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, je}),2.),pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, je}),2.))*src.get_val(ParameterType::BSM, "UMIX", {je+1, 1+1})*src.get_val(ParameterType::BSM, "VMIX", {ie+1, 0+1}))*kron(ae,be);
2626 a0c=1./mW*f30(pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.),pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, be})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.))*kron(ie,je);
2627 a0Q1=a0a+a0b+Dp*a0c;
2628 a0Q2=-a0a+a0b+Dm*a0c;
2629 a1=src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie})/sqrt(2.)/mW*f80(pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.))*kron(ie,je)*kron(ae,be);
2630
2631 NQ1pc+=src.get_val(ParameterType::WILSON, "MATRIX_BSM", {12,ae, ie, me, ne})*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {1, be, me})*src.get_val(ParameterType::BSM, "UMIX", {je+1, 1+1})*(a0Q1+a1*tanb);
2632 NQ2pc+=src.get_val(ParameterType::WILSON, "MATRIX_BSM", {12,ae, ie, me, ne})*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {1, be, me})*src.get_val(ParameterType::BSM, "UMIX", {je+1, 1+1})*(a0Q2+a1*tanb);
2633 }
2634 }
2635 }
2636
2637 }
2638
2639 }
2640 }
2641
2642 /* Wilson coefficients CQ1 and CQ2 prime */
2643 double NQ1pH=-src.get_val(ParameterType::WILSON, "WPARAM_SI_SM", lepton_mass_slot)*(tanb)*tanb/4./mW/mW*xt*f30(xt,z);
2644
2645 double BQ1pH=src.get_val(ParameterType::WILSON, "WPARAM_SI_SM", lepton_mass_slot)*(tanb)*tanb/4./mW/mW*f70(xt,z);
2646
2647 complex_t CQ1pH=(NQ1pH+BQ1pH)*src.get_val(ParameterType::SM, "MASS", 3)/sw2;
2648
2649 complex_t CQ2pH=CQ1pH;
2650
2651
2652 double BQ2pc=(BQ1pc1-BQ1pc2)*kappa*(mW)*mW/2./g2/g2/sw2;
2653
2654 NQ2pc*=src.get_val(ParameterType::WILSON, "WPARAM_SI_SM", lepton_mass_slot)*(tanb)*tanb/mW/(mH*mH-mW*mW)*aY*(src.get_val(ParameterType::SM, "MASS", 3))/sw2;
2655
2656
2657 complex_t CQ2pcharg=NQ2pc+BQ2pc;
2658
2659 return (CQ2pH+CQ2pcharg)/epsfac;
2660}
2661
2665 {}, // sources seront insérées ensuite par boucle
2666 [lepton_mass_slot](const ParamSrc& src) { return compute_LO(src, lepton_mass_slot); },
2668 };
2669
2670 auto& sources = matching_info[QCDOrder::LO].sources;
2671
2672
2673 sources.insert({ParameterType::WILSON, "WPARAM_SI_BSM", 2});
2674 sources.insert({ParameterType::WILSON, "WPARAM_SI_BSM", 3});
2675 sources.insert({ParameterType::WILSON, "WPARAM_SI_BSM", 19});
2676 sources.insert({ParameterType::WILSON, "WPARAM_SI_BSM", 6});
2677 sources.insert({ParameterType::WILSON, "WPARAM_SI_BSM", 7});
2678 sources.insert({ParameterType::WILSON, "WPARAM_SI_BSM", 8});
2679 sources.insert({ParameterType::WILSON, "WPARAM_SI_BSM", 9});
2680 sources.insert({ParameterType::WILSON, "WPARAM_SI_BSM", 11});
2681 sources.insert({ParameterType::WILSON, "WPARAM_SI_SM", lepton_mass_slot});
2682 sources.insert({ParameterType::WILSON, "WPARAM_SI_SM", 4});
2683 // sources.insert({ParameterType::WILSON, "WPARAM_MATCH_BSM", 1});
2684 sources.insert({ParameterType::WILSON, "WPARAM_MATCH_BSM", {2,0}});
2685 sources.insert({ParameterType::WILSON, "WPARAM_MATCH_BSM", {2,1}});
2686 sources.insert({ParameterType::WILSON, "WPARAM_MATCH_BSM", {2,2}});
2687 sources.insert({ParameterType::WILSON, "WPARAM_MATCH_SM", {2,1}});
2688 sources.insert({ParameterType::WILSON, "WPARAM_MATCH_SM", {5,1}});
2689 sources.insert({ParameterType::WILSON, "WPARAM_MATCH_SM", 6});
2690 // NMSSMScalarMatching::compute compares m_a1 with the matching scale.
2691 sources.insert({ParameterType::WILSON, "EW_SCALE", 1});
2692 sources.insert({ParameterType::SM, "SMINPUTS", 2});
2693 sources.insert({ParameterType::SM, "MASS", 3});
2694 sources.insert({ParameterType::SM, "MASS", 24});
2695 sources.insert({ParameterType::SM, "MASS", 25});
2696 sources.insert({ParameterType::SM, "GAUGE", 2});
2697 sources.insert({ParameterType::BSM, "ALPHA", LhaID()});
2698 sources.insert({ParameterType::BSM, "MASS", 37});
2699 sources.insert({ParameterType::BSM, "MASS", 45});
2700 sources.insert({ParameterType::BSM, "MASS", 46});
2701 sources.insert({ParameterType::BSM, "MASS", 2000013});
2702 sources.insert({ParameterType::BSM, "MASS", 1000006});
2703 sources.insert({ParameterType::BSM, "MASS", 2000006});
2704 sources.insert({ParameterType::BSM, "MASS", 25});
2705 sources.insert({ParameterType::BSM, "MASS", 35});
2706 sources.insert({ParameterType::BSM, "MASS", 36});
2707 sources.insert({ParameterType::BSM, "HMIX", 1});
2708 sources.insert({ParameterType::BSM, "MINPAR", 3});
2709 sources.insert({ParameterType::WILSON, "EPSILON_SUSY", 5});
2710 sources.insert({ParameterType::WILSON, "WPARAM_SI_BSM", {13,0}});
2711 sources.insert({ParameterType::WILSON, "WPARAM_SI_BSM", {13,1}});
2712 sources.insert({ParameterType::WILSON, "WPARAM_SI_BSM", {14,0}});
2713 sources.insert({ParameterType::WILSON, "WPARAM_SI_BSM", {14,1}});
2714 sources.insert({ParameterType::WILSON, "WPARAM_SI_BSM", {14,2}});
2715 sources.insert({ParameterType::WILSON, "WPARAM_SI_BSM", {14,3}});
2716 sources.insert({ParameterType::WILSON, "WPARAM_SI_BSM", {14,4}});
2717 sources.insert({ParameterType::WILSON, "WPARAM_SI_BSM", {14,5}});
2718 sources.insert({ParameterType::WILSON, "WPARAM_SI_BSM", {16,0}});
2719 sources.insert({ParameterType::WILSON, "WPARAM_SI_BSM", {16,1}});
2720 sources.insert({ParameterType::WILSON, "WPARAM_SI_BSM", {16,2}});
2721
2722 // Boucles dynamiques
2723 for (int i = 0; i < 6; ++i) {
2724 for (int j = 0; j < 3; ++j) {
2725 sources.insert({ParameterType::WILSON, "MATRIX_BSM", {1, i, j}});
2726 sources.insert({ParameterType::WILSON, "MATRIX_BSM", {2, i, j}});
2727 sources.insert({ParameterType::WILSON, "MATRIX_BSM", {9, i, j}});
2728 }
2729 }
2730
2731 for (int i = 0; i < 2; ++i) {
2732 for (int j = 0; j < 6; ++j) {
2733 sources.insert({ParameterType::WILSON, "MATRIX_BSM", {3, i, j, 1}});
2734 sources.insert({ParameterType::WILSON, "MATRIX_BSM", {4, i, j, 2}});
2735 }
2736 }
2737
2738 for (int i = 0; i < 6; ++i) {
2739 for (int j = 0; j < 3; ++j) {
2740 for (int k = 0; k < 3; ++k) {
2741 sources.insert({ParameterType::WILSON, "MATRIX_BSM", {12, i, 0, j, k}});
2742 sources.insert({ParameterType::WILSON, "MATRIX_BSM", {12, i, 1, j, k}});
2743 }
2744 }
2745 }
2746
2747 // UMIX / VMIX with index pairs (2,0), (2,1), ..., (2,9)
2748 for (int i = 1; i < 3; ++i) {
2749 sources.insert({ParameterType::BSM, "UMIX", {1, i}});
2750 sources.insert({ParameterType::BSM, "VMIX", {1, i}});
2751 sources.insert({ParameterType::BSM, "UMIX", {2, i}});
2752 sources.insert({ParameterType::BSM, "VMIX", {2, i}});
2753 }
2754
2755 for (int i = 0; i < 3; ++i) {
2756 sources.insert({ParameterType::WILSON, "MATRIX_BSM", {6, 0, i, 1}});
2757 sources.insert({ParameterType::WILSON, "MATRIX_BSM", {6, 1, i, 1}});
2758 sources.insert({ParameterType::WILSON, "MATRIX_BSM", {5, 0, i, 1}});
2759 sources.insert({ParameterType::WILSON, "MATRIX_BSM", {5, 1, i, 1}});
2760 }
2761
2762 // HMIX & AMIX matrix elements used in the else branch
2763 sources.insert({ParameterType::BSM, "NMHMIX", {0+1, 0+1}});
2764 sources.insert({ParameterType::BSM, "NMHMIX", {0+1, 1+1}});
2765 sources.insert({ParameterType::BSM, "NMHMIX", {1+1, 0+1}});
2766 sources.insert({ParameterType::BSM, "NMHMIX", {1+1, 1+1}});
2767 sources.insert({ParameterType::BSM, "NMHMIX", {2+1, 0+1}});
2768 sources.insert({ParameterType::BSM, "NMHMIX", {2+1, 1+1}});
2769 // {ParameterType::BSM, "NMHMIX", {3+1, 0+1}},
2770 sources.insert({ParameterType::BSM, "NMAMIX" , {0+1, 0+1}});
2771 sources.insert({ParameterType::BSM, "NMAMIX" , {0+1, 1+1}});
2772 sources.insert({ParameterType::BSM, "NMAMIX" , {1+1, 0+1}});
2773 sources.insert({ParameterType::BSM, "NMAMIX" , {1+1, 1+1}});
2774
2776 {}, // les sources sont ajoutées juste après
2777 [lepton_mass_slot](const ParamSrc& src) { return compute_NLO(src, lepton_mass_slot); },
2779 };
2780
2781 auto& sources_NLO = matching_info[QCDOrder::NLO].sources;
2782
2783 // Insertion directe
2784 sources_NLO.insert({ParameterType::WILSON, "WPARAM_SI_BSM", 1});
2785 sources_NLO.insert({ParameterType::WILSON, "WPARAM_SI_BSM", 2});
2786 sources_NLO.insert({ParameterType::WILSON, "WPARAM_SI_BSM", 3});
2787 sources_NLO.insert({ParameterType::WILSON, "WPARAM_SI_BSM", 19});
2788 // sources_NLO.insert({ParameterType::WILSON, "WPARAM_SI_BSM", 6});
2789 // sources_NLO.insert({ParameterType::WILSON, "WPARAM_SI_BSM", 7});
2790 // sources_NLO.insert({ParameterType::WILSON, "WPARAM_SI_BSM", 8});
2791 sources_NLO.insert({ParameterType::WILSON, "WPARAM_SI_BSM", 9});
2792 sources_NLO.insert({ParameterType::WILSON, "WPARAM_SI_BSM", 11});
2793 sources_NLO.insert({ParameterType::WILSON, "WPARAM_SI_SM", lepton_mass_slot});
2794 sources_NLO.insert({ParameterType::WILSON, "WPARAM_SI_SM", 4});
2795 // sources_NLO.insert({ParameterType::WILSON, "WPARAM_MATCH_BSM", 1});
2796 sources_NLO.insert({ParameterType::WILSON, "WPARAM_MATCH_SM", {2,1}});
2797 sources_NLO.insert({ParameterType::WILSON, "WPARAM_MATCH_SM", {5,1}});
2798 sources_NLO.insert({ParameterType::WILSON, "WPARAM_MATCH_SM", 6});
2799 sources_NLO.insert({ParameterType::WILSON, "EW_SCALE", 1});
2800 // sources_NLO.insert({ParameterType::BSM, "ALPHA", LhaID()});
2801 sources_NLO.insert({ParameterType::SM, "MASS", 3});
2802 sources_NLO.insert({ParameterType::SM, "MASS", 24});
2803 // sources_NLO.insert({ParameterType::SM, "MASS", 25});
2804 sources_NLO.insert({ParameterType::SM, "SMINPUTS", 4}); //MASS Z in SMINPUTS
2805 // sources_NLO.insert({ParameterType::SM, "MASS", 23});
2806 sources_NLO.insert({ParameterType::SM, "GAUGE", 2});
2807 sources_NLO.insert({ParameterType::SM, "VCKM", {0, 1}});
2808 sources_NLO.insert({ParameterType::SM, "VCKM", {1, 1}});
2809 sources_NLO.insert({ParameterType::SM, "VCKM", {2, 1}});
2810 sources_NLO.insert({ParameterType::SM, "VCKM", {0, 2}});
2811 sources_NLO.insert({ParameterType::SM, "VCKM", {1, 2}});
2812 sources_NLO.insert({ParameterType::SM, "VCKM", {2, 2}});
2813 sources_NLO.insert({ParameterType::BSM, "MASS", 37});
2814 // sources_NLO.insert({ParameterType::BSM, "MASS", 35});
2815 sources_NLO.insert({ParameterType::BSM, "MASS", 45});
2816 sources_NLO.insert({ParameterType::BSM, "MASS", 46});
2817 sources_NLO.insert({ParameterType::BSM, "HMIX", 1});
2818 sources_NLO.insert({ParameterType::BSM, "HMIX", 2});
2819 sources_NLO.insert({ParameterType::WILSON, "EPSILON_SUSY", 5});
2820
2821 // Boucles : WPARAM_SI_BSM et mixings
2822 for (int i = 0; i < 6; ++i) {
2823
2824 sources_NLO.insert({ParameterType::WILSON, "WPARAM_SI_BSM", {14, i}});
2825
2826
2827 }
2828
2829 for (int i = 1; i < 3; ++i) {
2830
2831
2832 sources_NLO.insert({ParameterType::BSM, "UMIX", {1, i}});
2833 sources_NLO.insert({ParameterType::BSM, "VMIX", {1, i}});
2834 sources_NLO.insert({ParameterType::BSM, "UMIX", {2, i}});
2835 sources_NLO.insert({ParameterType::BSM, "VMIX", {2, i}});
2836
2837
2838 }
2839
2840 // MATRIX_BSM blocs 1, 2, 9
2841 for (int i = 0; i < 6; ++i) {
2842 for (int j = 0; j < 3; ++j) {
2843 sources_NLO.insert({ParameterType::WILSON, "MATRIX_BSM", {1, i, j}});
2844 sources_NLO.insert({ParameterType::WILSON, "MATRIX_BSM", {2, i, j}});
2845
2846 }
2847 for (int j = 0; j < 6; ++j) {
2848 sources_NLO.insert({ParameterType::WILSON, "MATRIX_BSM", {9, i, j}});
2849 }
2850 }
2851
2852 // MATRIX_BSM blocs 3, 4
2853 for (int i = 0; i < 2; ++i) {
2854 sources_NLO.insert({ParameterType::WILSON, "WPARAM_SI_BSM", {13, i}});
2855 for (int j = 0; j < 6; ++j) {
2856 sources_NLO.insert({ParameterType::WILSON, "MATRIX_BSM", {3, i, j, 1}});
2857 sources_NLO.insert({ParameterType::WILSON, "MATRIX_BSM", {4, i, j, 2}});
2858 sources_NLO.insert({ParameterType::WILSON, "MATRIX_BSM", {5, i, j, 1}});
2859 sources_NLO.insert({ParameterType::WILSON, "MATRIX_BSM", {5, i, j, 2}});
2860 sources_NLO.insert({ParameterType::WILSON, "MATRIX_BSM", {6, i, j, 1}});
2861 sources_NLO.insert({ParameterType::WILSON, "MATRIX_BSM", {6, i, j, 2}});
2862 }
2863 }
2864
2865 // MATRIX_BSM bloc 12
2866 for (int i = 0; i < 6; ++i) {
2867 for (int j = 0; j < 3; ++j) {
2868 for (int k = 0; k < 3; ++k) {
2869 sources_NLO.insert({ParameterType::WILSON, "MATRIX_BSM", {12, i, 0, j, k}});
2870 sources_NLO.insert({ParameterType::WILSON, "MATRIX_BSM", {12, i, 1, j, k}});
2871 // sources_NLO.insert({ParameterType::WILSON, "MATRIX_BSM", {12, i, 2, j, k}});
2872 }
2873 }
2874 }
2875
2876 // // RECKM i=1→3, j=1→3 → 11,12,13,21,22,23,31,32,33
2877 // for (int i = 1; i <= 3; ++i) {
2878 // for (int j = 1; j <= 3; ++j) {
2879 // sources_NLO.insert({ParameterType::SM, "RECKM", i * 10 + j});
2880 // }
2881 // }
2882
2883 // WPARAM_MATCH_BSM indexé
2884 for (int fe = 0; fe < 3; ++fe) {
2885 sources_NLO.insert({ParameterType::WILSON, "WPARAM_SI_BSM", {16, fe}});
2886 sources_NLO.insert({ParameterType::WILSON, "WPARAM_MATCH_BSM", {2, fe}});
2887 }
2888
2889 // HMIX & AMIX matrix elements used in the else branch
2890 sources_NLO.insert({ParameterType::BSM, "NMHMIX", {0+1, 0+1}});
2891 sources_NLO.insert({ParameterType::BSM, "NMHMIX", {0+1, 1+1}});
2892 sources_NLO.insert({ParameterType::BSM, "NMHMIX", {1+1, 0+1}});
2893 sources_NLO.insert({ParameterType::BSM, "NMHMIX", {1+1, 1+1}});
2894 sources_NLO.insert({ParameterType::BSM, "NMHMIX", {2+1, 0+1}});
2895 sources_NLO.insert({ParameterType::BSM, "NMHMIX", {2+1, 1+1}});
2896 // {ParameterType::BSM, "NMHMIX", {3+1, 0+1}},
2897 sources_NLO.insert({ParameterType::BSM, "NMAMIX" , {0+1, 0+1}});
2898 sources_NLO.insert({ParameterType::BSM, "NMAMIX" , {0+1, 1+1}});
2899 sources_NLO.insert({ParameterType::BSM, "NMAMIX" , {1+1, 0+1}});
2900 sources_NLO.insert({ParameterType::BSM, "NMAMIX" , {1+1, 1+1}});
2901
2902}
2903
2907
2908scalar_t CQ1_susy::compute_LO(const ParamSrc& src, int lepton_mass_slot) {
2909 const auto nmssm = nmssm_scalar_matching::compute(src, lepton_mass_slot);
2910 if (nmssm.active) return nmssm.cq1;
2911
2912 double xt = src.get_val(ParameterType::WILSON, "WPARAM_MATCH_SM", {2,1});
2913
2914 double lu = src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", 7);
2915 double ld = src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", 8);
2916 double aY = src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", 11);
2917 // double yt = src.get_val(ParameterType::WILSON, "WPARAM_MATCH_BSM", 1);
2918 // double Q_match = src.get_val(ParameterType::WILSON, "EW_SCALE", 1);;
2919 double mW = src.get_val(ParameterType::SM, "MASS", 24);
2920 double mh0 = src.get_val(ParameterType::SM, "MASS", 25);
2921 double mH = src.get_val(ParameterType::BSM, "MASS", 37);
2922 double mH0 = src.get_val(ParameterType::BSM, "MASS", 35);
2923 double sw2 = src.get_val(ParameterType::WILSON, "WPARAM_SI_SM", 4);
2924 double mass_b_muW = src.get_val(ParameterType::WILSON, "WPARAM_MATCH_SM", {5,1});
2925 double g2 = src.get_val(ParameterType::SM, "GAUGE", 2);
2926 double tanb = src.get_val(ParameterType::BSM, "MINPAR", 3);
2927
2928 double muQ = src.get_val(ParameterType::BSM, "HMIX", 1);
2929 double xh = pow(mh0/mW, 2);
2930 double xH = pow(mH/mW, 2);
2931 double xH0 = pow(mH0/mW, 2);
2932 double alpha = src.get_val(ParameterType::BSM, "ALPHA", LhaID());
2933 double beta = src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", 6);
2934 double kappa = src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", 19);
2935 double epsfac = src.get_val(ParameterType::WILSON, "EPSILON_SUSY", 5);
2936 complex_t BQ10c1=0.;
2937 complex_t BQ10c2=0.;
2938
2939 double Dp, Dm;
2940 // double a0a{0}, a0b{0}, a0c, a0Q1{0}, a0Q2{0};
2941 double a0a{0}, a0b{0}, a0c, a0Q1{0};
2942 double a1{0};
2943
2944 complex_t NQ10c=0.;
2945 for(int ie=0;ie<2;ie++) {
2946 for(int je=0;je<2;je++) {
2947 for(int ae=0;ae<6;ae++) {
2948 for(int be=0;be<3;be++) {
2949 BQ10c1+=src.get_val(ParameterType::WILSON, "MATRIX_BSM", {3, je, ae, 1})*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {4, ie, ae, 2})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie})*(src.get_val(ParameterType::WILSON, "MATRIX_BSM", {6, ie, be, 1})*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {5, je, be, 1})*f50(pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, je})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.),pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.),pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {16, be})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.)));
2950 BQ10c2+=src.get_val(ParameterType::WILSON, "MATRIX_BSM", {3, je, ae, 1})*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {4, ie, ae, 2})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie})*(src.get_val(ParameterType::WILSON, "MATRIX_BSM", {5, ie, be, 1})*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {6, je, be, 1})*fabs(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, je})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}))*f60(pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, je})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.),pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.),pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {16, be})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.)));
2951 for(int me=0;me<6;me++) {
2952 for(int ne=0;ne<3;ne++) {
2953 Dp=0.;
2954 Dm=0.;
2955 for(int fe=0;fe<3;fe++)
2956 {
2957 Dp+=src.get_val(ParameterType::WILSON, "WPARAM_MATCH_BSM", {2, fe})/sqrt(2.)/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie})*muQ*(src.get_val(ParameterType::WILSON, "MATRIX_BSM", {2, ae, fe})*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {1, me, fe})+src.get_val(ParameterType::WILSON, "MATRIX_BSM", {1, ae, fe})*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {2, me, fe}));
2958 Dm+=src.get_val(ParameterType::WILSON, "WPARAM_MATCH_BSM", {2, fe})/sqrt(2.)/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie})*muQ*(src.get_val(ParameterType::WILSON, "MATRIX_BSM", {2, ae, fe})*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {1, me, fe})-src.get_val(ParameterType::WILSON, "MATRIX_BSM", {1, ae, fe})*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {2, me, fe}));
2959 }
2960 a0a=-(fabs(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, je}))*f30(pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, je}),2.),pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, je}),2.))*src.get_val(ParameterType::BSM, "UMIX", {ie+1,1+1})*src.get_val(ParameterType::BSM, "VMIX", {je+1, 0+1}))*kron(ae,me);
2961 a0b=-(f40(pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, je}),2.),pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, je}),2.))*src.get_val(ParameterType::BSM, "UMIX", {je+1, 1+1})*src.get_val(ParameterType::BSM, "VMIX", {ie+1, 0+1}))*kron(ae,me);
2962 a0c=1./mW*f30(pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.),pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, me})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.))*kron(ie,je);
2963 a0Q1=a0a+a0b+Dp*a0c;
2964
2965 a1=src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie})/sqrt(2.)/mW*f80(pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.))*kron(ie,je)*kron(ae,me);
2966 NQ10c+=src.get_val(ParameterType::WILSON, "MATRIX_BSM", {12,ae, ie, be, ne})*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {1, me, be})*src.get_val(ParameterType::BSM, "UMIX", {je+1, 1+1})*(a0Q1+a1*tanb);
2967 }
2968
2969 }
2970 }
2971 }
2972 }
2973 }
2974 complex_t BQ10c=(BQ10c1+BQ10c2)*kappa*mW*mW/2./g2/g2/sw2;
2975 // printf("BQ10c1 : %.14lf\n", BQ10c1);
2976 // printf("BQ10c2 : %.14lf\n", BQ10c2);
2977 NQ10c*=src.get_val(ParameterType::WILSON, "WPARAM_SI_SM", lepton_mass_slot)*(tanb)*tanb/mW/(mH*mH-mW*mW)*aY*mass_b_muW/sw2;
2978 double le = -tanb;
2979 double G1=-3./4.+ld*lu*F4SP(xt,xH)+lu*lu*F5SP(xt,xH);
2980 double G2=ld*(ld*lu+1.)*F6SP(xt,xH)-ld*lu*lu*F7SP(xt,xH)
2981 +lu*lu*(ld*F8SP(xt,xH)+lu*F9SP(xt,xH)-lu*F10SP(xt,xH))+lu*F11SP(xt,xH)-lu*F12SP(xt,xH);
2982
2983 double CSn_2HDM=xt*(F0SP(xt)+le*(ld*F1SP(xt,xH)+lu*F2SP(xt,xH))+le*lu*F3SP(xt,xH))
2984 +xt/2./xh*(sin(alpha-beta)+cos(alpha-beta)*le)*(sin(alpha-beta)*G1+cos(alpha-beta)*G2)
2985 +xt/2./xH0*(cos(alpha-beta)-sin(alpha-beta)*le)*(cos(alpha-beta)*G1-sin(alpha-beta)*G2);
2986 complex_t CQ1H_0=CSc_2HDM(xH,xt,lu,ld,le)+CSn_2HDM;
2987 CQ1H_0*=(src.get_val(ParameterType::WILSON, "WPARAM_SI_SM", lepton_mass_slot)*mass_b_muW/mW/mW)/sw2;
2988
2989 // printf("sw2 = %.9lf\n", sw2);
2990 // printf("mass_b_muW = %.9lf\n", mass_b_muW);
2991 // printf("param->mass_W = %.9lf\n", mW);
2992 // printf("CSn_2HDM : %.9lf\n", CSn_2HDM);
2993 // printf("xH : %.9lf\n", xH);
2994 // printf("xt : %.9lf\n", xt);
2995 // printf("lu : %.9lf\n", lu);
2996 // printf("ld : %.9lf\n", ld);
2997 // printf("le : %.9lf\n", le);
2998 // printf("alpha : %.9lf\n", alpha);
2999 // printf("beta : %.9lf\n", beta);
3000 // printf("G1 : %.9lf\n", G1);
3001 // printf("G2 : %.9lf\n", G2);
3002 // printf("CSc_2HDM(xH,xt,lu,ld,le) : %.9lf\n", CSc_2HDM(xH,xt,lu,ld,le));
3003
3004 // printf("NQ10c : %.9lf\n", NQ10c.real());
3005 // printf("BQ10c : %.9lf\n", BQ10c.real());
3006 complex_t CQ1charg_0=NQ10c+BQ10c;
3007 complex_t coeff_temp = (CQ1charg_0+CQ1H_0)/epsfac;
3008 // printf("kappa : %.9lf\n", kappa);
3009 // std::cout << "CQ1charg_0 " << CQ1charg_0 << std::endl;
3010 // std::cout << "CQ1H_0 " << CQ1H_0.real() << std::endl;
3011 return coeff_temp;
3012}
3013
3017
3018scalar_t CQ1_susy::compute_NLO(const ParamSrc& src, int lepton_mass_slot) {
3019 if (nmssm_scalar_matching::is_active()) return scalar_t(0.0);
3020
3021 // LOG_INFO("CQ1_susy::NLO 1");
3022 double xt = src.get_val(ParameterType::WILSON, "WPARAM_MATCH_SM", {2,1});
3023
3024 // double lu = src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", 7);
3025 // double ld = src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", 8);
3026 double z = src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", 1);
3027 double aY = src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", 11);
3028 // double yt = src.get_val(ParameterType::WILSON, "WPARAM_MATCH_BSM", 1);
3029 double Q_match = src.get_val(ParameterType::WILSON, "EW_SCALE", 1);;
3030 double mW = src.get_val(ParameterType::SM, "MASS", 24);
3031 // double mh0 = src.get_val(ParameterType::SM, "MASS", 25);
3032 double mH = src.get_val(ParameterType::BSM, "MASS", 37);
3033 // double mH0 = src.get_val(ParameterType::BSM, "MASS", 35);
3034 double sw2 = src.get_val(ParameterType::WILSON, "WPARAM_SI_SM", 4);
3035 double mass_b_muW = src.get_val(ParameterType::WILSON, "WPARAM_MATCH_SM", {5,1});
3036 double mass_top_muW = src.get_val(ParameterType::WILSON, "WPARAM_MATCH_SM", 6);
3037 double g2 = src.get_val(ParameterType::SM, "GAUGE", 2);
3038 double tanb = src.get_val(ParameterType::BSM, "HMIX", 2);
3039
3040 double muQ = src.get_val(ParameterType::BSM, "HMIX", 1);
3041 // double xh = pow(mh0/mW, 2);
3042 // double xH = pow(mH/mW, 2);
3043 // double xH0 = pow(mH0/mW, 2);
3044 // double alpha = src.get_val(ParameterType::BSM, "ALPHA", LhaID());
3045 // double beta = src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", 6);
3046
3047 double kappa = src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", 19);
3048 double epsfac = src.get_val(ParameterType::WILSON, "EPSILON_SUSY", 5);
3049
3050 complex_t NQ11H=-src.get_val(ParameterType::WILSON, "WPARAM_SI_SM", lepton_mass_slot)*(tanb)*tanb/4./mW/mW*(f141(xt,z)+8.*xt*(f30(xt,z)+xt*(f30(xt*1.0001,z)-f30(xt*0.9999,z))/0.0002)*log(Q_match*Q_match/mass_top_muW/mass_top_muW));
3051 complex_t BQ11H=src.get_val(ParameterType::WILSON, "WPARAM_SI_SM", lepton_mass_slot)*(tanb)*tanb/4./mW/mW*(f111(xt,z)+8.*(f70(xt*1.0001,z)-f70(xt*0.9999,z))/0.0002*log(Q_match*Q_match/mass_top_muW/mass_top_muW));
3052 complex_t CQ1H_1=(NQ11H+BQ11H)*mass_b_muW/sw2;
3053 // complex_t CQ2H_1=-CQ1H_1;
3054
3055 // LOG_INFO("CQ1_susy::NLO 2");
3056 complex_t BQ11c1=0.;
3057 complex_t BQ11c2=0.;
3058 complex_t NQ11c=0.;
3059 complex_t NQ21c=0.;
3060 complex_t BQ11f1=0.;
3061 complex_t BQ11f2=0.;
3062 complex_t NQ11f=0.;
3063 complex_t NQ21f=0.;
3064
3065 complex_t Dp{0}, Dm{0}, temp{0}, temp2{0};
3066 complex_t a0a{0}, a0b{0}, a0c{0}, a0Q1{0}, a0Q2{0}, a0p{0}, a1{0},a2p{0};
3067
3068 for(int ie=0;ie<2;ie++) {
3069 for(int ae=0;ae<6;ae++){
3070 for(int je=0;je<2;je++) {
3071 for(int be=0;be<3;be++) {
3072 BQ11c1+=src.get_val(ParameterType::WILSON, "MATRIX_BSM", {3, je, ae, 1})*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {4, ie, ae, 2})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie})*(src.get_val(ParameterType::WILSON, "MATRIX_BSM", {6, ie, be, 1})*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {5, je, be, 1})*(f121(pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, je})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.),pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.),pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {16, be})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.))+4.*(f50(pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, je})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.),pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.)*1.0001,pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {16, be})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.))-f50(pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, je})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.),pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.)*0.9999,pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {16, be})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.)))/0.0002*log(pow(mass_top_muW/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae}),2.))));
3073 BQ11c2+=src.get_val(ParameterType::WILSON, "MATRIX_BSM", {3, je, ae, 1})*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {4, ie, ae, 2})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie})*(src.get_val(ParameterType::WILSON, "MATRIX_BSM", {5, ie, be, 1})*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {6, je, be, 1})*fabs(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, je})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}))*(f131(pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, je})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.),pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.),pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {16, be})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.))+4.*(f60(pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, je})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.),pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.)*1.0001,pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {16, be})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.))-f60(pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, je})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.),pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.)*0.9999,pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {16, be})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.)))/0.0002*log(pow(mass_top_muW/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae}),2.))));
3074 // LOG_INFO("CQ1_susy::NLO 2.-1");
3075 for(int me=0;me<6;me++){
3076 for(int ne=0;ne<3;ne++) {
3077 Dp=0.;
3078 Dm=0.;
3079 for(int fe=0;fe<3;fe++) {
3080 Dp+=src.get_val(ParameterType::WILSON, "WPARAM_MATCH_BSM", {2, fe})/sqrt(2.)/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie})*muQ*(src.get_val(ParameterType::WILSON, "MATRIX_BSM", {2, ae, fe})*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {1, me, fe})+src.get_val(ParameterType::WILSON, "MATRIX_BSM", {1, ae, fe})*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {2, me, fe}));
3081 Dm+=src.get_val(ParameterType::WILSON, "WPARAM_MATCH_BSM", {2, fe})/sqrt(2.)/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie})*muQ*(src.get_val(ParameterType::WILSON, "MATRIX_BSM", {2, ae, fe})*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {1, me, fe})-src.get_val(ParameterType::WILSON, "MATRIX_BSM", {1, ae, fe})*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {2, me, fe}));
3082 }
3083 a0a=-(fabs(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, je}))*(f181(pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, je}),2.),pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, je}),2.))+4.*(f30(pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, je}),2.),pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, je}),2.)*1.0001)-f30(pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, je}),2.),pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, je}),2.)*0.9999))/0.0002*log(pow(mass_top_muW/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae}),2.)))*src.get_val(ParameterType::BSM, "UMIX", {ie+1, 1+1})*src.get_val(ParameterType::BSM, "VMIX", {je+1, 0+1}))*kron(ae,me);
3084 a0b=-((f191(pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, je}),2.),pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, je}),2.))+4.*(f40(pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, je}),2.),pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, je}),2.)*1.0001)-f40(pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, je}),2.),pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, je}),2.)*0.9999))/0.0002*log(pow(mass_top_muW/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae}),2.)))*src.get_val(ParameterType::BSM, "UMIX", {je+1, 1+1})*src.get_val(ParameterType::BSM, "UMIX", {ie+1, 0+1}))*kron(ae,me);
3085 a0c=1./mW*(f171(pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.),pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, me})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.))+4.*(f30(pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.),pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, me})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.))+(f30(pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.)*1.0001,pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, me})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.))-f30(pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.)*0.9999,pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, me})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.)))/0.0002+(f30(pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.),pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, me})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.)*1.0001)-f30(pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.),pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, me})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.)*0.9999))/0.0002)*log(pow(mass_top_muW/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae}),2.)))*kron(ie,je);
3086
3087 a0Q1=a0a+a0b+Dp*a0c;
3088 a0Q2=-a0a+a0b+Dm*a0c;
3089 a0p=4.*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {12,ae, ie, be, ne})/mW/(src.get_val(ParameterType::SM, "VCKM", {be, 2})*src.get_val(ParameterType::SM, "VCKM", {ne, 1})/src.get_val(ParameterType::SM, "VCKM", {2, 2})/src.get_val(ParameterType::SM, "VCKM", {2, 1}))/src.get_val(ParameterType::BSM, "UMIX", {je+1, 1+1})*f151(pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.))*kron(ie,je)*kron(ae,me)*kron(be,ne);
3090 a1=src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie})/sqrt(2.)/mW*(f161(pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.))+4.*(f80(pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.)*1.0001)-f80(pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.)*0.9999))/0.0002*log(pow(mass_top_muW/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae}),2.)))*kron(ie,je)*kron(ae,me);
3091 a2p=src.get_val(ParameterType::WILSON, "MATRIX_BSM", {1, me, be})*(src.get_val(ParameterType::SM, "VCKM", {be, 2})*src.get_val(ParameterType::SM, "VCKM", {ne, 1})/src.get_val(ParameterType::SM, "VCKM", {2, 2})/src.get_val(ParameterType::SM, "VCKM", {2, 1}))*src.get_val(ParameterType::BSM, "UMIX", {je+1, 1+1})/2./mW*f151(pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.))*kron(ie,je)*kron(ae,me)*kron(be,ne);
3092
3093 NQ11c+=src.get_val(ParameterType::WILSON, "MATRIX_BSM", {12,ae, ie, be, ne})*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {1, me, be})*src.get_val(ParameterType::BSM, "UMIX", {je+1, 1+1})*(a0Q1+a1*tanb)
3094 +src.get_val(ParameterType::WILSON, "MATRIX_BSM", {12,ae, ie, be, ne})*src.get_val(ParameterType::BSM, "UMIX", {je+1, 1+1})*a0p
3095 +src.get_val(ParameterType::WILSON, "MATRIX_BSM", {1, me, be})*src.get_val(ParameterType::BSM, "UMIX", {je+1, 1+1})*a2p*pow(src.get_val(ParameterType::SM, "MASS", 3)*tanb,2.);
3096 NQ21c+=src.get_val(ParameterType::WILSON, "MATRIX_BSM", {12,ae, ie, be, ne})*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {1, me, be})*src.get_val(ParameterType::BSM, "UMIX", {je+1, 1+1})*(a0Q2+a1*tanb)
3097 +src.get_val(ParameterType::WILSON, "MATRIX_BSM", {12,ae, ie, be, ne})*src.get_val(ParameterType::BSM, "UMIX", {je+1, 1+1})*a0p
3098 +src.get_val(ParameterType::WILSON, "MATRIX_BSM", {1, me, be})*src.get_val(ParameterType::BSM, "UMIX", {je+1, 1+1})*a2p*pow(src.get_val(ParameterType::SM, "MASS", 3)*tanb,2.);
3099 }
3100 }
3101
3102 }
3103 // LOG_INFO("CQ1_susy::NLO 2.0");
3104 for(int be=0;be<6;be++) {
3105 for(int ce=0;ce<6;ce++) {
3106 for(int fe=0;fe<3;fe++) {
3107 BQ11f1+=-src.get_val(ParameterType::WILSON, "MATRIX_BSM", {3, je, be, 1})*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {4, ie, ae, 2})*pow(mW/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.)*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {9, ae, ce})*src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ce})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie})*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {9, ce, be})*(1.+log(pow(mass_top_muW/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ce}),2.))) *(f90(pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, je})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.),pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.),pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, be})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.),pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {16, fe})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.))*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {6, ie, fe, 2})*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {5, je, fe, 2}));
3108 BQ11f2+=-src.get_val(ParameterType::WILSON, "MATRIX_BSM", {3, je, be, 1})*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {4, ie, ae, 2})*pow(mW/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.)*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {9, ae, ce})*src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ce})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie})*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {9, ce, be})*(1.+log(pow(mass_top_muW/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ce}),2.))) *(fabs(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, je})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}))*f100(pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, je})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.),pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.),pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, be})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.),pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {16, fe})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.))*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {5, ie, fe, 1})*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {6, je, fe, 1}));
3109
3110 }
3111 }
3112 }
3113 }
3114
3115 // LOG_INFO("CQ1_susy::NLO 2.1");
3116
3117 for(int me=0;me<3;me++) {
3118 for(int ne=0;ne<3;ne++) {
3119 for(int de=0;de<6;de++) {
3120 for(int ke=0;ke<6;ke++) {
3121
3122 temp2 = src.get_val(ParameterType::WILSON, "MATRIX_BSM", {12,ae, ie, me, ne})*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {1, de, me})*src.get_val(ParameterType::BSM, "UMIX", {ie+1, 1+1})*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {9, ae, ke})*src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ke})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie})*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {9, ke, de})*(1.+log(pow(mass_top_muW/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ke}),2.)))*tanb*src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie})/sqrt(2.)*f30(pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.),pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, de})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.));
3123 NQ11f+=temp2;
3124 NQ21f+=temp2;
3125 for(int ce=0;ce<6;ce++) {
3126 Dp=0.;
3127 Dm=0.;
3128 for(int fe=0;fe<3;fe++)
3129 {
3130 Dp+=src.get_val(ParameterType::WILSON, "WPARAM_MATCH_BSM", {2, fe})/sqrt(2.)/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie})*muQ*(src.get_val(ParameterType::WILSON, "MATRIX_BSM", {2, de, fe})*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {1, ce, fe})+src.get_val(ParameterType::WILSON, "MATRIX_BSM", {1, de, fe})*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {2, ce, fe}));
3131 Dm+=src.get_val(ParameterType::WILSON, "WPARAM_MATCH_BSM", {2, fe})/sqrt(2.)/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie})*muQ*(src.get_val(ParameterType::WILSON, "MATRIX_BSM", {2, de, fe})*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {1, ce, fe})-src.get_val(ParameterType::WILSON, "MATRIX_BSM", {1, de, fe})*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {2, ce, fe}));
3132 }
3133 temp=src.get_val(ParameterType::WILSON, "MATRIX_BSM", {12,ae, ie, me, ne})*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {1, ce, me})*src.get_val(ParameterType::BSM, "UMIX", {ie+1, 1+1})*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {9, ae, ke})*src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ke})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie})*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {9, ke, de})*
3134 (1.+log(pow(mass_top_muW/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ke}),2.)))*f60(pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.),pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, de})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.),pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ce})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.));
3135 NQ11f+=Dp*temp;
3136 NQ21f+=Dm*temp;
3137 }
3138 for(int je=0;je<2;je++) {
3139 temp=-src.get_val(ParameterType::WILSON, "MATRIX_BSM", {12,ae, ie, me, ne})*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {1, de, me})*src.get_val(ParameterType::BSM, "UMIX", {je+1, 1+1})*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {9, ae, ke})*src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ke})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, je})*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {9, ke, de})*
3140 (1.+log(pow(mass_top_muW/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ke}),2.)))*mW*(fabs(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, je}))*f60(pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, je}),2.),pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, je}),2.),pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, de})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, je}),2.))*src.get_val(ParameterType::BSM, "UMIX", {ie+1, 1+1})*src.get_val(ParameterType::BSM, "VMIX", {je+1, 0+1})+
3141 f50(pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, je}),2.),pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, je}),2.),pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, de})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, je}),2.))*src.get_val(ParameterType::BSM, "UMIX", {je+1, 1+1})*src.get_val(ParameterType::BSM, "VMIX", {ie+1, 0+1}));
3142 NQ11f+=temp;
3143 NQ21f+=-temp;
3144 }
3145
3146 }
3147 }
3148 }
3149
3150 }
3151 }
3152 }
3153
3154 // LOG_INFO("CQ1_susy::NLO 3");
3155
3156 complex_t BQ11c=(BQ11c1+BQ11c2)*kappa*mW*mW/2./g2/g2/sw2;
3157 // complex_t BQ21c=-(BQ11c1-BQ11c2)*kappa*mW*mW/2./g2/g2/sw2;
3158
3159
3160 NQ11c*=src.get_val(ParameterType::WILSON, "WPARAM_SI_SM", lepton_mass_slot)*(tanb)*tanb/mW/(mH*mH-mW*mW)*aY*mass_b_muW/sw2;
3161 NQ21c*=-src.get_val(ParameterType::WILSON, "WPARAM_SI_SM", lepton_mass_slot)*(tanb)*tanb/mW/(mH*mH-mW*mW)*aY*mass_b_muW/sw2;
3162
3163 complex_t CQ1charg_1=NQ11c+BQ11c;
3164
3165
3166
3167
3168 // complex_t CQ2charg_1=NQ21c+BQ21c;
3169
3170 complex_t BQ11f=(BQ11f1+BQ11f2)*2./3.*kappa/g2/g2/sw2;
3171 // complex_t BQ21f=-(BQ11f1-BQ11f2)*2./3.*kappa/g2/g2/sw2;
3172
3173
3174 NQ11f*=-4./3.*src.get_val(ParameterType::WILSON, "WPARAM_SI_SM", lepton_mass_slot)*(tanb)*tanb/mW/mW/(mH*mH-mW*mW)*aY*mass_b_muW/sw2;
3175
3176 NQ21f*=4./3.*src.get_val(ParameterType::WILSON, "WPARAM_SI_SM", lepton_mass_slot)*(tanb)*tanb/mW/mW/(mH*mH-mW*mW)*aY*mass_b_muW/sw2;
3177
3178
3179 complex_t CQ1four_1=NQ11f+BQ11f;
3180 complex_t coeff_temp = (CQ1H_1+CQ1charg_1)/epsfac+CQ1four_1;
3181
3182 // LOG_INFO("CQ1_susy::NLO 4");
3183
3184
3185 return coeff_temp;
3186}
3187
3191 {}, // sources
3192 [lepton_mass_slot](const ParamSrc& src) { return compute_LO(src, lepton_mass_slot); },
3194 };
3195
3196 auto& sources = matching_info[QCDOrder::LO].sources;
3197
3198 // Insertion directe
3199 // sources.insert({ParameterType::WILSON, "WPARAM_SI_BSM", 1});
3200 sources.insert({ParameterType::WILSON, "WPARAM_SI_BSM", 2});
3201 sources.insert({ParameterType::WILSON, "WPARAM_SI_BSM", 3});
3202 sources.insert({ParameterType::WILSON, "WPARAM_SI_BSM", 4});
3203 sources.insert({ParameterType::WILSON, "WPARAM_SI_BSM", 19});
3204 // sources.insert({ParameterType::WILSON, "WPARAM_SI_BSM", 6});
3205 sources.insert({ParameterType::WILSON, "WPARAM_SI_BSM", 7});
3206 sources.insert({ParameterType::WILSON, "WPARAM_SI_BSM", 8});
3207 sources.insert({ParameterType::WILSON, "WPARAM_SI_BSM", 9});
3208 sources.insert({ParameterType::WILSON, "WPARAM_SI_BSM", 11});
3209 sources.insert({ParameterType::WILSON, "WPARAM_SI_SM", lepton_mass_slot});
3210 sources.insert({ParameterType::WILSON, "WPARAM_SI_SM", 4});
3211 sources.insert({ParameterType::WILSON, "WPARAM_SI_SM", 5});
3212 sources.insert({ParameterType::WILSON, "WPARAM_RUN_SM", 1});
3213 // sources.insert({ParameterType::WILSON, "WPARAM_MATCH_BSM", 1});
3214 sources.insert({ParameterType::WILSON, "EW_SCALE", 1});
3215 // sources.insert({ParameterType::BSM, "ALPHA", LhaID()});
3216 sources.insert({ParameterType::BSM, "MASS", 35});
3217 sources.insert({ParameterType::SM, "MASS", 25});
3218 sources.insert({ParameterType::BSM, "MASS", 37});
3219 sources.insert({ParameterType::BSM, "MASS", 45});
3220 sources.insert({ParameterType::BSM, "MASS", 46});
3221 sources.insert({ParameterType::BSM, "MASS", 2000013});
3222 sources.insert({ParameterType::BSM, "MASS", 1000006});
3223 sources.insert({ParameterType::BSM, "MASS", 2000006});
3224 // sources.insert({ParameterType::BSM, "MASS", 25});
3225 // sources.insert({ParameterType::BSM, "MASS", 35});
3226 sources.insert({ParameterType::BSM, "MASS", 36});
3227 sources.insert({ParameterType::BSM, "HMIX", 1});
3228 sources.insert({ParameterType::BSM, "MINPAR", 3});
3229 sources.insert({ParameterType::WILSON, "EPSILON_SUSY", 5});
3230 // sources.insert({ParameterType::SM, "MASS", 23});
3231 sources.insert({ParameterType::SM, "SMINPUTS", 4}); //MASS Z in SMINPUTS
3232 sources.insert({ParameterType::SM, "MASS", 24});
3233 sources.insert({ParameterType::SM, "GAUGE", 2});
3234 sources.insert({ParameterType::SM, "QCD", LhaID(5,1)});
3235 sources.insert({ParameterType::SM, "SMINPUTS", 2});
3236
3237 // MATRIX_BSM 3 & 4
3238 for (int je = 0; je < 2; ++je) {
3239 for (int ae = 0; ae < 6; ++ae) {
3240 sources.insert({ParameterType::WILSON, "MATRIX_BSM", {3, je, ae, 1}});
3241 sources.insert({ParameterType::WILSON, "MATRIX_BSM", {4, je, ae, 2}});
3242 }
3243 }
3244
3245 // MATRIX_BSM 5 & 6
3246 for (int ie = 0; ie < 2; ++ie) {
3247 for (int be = 0; be < 3; ++be) {
3248 sources.insert({ParameterType::WILSON, "MATRIX_BSM", {5, ie, be, 1}});
3249 sources.insert({ParameterType::WILSON, "MATRIX_BSM", {6, ie, be, 1}});
3250 }
3251 }
3252
3253 // WPARAM_SI_BSM mixings
3254 for (int ie = 0; ie < 2; ++ie) {
3255 sources.insert({ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}});
3256 }
3257 for (int ae = 0; ae < 6; ++ae) {
3258 sources.insert({ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae}});
3259 }
3260 for (int be = 0; be < 3; ++be) {
3261 sources.insert({ParameterType::WILSON, "WPARAM_SI_BSM", {16, be}});
3262 }
3263
3264 for (int i = 1; i < 3; ++i) {
3265 sources.insert({ParameterType::BSM, "UMIX", {1, i}});
3266 sources.insert({ParameterType::BSM, "VMIX", {1, i}});
3267 sources.insert({ParameterType::BSM, "UMIX", {2, i}});
3268 sources.insert({ParameterType::BSM, "VMIX", {2, i}});
3269
3270 }
3271
3272 // WPARAM_MATCH_SM
3273 sources.insert({ParameterType::WILSON, "WPARAM_MATCH_SM", {2,1}});
3274 sources.insert({ParameterType::WILSON, "WPARAM_MATCH_SM", {5,1}});
3275 sources.insert({ParameterType::WILSON, "WPARAM_MATCH_SM", 6});
3276
3277 // WPARAM_MATCH_BSM indexés
3278 for (int fe = 0; fe < 3; ++fe) {
3279 sources.insert({ParameterType::WILSON, "WPARAM_MATCH_BSM", {2, fe}});
3280 }
3281
3282 // MATRIX_BSM 1 & 2
3283 for (int ae = 0; ae < 6; ++ae) {
3284 for (int fe = 0; fe < 3; ++fe) {
3285 sources.insert({ParameterType::WILSON, "MATRIX_BSM", {2, ae, fe}});
3286 }
3287 }
3288 for (int me = 0; me < 6; ++me) {
3289 for (int be = 0; be < 3; ++be) {
3290 sources.insert({ParameterType::WILSON, "MATRIX_BSM", {1, me, be}});
3291 }
3292 }
3293
3294 // MATRIX_BSM 12
3295 for (int ae = 0; ae < 6; ++ae) {
3296 for (int ie = 0; ie < 2; ++ie) {
3297 for (int be = 0; be < 3; ++be) {
3298 for (int ne = 0; ne < 3; ++ne) {
3299 sources.insert({ParameterType::WILSON, "MATRIX_BSM", {12, ae, ie, be, ne}});
3300 }
3301 }
3302 }
3303 }
3304
3305 // HMIX & AMIX matrix elements used in the else branch
3306 sources.insert({ParameterType::BSM, "NMHMIX", {0+1, 0+1}});
3307 sources.insert({ParameterType::BSM, "NMHMIX", {0+1, 1+1}});
3308 sources.insert({ParameterType::BSM, "NMHMIX", {1+1, 0+1}});
3309 sources.insert({ParameterType::BSM, "NMHMIX", {1+1, 1+1}});
3310 sources.insert({ParameterType::BSM, "NMHMIX", {2+1, 0+1}});
3311 sources.insert({ParameterType::BSM, "NMHMIX", {2+1, 1+1}});
3312 // {ParameterType::BSM, "NMHMIX", {3+1, 0+1}},
3313 sources.insert({ParameterType::BSM, "NMAMIX" , {0+1, 0+1}});
3314 sources.insert({ParameterType::BSM, "NMAMIX" , {0+1, 1+1}});
3315 sources.insert({ParameterType::BSM, "NMAMIX" , {1+1, 0+1}});
3316 sources.insert({ParameterType::BSM, "NMAMIX" , {1+1, 1+1}});
3317
3319 {}, // sources
3320 [lepton_mass_slot](const ParamSrc& src) { return compute_NLO(src, lepton_mass_slot); },
3322 };
3323
3324 auto& sources_NLO = matching_info[QCDOrder::NLO].sources;
3325
3326 // Insertion directe
3327 sources_NLO.insert({ParameterType::WILSON, "WPARAM_SI_BSM", 1});
3328 // sources_NLO.insert({ParameterType::WILSON, "WPARAM_SI_BSM", 2});
3329 // sources_NLO.insert({ParameterType::WILSON, "WPARAM_SI_BSM", 3});
3330 sources_NLO.insert({ParameterType::WILSON, "WPARAM_SI_BSM", 19});
3331 // sources_NLO.insert({ParameterType::WILSON, "WPARAM_SI_BSM", 6});
3332 // sources_NLO.insert({ParameterType::WILSON, "WPARAM_SI_BSM", 7});
3333 // sources_NLO.insert({ParameterType::WILSON, "WPARAM_SI_BSM", 8});
3334 // sources_NLO.insert({ParameterType::WILSON, "WPARAM_SI_BSM", 9});
3335 sources_NLO.insert({ParameterType::WILSON, "WPARAM_SI_BSM", 11});
3336 sources_NLO.insert({ParameterType::WILSON, "WPARAM_SI_SM", lepton_mass_slot});
3337 sources_NLO.insert({ParameterType::WILSON, "WPARAM_SI_SM", 4});
3338 // sources_NLO.insert({ParameterType::WILSON, "WPARAM_MATCH_BSM", 1});
3339 sources_NLO.insert({ParameterType::WILSON, "WPARAM_MATCH_SM", {2,1}});
3340 sources_NLO.insert({ParameterType::WILSON, "WPARAM_MATCH_SM", {5,1}});
3341 sources_NLO.insert({ParameterType::WILSON, "WPARAM_MATCH_SM", 6});
3342 sources_NLO.insert({ParameterType::WILSON, "EW_SCALE", 1});
3343 sources_NLO.insert({ParameterType::WILSON, "EPSILON_SUSY", 5});
3344 sources_NLO.insert({ParameterType::SM, "MASS", 3});
3345 sources_NLO.insert({ParameterType::SM, "MASS", 24});
3346 sources_NLO.insert({ParameterType::SM, "GAUGE", 2});
3347 sources_NLO.insert({ParameterType::SM, "VCKM", {0, 1}});
3348 sources_NLO.insert({ParameterType::SM, "VCKM", {1, 1}});
3349 sources_NLO.insert({ParameterType::SM, "VCKM", {2, 1}});
3350 sources_NLO.insert({ParameterType::SM, "VCKM", {0, 2}});
3351 sources_NLO.insert({ParameterType::SM, "VCKM", {1, 2}});
3352 sources_NLO.insert({ParameterType::SM, "VCKM", {2, 2}});
3353 sources_NLO.insert({ParameterType::BSM, "MASS", 37});
3354 sources_NLO.insert({ParameterType::BSM, "MASS", 45});
3355 sources_NLO.insert({ParameterType::BSM, "MASS", 46});
3356 sources_NLO.insert({ParameterType::BSM, "HMIX", 1});
3357 sources_NLO.insert({ParameterType::BSM, "MINPAR", 3});
3358
3359 // WPARAM_SI_BSM
3360 for (int ie = 0; ie < 2; ++ie) {
3361 sources_NLO.insert({ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}});
3362 }
3363 for (int ae = 0; ae < 6; ++ae) {
3364 sources_NLO.insert({ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae}});
3365 }
3366 for (int be = 0; be < 3; ++be) {
3367 sources_NLO.insert({ParameterType::WILSON, "WPARAM_SI_BSM", {16, be}});
3368 }
3369
3370 for (int i = 1; i < 3; ++i) {
3371 sources_NLO.insert({ParameterType::BSM, "UMIX", {1, i}});
3372 sources_NLO.insert({ParameterType::BSM, "VMIX", {1, i}});
3373 sources_NLO.insert({ParameterType::BSM, "UMIX", {2, i}});
3374 sources_NLO.insert({ParameterType::BSM, "VMIX", {2, i}});
3375
3376 }
3377
3378 // MATRIX_BSM: blocs 3 & 4
3379 for (int je = 0; je < 2; ++je) {
3380 for (int ae = 0; ae < 6; ++ae) {
3381 sources_NLO.insert({ParameterType::WILSON, "MATRIX_BSM", {3, je, ae, 1}});
3382 sources_NLO.insert({ParameterType::WILSON, "MATRIX_BSM", {4, je, ae, 2}});
3383 }
3384 }
3385
3386 // MATRIX_BSM: blocs 5 & 6
3387 for (int ie = 0; ie < 2; ++ie) {
3388 for (int be = 0; be < 3; ++be) {
3389 sources_NLO.insert({ParameterType::WILSON, "MATRIX_BSM", {5, ie, be, 1}});
3390 sources_NLO.insert({ParameterType::WILSON, "MATRIX_BSM", {5, ie, be, 2}});
3391 sources_NLO.insert({ParameterType::WILSON, "MATRIX_BSM", {6, ie, be, 1}});
3392 sources_NLO.insert({ParameterType::WILSON, "MATRIX_BSM", {6, ie, be, 2}});
3393 }
3394 }
3395
3396 // MATRIX_BSM: bloc 2 et 1
3397 for (int ae = 0; ae < 6; ++ae) {
3398 for (int fe = 0; fe < 3; ++fe) {
3399 sources_NLO.insert({ParameterType::WILSON, "MATRIX_BSM", {2, ae, fe}});
3400 sources_NLO.insert({ParameterType::WILSON, "MATRIX_BSM", {1, ae, fe}});
3401 }
3402 }
3403
3404 // MATRIX_BSM: bloc 12
3405 for (int ae = 0; ae < 6; ++ae) {
3406 for (int ie = 0; ie < 2; ++ie) {
3407 for (int me = 0; me < 3; ++me) {
3408 for (int ne = 0; ne < 3; ++ne) {
3409 sources_NLO.insert({ParameterType::WILSON, "MATRIX_BSM", {12, ae, ie, me, ne}});
3410 }
3411 }
3412 }
3413 }
3414
3415 // MATRIX_BSM: bloc 9
3416 for (int ae = 0; ae < 6; ++ae) {
3417 for (int ce = 0; ce < 6; ++ce) {
3418 sources_NLO.insert({ParameterType::WILSON, "MATRIX_BSM", {9, ae, ce}});
3419 }
3420 }
3421
3422 // WPARAM_MATCH_BSM indices {2, fe}
3423 for (int fe = 0; fe < 3; ++fe) {
3424 sources_NLO.insert({ParameterType::WILSON, "WPARAM_MATCH_BSM", {2, fe}});
3425 }
3426
3427 // HMIX & AMIX matrix elements used in the else branch
3428 sources_NLO.insert({ParameterType::BSM, "NMHMIX", {0+1, 0+1}});
3429 sources_NLO.insert({ParameterType::BSM, "NMHMIX", {0+1, 1+1}});
3430 sources_NLO.insert({ParameterType::BSM, "NMHMIX", {1+1, 0+1}});
3431 sources_NLO.insert({ParameterType::BSM, "NMHMIX", {1+1, 1+1}});
3432 sources_NLO.insert({ParameterType::BSM, "NMHMIX", {2+1, 0+1}});
3433 sources_NLO.insert({ParameterType::BSM, "NMHMIX", {2+1, 1+1}});
3434 // {ParameterType::BSM, "NMHMIX", {3+1, 0+1}},
3435 sources_NLO.insert({ParameterType::BSM, "NMAMIX" , {0+1, 0+1}});
3436 sources_NLO.insert({ParameterType::BSM, "NMAMIX" , {0+1, 1+1}});
3437 sources_NLO.insert({ParameterType::BSM, "NMAMIX" , {1+1, 0+1}});
3438 sources_NLO.insert({ParameterType::BSM, "NMAMIX" , {1+1, 1+1}});
3439
3440 // // RECKM approximatif (0 à 29)
3441 // for (int i = 0; i < 30; ++i) {
3442 // sources_NLO.insert({ParameterType::SM, "RECKM", i});
3443 // }
3444
3445}
3446
3450
3451scalar_t CQ2_susy::compute_LO(const ParamSrc& src, int lepton_mass_slot) {
3452 const auto nmssm = nmssm_scalar_matching::compute(src, lepton_mass_slot);
3453 if (nmssm.active) return nmssm.cq2;
3454
3455 double xt = src.get_val(ParameterType::WILSON, "WPARAM_MATCH_SM", {2,1});
3456
3457 double lu = src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", 7);
3458 double ld = src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", 8);
3459 // double z = src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", 1);
3460 double aY = src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", 11);
3461 // double yt = src.get_val(ParameterType::WILSON, "WPARAM_MATCH_BSM", 1);
3462 double mW = src.get_val(ParameterType::SM, "MASS", 24);
3463 // double mh0 = src.get_val(ParameterType::SM, "MASS", 25);
3464 double mH = src.get_val(ParameterType::BSM, "MASS", 37);
3465 // double mH0 = src.get_val(ParameterType::BSM, "MASS", 35);
3466 double mA0 = src.get_val(ParameterType::BSM, "MASS", 36);
3467 double sw2 = src.get_val(ParameterType::WILSON, "WPARAM_SI_SM", 4);
3468 double mass_b_muW = src.get_val(ParameterType::WILSON, "WPARAM_MATCH_SM", {5,1});
3469 double g2 = src.get_val(ParameterType::SM, "GAUGE", 2);
3470 double tanb = src.get_val(ParameterType::BSM, "MINPAR", 3);
3471
3472 double muQ = src.get_val(ParameterType::BSM, "HMIX", 1);
3473 // double xh = pow(mh0/mW, 2);
3474 double xH = pow(mH/mW, 2);
3475 // double xH0 = pow(mH0/mW, 2);
3476 double xA = pow(mA0/mW, 2);
3477 // double alpha = src.get_val(ParameterType::BSM, "ALPHA", LhaID());
3478 // double beta = src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", 6);
3479
3480 double kappa = src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", 19);
3481 double epsfac = src.get_val(ParameterType::WILSON, "EPSILON_SUSY", 5);
3482
3483
3484 complex_t BQ10c1=0.;
3485 complex_t BQ10c2=0.;
3486
3487 complex_t Dp, Dm;
3488 complex_t a0a{0}, a0b{0}, a0c, a0Q1{0}, a0Q2{0};
3489 complex_t a1{0};
3490 complex_t NQ20c=0.;
3491
3492 for(int ie=0;ie<2;ie++) {
3493 for(int je=0;je<2;je++) {
3494 for(int ae=0;ae<6;ae++) {
3495 for(int be=0;be<3;be++) {
3496 BQ10c1+=src.get_val(ParameterType::WILSON, "MATRIX_BSM", {3, je, ae, 1})*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {4,ie, ae, 2})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie})*(src.get_val(ParameterType::WILSON, "MATRIX_BSM", {6,ie, be, 1})*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {5, je, be, 1})*f50(pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, je})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.),pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.),pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {16, be})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.)));
3497 BQ10c2+=src.get_val(ParameterType::WILSON, "MATRIX_BSM", {3, je, ae, 1})*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {4,ie, ae, 2})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie})*(src.get_val(ParameterType::WILSON, "MATRIX_BSM", {5, ie, be, 1})*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {6, je, be, 1})*fabs(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, je})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}))*f60(pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, je})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.),pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.),pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {16, be})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.)));
3498
3499 for(int me=0;me<6;me++) {
3500 for(int ne=0;ne<3;ne++) {
3501 Dp=0.;
3502 Dm=0.;
3503 for(int fe=0;fe<3;fe++)
3504 {
3505 Dp+=src.get_val(ParameterType::WILSON, "WPARAM_MATCH_BSM", {2, fe})/sqrt(2.)/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie})*muQ*(src.get_val(ParameterType::WILSON, "MATRIX_BSM", {2, ae, fe})*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {1, me, fe})+src.get_val(ParameterType::WILSON, "MATRIX_BSM", {1, ae, fe})*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {2, me, fe}));
3506 Dm+=src.get_val(ParameterType::WILSON, "WPARAM_MATCH_BSM", {2, fe})/sqrt(2.)/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie})*muQ*(src.get_val(ParameterType::WILSON, "MATRIX_BSM", {2, ae, fe})*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {1, me, fe})-src.get_val(ParameterType::WILSON, "MATRIX_BSM", {1, ae, fe})*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {2, me, fe}));
3507 }
3508 a0a=-(fabs(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, je}))*f30(pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, je}),2.),pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, je}),2.))*src.get_val(ParameterType::BSM, "UMIX", {ie+1, 1+1})*src.get_val(ParameterType::BSM, "VMIX", {je+1, 0+1}))*kron(ae,me);
3509 a0b=-(f40(pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, je}),2.),pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, je}),2.))*src.get_val(ParameterType::BSM, "UMIX", {je+1, 1+1})*src.get_val(ParameterType::BSM, "VMIX", {ie+1, 0+1}))*kron(ae,me);
3510 a0c=1./mW*f30(pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.),pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, me})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.))*kron(ie,je);
3511 a0Q2=-a0a+a0b+Dm*a0c;
3512
3513 a1=src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie})/sqrt(2.)/mW*f80(pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.))*kron(ie,je)*kron(ae,me);
3514 NQ20c+=src.get_val(ParameterType::WILSON, "MATRIX_BSM", {12,ae, ie, be, ne})*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {1, me, be})*src.get_val(ParameterType::BSM, "UMIX", {je+1, 1+1})*(a0Q2+a1*tanb);
3515 }
3516
3517 }
3518 }
3519 }
3520 }
3521 }
3522 complex_t BQ20c=-(BQ10c1-BQ10c2)*kappa*mW*mW/2./g2/g2/sw2;
3523
3524 double le = -tanb;
3525 double G3=ld*(ld*lu+1.)*F6SP(xt,xH)+ld*lu*lu*F7SP(xt,xH)
3526 +lu*lu*(ld*F8SP(xt,xH)+lu*F9SP(xt,xH)+lu*F10SP(xt,xH))+lu*F11SP(xt,xH)+lu*F12SP(xt,xH);
3527 double CPn_2HDM=xt*(-le*(ld*F1SP(xt,xH)+lu*F2SP(xt,xH))+le*lu*F3SP(xt,xH))+xt/2./xA*(le)*G3;
3528
3529 double CQ2H_0=CPc_2HDM(xH,xt,lu,ld,le,sw2)+CPn_2HDM;
3530 CQ2H_0*=(src.get_val(ParameterType::WILSON, "WPARAM_SI_SM", lepton_mass_slot)*mass_b_muW/mW/mW)/sw2;
3531
3532 NQ20c*=-src.get_val(ParameterType::WILSON, "WPARAM_SI_SM", lepton_mass_slot)*(tanb)*tanb/mW/(mH*mH-mW*mW)*aY*mass_b_muW/sw2;
3533
3534 complex_t CQ2charg_0=NQ20c+BQ20c;
3535
3536
3537 complex_t coeff_temp = (CQ2charg_0+CQ2H_0)/epsfac;
3538
3539 return coeff_temp;
3540}
3541
3542
3546
3547scalar_t CQ2_susy::compute_NLO(const ParamSrc& src, int lepton_mass_slot) {
3548 if (nmssm_scalar_matching::is_active()) return scalar_t(0.0);
3549
3550 LOG_INFO("CQ2_susy::NLO 1");
3551 double xt = src.get_val(ParameterType::WILSON, "WPARAM_MATCH_SM", {2,1});
3552
3553 // double lu = src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", 7);
3554 // double ld = src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", 8);
3555 double z = src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", 1);
3556 double aY = src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", 11);
3557 // double yt = src.get_val(ParameterType::WILSON, "WPARAM_MATCH_BSM", 1);
3558 double Q_match = src.get_val(ParameterType::WILSON, "EW_SCALE", 1);;
3559 double mW = src.get_val(ParameterType::SM, "MASS", 24);
3560 double mH = src.get_val(ParameterType::BSM, "MASS", 37);
3561 double sw2 = src.get_val(ParameterType::WILSON, "WPARAM_SI_SM", 4);
3562 double mass_b_muW = src.get_val(ParameterType::WILSON, "WPARAM_MATCH_SM", {5,1});
3563 double mass_top_muW = src.get_val(ParameterType::WILSON, "WPARAM_MATCH_SM", 6);
3564 double g2 = src.get_val(ParameterType::SM, "GAUGE", 2);
3565 double tanb = src.get_val(ParameterType::BSM, "MINPAR", 3);
3566
3567 double muQ = src.get_val(ParameterType::BSM, "HMIX", 1);
3568 // double xH = src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", 2);
3569 // double xH0 = src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", 3);
3570 // double alpha = src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", 9);
3571 // double beta = src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", 6);
3572
3573 double kappa = src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", 19);
3574 double epsfac = src.get_val(ParameterType::WILSON, "EPSILON_SUSY", 5);
3575
3576 complex_t NQ11H=-src.get_val(ParameterType::WILSON, "WPARAM_SI_SM", lepton_mass_slot)*(tanb)*tanb/4./mW/mW*(f141(xt,z)+8.*xt*(f30(xt,z)+xt*(f30(xt*1.0001,z)-f30(xt*0.9999,z))/0.0002)*log(Q_match*Q_match/mass_top_muW/mass_top_muW));
3577 complex_t BQ11H=src.get_val(ParameterType::WILSON, "WPARAM_SI_SM", lepton_mass_slot)*(tanb)*tanb/4./mW/mW*(f111(xt,z)+8.*(f70(xt*1.0001,z)-f70(xt*0.9999,z))/0.0002*log(Q_match*Q_match/mass_top_muW/mass_top_muW));
3578 complex_t CQ1H_1=(NQ11H+BQ11H)*mass_b_muW/sw2;
3579 complex_t CQ2H_1=-CQ1H_1;
3580
3581 LOG_INFO("CQ2_susy::NLO 2");
3582
3583 complex_t BQ11c1=0.;
3584 complex_t BQ11c2=0.;
3585 complex_t NQ11c=0.;
3586 complex_t NQ21c=0.;
3587 complex_t BQ11f1=0.;
3588 complex_t BQ11f2=0.;
3589 complex_t NQ11f=0.;
3590 complex_t NQ21f=0.;
3591
3592 complex_t Dp{0}, Dm{0}, temp{0}, temp2{0};
3593 complex_t a0a{0}, a0b{0}, a0c{0}, a0Q1{0}, a0Q2{0}, a0p{0}, a1{0},a2p{0};
3594
3595 for(int ie=0;ie<2;ie++) {
3596 for(int ae=0;ae<6;ae++){
3597 for(int je=0;je<2;je++) {
3598 for(int be=0;be<3;be++) {
3599 BQ11c1+=src.get_val(ParameterType::WILSON, "MATRIX_BSM", {3, je, ae, 1})*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {4, ie, ae, 2})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie})*(src.get_val(ParameterType::WILSON, "MATRIX_BSM", {6, ie, be, 1})*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {5, je, be, 1})*(f121(pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, je})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.),pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.),pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {16, be})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.))+4.*(f50(pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, je})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.),pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.)*1.0001,pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {16, be})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.))-f50(pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, je})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.),pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.)*0.9999,pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {16, be})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.)))/0.0002*log(pow(mass_top_muW/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae}),2.))));
3600 BQ11c2+=src.get_val(ParameterType::WILSON, "MATRIX_BSM", {3, je, ae, 1})*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {4, ie, ae, 2})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie})*(src.get_val(ParameterType::WILSON, "MATRIX_BSM", {5, ie, be, 1})*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {6, je, be, 1})*fabs(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, je})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}))*(f131(pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, je})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.),pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.),pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {16, be})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.))+4.*(f60(pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, je})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.),pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.)*1.0001,pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {16, be})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.))-f60(pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, je})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.),pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.)*0.9999,pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {16, be})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.)))/0.0002*log(pow(mass_top_muW/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae}),2.))));
3601
3602 for(int me=0;me<6;me++){
3603 for(int ne=0;ne<3;ne++) {
3604 Dp=0.;
3605 Dm=0.;
3606 for(int fe=1;fe<3;fe++) {
3607 Dp+=src.get_val(ParameterType::WILSON, "WPARAM_MATCH_BSM", {2, fe})/sqrt(2.)/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie})*muQ*(src.get_val(ParameterType::WILSON, "MATRIX_BSM", {2, ae, fe})*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {1, me, fe})+src.get_val(ParameterType::WILSON, "MATRIX_BSM", {1, ae, fe})*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {2, me, fe}));
3608 Dm+=src.get_val(ParameterType::WILSON, "WPARAM_MATCH_BSM", {2, fe})/sqrt(2.)/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie})*muQ*(src.get_val(ParameterType::WILSON, "MATRIX_BSM", {2, ae, fe})*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {1, me, fe})-src.get_val(ParameterType::WILSON, "MATRIX_BSM", {1, ae, fe})*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {2, me, fe}));
3609 }
3610 a0a=-(fabs(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, je}))*(f181(pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, je}),2.),pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, je}),2.))+4.*(f30(pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, je}),2.),pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, je}),2.)*1.0001)-f30(pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, je}),2.),pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, je}),2.)*0.9999))/0.0002*log(pow(mass_top_muW/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae}),2.)))*src.get_val(ParameterType::BSM, "UMIX", {ie+1, 1+1})*src.get_val(ParameterType::BSM, "VMIX", {je+1, 0+1}))*kron(ae,me);
3611 a0b=-((f191(pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, je}),2.),pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, je}),2.))+4.*(f40(pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, je}),2.),pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, je}),2.)*1.0001)-f40(pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, je}),2.),pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, je}),2.)*0.9999))/0.0002*log(pow(mass_top_muW/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae}),2.)))*src.get_val(ParameterType::BSM, "UMIX", {je+1, 1+1})*src.get_val(ParameterType::BSM, "UMIX", {ie+1, 0+1}))*kron(ae,me);
3612 a0c=1./mW*(f171(pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.),pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, me})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.))+4.*(f30(pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.),pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, me})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.))+(f30(pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.)*1.0001,pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, me})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.))-f30(pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.)*0.9999,pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, me})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.)))/0.0002+(f30(pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.),pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, me})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.)*1.0001)-f30(pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.),pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, me})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.)*0.9999))/0.0002)*log(pow(mass_top_muW/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae}),2.)))*kron(ie,je);
3613
3614 a0Q1=a0a+a0b+Dp*a0c;
3615 a0Q2=-a0a+a0b+Dm*a0c; //TODO : careful with RECKM -> VCKM (check with superiso values for real part)
3616 a0p=4.*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {12,ae, ie, be, ne})/mW/(src.get_val(ParameterType::SM, "VCKM", {be, 2})*src.get_val(ParameterType::SM, "VCKM", {ne, 1})/src.get_val(ParameterType::SM, "VCKM", {2, 2})/src.get_val(ParameterType::SM, "VCKM", {2, 1}))/src.get_val(ParameterType::BSM, "UMIX", {je+1, 1+1})*f151(pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.))*kron(ie,je)*kron(ae,me)*kron(be,ne);
3617 a1=src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie})/sqrt(2.)/mW*(f161(pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.))+4.*(f80(pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.)*1.0001)-f80(pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.)*0.9999))/0.0002*log(pow(mass_top_muW/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae}),2.)))*kron(ie,je)*kron(ae,me);
3618 a2p=src.get_val(ParameterType::WILSON, "MATRIX_BSM", {1, me, be})*(src.get_val(ParameterType::SM, "VCKM", {be, 2})*src.get_val(ParameterType::SM, "VCKM", {ne, 1})/src.get_val(ParameterType::SM, "VCKM", {2, 2})/src.get_val(ParameterType::SM, "VCKM", {2, 1}))*src.get_val(ParameterType::BSM, "UMIX", {je+1, 1+1})/2./mW*f151(pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.))*kron(ie,je)*kron(ae,me)*kron(be,ne);
3619
3620 NQ11c+=src.get_val(ParameterType::WILSON, "MATRIX_BSM", {12,ae, ie, be, ne})*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {1, me, be})*src.get_val(ParameterType::BSM, "UMIX", {je+1, 1+1})*(a0Q1+a1*tanb)
3621 +src.get_val(ParameterType::WILSON, "MATRIX_BSM", {12,ae, ie, be, ne})*src.get_val(ParameterType::BSM, "UMIX", {je+1, 1+1})*a0p
3622 +src.get_val(ParameterType::WILSON, "MATRIX_BSM", {1, me, be})*src.get_val(ParameterType::BSM, "UMIX", {je+1, 1+1})*a2p*pow(src.get_val(ParameterType::SM, "MASS", 3)*tanb,2.);
3623 NQ21c+=src.get_val(ParameterType::WILSON, "MATRIX_BSM", {12,ae, ie, be, ne})*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {1, me, be})*src.get_val(ParameterType::BSM, "UMIX", {je+1, 1+1})*(a0Q2+a1*tanb)
3624 +src.get_val(ParameterType::WILSON, "MATRIX_BSM", {12,ae, ie, be, ne})*src.get_val(ParameterType::BSM, "UMIX", {je+1, 1+1})*a0p
3625 +src.get_val(ParameterType::WILSON, "MATRIX_BSM", {1, me, be})*src.get_val(ParameterType::BSM, "UMIX", {je+1, 1+1})*a2p*pow(src.get_val(ParameterType::SM, "MASS", 3)*tanb,2.);
3626 }
3627 }
3628
3629 }
3630 for(int be=0;be<6;be++) {
3631 for(int ce=0;ce<6;ce++) {
3632 for(int fe=0;fe<3;fe++) {
3633 BQ11f1+=-src.get_val(ParameterType::WILSON, "MATRIX_BSM", {3, je, be, 1})*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {4, ie, ae, 2})*pow(mW/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.)*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {9,ae, ce})*src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ce})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie})*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {9, ce, be})*(1.+log(pow(mass_top_muW/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ce}),2.))) *(f90(pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, je})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.),pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.),pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, be})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.),pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {16, fe})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.))*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {6,ie, fe, 2})*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {5, je, fe, 2}));
3634 BQ11f2+=-src.get_val(ParameterType::WILSON, "MATRIX_BSM", {3, je, be, 1})*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {4, ie, ae, 2})*pow(mW/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.)*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {9,ae, ce})*src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ce})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie})*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {9, ce, be})*(1.+log(pow(mass_top_muW/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ce}),2.))) *(fabs(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, je})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}))*f100(pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, je})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.),pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.),pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, be})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.),pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {16, fe})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.))*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {5, ie, fe, 1})*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {6, je, fe, 1}));
3635
3636 }
3637 }
3638 }
3639 }
3640
3641 LOG_INFO("CQ2_susy::NLO 3");
3642
3643 for(int me=0;me<3;me++) {
3644 for(int ne=0;ne<3;ne++) {
3645 for(int de=0;de<6;de++) {
3646 for(int ke=0;ke<6;ke++) {
3647
3648 temp2 = src.get_val(ParameterType::WILSON, "MATRIX_BSM", {12,ae, ie, me, ne})*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {1, de, me})*src.get_val(ParameterType::BSM, "UMIX", {ie+1, 1+1})*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {9,ae, ke})*src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ke})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie})*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {9, ke, de})*(1.+log(pow(mass_top_muW/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ke}),2.)))*tanb*src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie})/sqrt(2.)*f30(pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.),pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, de})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.));
3649 NQ11f+=temp2;
3650 NQ21f+=temp2;
3651 for(int ce=0;ce<6;ce++) {
3652 Dp=0.;
3653 Dm=0.;
3654 for(int fe=0;fe<3;fe++)
3655 {
3656 Dp+=src.get_val(ParameterType::WILSON, "WPARAM_MATCH_BSM", {2, fe})/sqrt(2.)/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie})*muQ*(src.get_val(ParameterType::WILSON, "MATRIX_BSM", {2, de, fe})*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {1, ce, fe})+src.get_val(ParameterType::WILSON, "MATRIX_BSM", {1, de, fe})*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {2, ce, fe}));
3657 Dm+=src.get_val(ParameterType::WILSON, "WPARAM_MATCH_BSM", {2, fe})/sqrt(2.)/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie})*muQ*(src.get_val(ParameterType::WILSON, "MATRIX_BSM", {2, de, fe})*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {1, ce, fe})-src.get_val(ParameterType::WILSON, "MATRIX_BSM", {1, de, fe})*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {2, ce, fe}));
3658 }
3659 temp=src.get_val(ParameterType::WILSON, "MATRIX_BSM", {12,ae, ie, me, ne})*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {1, ce, me})*src.get_val(ParameterType::BSM, "UMIX", {ie+1, 1+1})*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {9,ae, ke})*src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ke})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie})*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {9, ke, de})*
3660 (1.+log(pow(mass_top_muW/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ke}),2.)))*f60(pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.),pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, de})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.),pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ce})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie}),2.));
3661 NQ11f+=Dp*temp;
3662 NQ21f+=Dm*temp;
3663 }
3664 for(int je=0;je<2;je++) {
3665 temp=-src.get_val(ParameterType::WILSON, "MATRIX_BSM", {12,ae, ie, me, ne})*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {1, de, me})*src.get_val(ParameterType::BSM, "UMIX", {je+1, 1+1})*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {9,ae, ke})*src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ke})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, je})*src.get_val(ParameterType::WILSON, "MATRIX_BSM", {9, ke, de})*
3666 (1.+log(pow(mass_top_muW/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ke}),2.)))*mW*(fabs(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, je}))*f60(pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, je}),2.),pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, je}),2.),pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, de})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, je}),2.))*src.get_val(ParameterType::BSM, "UMIX", {ie+1, 1+1})*src.get_val(ParameterType::BSM, "VMIX", {je+1, 0+1})+
3667 f50(pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, ie})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, je}),2.),pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, ae})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, je}),2.),pow(src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {14, de})/src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", {13, je}),2.))*src.get_val(ParameterType::BSM, "UMIX", {je+1, 1+1})*src.get_val(ParameterType::BSM, "VMIX", {ie+1, 0+1}));
3668 NQ11f+=temp;
3669 NQ21f+=-temp;
3670 }
3671
3672 }
3673 }
3674 }
3675
3676 }
3677
3678 LOG_INFO("CQ2_susy::NLO 4");
3679 }
3680 }
3681
3682 LOG_INFO("CQ2_susy::NLO 5");
3683 // complex_t BQ11c=(BQ11c1+BQ11c2)*kappa*mW*mW/2./g2/g2/sw2;
3684 complex_t BQ21c=-(BQ11c1-BQ11c2)*kappa*mW*mW/2./g2/g2/sw2;
3685
3686
3687 NQ11c*=src.get_val(ParameterType::WILSON, "WPARAM_SI_SM", lepton_mass_slot)*(tanb)*tanb/mW/(mH*mH-mW*mW)*aY*mass_b_muW/sw2;
3688 NQ21c*=-src.get_val(ParameterType::WILSON, "WPARAM_SI_SM", lepton_mass_slot)*(tanb)*tanb/mW/(mH*mH-mW*mW)*aY*mass_b_muW/sw2;
3689
3690 complex_t CQ2charg_1=NQ21c+BQ21c;
3691
3692 // complex_t BQ11f=(BQ11f1+BQ11f2)*2./3.*kappa/g2/g2/sw2;
3693 complex_t BQ21f=-(BQ11f1-BQ11f2)*2./3.*kappa/g2/g2/sw2;
3694
3695
3696 NQ11f*=-4./3.*src.get_val(ParameterType::WILSON, "WPARAM_SI_SM", lepton_mass_slot)*(tanb)*tanb/mW/mW/(mH*mH-mW*mW)*aY*mass_b_muW/sw2;
3697
3698 NQ21f*=4./3.*src.get_val(ParameterType::WILSON, "WPARAM_SI_SM", lepton_mass_slot)*(tanb)*tanb/mW/mW/(mH*mH-mW*mW)*aY*mass_b_muW/sw2;
3699
3700 complex_t CQ2four_1=NQ21f+BQ21f;
3701
3702 complex_t coeff_temp = (CQ2H_1+CQ2charg_1)/epsfac+CQ2four_1;
3703
3704 LOG_INFO("CQ2_susy::NLO 6");
3705
3706 return coeff_temp;
3707}
ScaleType
WCoef
WGroup
#define LOG_INFO(...)
Macro for logging informational messages.
Definition Logger.h:39
std::array< double, N_MsqU > Array1D_7
std::complex< double > complex_t
Convenience alias for std::complex<double>.
Definition Utils.h:35
static scalar_t compute_NLO(const ParamSrc &src)
static scalar_t compute_LO(const ParamSrc &src)
static scalar_t compute_NNLO(const ParamSrc &src)
static scalar_t compute_NNLO(const ParamSrc &src)
static scalar_t compute_NNLO(const ParamSrc &src)
static scalar_t compute_NLO(const ParamSrc &src)
static scalar_t compute_NNLO(const ParamSrc &src)
static scalar_t compute_NNLO(const ParamSrc &src)
static scalar_t compute_LO(const ParamSrc &src)
static scalar_t compute_NNLO(const ParamSrc &src)
static scalar_t compute_NLO(const ParamSrc &src)
static scalar_t compute_NNLO(const ParamSrc &src)
static scalar_t compute_LO(const ParamSrc &src)
static scalar_t compute_NLO(const ParamSrc &src)
static scalar_t compute_LO(const ParamSrc &src)
static scalar_t compute_NLO(const ParamSrc &src)
static scalar_t compute_LO(const ParamSrc &src)
static scalar_t compute_LO(const ParamSrc &src)
static scalar_t compute_LO(const ParamSrc &src)
static scalar_t compute_LO(const ParamSrc &src)
CPQ1_susy(WCoef coef=WCoef::CPQ1_MU)
static scalar_t compute_LO(const ParamSrc &src)
CPQ2_susy(WCoef coef=WCoef::CPQ2_MU)
static scalar_t compute_LO(const ParamSrc &src)
CQ1_susy(WCoef coef=WCoef::CQ1_MU)
static scalar_t compute_NLO(const ParamSrc &src)
static scalar_t compute_LO(const ParamSrc &src)
CQ2_susy(WCoef coef=WCoef::CQ2_MU)
static scalar_t compute_LO(const ParamSrc &src)
static scalar_t compute_NLO(const ParamSrc &src)
Mapper for WGroup <-> WGroupId <-> optional external string.
Lightweight view over a set of source parameters keyed by ParamId.
scalar_t get_val(const ParamId &id) const
Retrieves the current value of a parameter.
High-level mapper for WCoef <-> text <-> FLHA base indices.
Definition wcoef_ids.hpp:57
static constexpr int lepton_mass_slot_from_index(int lepton_index)
static int lepton_index_from_cq1(WCoef coef)
static int lepton_index_from_cq2(WCoef coef)
static int lepton_index_from_cpq1(WCoef coef)
static int lepton_index_from_cpq2(WCoef coef)
Abstract base class representing a Wilson coefficient and its matching information.
Definition Wilson.h:153
LhaID get_lhaid_from_name(QCDOrder order)
Computes the LhaID directly from the coefficient base name and mapping conventions.
Definition Wilson.cpp:61
std::map< QCDOrder, MatchingInfo > matching_info
Matching metadata indexed by QCD order.
Definition Wilson.h:330
complex_t G2(double z, double L_b)
Result compute(const ParamSrc &src, int lepton_mass_slot)
double Cl2(double x)
Computes the Clausen function Cl2(x).
Definition polylog.cpp:1333
scalar_t pow(const scalar_t &base, const scalar_t &exp)
Definition scalar.cpp:75
double F7_2(double x)
Wilson coefficient F7_2.
double Delta3H(double x, double lu)
Wilson coefficient Delta3H depending on x and lu.
double h51(double x, double y)
double q61(double x, double y)
double q41(double x, double y)
double f41(double x, double y)
double D9H1(double x, double lu, double L)
Wilson coefficient D9H1 depending on x, lu, and L.
double q11(double x, double y)
double f141(double x, double y)
double f90(double w, double x, double y, double z)
double F7_1(double x)
Wilson coefficient F7_1.
double f81(double x, double y, double z)
double f40(double x, double y)
double h40(double x)
double h11(double x, double y)
double h41(double x, double y)
double G7H(double x, double lu, double ld)
Wilson coefficient G7H depending on x, lu, and ld.
double f111(double x, double y)
double q21(double x, double y)
double f30(double x, double y)
double q51(double x, double y)
double f70(double x, double y)
double Delta7H(double x, double lu, double ld)
Wilson coefficient Delta7H depending on x, lu, and ld.
double f151(double x)
double EH(double x, double lu)
Wilson coefficient EH depending on x and lu.
double f60(double x, double y, double z)
double Delta8H(double x, double lu, double ld)
Wilson coefficient Delta8H depending on x, lu, and ld.
double h60(double x)
double h30(double x)
double G3H(double x, double lu)
Wilson coefficient G3H depending on x and lu.
double F8_1(double x)
Wilson coefficient F8_1.
double f181(double x, double y)
double f121(double x, double y, double z)
double h50(double x)
double D9H0(double x, double lu)
Wilson coefficient D9H0 depending on x and lu.
double h71(double x, double y)
double f100(double w, double x, double y, double z)
double h21(double x, double y)
double q31(double x, double y)
double h10(double x)
double C9llH0(double x, double y, double lu)
Wilson coefficient C9llH0 depending on x, y, and lu.
double f51(double x, double y)
double Delta4H(double x, double lu)
Wilson coefficient Delta4H depending on x and lu.
double f80(double x)
double f161(double x)
double F0SP(double xt)
Wilson coefficient F0SP depending on xt.
double f50(double x, double y, double z)
double f31(double x, double y)
double h20(double x)
double f20(double x)
double C9llH1(double x, double y, double lu, double L)
Wilson coefficient C9llH1 depending on x, y, lu, and L.
double f131(double x, double y, double z)
double G4H(double x, double lu)
Wilson coefficient G4H depending on x and lu.
double f191(double x, double y)
double G8H(double x, double lu, double ld)
Wilson coefficient G8H depending on x, lu, and ld.
double f91(double x, double y, double z)
double h31(double x, double y)
double f171(double x, double y)
double F8_2(double x)
Wilson coefficient F8_2.
double h61(double x, double y)
double C7H2(double yt, double lu, double ld, double L)
double C8H2(double yt, double lu, double ld, double L)
double F6SP(double xt, double xH)
double CSc_2HDM(double xH, double xt, double lu, double ld, double ll)
double F7SP(double xt, double xH)
double F1SP(double xt, double xH)
double F10SP(double xt, double xH)
double F5SP(double xt, double xH)
double F4SP(double xt, double xH)
double F12SP(double xt, double xH)
double CPc_2HDM(double xH, double xt, double lu, double ld, double ll, double sw2)
double F3SP(double xt, double xH)
double F9SP(double xt, double xH)
double F8SP(double xt, double xH)
double F2SP(double xt, double xH)
double F11SP(double xt, double xH)
double kron(int x, int y)
Kronecker delta function.
Represents an identifier of a LHA element, possibly containing several sub-ids.
Definition LhaID.h:56