Hyperiso 1.0.3
Modular flavour-physics calculations, Wilson coefficients and statistical inference
Loading...
Searching...
No Matches
WilsonMatchingPatch.h
Go to the documentation of this file.
1#ifndef HYPERISO_WILSON_MATCHING_PATCH_H
2#define HYPERISO_WILSON_MATCHING_PATCH_H
3
4#include <functional>
5#include <string>
6#include <unordered_set>
7
8#include "Include.h"
9#include "Math.h"
10#include "SourcesView.h"
11
21using WilsonMatchingPatchFunction = std::function<scalar_t(const ParamSrc&)>;
22
40
58 patch.order = QCDOrder::LO;
60 patch.sources = {
61 ParamId{ParameterType::WILSON, "WPARAM_MATCH_SM", LhaID(2, 1)},
62 ParamId{ParameterType::WILSON, "WPARAM_MATCH_SM", LhaID(3)}
63 };
64 patch.compute = [](const ParamSrc& src) -> scalar_t {
65 const double xt = src.get_val(ParameterType::WILSON, "WPARAM_MATCH_SM", LhaID(2, 1));
66 const scalar_t L = src.get_val(ParameterType::WILSON, "WPARAM_MATCH_SM", LhaID(3));
67 return scalar_t(-D0t(xt) + 38. / 27.) - scalar_t(4. / 9.) * L;
68 };
69 patch.label = "Hyperiso:C9:SM-photon";
70 patch.marty_only = true;
71 return patch;
72}
73
74// Backward-compatible alias for older user code. The old name only described
75// the light u/c part; the helper now returns the full SM photon matching piece.
79
92 patch.order = QCDOrder::LO;
94 patch.sources = {
95 ParamId{ParameterType::WILSON, "WPARAM_SI_BSM", LhaID(7)},
96 ParamId{ParameterType::WILSON, "WPARAM_MATCH_BSM", LhaID(1)}
97 };
98 patch.compute = [](const ParamSrc& src) -> scalar_t {
99 const double lu = src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", LhaID(7));
100 const double yt = src.get_val(ParameterType::WILSON, "WPARAM_MATCH_BSM", LhaID(1));
101 return scalar_t(-D9H0(yt, lu));
102 };
103 patch.label = "Hyperiso:C9:THDM-photon";
104 patch.marty_only = true;
105 return patch;
106}
107
118 patch.order = QCDOrder::LO;
120 patch.sources = {
121 ParamId{ParameterType::WILSON, "WPARAM_SI_BSM", LhaID(8)},
122 ParamId{ParameterType::WILSON, "WPARAM_MATCH_BSM", LhaID(1)},
123 ParamId{ParameterType::WILSON, "WPARAM_MATCH_SM", LhaID(6)},
124 ParamId{ParameterType::WILSON, "WPARAM_MATCH_SM", LhaID(5, 1)},
125 ParamId{ParameterType::SM, "MASS", LhaID(3)}
126 };
127 patch.compute = [](const ParamSrc& src) -> scalar_t {
128 const double ld = src.get_val(ParameterType::WILSON, "WPARAM_SI_BSM", LhaID(8));
129 const double yt = src.get_val(ParameterType::WILSON, "WPARAM_MATCH_BSM", LhaID(1));
130 const double mt_muW = src.get_val(ParameterType::WILSON, "WPARAM_MATCH_SM", LhaID(6));
131 const double mb_muW = src.get_val(ParameterType::WILSON, "WPARAM_MATCH_SM", LhaID(5, 1));
132 const double ms = src.get_val(ParameterType::SM, "MASS", LhaID(3));
133 return scalar_t(-ms * mb_muW / (mt_muW * mt_muW) * D9H0(yt, ld));
134 };
135 patch.label = "Hyperiso:CP9:THDM-photon";
136 patch.marty_only = true;
137 return patch;
138}
139
140#endif // HYPERISO_WILSON_MATCHING_PATCH_H
QCDOrder
ContributionType
WilsonMatchingPatch make_hyperiso_c9_sm_photon_patch()
Optional HyperIso/SuperIso SM photon piece for C9 at LO.
std::function< scalar_t(const ParamSrc &)> WilsonMatchingPatchFunction
WilsonMatchingPatch make_hyperiso_c9_light_photon_sm_patch()
WilsonMatchingPatch make_hyperiso_cp9_thdm_photon_patch()
THDM charged-Higgs photon-penguin piece for CP9 at LO.
WilsonMatchingPatch make_hyperiso_c9_thdm_photon_patch()
THDM charged-Higgs photon-penguin piece for C9 at LO.
Lightweight view over a set of source parameters keyed by ParamId.
Returns an uppercase copy of the input string.
double D9H0(double x, double lu)
Wilson coefficient D9H0 depending on x and lu.
double D0t(double x)
Scalar one-loop Wilson coefficient D0t.
Represents an identifier of a LHA element, possibly containing several sub-ids.
Definition LhaID.h:56
Composite identifier for a single parameter.
Definition ParamID.h:57
ContributionType contribution
WilsonMatchingPatchFunction compute
std::unordered_set< ParamId > sources