Hyperiso 1.0.3
Modular flavour-physics calculations, Wilson coefficients and statistical inference
Loading...
Searching...
No Matches
BPFFCalculator.h
Go to the documentation of this file.
1#ifndef BPFFCALCULATOR_H
2#define BPFFCALCULATOR_H
3
4#include "Include.h"
6#include "IFFCalculator.h"
7
8enum class BP_FF {F_PLUS, F_0, F_T, XI_P};
10
11class BPFFCalculator : public IFFCalculator<BP_FF> {
12private:
13 std::shared_ptr<IObsParameterProxy<ParamId, DataType, std::string, LhaID>> iobspp_sm;
14 double m_B;
15 double m_P;
16 double t_p, t_m, t_0, z_0;
17 double L_chi;
18 std::map<BP_FF, std::array<double, 4>> alpha_ai {};
19 std::map<BP_FF, double> m_R {};
20 std::string src_block;
21
22 static inline const std::map<LhaID, std::string> allowed_decays {
23 {{511, 311}, "B_K"},
24 {{521, 321}, "B_K"}
25 };
26
27 static inline const std::map<BP_FF_Src, size_t> sse_order {
28 {BP_FF_Src::AS, 3},
34 };
35
36public:
37 BPFFCalculator() = default;
38 BPFFCalculator(int B_id, int P_id,
41
42 complex_t z(double t, double t_p, double t_0);
43 double E(double q2);
44 double get(BP_FF a, double q2) override;
45
46private:
47 void load_FF_params(BP_FF_Src src);
48 double pole(double q2, double m_R);
49 double F_a(BP_FF a, double q2);
50
51};
52
53#endif // BPFFCALCULATOR_H
BP_FF_Src
BP_FF
Interface for read-only access to parameters used by observable computations.
std::complex< double > complex_t
Convenience alias for std::complex<double>.
Definition Utils.h:35
complex_t z(double t, double t_p, double t_0)
double get(BP_FF a, double q2) override
BPFFCalculator()=default
constexpr double E
Definition constants.h:13