flexiblesusy is hosted by Hepforge, IPPP Durham
FlexibleSUSY
gm2calc_interface.hpp
Go to the documentation of this file.
1// ====================================================================
2// This file is part of FlexibleSUSY.
3//
4// FlexibleSUSY 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// FlexibleSUSY 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 FlexibleSUSY. If not, see
16// <http://www.gnu.org/licenses/>.
17// ====================================================================
18
19#ifndef GM2CALC_INTERFACE_H
20#define GM2CALC_INTERFACE_H
21
22#include <Eigen/Core>
23
29namespace flexiblesusy {
30
36 double scale{0.0};
37 double alpha_em_MZ{0.0};
38 double alpha_em_0{0.0};
39 double alpha_s_MZ{0.0};
40 double MZ{0.0};
41 double MW{0.0};
42 double mb_mb{0.0};
43 double MT{0.0};
44 double MTau{0.0};
45 double MM{0.0};
46 double MA0{0.0};
47 double MSvm{0.0};
48 double TB{0.0};
49 double Mu{0.0};
50 double M1{0.0};
51 double M2{0.0};
52 double M3{0.0};
53 Eigen::Array<double,2,1> MSm{Eigen::Array<double,2,1>::Zero()};
54 Eigen::Array<double,2,1> MCha{Eigen::Array<double,2,1>::Zero()};
55 Eigen::Array<double,4,1> MChi{Eigen::Array<double,4,1>::Zero()};
56 Eigen::Matrix<double,3,3> mq2{Eigen::Matrix<double,3,3>::Zero()};
57 Eigen::Matrix<double,3,3> mu2{Eigen::Matrix<double,3,3>::Zero()};
58 Eigen::Matrix<double,3,3> md2{Eigen::Matrix<double,3,3>::Zero()};
59 Eigen::Matrix<double,3,3> ml2{Eigen::Matrix<double,3,3>::Zero()};
60 Eigen::Matrix<double,3,3> me2{Eigen::Matrix<double,3,3>::Zero()};
61 Eigen::Matrix<double,3,3> Au{Eigen::Matrix<double,3,3>::Zero()};
62 Eigen::Matrix<double,3,3> Ad{Eigen::Matrix<double,3,3>::Zero()};
63 Eigen::Matrix<double,3,3> Ae{Eigen::Matrix<double,3,3>::Zero()};
64};
65
71 double alpha_em_mz{0.0};
72 double alpha_em_0{0.0};
73 double alpha_s_mz{0.0};
74 double mh{0.0};
75 double mw{0.0};
76 double mz{0.0};
77 Eigen::Matrix<double,3,1> mu{Eigen::Matrix<double,3,1>::Zero()};
78 Eigen::Matrix<double,3,1> md{Eigen::Matrix<double,3,1>::Zero()};
79 Eigen::Matrix<double,3,1> mv{Eigen::Matrix<double,3,1>::Zero()};
80 Eigen::Matrix<double,3,1> ml{Eigen::Matrix<double,3,1>::Zero()};
81 Eigen::Matrix<std::complex<double>,3,3> ckm{Eigen::Matrix<std::complex<double>,3,3>::Identity()};
82 int yukawa_type{0};
83 Eigen::Matrix<double,7,1> lambda{Eigen::Matrix<double,7,1>::Zero()};
84 double tan_beta{0.0};
85 double m122{0.0};
86 double zeta_u{0.0};
87 double zeta_d{0.0};
88 double zeta_l{0.0};
89 Eigen::Matrix<double,3,3> delta_u{Eigen::Matrix<double,3,3>::Zero()};
90 Eigen::Matrix<double,3,3> delta_d{Eigen::Matrix<double,3,3>::Zero()};
91 Eigen::Matrix<double,3,3> delta_l{Eigen::Matrix<double,3,3>::Zero()};
92 Eigen::Matrix<double,3,3> pi_u{Eigen::Matrix<double,3,3>::Zero()};
93 Eigen::Matrix<double,3,3> pi_d{Eigen::Matrix<double,3,3>::Zero()};
94 Eigen::Matrix<double,3,3> pi_l{Eigen::Matrix<double,3,3>::Zero()};
95};
96
98double gm2calc_calculate_amu(const GM2Calc_MSSMNoFV_data&);
99
101double gm2calc_calculate_amu_uncertainty(const GM2Calc_MSSMNoFV_data&);
102
104double gm2calc_calculate_amu(const GM2Calc_THDM_data&);
105
107double gm2calc_calculate_amu_uncertainty(const GM2Calc_THDM_data&);
108
109} // namespace flexiblesusy
110
111#endif
double gm2calc_calculate_amu_uncertainty(const GM2Calc_MSSMNoFV_data &)
calculates uncertainty of amu using GM2Calc in the MSSMNoFV
double gm2calc_calculate_amu(const GM2Calc_MSSMNoFV_data &)
calculates amu using GM2Calc in the MSSMNoFV
data to be passed to GM2Calc
Eigen::Matrix< double, 3, 3 > me2
right-handed down-type slepton mass parameters squared
Eigen::Matrix< double, 3, 3 > mu2
right-handed up-type squark mass parameters squared
Eigen::Matrix< double, 3, 3 > ml2
left-handed slepton mass parameters squared
Eigen::Array< double, 2, 1 > MCha
chargino pole masses
double M2
wino mass parameter (initial guess)
double alpha_s_MZ
alpha_s(MZ) SM MS-bar
double M3
gluino mass parameter
Eigen::Matrix< double, 3, 3 > Au
up-type squark trilinear coupling
Eigen::Matrix< double, 3, 3 > Ad
down-type squark trilinear coupling
double Mu
mu parameter (initial guess)
double MSvm
muon sneutrino pole mass
double scale
renormalization scale
Eigen::Matrix< double, 3, 3 > Ae
down-type slepton trilinear coupling
Eigen::Matrix< double, 3, 3 > mq2
left-handed squark mass parameters squared
Eigen::Array< double, 4, 1 > MChi
neutralino pole masses
Eigen::Array< double, 2, 1 > MSm
smuon pole masses
double M1
bino mass parameter (initial guess)
Eigen::Matrix< double, 3, 3 > md2
right-handed down-type squark mass parameters squared
double MA0
CP-odd Higgs pole mass.
data to be passed to GM2Calc
Eigen::Matrix< double, 3, 3 > pi_l
Eigen::Matrix< double, 3, 1 > ml
down-type lepton pole masses
Eigen::Matrix< double, 3, 3 > delta_d
Eigen::Matrix< double, 7, 1 > lambda
Eigen::Matrix< double, 3, 3 > delta_u
Eigen::Matrix< std::complex< double >, 3, 3 > ckm
CKM matrix.
double mh
SM Higgs boson pole mass.
Eigen::Matrix< double, 3, 3 > pi_u
Eigen::Matrix< double, 3, 1 > mu
up-type quarks
Eigen::Matrix< double, 3, 1 > md
down-type quark masses
Eigen::Matrix< double, 3, 3 > delta_l
Eigen::Matrix< double, 3, 3 > pi_d
Eigen::Matrix< double, 3, 1 > mv
neutrino masses
double alpha_s_mz
alpha_s(mz) SM MS-bar