Hyperiso 1.0.3
Modular flavour-physics calculations, Wilson coefficients and statistical inference
Loading...
Searching...
No Matches
C_S1.cpp
Go to the documentation of this file.
1#include <iostream>
2
3using namespace csl;
4using namespace mty;
5using namespace std;
6using namespace sm_input;
7
8void defineLibPath(Library &lib) {
9#ifdef MARTY_LIBRARY_PATH
10 lib.addLPath(MARTY_LIBRARY_PATH);
11 lib.addLPath(MARTY_LIBRARY_PATH "/..");
12 lib.addLPath(MARTY_LIBRARY_PATH "/marty");
13 lib.addLPath(MARTY_LIBRARY_PATH "/marty/lha");
14#endif
15#ifdef MARTY_INCLUDE_PATH
16 lib.addIPath(MARTY_INCLUDE_PATH);
17#endif
18}
19
20int calculate_C_S1_tau(Model &model, gauge::Type gauge) {
21
22 model.getParticle("W")->setGaugeChoice(gauge);
23 model.getParticle("Z")->setGaugeChoice(gauge);
24
25 undefineNumericalValues(); // Allow for HIso to set all the parameters' values
26 mty::option::excludeExternalLegsCorrections = true;
27
28 Expr factorOperator = -4 * V_cb * G_F / csl::sqrt_s(2);
29 FeynOptions opts;
30 opts.setFermionOrder({1, 0, 2, 3});
31 opts.setWilsonOperatorCoefficient(factorOperator);
32
33 auto wil = model.computeWilsonCoefficients(mty::Order::TreeLevel,
34 {Incoming("b"), Outgoing("c"),
35 Outgoing("tau"), Outgoing(AntiPart("nu_tau"))},
36 opts);
37
38 auto O = dimension6Operator(model, wil, DiracCoupling::R, DiracCoupling::L, {0, 2, 1, 3});
39 Expr C = getWilsonCoefficient(wil, O);
40
41 [[maybe_unused]] int sysres = system("rm -rf libs/C_S1_SM");
42 mty::Library wilsonLib("C_S1_SM", "libs");
43 wilsonLib.cleanExistingSources();
44 wilsonLib.addFunction("C_S1", C);
45 defineLibPath(wilsonLib);
46 wilsonLib.print();
47
48 return 0;
49}
50
51int main() {
52 SM_Model sm;
53 return calculate_C_S1_tau(sm, gauge::Type::Feynman);
54}
int calculate_C_S1_tau(Model &model, gauge::Type gauge)
Definition C_S1.cpp:20
void defineLibPath(Library &lib)
Definition C_S1.cpp:8
int main()
Definition C_S1.cpp:51
Model
Standard Model of particle physics.
Definition sm.h:35
csl::Expr V_cb
Definition sm.h:238
csl::Expr G_F
Definition sm.h:84
void undefineNumericalValues()
Definition sm.h:30
Hash specialization for SymbolId<Tag>.
Definition BlockName.h:353