Hyperiso 1.0.3
Modular flavour-physics calculations, Wilson coefficients and statistical inference
Loading...
Searching...
No Matches
BWilsonRunningParameters.h
Go to the documentation of this file.
1#ifndef BWILSONRUNNINGPARAMETERS_H
2#define BWILSONRUNNINGPARAMETERS_H
4#include <array>
5#include <cstddef>
6
7#include "Utils.h"
8
19 static constexpr int array_size {10};
20
21 // -------------------------------------------------------------------------
22 // Evolution matrices (defined in .cpp)
23 // -------------------------------------------------------------------------
24
25 static const std::array<std::array<std::array<double, array_size>, array_size>, array_size> m00;
26 static const std::array<std::array<std::array<double, array_size>, array_size>, array_size> m10;
27 static const std::array<std::array<std::array<double, array_size>, array_size>, array_size> m11;
28 static const std::array<std::array<std::array<double, array_size>, array_size>, array_size> m20;
29 static const std::array<std::array<std::array<double, array_size>, array_size>, array_size> m21;
30 static const std::array<std::array<std::array<double, array_size>, array_size>, array_size> m22;
31
32 static const std::array<std::array<std::array<double, array_size>, array_size>, array_size> l00;
33 static const std::array<std::array<std::array<double, array_size>, array_size>, array_size> l01;
34 static const std::array<std::array<std::array<double, array_size>, array_size>, array_size> l10;
35 static const std::array<std::array<std::array<double, array_size>, array_size>, array_size> l11;
36
37 // -------------------------------------------------------------------------
38 // Exponents used for eta powers
39 // -------------------------------------------------------------------------
40
41 static constexpr std::array<double, array_size> ai = {14.0 / 23.0, 16.0 / 23.0, 6.0 / 23.0, -12.0 / 23.0, 0.408619, -0.422989, -0.899395, 0.145649, -1.0, -1.0};
42 static constexpr std::array<double, array_size> ai2 = {6./23., -12./23., 0.4086, -0.4230, -0.8994, 0.1456, 16./23., 14./23., 11./23., 29./23.};
43
44 static constexpr double a[8]={-2.,-1.,-0.899395,-0.521739,-0.422989,0.145649,0.260870,0.408619};
45 static constexpr double b[8]={0.00354,0.01223,-0.00977,-0.01070,-0.00572,0.00022,0.01137,-0.00117};
46 static constexpr double d_2a[8]={0.,0.,0.61602,0.44627,0.57472,0.08573,-0.48807,-0.24089};
47 static constexpr double d_2b[8]={-1.18162,0.22940,0.06522,-0.04380,-0.02201,-0.00316,-0.03366,-0.00414};
48 static constexpr double d_1[8]={0.01117,-0.03088,0.00411,0.00713,0.00478,0.00012,0.00379,-0.00023};
49 static constexpr double d_4[8]={-0.00799,-0.03666,0.06300,0.,-0.01519,-0.00071,0.,-0.00344};
50 static constexpr double e_1a[8]={0.,0.,-0.25941,-0.29751,-0.48014,0.04647,-0.16269,-0.04728};
51 static constexpr double e_1b[8]={1.13374,0.09381,-0.03041,0.00781,0.01838,-0.00138,-0.02259,0.00121};
52 static constexpr double e_4a[8]={0.,0.,-4.03683,0.,1.52565,-0.27461,0.,-0.70642};
53 static constexpr double e_4b[8]={3.38669,-0.10885,0.16283,0.,0.06697,-0.01681,0.,0.00137,};
54 static constexpr double e_1[8]={0.01117,-0.03088,0.00411,0.00713,0.00478,0.00012,0.00379,-0.00023};
55 static constexpr double e_2[8]={0.00354,0.01223,-0.00977,-0.01070,-0.00572,0.00022,0.01137,-0.00117};
56 static constexpr double e_3[8]={0.02179,-0.12336,0.07870,0.,0.01930,0.00873,0.,-0.00516};
57 static constexpr double e_4[8]={-0.00799,-0.03666,0.06400,0.,-0.01519,-0.00071,0.,-0.00344};
58 static constexpr double e_5[8]={0.19550,-0.93249,0.37858,0.,0.39909,0.05921,0.,-0.09989};
59 static constexpr double e_6[8]={-0.17154,0.39616,0.01201,0.,-0.19423,0.00357,0.,-0.04597};
60
61 // -------------------------------------------------------------------------
62 // Effective coefficients helpers (standard basis)
63 // -------------------------------------------------------------------------
64
65 static constexpr double y_std[8] = {0, 0, -1./3, -4./9, -20./3, -80./9, 1, 0};
66 static constexpr double z_std[8] = {0, 0, 1, -1./6, 20, -10./3, 0, 1};
67
68 static inline complex_t C7_eff_std(const std::array<complex_t, 10>& Ci) {
69 complex_t C {0};
70 for (size_t k = 0; k < 8; k++) {
71 C += Ci[k] * BWilsonRunningParameters::y_std[k];
72 }
73 return C;
74 }
75
76 static inline complex_t C8_eff_std(const std::array<complex_t, 10>& Ci) {
77 complex_t C {0};
78 for (size_t k = 0; k < 8; k++) {
79 C += Ci[k] * BWilsonRunningParameters::z_std[k];
80 }
81 return C;
82 }
83
84 // -------------------------------------------------------------------------
85 // Basis change matrices (defined in .cpp)
86 // -------------------------------------------------------------------------
87
88 static const std::array<std::array<double, 8>, 8> std_to_trad_LO;
89 static const std::array<std::array<double, 8>, 8> std_to_trad_NLO;
90
91 static constexpr std::array<double, 16> exp_prime_running = {
92 0, 0, 0, 0, 0, 0, 16./23, 14./23, 0, 0,
93 -12./23, -12./23, -12./23,
94 -12./23, -12./23, -12./23
95 };
96};
97
98#endif // BWILSONRUNNINGPARAMETERS_H
std::complex< double > complex_t
Convenience alias for std::complex<double>.
Definition Utils.h:35
static constexpr double z_std[8]
static constexpr double d_1[8]
static const std::array< std::array< std::array< double, array_size >, array_size >, array_size > m21
static constexpr double e_2[8]
static const std::array< std::array< std::array< double, array_size >, array_size >, array_size > l11
static complex_t C8_eff_std(const std::array< complex_t, 10 > &Ci)
static const std::array< std::array< std::array< double, array_size >, array_size >, array_size > l10
static constexpr double d_2b[8]
static constexpr double d_2a[8]
static constexpr double e_5[8]
static constexpr double e_6[8]
static constexpr double e_4[8]
static const std::array< std::array< std::array< double, array_size >, array_size >, array_size > l01
static const std::array< std::array< std::array< double, array_size >, array_size >, array_size > m22
static const std::array< std::array< std::array< double, array_size >, array_size >, array_size > m10
static complex_t C7_eff_std(const std::array< complex_t, 10 > &Ci)
static const std::array< std::array< std::array< double, array_size >, array_size >, array_size > m20
static constexpr double e_1a[8]
static const std::array< std::array< std::array< double, array_size >, array_size >, array_size > m11
static constexpr double y_std[8]
static const std::array< std::array< std::array< double, array_size >, array_size >, array_size > m00
static constexpr double e_4b[8]
static constexpr double e_1[8]
static constexpr std::array< double, array_size > ai
static constexpr double e_3[8]
static constexpr std::array< double, 16 > exp_prime_running
static constexpr double e_1b[8]
static constexpr double b[8]
static constexpr double e_4a[8]
static const std::array< std::array< double, 8 >, 8 > std_to_trad_NLO
static constexpr double a[8]
static constexpr std::array< double, array_size > ai2
static const std::array< std::array< std::array< double, array_size >, array_size >, array_size > l00
static constexpr double d_4[8]
static const std::array< std::array< double, 8 >, 8 > std_to_trad_LO