Hyperiso 1.0.3
Modular flavour-physics calculations, Wilson coefficients and statistical inference
Loading...
Searching...
No Matches
MesonMixingRunningParameters.h
Go to the documentation of this file.
1#ifndef MESONMIXINGRUNNINGPARAMETERS_H
2#define MESONMIXINGRUNNINGPARAMETERS_H
4#include <array>
5#include <cstddef>
6
7#include "Math.h"
8
24 static constexpr int n_coefs {8};
27 static constexpr int n_pows {5};
28
30 static constexpr std::array<double, n_pows> ai = {0.2609, 0.1304, -1.0435, -0.6315, 0.7184};
31
33 static constexpr std::array<double, n_pows> bi = {0.2400, 0.1200, -0.9600, -0.5810, 0.6610};
34
35 // -------------------------------------------------------------------------
36 // B0 mixing (nf=5 evolution) : V, LR, S sectors
37 // -------------------------------------------------------------------------
38
39 static constexpr double a0_V_5 = 1.;
40 static constexpr double a1_V_5 = 1.6273;
41 static constexpr double b_V_5 = -1.6273;
42
43 static const std::array<std::array<std::array<double, 2>, 2>, 2> a0_LR_5;
44 static const std::array<std::array<std::array<double, 2>, 2>, 2> a1_LR_5;
45 static const std::array<std::array<std::array<double, 2>, 2>, 2> b_LR_5;
46
47 static const std::array<std::array<std::array<double, 2>, 2>, 2> a0_S_5;
48 static const std::array<std::array<std::array<double, 2>, 2>, 2> a1_S_5;
49 static const std::array<std::array<std::array<double, 2>, 2>, 2> b_S_5;
51 // -------------------------------------------------------------------------
52 // K0 / D0 mixing (nf=4 evolution) : V, LR, S sectors
53 // -------------------------------------------------------------------------
54
55 static constexpr double a0_V_4 = 1.;
56 static constexpr double a1_V_4 = 1.7917;
57 static constexpr double b_V_4 = -0.1644;
58 static constexpr double c_V_4 = -1.6273;
60 static const std::array<std::array<std::array<std::array<double, 2>, 2>, 2>, 2> a0_LR_4;
61 static const std::array<std::array<std::array<std::array<double, 2>, 2>, 2>, 2> a1_LR_4;
62 static const std::array<std::array<std::array<std::array<double, 2>, 2>, 2>, 2> b_LR_4;
63 static const std::array<std::array<std::array<std::array<double, 2>, 2>, 2>, 2> c_LR_4;
64
65 static const std::array<std::array<std::array<std::array<double, 2>, 2>, 2>, 2> a0_S_4;
66 static const std::array<std::array<std::array<std::array<double, 2>, 2>, 2>, 2> a1_S_4;
67 static const std::array<std::array<std::array<std::array<double, 2>, 2>, 2>, 2> b_S_4;
68 static const std::array<std::array<std::array<std::array<double, 2>, 2>, 2>, 2> c_S_4;
69
70 // -------------------------------------------------------------------------
71 // Basis changes
72 // -------------------------------------------------------------------------
73
81 static inline std::array<complex_t, n_coefs> change_basis(const std::array<complex_t, n_coefs>& Ci_in, const std::array<std::array<double, n_coefs>, n_coefs>& P) {
82 std::array<complex_t, n_coefs> Ci_out;
83 for (size_t j = 0; j < n_coefs; j++) {
84 for (size_t k = 0; k < n_coefs; k++) {
85 Ci_out[j] += P[j][k] * Ci_in[k];
86 }
87 }
88 return Ci_out;
89 }
90
92 static const std::array<std::array<double, n_coefs>, n_coefs> SUSY_to_BMU;
93
95 static const std::array<std::array<double, n_coefs>, n_coefs> BMU_to_SUSY;
96};
97
98#endif // MESONMIXINGRUNNINGPARAMETERS_H
static constexpr std::array< double, n_pows > bi
Exponents for nf=4 evolution (eta_4^bi).
static constexpr int n_coefs
Number of Wilson coefficients for the mixing operator basis handled here.
static const std::array< std::array< std::array< std::array< double, 2 >, 2 >, 2 >, 2 > c_S_4
static const std::array< std::array< std::array< double, 2 >, 2 >, 2 > a1_LR_5
static const std::array< std::array< std::array< std::array< double, 2 >, 2 >, 2 >, 2 > a1_LR_4
static const std::array< std::array< std::array< std::array< double, 2 >, 2 >, 2 >, 2 > a0_S_4
static const std::array< std::array< std::array< double, 2 >, 2 >, 2 > a0_S_5
static const std::array< std::array< std::array< std::array< double, 2 >, 2 >, 2 >, 2 > a0_LR_4
static const std::array< std::array< std::array< double, 2 >, 2 >, 2 > a1_S_5
static constexpr std::array< double, n_pows > ai
Exponents for nf=5 evolution (eta_5^ai).
static const std::array< std::array< std::array< double, 2 >, 2 >, 2 > a0_LR_5
static const std::array< std::array< double, n_coefs >, n_coefs > SUSY_to_BMU
Change of basis matrix from SUSY basis to BMU basis.
static const std::array< std::array< std::array< std::array< double, 2 >, 2 >, 2 >, 2 > a1_S_4
static const std::array< std::array< std::array< std::array< double, 2 >, 2 >, 2 >, 2 > b_LR_4
static const std::array< std::array< std::array< std::array< double, 2 >, 2 >, 2 >, 2 > c_LR_4
static const std::array< std::array< std::array< double, 2 >, 2 >, 2 > b_LR_5
static const std::array< std::array< std::array< double, 2 >, 2 >, 2 > b_S_5
static const std::array< std::array< double, n_coefs >, n_coefs > BMU_to_SUSY
Change of basis matrix from BMU basis to SUSY basis.
static std::array< complex_t, n_coefs > change_basis(const std::array< complex_t, n_coefs > &Ci_in, const std::array< std::array< double, n_coefs >, n_coefs > &P)
Applies a basis change Ci_out = P * Ci_in.
static const std::array< std::array< std::array< std::array< double, 2 >, 2 >, 2 >, 2 > b_S_4
static constexpr int n_pows
Number of exponent entries stored in ai / bi (for eta power vectors).