forked from Expander/FlexibleSUSY
/
SoftsusyNMSSM_two_scale.hpp
55 lines (45 loc) · 1.83 KB
/
SoftsusyNMSSM_two_scale.hpp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
// ====================================================================
// This file is part of FlexibleSUSY.
//
// FlexibleSUSY is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published
// by the Free Software Foundation, either version 3 of the License,
// or (at your option) any later version.
//
// FlexibleSUSY is distributed in the hope that it will be useful, but
// WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
// General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with FlexibleSUSY. If not, see
// <http://www.gnu.org/licenses/>.
// ====================================================================
#ifndef SoftsusyNMSSM_TWO_SCALE_H
#define SoftsusyNMSSM_TWO_SCALE_H
#include "SoftsusyNMSSM.hpp"
#include "model.hpp"
#include "nmssmsoftsusy.h"
namespace flexiblesusy {
class Two_scale;
template<>
class SoftsusyNMSSM<Two_scale>: public Model, public softsusy::NmssmSoftsusy {
public:
SoftsusyNMSSM();
virtual ~SoftsusyNMSSM();
virtual void calculate_spectrum();
virtual std::string name() const { return "SoftsusyNMSSM"; }
virtual void run_to(double, double eps = -1.0);
virtual void print(std::ostream& s) const { s << static_cast<softsusy::NmssmSoftsusy>(*this); }
virtual void set_precision(double p) { precision = p; }
void calculate_DRbar_masses() { calcDrBarPars(); }
void set_scale(double scale) { setMu(scale); }
double get_scale() const { return displayMu(); }
SoftsusyNMSSM calc_beta() const { return beta2(); }
void setSugraBcs(double m0, double m12, double a0) { standardSugra(m0, m12, a0); }
private:
double precision;
SoftsusyNMSSM(const softsusy::SoftParsNmssm&);
};
}
#endif