GM2Calc 2.3.0
Loading...
Searching...
No Matches
gm2_1loop.cpp
Go to the documentation of this file.
1// ====================================================================
2// This file is part of GM2Calc.
3//
4// GM2Calc is free software: you can redistribute it and/or modify
5// it under the terms of the GNU General Public License as published
6// by the Free Software Foundation, either version 3 of the License,
7// or (at your option) any later version.
8//
9// GM2Calc is distributed in the hope that it will be useful, but
10// WITHOUT ANY WARRANTY; without even the implied warranty of
11// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12// General Public License for more details.
13//
14// You should have received a copy of the GNU General Public License
15// along with GM2Calc. If not, see
16// <http://www.gnu.org/licenses/>.
17// ====================================================================
18
19#include "gm2calc/gm2_1loop.hpp"
20#include "gm2calc/THDM.hpp"
22#include <cmath>
23
24/**
25 * \file gm2_1loop.cpp
26 *
27 * Contains functions necessary to calculate the THDM
28 * contributions for g-2 at the 1-loop level.
29 */
30
31namespace gm2calc {
32
33/**
34 * Calculates full 1-loop contribution to a_mu in the general THDM.
35 *
36 * @param model THDM model parameters, masses and mixings
37 * @return 1-loop contribution to a_mu
38 */
40{
42 pars.alpha_em = model.get_alpha_em();
43 pars.mm = model.get_MFe(1);
44 pars.mw = model.get_MVWm();
45 pars.mz = model.get_MVZ();
46 pars.mhSM = model.get_sm().get_mh();
47 pars.mA = model.get_MAh(1);
48 pars.mHp = model.get_MHm(1);
49 pars.ml = model.get_MFe();
50 pars.mv = model.get_MFv();
51 pars.mh = model.get_Mhh();
52 pars.ylh = model.get_ylh();
53 pars.ylH = model.get_ylH();
54 pars.ylA = model.get_ylA();
55 pars.ylHp = model.get_ylHp();
56
57 return thdm::amu1L(pars);
58}
59
60} // namespace gm2calc
Contains routines to determine the THDM parameters.
Definition THDM.hpp:98
double amu1L(const THDM_1L_parameters &pars) noexcept
Full (CP-conserving) 1-loop contribution.
void svd_eigen(const Eigen::Matrix< Scalar, M, N > &m, Eigen::Array< Real,(((M)<(N)) ?(M) :(N)), 1 > &s, Eigen::Matrix< Scalar, M, M > *u, Eigen::Matrix< Scalar, N, N > *vh)
double calculate_amu_1loop(const MSSMNoFV_onshell &model)
Calculates full 1-loop SUSY contribution to (g-2), Eq (45) of arXiv:hep-ph/0609168.
Definition gm2_1loop.cpp:74
parameters to be passed to the 1-loop contribution functions
double alpha_em
electromagnetic coupling